📝 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 classSpringAsyncRules.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!