Page MenuHomePhabricator

Add python-is-python3 to releng/node images
Closed, ResolvedPublicBUG REPORT

Description

Steps to replicate the issue (include links if applicable):

all tests for 3d2png fail, holding back merges

What happens?:
This is because it has a component using the python shebang instead of the python3 shebang,
in turn causing node-gyp failures

What should have happened instead?:

  • CI/CD should pass

Software version (on Special:Version page; skip for WMF-hosted wikis like Wikipedia):

Other information (browser name/version, screenshots, etc.):
other environments where this package is build, depend on python-is-python3, which rewires the environment.

Event Timeline

So one solution here would be to add python-is-python3 package to the releng/node packages.

But that might of course fool other builds that depend python version detection... Not sure if that is a realistic possibility.

We could also just +2 the patches while CI/CD is just broken. we seem to get stuck on details now that are holding people back.

Slight danger to keep in mind is that thumbor depends on master 3d2png

TheDJ renamed this task from 3d2png CI/CD broken due to python3 dependency to Add python-is-python3 to releng/node images.Aug 8 2026, 12:13 PM

Change #1323663 had a related patch set uploaded (by Hashar; author: Hashar):

[integration/config@master] dockerfiles: add python-is-python3 to node24/26

https://gerrit.wikimedia.org/r/1323663

Change #1323663 merged by jenkins-bot:

[integration/config@master] dockerfiles: add python-is-python3 to node24/26

https://gerrit.wikimedia.org/r/1323663

Change #1323667 had a related patch set uploaded (by Hashar; author: Hashar):

[integration/config@master] jjb: python-is-python3 in node24/26 images

https://gerrit.wikimedia.org/r/1323667

I have build the images and update the generic-node24 job via https://gerrit.wikimedia.org/r/c/integration/config/+/1323667 . I did not update the other jobs that will be for Monday, hence I am leaving this task open for now.

If we go with Blubber at T434378: CI broken for 3d2png.git, then this can be declined/reverted.

Change #1323667 merged by jenkins-bot:

[integration/config@master] jjb: python-is-python3 in node24/26 images

https://gerrit.wikimedia.org/r/1323667

hashar claimed this task.

Thank you for having split the case of 3d2png to a standalone task (T434378)

The images now have python pointing to python3 which was worth adding. It resolves this task.

I intentionally did not do this, as I wanted to flush out the remaining Python 2 uses and fix them individually. :-(

The images now have python pointing to python3 which was worth adding. It resolves this task.

This task only existed for the purposes of unbreaking 3d2png CI, because I suggested that to TheDJ in Gerrit as part of T434378. Now that 3d2png doesn't use node-test images anymore, I think we can revert this?

I intentionally did not do this, as I wanted to flush out the remaining Python 2 uses and fix them individually. :-(

If there is code using python but expecting python 2.7, it would still fail due to some incorrect syntax. The 3d2png breakage was due to gl npm package and or node-gyp expecting python to be Python 3, which 6+ years after Python 2 got EoL sounds reasonable. And the 3d2png did not get any code passing through CI since 2019, so it is most probably the very last to still had the issue.

It is fine to move on from the python 2 > 3 migration and now have python to be Python 3.