#2264 Python 2 Exception for mozjs68
Closed: Accepted 3 years ago by zbyszek. Opened 3 years ago by frantisekz.

I'd like to request an exception for mozjs68 to use Python 2 on buildtime. It does not require Python 2 on runtime.

Review Request: https://bugzilla.redhat.com/show_bug.cgi?id=1768640

Package is based on mozjs60, which previously got FESCO Python 2 Exception: https://pagure.io/fesco/issue/2249

Python 2 packages it build requires:

  • python2-devel

mozjs68 is JavaScript engine from Firefox 68. Upstream has some plans to port build tooling to Python 3 [0] , but that's not going to be merged into mozjs68 for sure.

mozjs68 is (probably) going to be required by GNOME Shell 3.36 : https://gitlab.gnome.org/GNOME/gjs/issues/270

Once upstream Firefox moves to Python 3 tooling, mozjs is going to use that too, so this way, some future mozjs package won't require Python 2. But this might take a while.

I am planning to retire mozjs68 once there isn't anything depending on it (probably moved to newer mozjs).

[0] https://m.wiki.mozilla.org/Firefox/Python_3_Migration

python-six maintainer here.

I reckon that six isn't a project that would ever drop Python 2 support, considering it is a Python 2/3 compatibility layer. Hence I'm pretty much OK to maintain python2-six as long as it is needed by something.

However, when a project needs six, it usually signalizes that it supports both Pythons. Isn't it the case here?

However, when a project needs six, it usually signalizes that it supports both Pythons. Isn't it the case here?

So, I've just tried to run tests with Python 3. It seems they're Python 3 compatible but:

  • There is small change needed to make it compatible with python-progressbar2 (not a problem)
  • There are some Python packages that are required for tests, but are not packaged in Fedora (mozlog,...)

When I run these tests with Python 2, I'll have everything needed prepared by build scripts (which are Python 2), but I'd need to handle everything if I want to run tests with Python 3.

I can help and co-maintain python2-six to keep it in Fedora if you'd like.

I'd very much prefer if you take the extra steps towards using Python 3. Is it too tedious? Should I have a look?

Metadata Update from @churchyard:
- Issue tagged with: python 2 exception

3 years ago

So, I was able to patch [0] tests to run with Python 3 (thanks for out of ticket comments @churchyard ). I'll update the request to only mention python2-devel and not python2-six as BR.

[0] https://paste.centos.org/view/c57d160c


+1 for the exception to use Python 2 to build, without further 3rd party libs.

+1 to exception for python2-six (python2-devel only are already mass granted right?)

python2-six is no longer needed here.

python2-devel are mass granted for Fedora 32 only.

APPROVED (+4,0,-0)

(not counting @kevin who voted a bit differently, but the vote would not change the outcome)

Metadata Update from @churchyard:
- Issue tagged with: pending announcement

3 years ago

Metadata Update from @zbyszek:
- Issue untagged with: pending announcement
- Issue close_status updated to: Accepted
- Issue status updated to: Closed (was: Open)

3 years ago

Login to comment on this ticket.