Enhancements
Core
- ArchUnit now supports classes compiled with JDK 9 and JDK 10 (see #47)
- this includes a new URL type for JDK >= 9 runtime images, i.e. ArchUnit now supports URLs of the form
jrt:/java.base/...
- support for JDK 9 / 10 classes is loaded dynamically, thus ArchUnit can still run with any JDK >= 7 and the change should be fully backwards compatible
- this includes a new URL type for JDK >= 9 runtime images, i.e. ArchUnit now supports URLs of the form
Lang
- the rule API now allows to assert properties of simple class names (see #41; many thanks to @SteluHH)
- the rule API now fails, if
annotatedWith(..)
is called with an annotation type with@Retention(SOURCE)
(see #48) - the rule API now supports testing for meta-annotations (e.g. custom annotations annotated with some stereotype like the Spring framework likes to use) (see #57; many thanks to @rweisleder)
- the rule API now creates hyperlinks within error messages that refer to whole classes (like wrong simple class name) (see #61)
JUnit 4
@AnalyzeClasses
now allows to specify aCacheMode
to disable caching by location between different test classes (see #45)