How far away is Pants from running natively on Win...
# general
g
How far away is Pants from running natively on Windows? Just not prioritized? Impossible? Works but not supported? I'm considering moving one of our repositories from Poetry to Pants, but it currently supports Windows/Linux/Mac. And some of the those working in the repository aren't super fond of WSL, unfortunately.
1
1
b
I think it's a significant amount of work. The engine is compiled rust and has a lot of Unix only dependencies, and Unix specific code 🫤
g
Was afraid of that. Thank you!
b
My last gig was Python monorepo, but they had some native windows code, so wsl is out. As a pants maintainer I want so badly for them to get to use it, but alas here we are. So I feel your pain, somewhat
g
Somewhat same situation... Game engines don't like Linux. 🙂 I think we can work around it with releases if we agree that's good enough; as it's mostly usage of the end-application that is important for those on Windows. Definitely a point of negotiation, even before starting to evaluate it.
h
There is work in progress by @enough-analyst-54434 to get Pex working natively on Windows. That is a prerequisite to getting Pants itself to do so.
How hard that will then be would depend on A) how well the relevant Rust crates abstract away POSIX stuff and B) chasing down all the papercuts
Would this benefit from dockerized execution, or are there native extensions that then have to run natively on Windows?
g
From my perspective just being able to do the regular Python lint/test/run would be enough. Docker (no chance getting OCI to run on Win unfortunately) and Pex support would be stretch goals.
b
(pex is the powerhouse of Pants' Python support. So even though you may not need it, Pants certainly does 😛)
h
To clarify my question: do you need the tests to pass natively on windows for correctness, or would a situation where you trigger the builds on windows, but they run in a container, sufficient?
g
Joshua - thanks, understood. 🙂 I knew it was a core piece but not a req. Good to know. Benjy - For my very specific use-case GPU container support is a requirement since some of our tests depend on CUDA support. Bar that, sounds like a good stepping stone, and I don't care about platform except for very narrow use-cases.