On Wed, Apr 29, 2020 at 10:28 AM Tomas Orsava <tors...@redhat.com> wrote:
>
> Hello everyone.
> I’m working on a change to rename pythonXY packages to pythonX.Y, e.g. 
> python39 to python3.9.
>
> Motivation:
> When you install an additional Python interpreter, the command that runs it 
> contains a dot (e.g. /usr/bin/python3.9) but the package name does not (e.g. 
> dnf install python39).
> The name without a dot is a technical debt that we carry since (at least) the 
> python26 package in RHEL 5 for consistency. The name with the dot makes much 
> more sense to Red Hat Python maintainers.
> It’s a minor inconsistency, but we'd like to get it right in RHEL, and since 
> RHEL splits off from Fedora, it will be bugging us still in 2030+ unless we 
> fix it now. Especially with the likely coming version 3.10 the package name 
> python310 is confusing. This will also get us in sync with e.g. Debian 
> package names.
>
> Backwards compatibility:
> We plan to create new components in rawhide containing the dot (e.g. 
> python3.9) for all Python interpreters (except soon-to-be-retired python34 
> and python26) and push the git commits from pythnoXY to them to preserve the 
> history.
> The packages will Provide and Obsolete the old name without a dot (e.g. 
> python39). The current packages already provide the name with the dot, so 
> this will be just a switch between real name and virtual provide.
> Therefore any package that depends on these components will continue to work 
> just fine. And in time we’d like to fix all of those to use the new name, 
> which is backwards compatible, because it is already provided now (as a side 
> note, the packages are generally just recommended, not required).
>
> Technical details:
> There has been a recent rawhide-only change to the %python_provide macro that 
> acts on packages named `python3-foo` and adds for them a new Provide 
> `python38-foo`.
> We’d like to change this to Provide `python3.8-foo` instead.
> Since this has been rawhide-only so far, and because there’s no real reason 
> to depend on these provides yet, we don’t expect any breakage.
>
> What do you think? Do you foresee any problems?

I'm good with this plan, except for one thing I thought of we need to
address: How do we do comparisons for python versions? Will we still
have a %python_version_nodots macro so that we can do integer
comparisons? I know that people have been abusing the
%python3_pkgversion macro for doing this (which you shouldn't be
doing!), so we need an official guideline for how to do those
comparisons.



-- 
真実はいつも一つ!/ Always, there's only one truth!
_______________________________________________
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-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/python-devel@lists.fedoraproject.org

Reply via email to