On Mon, 2020-05-11 at 01:47 +0200, Miro HronĨok wrote:
On 10. 05. 20 20:48, Kevin Fenzi wrote:
> Basically we are switching from 'I go and install
> fedora-obsolete-packages and have opted in to it' to 'I have to go
> explictly exclude it to keep my obsolete packges'.
As others have pointed out, this was never the case of 'I go and install
fedora-obsolete-packages and have opted in to it' -- this was always the case of
'fedora-obsolete-packages obsoletes something I had installed, so it is pulled
in by dep resolver'.
Uh. Are we *sure* about that? Same as Kevin, that is not how I recall
this working.
I've long worked under the belief that this if Y Obsoletes: X, but you
don't have Y installed (and nothing else in the update would cause it
to be pulled in), running 'dnf update' with a repo that contains Y
enabled is not going to install Y and remove X. X will stay there.
Obsoletes: only kick in if the package that does the obsoleting is
installed, or is included in the transaction.
This is - AIUI - why the packaging guidelines say, when you rename a
package, that the new package should Obsoletes: *and Provides:* the old
package: without the Provides:, you cannot expect the new package to
reliably replace the old one.
Are you *sure* that DNF doesn't behave this way? The idea surprises me.
--
Adam Williamson
Fedora QA Community Monkey
IRC: adamw | Twitter: AdamW_Fedora | XMPP: adamw AT happyassassin . net
http://www.happyassassin.net