OT, but....

Assuming your dependencies have version agnostic wheels (either manylinux or pure python), what would be the advantage to you of putting everything together in a single file?

That being said, I suppose it would be possible to create your own manylinux wheels that include all the necessary dependencies, but that would make building more difficult and opens up the possibility that the installed modules will conflict with users' existing installed packages.

which is why conda exists -- conda can package up many things besides python packages, and you WILL need things besides python pacakges.

building conda packages for everything you need, and then creating an environment.yaml file, and you can create a consistent environment very easy across systems (even across OSs) There is even a project (I forgot what its called -- "collections" maybe?) that bundles up a bunch of conda packages for you.

and with conda-forge, there are an awful lot of packages already to go.

If you need even more control over your environment, then Docker is the way to go -- you can even use conda inside docker...

-CHB








 

Another possibility would be to use docker to create a container [2] that includes everything you need to run the code in an isolated environment that won't conflict

_______________________________________________
Python-ideas mailing list
Python-ideas@python.org
https://mail.python.org/mailman/listinfo/python-ideas
Code of Conduct: http://python.org/psf/codeofconduct/



--

Christopher Barker, Ph.D.
Oceanographer

Emergency Response Division
NOAA/NOS/OR&R            (206) 526-6959   voice
7600 Sand Point Way NE   (206) 526-6329   fax
Seattle, WA  98115       (206) 526-6317   main reception

Chris.Barker@noaa.gov