4 ms·
My personal approach is: - use miniconda ONLY to create a folder structure to store packages and to specify a version of python (3.10 for example) - use jazzb
by cmcconomy 4y ago
My personal approach is:
- use miniconda ONLY to create a folder structure to store packages and to specify a version of python (3.10 for example)
- use jazzband/pip-tools' "pip-compile" to create a frozen/pinned manifest for all my dependencies
- use pip install to actually install libraries (keeping things stock standard here)
- wrap all the above in a Makefile so I am spared remembering all the esoteric commands I need to pull this all together
in practice, this means once I have a project together I am:
- activating a conda environment
- occasionally using 'make update' from to invoke pip-compile (adding new libraries or upgrading), and
- otherwise using 'make install' to install a known working dependency list.
- nose-wuzzy-pad 4y agoThis seems simplistic and low drag. Do you have an example you can share? Thanks!
- cmcconomy 4y agoSure: https://gist.github.com/cmcconomy/fa9cad3fda009e522264ea8a21a9a811 https://gist.github.com/cmcconomy/fa9cad3fda009e522264ea8a21... https://gist.github.com/cmcconomy/9bca20856a6a48704555bc8dcf169ba7 https://gist.github.com/cmcconomy/9bca20856a6a48704555bc8dcf... Hope this helps!
- harold_b 4y ago[dead]
- raihansaputra 4y agothanks for sharing. I've thought about the same approach. Conda installs are.. annoying to say the least, but they do provide a better UX compared to manually managing venvs. Your approach seems mature. (why not ./venv/ per project? because you can't do that when your project directory is on another disk) (also i got burned with poetry in regards of very long dependency checking. I'm not making libraries, just an environment for my own projects)