[Python-ideas] Re: Enhancing Zipapp
On Wed, Jan 8, 2020 at 1:24 AM Abdur-Rahmaan Janhangeer <
arj.python at gmail.com> wrote:
> But a thought on that -- you may be able to accomplish something similar
>> with conda, "conda constructor", and "conda run". -- or a new tool built
>> from those. The idea is that the first time you ran your "app", it would
>> install its dependencies, and then use them in an isolated environment. But
>> if the multiple apps had the same dependencies, they would share them, so
>> you wouldn't get major bloat on the host machine.
> I guess it's time to dig more into anaconda, been
> putting it off, will do.
to be clear -- you want to look at "conda", not "Anaconda" -- conda is a
package manager, Anaconda is a distribution created with the conda package
> but a wheel is just as big as the installed package (at least a zipped
>> version) -- it's essentially the package compressed into a tarball.
> I really hope C extentions would become redundent someday
> in Python, which would make Python development real
> Python dev.
That's not going to completely happen. Which does not mean that a solution
that doesn't support them isn't still useful for a lot. But it would be
interesting to see how many commonly used packages on PyPi rely on C
extensions (other than the SciPy Stack).
> But: "Unlike ?conventional? zipapps, shiv packs a site-packages style
>> directory of your tool?s dependencies into the resulting binary, and then
>> at bootstrap time extracts it into a ~/.shiv cache directory."
> Maybe we can have a PYZ directory where the
> packages for each app are extracted then it's not
> a global dump but more specific
I'm not sure how that differs from a .shiv directory, which is not global.
But a way to share packages in the "central place for packages" would be
nice. -- maybe how conda does it with hard links?
Christopher Barker, PhD
Python Language Consulting
- Scientific Software Development
- Desktop GUI and Web Development
- wxPython, numpy, scipy, Cython