On 16/02/2022 11:45, marco atzeri wrote:
On Wed, Feb 16, 2022 at 12:11 PM Adam Dinwoodie  wrote:

While wrangling a bunch of Python packages for my Cygwin installation,
I've noticed an inconsistency about how python3 vs python3x packages are
installed.

Only one ? ;-)

As an example: the python3 package itself describes itself as a
meta-package; the package itself is almost empty, and the key thing
selecting the package does is depend on the latest python3x package,
currently python39.  The same behaviour is in place with, for example,
python3-tkinter.

Yes, these are real meta packages that pull the latest version

However the python3-pytest package is marked as obsolete, and is
obsoleted by python36-pytest.  If I select python3-pytest for
installation, the package that's actually installed is python36-pytest,
even though there's a python39-pytest package available.

This inconsistency means that someone naively installing python3-tkinter
and python3-pytest will end up with both python3.9 and python3.6
installed, with neither installation having access to both the pytest
and tkinter modules.

This is an artifact of of cygport creating python3-xxxx packages
also for packages that never had a real package called like that.
We had  a discussion if it was worth to make the  python3-xxxx pulling the
  python39-xxxx instead of python39-xxxx and it was decided against it.

I think this is more the emergent behaviour due to various changes than the result of a considered decision.

I think this inconsistency is liable to cause confusion; it certainly
confused me until I worked out what was going on.  In my ideal world,
we'd be in a situation where I could specify `python3-foo` to an install
script and it'd automatically pick up the latest Python version
available; I could specify `python3x-foo` if I wanted a specific older
release.  But at the very least, I'd really like to see these packages
being handled consistently one way or another.

I expect no one looking for a package will look for obsolete packages.

It makes 'install python3-foo' a moving target for scripts.

Patches to cygport to make this work better welcome!

--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to