Skip to content

Releases: rweisleder/archunit-spring

Release v1.1.0

21 Feb 17:39
Compare
Choose a tag to compare

📝 Rule Description Changes

The descriptions of the following rules have changed:

  • SpringAsyncRules.AsyncMethodsAreProxyable
  • SpringAsyncRules.AsyncMethodsHaveSuitableReturnType
  • SpringAsyncRules.AsyncMethodsNotCalledFromSameClass

If you use these rules with FreezingArchRule.freeze(..), you might need to update the stored description in the Violation Store accordingly.

⭐ New Features

  • Added rules for Spring Retry, see documentation (#15; thanks @haisi)
  • Added rule SpringBootRules.ApplicationHasOnlyOneSpringBootConfiguration, see documentation (#17)
  • Added rule SpringAsyncRules.EnableAsyncIsPresentIfAsyncMethodsExist, see documentation
  • Added rule SpringCacheRules.EnableCachingIsPresentIfCacheableMethodsExist, see documentation

🔧 Improvements

  • SpringCacheRules.CacheableMethodsNotCalledFromSameClass now detects calls to super class
  • SpringAsyncRules.AsyncMethodsNotCalledFromSameClass now detects calls to super class
  • Rules in SpringAsyncRules now detect methods declared in classes annotated with @Async (#8)
  • SpringProxyRules.beProxyable() now detects methods in interfaces as well as static methods

🐞 Bug Fixes

  • Handle AutoConfiguration classes in predicate springAnnotatedWith (#13)

💡 Feedback & Feature Requests

Feel free to share your feedback in discussions and open issues for any missing features you'd like to see!

Release v1.0.0

30 May 05:59
Compare
Choose a tag to compare

⭐ New Features

  • Added SpringAsyncRules to check the usage of Spring's support for asynchronous method execution

Release v0.3.0

22 May 21:19
Compare
Choose a tag to compare

This is the last release before 1.0.0 will be released.

⚡ Breaking Changes

  • Renamed MergedAnnotationPredicates to SpringAnnotationPredicates
  • Moved SpringBootRules to a new package boot
  • Moved SpringComponentPredicates and SpringComponentRules to a new package framework

The original APIs are still present and marked as deprecated to simplify the migration. They will be removed with the 1.0.0 release.

⭐ New Features

  • Added SpringCacheRules to check the usage of Spring's generic cache abstraction

🐞 Bug Fixes

  • Predicate springAnnotatedWith now supports AccessTarget correctly (#5)
  • Predicate springAnnotatedWith now ignores JavaStaticInitializer

Release v0.2.0

17 Dec 13:36
Compare
Choose a tag to compare

⭐ New Features

  • Added SpringBootRules to check the package structure of Spring Boot applications
  • Added SpringComponentRules to verify the dependencies between @Controller, @Service and @Repository classes

Release v0.1.0

30 Oct 17:27
Compare
Choose a tag to compare
Add missing Maven configuration