https://bugzilla.redhat.com/show_bug.cgi?id=1111691 --- Comment #16 from David Nichols <david@xxxxxxxx> --- (In reply to David Nichols from comment #15) > (In reply to Michael Schwendt from comment #14) > > > obsolete-not-provided > > > > First of all, while you can put anything in an Obsoletes tag, only package > > names (with/without a version-release range) will actually result in the > > specified package(s) getting replaced with another package (or multiple > > ones). > > > > Further, anything declared as obsolete breaks existing dependencies on it. > > Unless there is a corresponding "Provides" for the obsolete thing. > > > > > Obsoletes: libqore5 < 0.8.12 > > > > If there's a "Requires: libqore5 …" anywhere, there would be a broken > > dependency, regardless of whether "libqore5" is a physical package %name, a > > virtual package name, or something else as a "Provides" tag. > > > > http://fedoraproject.org/wiki/Packaging:Guidelines#Renaming. > > 2FReplacing_Existing_Packages > > > > > Obsoletes: qore-module-api-0.18 > > > > Same here. This capability will be "gone", "hidden" from the depsolver, and > > anything that still depends on it will cause a broken dependency. The > > package that contains this Obsoletes tag does not implicitly "Provides" the > > obsolete thing. > > OK, I tried to read about this stuff, but I did not see this covered in any > of the RPM or packaging guides. I think that I understand now. > > So then I will do this instead: > > Provides: qore-module(abi) = 0.18 > Provides: libqore5 = 0.8.11 > Obsoletes: libqore5 < 0.8.12 > # provided for backwards-compatibility with unversioned capabilities and > will be removed when the ABI drops backwards-compatibility > Provides: qore-module-api-0.18 > Provides: qore-module-api-0.17 > Provides: qore-module-api-0.16 > Provides: qore-module-api-0.15 > Provides: qore-module-api-0.14 > Provides: qore-module-api-0.13 > Provides: qore-module-api-0.12 > Provides: qore-module-api-0.11 > Provides: qore-module-api-0.10 > Provides: qore-module-api-0.9 > Provides: qore-module-api-0.8 > Provides: qore-module-api-0.7 > Provides: qore-module-api-0.6 > Provides: qore-module-api-0.5 This did not work because libqore then provides a capability that it's obsoleting. Therefore I will update the version to 0.8.11.1 and then do the following: Provides: qore-module(abi) = 0.18 Provides: libqore5 = %{version} Obsoletes: libqore5 < %{version} # provided for backwards-compatibility with unversioned capabilities and will be removed when the ABI drops backwards-compatibility Provides: qore-module-api-0.18 Provides: qore-module-api-0.17 Provides: qore-module-api-0.16 Provides: qore-module-api-0.15 Provides: qore-module-api-0.14 Provides: qore-module-api-0.13 Provides: qore-module-api-0.12 Provides: qore-module-api-0.11 Provides: qore-module-api-0.10 Provides: qore-module-api-0.9 Provides: qore-module-api-0.8 Provides: qore-module-api-0.7 Provides: qore-module-api-0.6 I can also remove the unversioned Provides if it's a problem, I just would like to keep backwards compatibility with existing installed modules if possible, but if it's not acceptable for Fedora, then I will remove the lines. I should have the new release ready in a few minutes. -- You are receiving this mail because: You are on the CC list for the bug. You are always notified about changes to this product and component _______________________________________________ package-review mailing list package-review@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/package-review