All development efforts and priorities are established based on the needs of the entire Fedora community of users. Current efforts are focused around the Community Roadmap, which helps guide priority setting for the Fedora Program. On-going feature requests, bug fixes and general maintenance of the Fedora platform can be found on the Fedora Jira Board, the Fedora GitHub repository, and Fedora Extras GitHub repository.
Current Work
Fedora Dependency Upgrade Project
This project focuses on modernizing Fedora’s core codebase first by improving test coverage to streamline future development and maintenance, then upgrading critical dependencies, to current, supported versions.
The project can be found here: https://github.com/orgs/fcrepo/projects/5
Goals
Expand code test coverage to:
- Enable a streamlined, automated upgrade strategy
- Improve code robustness and maintainability
- Facilitate community contributions and faster development
Upgrade Fedora’s core dependencies to the latest versions, including:
- Java (Target: JDK 21)
- Maven
- Spring
- Jersey
Scope
Repositories included:
- fcrepo (Version 6)
- fcrepo-build-tools
- fcrepo-storage-ocfl
- migration-utils
Expanding code test coverage is a prerequisite to starting the upgrades. The Committers and Technical team will lay the groundwork for expansion of test coverage by adding an automated code coverage tool (CodeCov) to the targeted Fedora repository, upgrading to the latest version of the core unit test framework (Junit 5), assessing the gaps in coverage, and prioritizing those modules that will be most impacted by the dependency upgrades. Code Coverage Review work is outlined in the "Part 1: Code Review" tab within the project.
Phase 1: Code Coverage Review ✅ Completed
Expanding code test coverage is a prerequisite to starting the upgrades. We will lay the groundwork for expansion of test coverage by:
Adding an automated code coverage tool (CodeCov) to the targeted Fedora repository.Upgrading to the latest version of the core unit test framework (Junit 5)Assessing the gaps in coverage, and prioritizing those modules that will be most impacted by the dependency upgrades.Writing and integrating new tests for any/all modules not meeting the 80% coverage minimum standard.
Phase 2: Dependency Upgrades (May - completion)
Please refer to the following project board for the most current information on outstanding issues: https://github.com/orgs/fcrepo/projects/5/views/2
Participate
To complete Phase 2 of this project, the committers and technical team will be working in 2 week sprints.
Sprint Cycles:
- May 18 - May 31
- June 15 - June 28
- July 13 - July 26
- August 10 - August 23
To Participate in the project:
- Join any Weekly Tech meeting to indicate your availability.
- Tech and Committer teams will be available to orient you to the current project status.
- Review the Project Board: https://github.com/orgs/fcrepo/projects/5/views/2
- Jira issues labelled "Ready" are ready for work.
- Assign issues of interest to yourself to indicate you are working on it.
- Change the status to "In Progress" to indicate work has started.
- Please provide any relevant comments into the Jira Issue if necessary.
- Once complete, change the ticket into "In Review".
If you are new to the Fedora project, please see our Guide for New Developers to get started.
If you have any questions, please reach out to the Fedora Team via email (fedora@lyrasis.org) or join us on Slack (https://fedora-project.slack.com/).