Releases: enofex/taikai
Releases · enofex/taikai
0.1.2
0.1.1
0.1.0
🎉 Taikai 0.1.0 Release Notes 🎉
We are thrilled to announce the first official release of Taikai! Taikai is a wrapper around the awesome ArchUnit and provides a set of common rules for different technologies like Java, Spring and JUnit5, more will follow.
🚀 Key Features
1. Spring Configuration
- No Autowired Fields: Enforce the use of constructor injection by ensuring no fields are annotated with
@Autowired
. - Spring Boot Application Placement: Ensure your
@SpringBootApplication
annotated classes are located in the correct package. - Configuration Class Naming: Ensure your configuration classes follow a consistent naming convention, ending with
Configuration
, or optionally matching a specific regex pattern. - Controller Annotations: Verify that your controller classes are properly annotated with
@Controller
or@RestController
. - Controller Class Naming: Ensure controller class names end with
Controller
, or follow a specific regex pattern, do not depend on other controllers, and are package-private. - Service Class Naming: Ensure service class names end with
Service
or follow a specific regex pattern. - Repository Class Naming: Ensure repository class names end with
Repository
or follow a specific regex pattern.
2. Test Configuration
- JUnit 5 Compliance: Ensure that your test classes and methods are not annotated with
@Disabled
.
3. Java Configuration
- No Cyclic Dependencies: Maintain a clean architecture with no cyclic dependencies.
- Restricted Imports: Prevent unwanted dependencies by restricting imports from specified packages such as
..shaded..
4. Naming Conventions
- Class Naming: Enforce consistent naming conventions to avoid class names matching certain patterns, such as
.*Impl
. - Interface Naming: Ensure interfaces are not prefixed with 'I' for cleaner, more readable code.
💬 Feedback and Contributions
Your feedback is invaluable to us! Feel free to report issues, suggest features, or contribute to the project.
🎉 Join the Celebration
We are incredibly grateful to our contributors and the community for their support. Join us in celebrating this milestone and stay tuned for more exciting features and improvements in future releases.