Python 3.5 and 3.6 removal (was Re: Bonfire of the Packages)
Brian Inglis
Brian.Inglis@SystematicSw.ab.ca
Wed Mar 27 21:18:58 GMT 2024
On 2024-03-27 14:07, Jon Turney via Cygwin-apps wrote:
> On 24/03/2024 18:51, Brian Inglis via Cygwin-apps wrote:
>> On 2024-03-24 11:46, Jon Turney via Cygwin-apps wrote:
>>> On 24/03/2024 17:31, Marco Atzeri via Cygwin-apps wrote:
>>>> On 24/03/2024 15:07, Jon Turney wrote:
>>>>> On 24/09/2023 13:32, Jon Turney via Cygwin-apps wrote:
>>>>>
> [...]
>>
>> Not sure why my source package nghttp2 shows python install packages, when
>> they were dropped after 1.43 IIRC: build deps no longer include python/-devel?
>
> If you haven't taken any specific action to retire the python-3x-nghttp2
> packages, the existing ones will continue to be available indefinitely.
>
> Firstly, it seems there's a question here about what are upstream's plans for
> the users of the python bindings for this library.
>
> Are they supposed to migrate to some alternate bindings maybe available from a
> separate repo? Or are they just out of luck?
SOL! Dropped them in 1.52, probably why 1.31.0..1.51.0 are hanging around.
>> And why does that nghttp2 source package show a dozen archived source
>> versions, when its installed packages have only three?
>
> The simple answer to that is we retain the source package for all available
> install packages. This seems essential for an open-source project.
>
> Now, as to why there are so many installable packages, this is the intersection
> of a couple of unfortunate issues.
>
> 1. 'python3-nghttp2' is an "old-style" obsoletion package, where the package
> exists, but is of category _obsolete, and requires the replacement package.
>
> These are terrible, because we can't remove the obsolete package because that's
> what records the fact of obsoletion.
>
> I actually have some code for calm to internally convert that to a "new-style"
> obsoletion, where the replacement package itself records the obsoletion (i.e.
> python36-nghttp2 obsoletes: python3-nghttp2), which it continues to remember
> about even after the package which contains that obsoleting is expired.
>
> Once that's done, all those "old-style" obsoletion packages lingering in our
> package repository can be removed (along with their corresponding source).
>
> But I still need to do some testing before that can be deployed.
>
> (However, all that's probably not what's actually wanted with python packages:
> it's preferable to have python3-foo be a virtual package which pulls in
> python3x-foo, where python3x is the current python, so that scripted installs
> can be written which ask for python3 and python3-foo and continue to work while
> x changes...)
>
> 2. We haven't purged old python versions for a long time, so e.g the python36
> binding packages are still lingering.
>
> As you can see, I'm just now getting around to looking at expiring python36,
> which eventually should lead to python36-nghttp2 being expired (insert some
> observations about how it doesn't have to be me doing these things here)...
>
>> Feel free to purge as appropriate, or tell me what to add to cygport, hints, etc!
>
> So, the long list of source versions will hopefully be reduced in the fullness
> of time...
Could I just add to nghttp2.cygport that nghttp2 obsoletes
python{2{,7},3{,6,7,8,9}}-nghttp2?
Does this have to remain in the cygport forever to avoid keeping nghttp2 vx.x.x
around?
--
Take care. Thanks, Brian Inglis Calgary, Alberta, Canada
La perfection est atteinte Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add
mais lorsqu'il n'y a plus rien à retirer but when there is no more to cut
-- Antoine de Saint-Exupéry
More information about the Cygwin-apps
mailing list