On Mon, Nov 24, 2025 at 09:32:52 +0100, Ján Tomko wrote:
On a Monday in 2025, Peter Krempa via Devel wrote:
From: Peter Krempa <pkrempa@redhat.com>
On Fedora 43 and newer the 'fuse-zfs' package was removed. Commit bd30147e740 added an 'Obsoletes' directive so that the storage driver core package will update properly but hardcoded the obsoleted version as 11.4 (when the change was comitted) similarly to the old sheepdog/rbd packages.
Unfortunately that doesn't work if the sub-package removal happened based on an external dependancy, rather than complete removal of said
*dependency
module in libvirt. If users have e.g. virt-preview repos enabled they'll get libvirt-11.9 currently installed, but the obsoleted version is just 11.4, thus upgrades to Fedora 43 with virt-preview are broken.
Isn't that the expected behavior?
No. While it doesn't break for users not using virt-preview since they're on 11.0.0-5.fc42 it is expected that updates from any version actually work properly.
Fix this by obsoleting everything up to the current build.
Fixes: bd30147e740d49fdb5844160e480ca34611f75e5 Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- libvirt.spec.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libvirt.spec.in b/libvirt.spec.in index 8314fbeb34..f1bfd5e652 100644 --- a/libvirt.spec.in +++ b/libvirt.spec.in @@ -668,7 +668,7 @@ Obsoletes: libvirt-daemon-driver-storage-rbd < 5.2.0 %endif Obsoletes: libvirt-daemon-driver-storage-sheepdog < 8.8.0 %if !%{with_storage_zfs} -Obsoletes: libvirt-daemon-driver-storage-zfs < 11.4.0 +Obsoletes: libvirt-daemon-driver-storage-zfs <= %{version}-%{release} %endif
Looking at it now ... I wonder if this perhaps shouldn't be just '<' given that it uses also %{release}
Either way, Reviewed-by: Ján Tomko <jtomko@redhat.com>
It won't stay there for too long.
The Obsoletes line will be kept "forever" similarly to e.g. the sheepdog driver line.