dependabot maven(deps-dev): bump archunit.version from 0.23.1 to 1.0.0
Bumps archunit.version
from 0.23.1 to 1.0.0.
Updates archunit
from 0.23.1 to 1.0.0
Release notes
Sourced from archunit's releases.
ArchUnit 1.0.0
⚠ If you upgrade from the latest0.x
version, please also refer to the release notes of release candidate1.0.0-rc1
as these release notes refer to upgrading from the release candidate⚠ Breaking Changes
- Naming around
JavaPackage
subpackages and dependencies has been improved to remove ambiguities. In general, whenever all classes from a package and subpackages recursively are involved, this is now called "package tree". Otherwise, it only targets the classes directly within this package (see #919/#968; thanks a lot to@grimsa
) The following mapping shows how to translate the old methods to the current methods:
getAllClasses()
->getClassesInPackageTree()
getAllSubpackages()
->getSubpackagesInTree()
getClassDependenciesFromSelf()
->getClassDependenciesFromThisPackageTree()
getClassDependenciesToSelf()
->getClassDependenciesToThisPackageTree()
getPackageDependenciesFromSelf()
->getPackageDependenciesFromThisPackageTree()
getPackageDependenciesToSelf()
->getPackageDependenciesToThisPackageTree()
accept(..)
->traversePackageTree(..)
- Importing the default package via
ClassFileImporter.importPackages("")
will now yields the same result as usingimportClasspath()
without anyImportOption
(see #954)ClassFileImporter.importClasspath()
now behaves consistently to other import APIs. I.e. no defaultImportOptions
likeDoNotIncludeArchives
are added anymore, instead allImportOptions
need to be added the same way as for all other import methods (see #958)- The custom collection
ImportOptions
has been removed from the public API and been replaced by a standardCollection<ImportOption>
where appropriate (see #958)- The package
com.tngtech.archunit.library.plantuml
has been moved tocom.tngtech.archunit.library.plantuml.rules
to make room for adding other PlantUML related features (see #959)- SLF4J-API has been upgraded from
1.7.36
to2.0.3
, so any log adapter dependency to be used with ArchUnit (e.g. to hook in Log4J) has to be compatible with SLF4J-API2.x
from now on (see #966)Bug Fixes
- Fix bug where multiple synthetic access calls to methods like
access$123(..)
would lead to only one access being imported. Note, that these synthetic methods are added for calls to private fields / methods from inner classes to outer classes, etc. (see #957)Enhancements
Lang
archunit_ignore_patterns.txt
is now also respected byFreezingArchRule
. Thus, ignored violations are not added to theViolationStore
anymore (see #915)Library
testClassesShouldResideInTheSamePackageAsImplementation(..)
now supports multiple test classes with same simple name (see #918; thanks a lot to@mslowiak
)PlantUmlArchCondition
now does not throw exceptions anymore, if a class is in none or multiple components, but instead reports those as standard violations. This way these violations can also be frozen viaFreezingArchRule
instead of crashing the test (see #960)Further Acknowledgement
- Thanks a lot to
@hankem
for upgrading various dependencies, cleaning up code and extensive reviewsArchUnit 1.0.0-rc1
Breaking Changes
- All deprecated members and classes have been removed (see #909)
@AnalyzeClasses()
without any explicit locations to import will now import the package of the annotated class by default instead of the whole classpath. To restore the old behavior use@AnalyzeClasses(wholeClasspath = true)
(see #828)- The
archunit-junit5-engine-api
now resides within the packagecom.tngtech.archunit.junit.engine_api
instead of directly underjunit
. This only affects users that want to programmatically interface with theArchUnitTestEngine
and should be irrelevant for most users (see #827)- ArchUnit now needs at least Java 8 to run (see #833)
- The ArchUnit types
Function
,Predicate
andOptional
have been replaced by the JDK 8 equivalentsDescribedPredicate
now extends the JDK 8Predicate
, soapply(..)
has to be replaced bytest(..)
layeredArchitecture()
now forces to decide how to deal with dependencies by adding.considering...Dependencies()
in the beginning of the declaration. To restore the old behavior declare it aslayeredArchitecture().consideringAllDependencies()
(see #892)ConditionEvents
is now an interface and the interface has been cleaned out of all non-essential methods, e.g.getAllowed()
. This was done to increase maintainability and make it easier to optimize the internals. If you are missing any functionality now, please file an issue to discuss it (see #876)
... (truncated)
Commits
-
f11750b
prepare release 1.0.0 -
f5c1f05
support-rc
suffixes inupdateArchUnitExampleVersion
-
c3efe74
update expected versions in released POMs -
651f3f7
support rc-versions inpublish.gradle
-
a7a71b1
RenameJavaPackage.getAllClasses()
->getClassesInPackageTree()
(#968) -
7b31072
renameJavaPackage.getAllClasses()
->getClassesInPackageTree()
-
6878f49
Some minor code improvements (#965) -
86255a7
replace JUnit 4ExpectedException
by AssertJassertThatThrownBy
-
4b0aa34
replaceassertThat(x).containsOnlyElementsOf
with.hasSameElementsAs
-
506030b
replace GuavaFiles.{write/append}
byjava.nio.Files.write(..)
- Additional commits viewable in compare view
Updates archunit-junit5
from 0.23.1 to 1.0.0
Release notes
Sourced from archunit-junit5's releases.
ArchUnit 1.0.0
⚠ If you upgrade from the latest0.x
version, please also refer to the release notes of release candidate1.0.0-rc1
as these release notes refer to upgrading from the release candidate⚠ Breaking Changes
- Naming around
JavaPackage
subpackages and dependencies has been improved to remove ambiguities. In general, whenever all classes from a package and subpackages recursively are involved, this is now called "package tree". Otherwise, it only targets the classes directly within this package (see #919/#968; thanks a lot to@grimsa
) The following mapping shows how to translate the old methods to the current methods:
getAllClasses()
->getClassesInPackageTree()
getAllSubpackages()
->getSubpackagesInTree()
getClassDependenciesFromSelf()
->getClassDependenciesFromThisPackageTree()
getClassDependenciesToSelf()
->getClassDependenciesToThisPackageTree()
getPackageDependenciesFromSelf()
->getPackageDependenciesFromThisPackageTree()
getPackageDependenciesToSelf()
->getPackageDependenciesToThisPackageTree()
accept(..)
->traversePackageTree(..)
- Importing the default package via
ClassFileImporter.importPackages("")
will now yields the same result as usingimportClasspath()
without anyImportOption
(see #954)ClassFileImporter.importClasspath()
now behaves consistently to other import APIs. I.e. no defaultImportOptions
likeDoNotIncludeArchives
are added anymore, instead allImportOptions
need to be added the same way as for all other import methods (see #958)- The custom collection
ImportOptions
has been removed from the public API and been replaced by a standardCollection<ImportOption>
where appropriate (see #958)- The package
com.tngtech.archunit.library.plantuml
has been moved tocom.tngtech.archunit.library.plantuml.rules
to make room for adding other PlantUML related features (see #959)- SLF4J-API has been upgraded from
1.7.36
to2.0.3
, so any log adapter dependency to be used with ArchUnit (e.g. to hook in Log4J) has to be compatible with SLF4J-API2.x
from now on (see #966)Bug Fixes
- Fix bug where multiple synthetic access calls to methods like
access$123(..)
would lead to only one access being imported. Note, that these synthetic methods are added for calls to private fields / methods from inner classes to outer classes, etc. (see #957)Enhancements
Lang
archunit_ignore_patterns.txt
is now also respected byFreezingArchRule
. Thus, ignored violations are not added to theViolationStore
anymore (see #915)Library
testClassesShouldResideInTheSamePackageAsImplementation(..)
now supports multiple test classes with same simple name (see #918; thanks a lot to@mslowiak
)PlantUmlArchCondition
now does not throw exceptions anymore, if a class is in none or multiple components, but instead reports those as standard violations. This way these violations can also be frozen viaFreezingArchRule
instead of crashing the test (see #960)Further Acknowledgement
- Thanks a lot to
@hankem
for upgrading various dependencies, cleaning up code and extensive reviewsArchUnit 1.0.0-rc1
Breaking Changes
- All deprecated members and classes have been removed (see #909)
@AnalyzeClasses()
without any explicit locations to import will now import the package of the annotated class by default instead of the whole classpath. To restore the old behavior use@AnalyzeClasses(wholeClasspath = true)
(see #828)- The
archunit-junit5-engine-api
now resides within the packagecom.tngtech.archunit.junit.engine_api
instead of directly underjunit
. This only affects users that want to programmatically interface with theArchUnitTestEngine
and should be irrelevant for most users (see #827)- ArchUnit now needs at least Java 8 to run (see #833)
- The ArchUnit types
Function
,Predicate
andOptional
have been replaced by the JDK 8 equivalentsDescribedPredicate
now extends the JDK 8Predicate
, soapply(..)
has to be replaced bytest(..)
layeredArchitecture()
now forces to decide how to deal with dependencies by adding.considering...Dependencies()
in the beginning of the declaration. To restore the old behavior declare it aslayeredArchitecture().consideringAllDependencies()
(see #892)ConditionEvents
is now an interface and the interface has been cleaned out of all non-essential methods, e.g.getAllowed()
. This was done to increase maintainability and make it easier to optimize the internals. If you are missing any functionality now, please file an issue to discuss it (see #876)
... (truncated)
Commits
-
f11750b
prepare release 1.0.0 -
f5c1f05
support-rc
suffixes inupdateArchUnitExampleVersion
-
c3efe74
update expected versions in released POMs -
651f3f7
support rc-versions inpublish.gradle
-
a7a71b1
RenameJavaPackage.getAllClasses()
->getClassesInPackageTree()
(#968) -
7b31072
renameJavaPackage.getAllClasses()
->getClassesInPackageTree()
-
6878f49
Some minor code improvements (#965) -
86255a7
replace JUnit 4ExpectedException
by AssertJassertThatThrownBy
-
4b0aa34
replaceassertThat(x).containsOnlyElementsOf
with.hasSameElementsAs
-
506030b
replace GuavaFiles.{write/append}
byjava.nio.Files.write(..)
- Additional commits viewable in compare view