Change Proposal Name
RPM 4.17
Summary
Update RPM to the 4.17 release.
Owner
- Name: Panu Matilainen
- Email pmatilai@redhat.com
Current status
- Targeted release: Fedora Linux 35
- Last updated: 2021-03-30
- FESCo issue: <will be assigned by the Wrangler>
- Tracker bug: <will be assigned by the Wrangler>
- Release notes tracker: <will be assigned by the Wrangler>
Detailed Description
RPM 4.17 contains numerous improvements over previous versions
- Much more robust install failure handling
- Many macro improvements, in particular much improved Lua integration
- Strict checking for unpackaged content in builds
- Long needed transaction APIs enhancements
- Improved documentation
- Tentative (planned but not committed as of this writing)
- Split debugedit to its own project and package
- Split language-specific packaging aids to separate projects (Python, Perl, Ocaml...)
- Dynamic spec generation
Feedback
Benefit to Fedora
See description for overall benefits, but in particular:
- All users benefit from the more robust installation
- Macro authors will have a much saner experience creating complex macros in Lua
- DNF for the enhanced transaction APIs
Scope
- Proposal owners:
- Rebase RPM
- Assist with dealing with incompatibilities
- Other developers:
- Test new release, report issues and bugs
- Adjust packaging to adhere to the strict buildroot content checking
- Release engineering: #Releng issue number
- Policies and guidelines: TODO: review the need to update guidelines wrt %exclude!
- Trademark approval: N/A (not needed for this Change)
- Alignment with Objectives: no relation to current objectives
Upgrade/compatibility impact
- Many existing packages will fail to build due to the strict buildroot content checking
- Rpm no longer implicitly creates databases on read-only access, this may require changes to existing scripts/tooling
How To Test
Rpm receives a thorough and constant testing via every single package build, system installs and updates. New features can be tested specifically as per their documentation.
User Experience
The user-experience remains largely as-is, but install failures are handled more gracefully.
Dependencies
- dnf and/or mock will likely need some adjusting for the lack of implicit database creation
Contingency Plan
- Contingency mechanism: Revert back to RPM 4.16, but the risk of having to do should be negligible
- Contingency deadline: Beta freeze
- Blocks release? No
Documentation
Work-in-progress release notes at https://rpm.org/wiki/Releases/4.17.0 and reference manual at https://github.com/rpm-software-management/rpm/blob/master/doc/manual/index.md