-
-
Notifications
You must be signed in to change notification settings - Fork 1k
Open
Description
Summary
This issue tracks the modernization of the project's build configuration, dependency updates, and code improvements to ensure compatibility with newer Java versions and OSGi frameworks.
Background
The project currently uses outdated dependencies and doesn't test against the latest Java LTS versions. This limits our ability to leverage modern Java features and may cause compatibility issues for users on newer Java versions.
Proposed Changes
1. Build and CI Improvements
- Update GitHub Actions workflow to test against Java 21 and 25
- Add support for
origin/*branch patterns in workflow triggers for better CI coverage - Verify builds pass on all supported Java versions
2. Dependency Upgrades
- Upgrade OSGi core to 6.0.0 and OSGi enterprise to 5.0.0 in
osgi-over-slf4j/pom.xml - Update Apache Felix from 5.6.1 to 7.0.5 in
integration/pom.xml - Upgrade Javassist to 3.30.2-GA and correct groupId in
slf4j-ext/pom.xml - Update reload4j to 1.2.26 in
parent/pom.xml - Update JUnit to 4.13.2 in
parent/pom.xml
3. Code Modernization
- Replace
PropertieswithHashtable<String, String>in OSGiActivator.javato follow OSGi best practices - Review and update any deprecated API usage
- Clean up formatting and comments where needed
Benefits
- Future-proofing: Support for Java 21 and 25 ensures the project remains compatible with modern JDK releases
- Security & Stability: Updated dependencies include bug fixes and security patches
- Best Practices: Code changes align with OSGi recommendations for better type safety
- Better Testing: Expanded CI coverage catches compatibility issues earlier
Testing Requirements
- All existing tests must pass on Java 8, 11, 17, 21, and 25
- OSGi bundle activation should work correctly with updated dependencies
- No breaking changes to public APIs
Related
- Addresses technical debt around outdated dependencies
- Improves long-term maintainability
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels