With Mac Silicon coming out very soon..it’s even m...
# announce
h
With Mac Silicon coming out very soon..it’s even more important we start building Pants for more platforms than x86. One challenge is that we release Pants as a py36, py37, and py38 wheel. We already build 6 wheels, and any new platform means 3 more wheels. One solution is for us to switch to “rust embeds python” (https://github.com/pantsbuild/pants/issues/7369). In the meantime, thoughts on requiring Py37 or Py38 to run Pants? Dropping Py36.
Important clarification: this does not imply your own code must be Py37+. You only need this interpreter in your environment to run Pants
@wooden-thailand-8386 would this be an issue for y’all? Do you have access to a Py37 or Py38 interpreter in your CI? Again, you don’t need to change your own code.
w
Hey @hundreds-father-404 here we’re already running everything with Py37 (could potentially migrate to Py38 if needed) and I don’t think that would be an issue.. we do have access to a python interpreter in our CIs, the agent that runs it is a specific agent with 3.7 installed.
💯 1
And I love the idea of supporting more platforms bc this might even help with that
alpine
thing that we discussed a couple of months ago
Although after reading some articles apparently
alpine
isnt a good base image for python stuff but yeah… the idea is good 🙂
h
Indeed, that’d be great to support Alpine, and other platforms like Raspberry Pi (arm)
w
Ha, you read my mind. I have a rpi laying around and would be nice to use it on it
💯 1
🥧 1
h
I think requiring Python3.7 or 3.8 is fine
Frankly even just requiring 3.7 is fine
h
We must support 38 - dep inference would fail on Py38-only syntax otherwise 😕 It’d be nice to require Py38 to run, but I’m afraid too few of CI environments offer it still
w
Just out of curiosity, that issue that you mentioned about “rust embeds python”, would it open the possibility of
.pex
having python embedded ?
h
No, we would use PyOxidizer to distribute. It’s outside the scope for Pex to ever embed an interpreter, but there are some other binary formats that do that, like PyInstaller iirc. We would love for Pants to support more binary formats than Pex, setup.py dists, and AWS lambdas
w
oh cool, I guess that’d do the trick
h
Let us know if you’d be interested in adding support for another binary format, we’re happy to help with writing that. for example, a user has requested support for PyInstaller: https://github.com/pantsbuild/pants/issues/10684