-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
On Mon, 2020-06-15 at 15:47 -0400, Ben Cotton wrote:
https://fedoraproject.org/wiki/Changes/Fedora-Retired-Packages
== Summary ==
All retired packages are obsoleted by `fedora-retired-packages`.
== Owner ==
* Name: [[User:msuchy| Miroslav Suchý]]
* Email: msuchy(a)redhat.com
== Detailed Description ==
Right now `fedora-obsoletes-package` retires packages which cause an
issue during an upgrade. We do nothing about all other retired
packages. Now imagine the following story (it already happened many
times):
We have package "foo". It is a leaf package. No one requires it. It
uses just basic libraries.
A user installs it during F32 lifetime.
Around F35 the upstream dies. Around F37 Fedora maintainer retires
the
package (or orphan and it later become retired).
Because the package is a leaf package, it causes no pain during
upgrade F37->F38. Not even during upgrade to F39, F40, F41, F42. And
then during upgrade to F43 it suddenly causes a problem. But because
it is .fc37 everyone will hesitate to add it
fedora-obsolete-packages.fc43.
Additionally, during F38-F43, users may expect that their system is
fully updated and they have no security issues. But it is not true
about package "foo", which no one maintains. And users are not aware
of that because he does not follow fedora-devel mailing list.
Obviously.
What I propose is: As part of the retirement process we add the to
fedora-retired-packages:
Obsoletes: foo < %{latestversion+1}
And during upgrade from F37->F38 the package will be removed.
If the user wants to preserve the package (e.g., because it moved to
Copr), he simply uninstalls and protects the installation of
fedora-retired-packages. But that will be an informed decision.
The benefits are:
* we do not leave unmaintained packages on a user's machine.
* We make sure that archaic packages do not break upgrade between
two
versions of Fedora.
I fully agree with the benefits, however I do not like the approach.
Why not to teach DNF system-upgrade about special flag (like --remove-
unmaintained-packages) that will take installed packages, available
packages and remove those that do not exist in the target repo?
== Feedback ==
After [
https://bugzilla.redhat.com/show_bug.cgi?id=1816532#c5
discussion with fedora-obsolete-package maintainer] I filed this
Change proposal to include a wider audience.
See relevant [
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.o...
thread on devel mailing list].
== Benefit to Fedora ==
* We do not leave unmaintained packages on a user's machine.
* We make sure that archaic packages do not break upgrade between
two
versions of Fedora.
== Scope ==
* Proposal owners:
Create package `fedora-retired-packages` as sub-package of
`fedora-obsolete-packages`
[
https://bugzilla.redhat.com/show_bug.cgi?id=1816532 BZ#1816532]
Edit
https://fedoraproject.org/wiki/How_to_remove_a_package_at_end_of_life#Obs...
guidelines with:
The retired package should be obsoleted by one of:
* fedora-obsoleted-packages - if the package can cause problem
during
upgrade to next version of Fedora
* fedora-retired-packages - in all other cases
It is enough to open an issue on
https://src.fedoraproject.org/rpms/fedora-obsolete-packages
* Other developers:
No other work should be necessary.
* Release engineering:
This is optional. I may work with rel-eng to change
https://pagure.io/releng/blob/master/f/docs/source/sop_retire_orphaned_pa...
to automatically create PR for `fedora-obsolete-packages`
* Policies and guidelines: As stated above
https://fedoraproject.org/wiki/How_to_remove_a_package_at_end_of_life#Obs...
will need an update.
* Trademark approval: N/A (not needed for this Change)
== Upgrade/compatibility impact ==
During an upgrade, all retired packages will be automatically
removed.
User may opt-out by:
<pre>
$ cat /etc/dnf/dnf.conf
[main]
...
exclude=fedora-retired-packages
</pre>
== How To Test ==
1. Upgrade to next version of Fedora.
2. Check all retired packages are removed.
== User Experience ==
- Packages that are no longer maintained are removed during a
distribution upgrade.
== Dependencies ==
This update has no dependencies on any other package.
== Contingency Plan ==
* Contingency mechanism: Drop `fedora-retired-package`. Or remove
`Obsoletes` from this sub-package.
* Contingency deadline: Beta freeze
* Blocks release? No
== Documentation ==
TBD
== Release Notes ==
TBD
--
Ben Cotton
He / Him / His
Senior Program Manager, Fedora & CentOS Stream
Red Hat
TZ=America/Indiana/Indianapolis
_______________________________________________
devel-announce mailing list -- devel-announce(a)lists.fedoraproject.org
To unsubscribe send an email to
devel-announce-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-announce@lists.fedora...
- --
Igor Raits <ignatenkobrain(a)fedoraproject.org>
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCgAdFiEEcwgJ58gsbV5f5dMcEV1auJxcHh4FAl7n0oQACgkQEV1auJxc
Hh5v4BAAmjdMeYnF5GMjdH30EweQAz1Wsjex/QN/yUP3GOt50EPfy4jbU2RIwije
RvwKkJF6JAgEY+Q+mKvRWRlTIu3cBA/Kh4qQS/LDzRSuRba6ZUBeZ3aG4Pe1fn4L
XubI8pBHWPfO7W4w3nsF8ivSQoLighQm3/Ee/FqdAUmeD+ZyCqWZLV+hWMX45fMY
LSlBLp+Lx7m0INWNBB5lxiXtvx66pBicyAp3YbWmfWGls8TdSMqpIEhSAizPM+Mn
Kg09SkQqNtEydSAOS+TZi1fe5mQJKWGdaxTXEfUUO5pRSmIt/JR6uDltgru4ltWe
1eeN3Agp8xltChY8oadlK1SdPL5msjxguKVe1vMjoSXsQKzT53gzVAmeN2lCCnyT
122O2qklsG0RV4lx19aIAKpvq43gUnUAKXT6dZVbLIzh5UBfK2qGRuT6KNNVrRb8
N+fnkYqJ4XDPLdvoaAWdAAFn/WohV3/IXdX5jbN1XahJo5kxO7ePc1TVh0u2A4UW
9qdpAU8P0M5zKoreRWwvTkLKSWdz9wRnPJA0iZgxIWFbOBytmYxlKJzNGlGPKt1N
r1dYid3q2QGX5OXNJvwnARQThRTtC+Q295/AF4EPKb4LsV0w7qUYKSe8kjYBRHxv
yezHkTo2EUt4JKB6R64m7e05tDRP7wLMTdzLaxxPem+32Ap3cFM=
=fm7+
-----END PGP SIGNATURE-----