astral-sh / uv

An extremely fast Python package and project manager, written in Rust.
https://docs.astral.sh/uv
Apache License 2.0
21.51k stars 631 forks source link

feature request : shiv/pyinstaller like functionality? #2799

Open sahmad-d2x opened 6 months ago

sahmad-d2x commented 6 months ago

Hi,

One of things I have often found pip lacking has been shiv or pyinstaller like functionality. It would be amazing (and cargo/rust, go-like if uv could build out binaries/zipped virtualenvs like shiv or pyinstaller do. I realize that this might be out of scope for pip (it installs packages and does not build them?) but I think since this particular task is also packaging-centric, pip or uv should provide the feature/ability.

https://shiv.readthedocs.io/en/latest/ https://pyinstaller.org/en/stable/

samypr100 commented 5 months ago

From purely a build perspective, if uv had an exposed pip wheel equivalent, it might be close enough to satisfy this request and stick to standards. On the other hand, pyinstaller also bundles python into the mix, so it serves the different purpose by of freezing python and it's dependencies into a platform specific single binary. Definitely a wish to have something like that experience. I think once the low level tooling is flushed out, something like that can become closer to being achievable.