You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
JavaClass.get{All}Interfaces() is now JavaClass.get{All}RawInterfaces() to be consistent with regards to the generic JavaClass.getInterfaces(). We decided that this is still a less painful way than deprecating getInterfaces(), introducting a new getGenericInterfaces(), then deprecate getGenericInterfaces() in favor of getInterfaces() in a later release. To be consistent with other places in ArchUnit JavaClass.getInterfaces() needs to provide the generic version of the interfaces (compare e.g. JavaClass.getSuperclass()).
Enhancements
Core
Support for Java Records (see #295; thanks a lot to @rweisleder)
JavaClass now knows its generic interfaces (retrievable via JavaClass.getInterfaces()). Furthermore type arguments of generic interfaces are now part of the JavaClass.directDependencies{From/To}Self (see #551)
Lang
New syntax methods classes().that().containAny{Members,Fields,Methods,...}That(..) (see #553; thanks a lot to @nils-christian)
Library
Added an API to calculate Software Architecture Metrics inspired by John Lakos, Robert C. Martin and Herbert Dowalil. For further details check the user guide (see #572; thanks a lot to @hankem and @stefanhechtltng and to @hdowalil for the inspiration and support)