| This helps highlights the main issue I have with python today, and that's running python apps. Having to ship a compiler to a host|container to build python with pyenv, needing all kinds of development headers like libffi for poetry. The hoopla around poetry init (or pipenv's equivalent) to get a deterministic result of the environment and all packages. Or you use requirements files, and don't get deterministic results. Or you use effectively an entire operating system on top of your OS to use a conda derivative. And we still haven't executed a lick of python. Then there's the rigmarole around getting one of these environments to play nice with cron, having to manipulate your PATH so you can manipulate your PATH further to make the call. It's really gotten me started questioning assumptions on what language "quick wins" should be written in. |
There are a couple other tools that take the same approach, including PyOxidizer[3], which was written by a Mercurial maintainer.
[1] https://docs.bazel.build/versions/master/be/python.html#py_r...
[2] https://github.com/erain/bazel-python-example
[3] https://pyoxidizer.readthedocs.io/en/stable/overview.html