Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Obsolete earlier packages due to version bump #11233

Merged
merged 1 commit into from
Nov 24, 2020

Conversation

behlendorf
Copy link
Contributor

Motivation and Context

Issue #11230.

Description

In order for package managers such as dnf to upgrade cleanly after
the package SONAME bump the obsolete package names must be known.
Update the new packages to correctly obsolete the old ones.

@aerusso I believe alien understands the obsoletes tag for the upstream
packaging, but I wanted to make sure you have a similar fix in the Debian
packages.

How Has This Been Tested?

Performed a dnf upgrade on Fedora and CentOS 8 and verified the
old packages were correctly detects as obsolete and replaced.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Performance enhancement (non-breaking change which improves efficiency)
  • Code cleanup (non-breaking change which makes code smaller or more readable)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation (a change to man pages or other documentation)

Checklist:

In order for package managers such as dnf to upgrade cleanly after
the package SONAME bump the obsolete package names must be known.
Update the new packages to correctly obsolete the old ones.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
@behlendorf behlendorf added Component: Packaging custom packages Status: Code Review Needed Ready for review and testing labels Nov 23, 2020
@aerusso
Copy link
Contributor

aerusso commented Nov 24, 2020

Debian handles this slightly differently: we keep the old libraries in the repository until there are no reverse dependencies, after which the libraries will be "autoremoved as cruft." Normally, this happens after periodic package rebuilds. However, for ZFS it will be much faster: there are no Debian packages that depend on any of the libraries shipped by ZFS (besides ZFS itself).

The packages will then become obsolete, and should be automatically removed from user systems.

Debian goes to great lengths to make sure old libraries remain coinstallable to support old software, so normally old libraries are left around to support older software. I probably won't put any specific conflicts in place because it might represent an uphill battle for no gain.

That is, unless there is danger in having the old libraries around. For instance, if the newer kernel interface somehow is dangerously backwards-incompatible with the old libraries.

@behlendorf
Copy link
Contributor Author

Thanks for the explanation. Then it sounds like this should be fine. There's no issue with having the old libraries around.

@behlendorf behlendorf added Status: Accepted Ready to integrate (reviewed, tested) and removed Status: Code Review Needed Ready for review and testing labels Nov 24, 2020
@behlendorf behlendorf merged commit f67bebb into openzfs:master Nov 24, 2020
behlendorf added a commit that referenced this pull request Nov 24, 2020
In order for package managers such as dnf to upgrade cleanly after
the package SONAME bump the obsolete package names must be known.
Update the new packages to correctly obsolete the old ones.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #11230 
Closes #11233
jsai20 pushed a commit to jsai20/zfs that referenced this pull request Mar 30, 2021
In order for package managers such as dnf to upgrade cleanly after
the package SONAME bump the obsolete package names must be known.
Update the new packages to correctly obsolete the old ones.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes openzfs#11230 
Closes openzfs#11233
@behlendorf behlendorf deleted the obsoletes branch April 19, 2021 19:21
sempervictus pushed a commit to sempervictus/zfs that referenced this pull request May 31, 2021
In order for package managers such as dnf to upgrade cleanly after
the package SONAME bump the obsolete package names must be known.
Update the new packages to correctly obsolete the old ones.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes openzfs#11230 
Closes openzfs#11233
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: Packaging custom packages Status: Accepted Ready to integrate (reviewed, tested)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants