-----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: msu...@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.org/thread/UTHLSBCLDTFOVEDVQR4XOMNKBJXSHOTF/#Z5D77LVDWWTO7HSP43MYQ7F5MKL6D6TK
> 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#Obsoleting_Packages
> 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_packages.rst
> 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#Obsoleting_Packages
> 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-annou...@lists.fedoraproject.org
> To unsubscribe send an email to 
> devel-announce-le...@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-annou...@lists.fedoraproject.org
- -- 
Igor Raits <ignatenkobr...@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-----
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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

Reply via email to