Python 2 reached upstream end-of-life in January 2020. In Fedora Rawhide, it's now provided from the compat package `python27`.
Packages that only use Python 2 at build time, like nodejs, had a general exception to keep using it in Fedora 31. Now, the dependency should be removed.
I hear that Node.js v13.x should be compatible with Python 3.
If it's possible that the dependency won't be removed in Fedora 33. Please request a FESCo exception. You can refer to the exception for mercurial as an example: https://pagure.io/fesco/issue/2243
It's good to mention:
- What is the reason for the Python 2 build dependency?
- What are the upstream/community plans/timelines regarding Python 2?
- What is the guidance for porting the build to Python 3? (Assuming that there is someone who generally knows how to port to Python 3, but doesn't know anything about the particular package, what are the next steps to take?)
If you need anything from us, or something is unclear, please mention it here.
The Node.js 13.x that I released yesterday does not in fact need Python 2 to build. That was an oversight from copying the spec file from the 12.x series.
Additionally, 12.x has "experimental" support for building using Python 3 that appears to work flawlessly, so I'm going to drop it from that stream as well.
I've pushed specfile changes to dist-git so that the next time we build, it will not have python 2 build-dependencies. I'm not pushing out an update at this time because it's a build-system-only change.