<@U02TSJJT9DJ> I actually think PyOxidizer could b...
# development
h
@wide-midnight-78598 I actually think PyOxidizer could be stabilized if we wanted to in Pants 2.10 🙂 Probably makes sense to wait till 2.11 so we have time to make changes if we need, but it's looking really solid! Great contribution!
❤️ 1
w
Definitely feels like a 2.11 use case. I have a lot of projects (contrived, and real) and I'm finding out new stuff all the time. Nothing that would really affect Pants just yet, but I'm sure I'll run into something
👍 1
h
fwict the main thing that could use more attention is
filesystem_resources
. Iiuc, if you're not careful then we will instruct PyOxy to install the requirement both as a normal wheel and as a filesystem resource? That's because if
numpy==1.17
is in the
install_requires
of your
python_distribution
($WHEELS), it will already be installed https://www.pantsbuild.org/v2.10/docs/pyoxidizer#filesystem_resources-field
w
Hmm, that's a good point - the classified vs unclassified resources in general needs more attention. Some of them come up because of how libraries are written, other ones due to compiled libraries, and so on. Fortunately, some of my projects have these cases - so there is more and more to learn from it. I will admit to rarely digging into the wheels though, which I should
👍 1
🙌 1
I should note that one of the goals is to move to sources, rather than wheels - it's a bit more complicated, but could eliminate some of these issues I think.
👍 1
Still need to support the wheel use case though, so 🤷
h
Ah we probably don't want to stabilize until that is figured out, sg
w
Yeah, I picked wheels because they were simple, and because I have a hunch that there is a lot of overlap/duplicated code with the
python_distribution
- but using wheels might come with other quirks (as we've already seen with dist in dist and so forth), so yeah, there are still some outstanding questions in my mind as to the best route forward before I'd call it "stable" I'd like to see if we can avoid some of those nested dist workarounds, and make sure there is no duplication of dependencies, etc etc
So, still very experimental 🙂
👍 1
h
I'd like to see if we can avoid some of those nested dist workarounds,
Fwit, I think the workaround of having to explicitly specify every
python_distribution
for
dist-on-dist
is totally reasonable. No need to simplify that part further (Altho I definitely will not stop you if you're motivated to find a better approach, that's always invited)
Oh, SJ, do you know how the Python interpreter gets chosen? Whatever the pyoxidizer.pex gets built with?
w
I like automation as much as possible and error'ing out as soon as possible, so either dists should be auto-specified or I'd like it to tell you that dists were missing... I'd call the workaround "okay-ish" Re: Python interpreter. The last time I checked it was the interpreter used to build it, But I should confirm that it wasn't just a coincidence that my interpreter didn't just match something randomly.
👍 1