Releases: gilbertoca/click
Releases · gilbertoca/click
Release list
Release click-2.7.0
Full Changelog: click-2.6.0...click-2.7.0
Apache Click 2.6.0
Apache Click 2.6.0: Modernization & Cloud-Native Support
This release continues the modernization of Apache Click, focusing on JDK 17 compatibility, cloud-native deployments, and documentation improvements.
Key Features & Improvements
Framework Modernization
- Security & Performance: Migrated template engine from Velocity 1.7 to Velocity 2.3, addressing CVE-2020-13936 and improving performance
- ActionEventDispatcher Optimization: Replaced ArrayList-based stack with ArrayDeque, fixed O(n) remove operations, and corrected ThreadLocal cleanup for thread pools
- Context Modernization: Refactored Context class with proper ThreadLocal management and final field declarations
- Thread Safety: Replaced legacy Collections.synchronizedMap with ConcurrentHashMap across ClassLoaderCache, PropertyUtils, and OGNLPropertyService
- Java 17 Alignment: Removed deprecated SecurityManager calls and fixed raw type compiler warnings
Cloud-Native & Servlet 3.0+ Support
- BasicResourceService: New lightweight ResourceService implementation for read-only file systems and containerized environments (Docker/Kubernetes)
- Updated Servlet & FileUpload: Modernized commons-fileupload dependency for Servlet 3.0+ native multipart support
- Immutable Environment Support: Refactored ClickResourceService to use NIO.2 (java.nio.file) for write permission checks
Build Quality & Documentation
- CheckStyle Integration: Enabled CheckStyle plugin with comprehensive style configuration
- SpotBugs Analysis: Enhanced build quality with SpotBugs plugin integration
- Documentation Migration: User Guide migrated from verbose DocBook XML to modern Asciidoc format for improved maintainability and community contributions
- JavaDoc in Examples: Fixed and configured Javadoc plugin for Example module documentation
Apache Cayenne Integration
- Updated Apache Cayenne control to version 4.2.3 with modernized namespace and example migration
Issues Resolved
- #14: Bring codebase to Java 17
- #15: Modernize Maven build and resolve dependency issues for Java 17
- #16: Bring old click-mock module
- #17: Migrate template engine to Velocity 2.3
- #19: Fix Javadoc generation in Examples
- #20: Update Apache Cayenne control
- #26: Modernize ActionEventDispatcher
- #27: Modernize Context.java
- #28: Modernize ClickServlet.java
- #30: Remove deprecated SecurityManager calls
- #31: Refactor ResourceService for modern environments
- #32: Migrate User Guide to Asciidoc
- #33: Enable CheckStyle plugin
- #34: Template mavenization
- #35: Replace Collections.synchronizedMap with ConcurrentHashMap
- #36: Fix raw type compiler warnings
- #38: Remove unused index terms from User Guide
- #39: Version bump to 2.6.0
Compatibility & Migration
- Java 17+: Full JDK 17 support with deprecated API migration
- Backward Compatible: Existing ClickResourceService auto-deploy behavior maintained; new BasicResourceService available for restricted environments
- Template Engine: Velocity 2.3 migration may require testing of custom VelocityService implementations
Documentation
- User Guide now available in modern Asciidoc format
- Improved JavaDoc coverage in examples module
Full Changelog: v2.5.0...2.6.0
Apache Click 2.5.0
Apache Click 2.5.0: Java 17 Support & Security Patches (OGNL/FileUpload)
This version modernizes the Apache Click build system and resolves critical issues for modern Java environments.
- Java 17 Support: Upgraded Spring Framework to 5.3.x to fix ASM/bytecode conflicts.
- Maven Automation: Full version injection using Maven Filtering in properties and documentation.
- Dependency Hygiene: Resolved "Used undeclared" dependencies and cleaned up legacy logging (bridged to SLF4J).
- DocBook Modernization: Fixed User Guide generation for modern JDKs.
- Runtime Fixes: Corrected database initialization and resource loading in the Examples module.
- **Patch OGNL and FileUpload security vulnerabilities
Apache Click 2.4.0
Full Changelog: click-2.3.0-retierd...2.4.0