-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
On Mon, 2020-05-11 at 22:41 -0400, Neal Gompa wrote:
On Mon, May 11, 2020 at 7:23 PM Miro Hrončok
<mhroncok(a)redhat.com>
wrote:
> On 12. 05. 20 0:32, Adam Williamson wrote:
> > 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.
>
> Yes, I am *sure*.
>
> > 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.
>
> Package Y that obsoletes X kicks in when you have X installed and Y
> available.
> (Assuming both are non-modular. With modules, this concept is
> broken.)
>
> > 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.
>
> The provides is there only to not break existing packages and users
> who depend
> on and/or install the old name.
>
> > Are you *sure* that DNF doesn't behave this way? The idea
> > surprises me.
>
> Yes, I am *sure*. I guess it's not dnf, but libsolv, hence GNOME
> Software should
> behave the same.
>
To be clear: Obsoletes affects _only_ upgrades. Our policy says to do
Obsoletes+Provides so that when people do *installs*, they get the
new
package too. fedora-obsolete-packages *explicitly* does not do
Provides for this reason.
There were a few YUM hacks where it processed Obsoletes on installs
in
specific circumstances as well, but that behavior has been gone from
Fedora since we switched to DNF in Fedora 22. And good riddance.
This is not true entirely, DNF also follows obsoletes for install
command.
For example, berusky has Obsoletes: berusky-data, but does not have
Provides for that. If you try `dnf install berusky-data`, it will
install berusky.
--
真実はいつも一つ!/ Always, there's only one truth!
_______________________________________________
devel mailing list -- devel(a)lists.fedoraproject.org
To unsubscribe send an email to devel-leave(a)lists.fedoraproject.org
Fedora Code of Conduct:
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines:
https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives:
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org - --
Igor Raits <ignatenkobrain(a)fedoraproject.org>
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCgAdFiEEcwgJ58gsbV5f5dMcEV1auJxcHh4FAl66Ky8ACgkQEV1auJxc
Hh5nxQ/9H1T7TETYhJR39LvtSjxFYKwiFZRhbV06+aV7K8e99tAUZ0JCOpc7cmIq
mTIs/cQ4QvoiwgYfaGSmMFOV13CK8Lfq+LhqPAvtru+b7HFgmWdb09kO/UcTjXjm
TEwSd7fuhXXTGhDcstt5p9qfXbvgua3j9/N3N8N8srTsCXm9sD/JjGN5lj5rqZSO
0IQZAwJfIc42v+CT//f8RFv+/tHybx9gKysfnjzs55ZdRQQWF6sLljcsZff6Q58t
oMB/p19EBObN3y9DXU7YxlHOz0kWij5+2ZRX7kxhM1zhpe/t3/N1GSIsMeIbOOEe
YWqUGybVorlSiaFQ6IAgeDJsqr4hCUvtM0WNbHI+Qu+T63F5RY22AS+9QlANkv2b
8gwucFq/f9bb4qFBsAFH0hAOMqf6GBeuu0NpflKVzZYTynxfXi8lLBZo0TPTktCn
IuHxKNH2uos77d0+Py1I/dhmkkoRwk59pTK4jcGTNC1R46m7UgNi2D4albXJu6lb
ki4oGhYO5HzUKoELRZ8PuLa5207sWdJs6W3Rqz2HSfDhKdhUfa2J6Y7umA+PjnOj
ocaX3tyug/JfZ0sWelWecPWF7Nifc4U4qGxb2Q7rlGFeapUHwYc4L0Q+NmuebpDw
kMKOINOmvWErTaiIMGEaLIV+cekfblhEAUTvesRGXJcrW8jHfAM=
=c9YB
-----END PGP SIGNATURE-----