Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at
Bug 1807527 - nodejs requires Python 2 to build
Summary: nodejs requires Python 2 to build
Alias: None
Product: Fedora
Classification: Fedora
Component: nodejs
Version: rawhide
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
Assignee: NodeJS Packaging SIG
QA Contact: Fedora Extras Quality Assurance
Depends On:
Blocks: BRPY27
TreeView+ depends on / blocked
Reported: 2020-02-26 14:51 UTC by Petr Viktorin
Modified: 2020-02-27 10:04 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2020-02-26 19:19:32 UTC
Type: Bug

Attachments (Terms of Use)

Description Petr Viktorin 2020-02-26 14:51:01 UTC
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:
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.

Comment 1 Stephen Gallagher 2020-02-26 18:58:39 UTC
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.

Comment 2 Stephen Gallagher 2020-02-26 19:19:32 UTC
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.

Comment 3 Petr Viktorin 2020-02-27 10:04:34 UTC
Thank you!

Note You need to log in before you can comment on or make changes to this bug.