3 ms·
About 10 years ago, before Docker, and before (I knew about?) conda, I was using Python packages with binaries inside to create reproducible virtual environment
by epistasis 4y ago
About 10 years ago, before Docker, and before (I knew about?) conda, I was using Python packages with binaries inside to create reproducible virtual environments with consistently versioned binary tools to go along with all our Python code. We were avoiding virtualization and running on bare metal so this was the best way to distribute code across a cluster.
I added small setup.py scripts to a dozen open source C and Java packages, and deposited them on an internal package server.
It worked OK, and unlike Conda, to this day you can still run an install without burning through CPU-hours of SAT-solving.
Biggest problem was if there were packages that wanted different versions of the same dependency.
- prpl 4y agoFWIW conda has mamba as an option now which (mostly) fixed the slow SAT silver
- epistasis 4y agoMamba is completely unusable for me too.
- divbzero 4y ago> Biggest problem was if there were packages that wanted different versions of the same dependency. How often and in what contexts would you encounter this version dependency issue? Was there a good solution or would you work around the issue by finding compatible versions?
- epistasis 4y agoThis never presented a real problem in practice, but IIRC pip just silently installs over the other version. And since we had a closed system, it was entirely on us to set it up correctly. It was just a discovery a couple years in that we hadn't properly thought of ahead of time.