Hello, Am Samstag, 29. Januar 2022, 13:16:43 CET schrieb Neal Gompa:
On Sat, Jan 29, 2022 at 6:57 AM Bjørn Lie <bjorn.lie@gmail.com> wrote: [...]
Provides: gstreamer-plugins-ugly-orig-addon = %{version} Obsoletes: gstreamer-plugins-ugly-orig-addon < %{version} Provides: gstreamer-plugins-bad-orig-addon = %{version} Obsoletes: gstreamer-plugins-bad-orig-addon < %{version}
Provides/Obsoletes is in place, but I should have used
Obsoletes: gstreamer-plugins-bad-orig-addon Obsoletes: gstreamer-plugins-ugly-orig-addon
without the version check ...
As you noted in a later mail, an unversioned Obsoletes: will bite you if you ever want to re-introduce that package. So please don't use unversioned Obsoletes:
It didn't work because you didn't use "%{version}-%{release}". Without that, it won't correctly obsolete older builds where the version is the same.
Basically, never use "%{version}" for this case, always use "%{version}-%{release}".
While I agree that including the release makes sense (if the version stays the same), I don't like the idea of using variables when it comes to Obsoletes. Obsoletes is one of the rare cases where hardcoded version numbers make sense, in this case (assuming the last version from Packman was 1.18.5-1.1) Obsoletes: gstreamer-plugins-ugly-orig-addon < 1.18.5-2.1 Obsoletes: gstreamer-plugins-bad-orig-addon < 1.18.5.2.1 The difference to using %{version}-%{release} is that the hardcoded variant will still only obsolete < 1.18.5-2.1 when we have gstreamer- plugins 2.42 one day. If you use variables, it will then obsolete < 2.42, which is much broader than initially intended, and probably not really what you want. Yes, I know that our packaging guidelines recommend to use variables even for Obsoletes. I hereby propose to change the guidelines to use hardcoded version numbers for Obsoletes. Regards, Christian Boltz -- Du versuchst, einen Braunkohlebagger im Fahrradständer abzustellen. [Ratti in suse-linux zur Frage, wie man Mails mit >=100 MB senden kann]