(no title)
Max_Limelihood | 3 years ago
(Seriously, I’ve gotten so fed up with Python package management that I just use CondaPkg.jl, which uses Julia’s package manager to take care of Python packages. It is just so much cleaner and easier to use than anything in Python.)
dangerlibrary|3 years ago
I have these aliases in my .bashrc, and I can't remember the last time I had a major issue.
alias venv='rm -rf ./venv && virtualenv venv && source ./venv/bin/activate'
alias vact='source ./venv/bin/activate'
alias pinstall='source ./venv/bin/activate && pip install . && pip install -r ./requirements.txt && pip install ./test_requirements.txt'
I don't have all the fancy features, like automatically activating the virtualenv when I cd into the directory, but I've always found those to be a bigger headache than they are worth. And if I ever run into some incompatibility or duplicate library or something, I blow away the old venv and start fresh. It's a good excuse to get up and make a cup of tea.
Joker_vD|3 years ago
To this day I'm not quite sure why the venv developers decided that sourcing was a good idea; all it does can be effectively replaced with
Just run this script to get into an "activated" shell. To deactivate, just press Ctrl+D. If you're really fancy, you can replace the last line with to run a command directly in the activated environment (and then deactivate it immediately).Izkata|3 years ago
That would be python2, in 3 it's "python -m venv venv" (first venv is package to run, second is directory to put it in)
Otherwise yeah, it's the same and I also use it manually. Never had any problems.
kgodey|3 years ago
[1] https://github.com/python-virtualenvwrapper/virtualenvwrappe...
danielvaughn|3 years ago
It was a nightmare.
rewgs|3 years ago
Never had a single problem, venv + pyenv is a great combo. As far as I can tell, like so many sources of frustration in tech, the issue typically lies with user error/not fully understanding the tool you're using. That isn't saying that there isn't room for improvement -- most notably, package management in Python flies in the face of "there should be one -- and preferably only one -- obvious way to do it" -- but the tools we have work quite well.
pottertheotter|3 years ago
[1] https://github.com/pyenv/pyenv [2] https://github.com/pyenv/pyenv-virtualenv
spprashant|3 years ago
Using virtualenv directly has also been my approach, and has not failed me yet.
I also used Poetry for one of my personal projects, and I liked what I saw.
albert_e|3 years ago
I should learn to use venv properly
Thanks
jimnotgym|3 years ago
birdstheword5|3 years ago
danielvaughn|3 years ago
I'm now curious whether there are languages out there that do have a really nice packaging system.
justinsaccount|3 years ago
https://hpc.guix.info/blog/2021/09/whats-in-a-package/ does a good job of explaining why installing packages like that is a complete shitshow.
prds_lost|3 years ago
zelphirkalt|3 years ago
swyx|3 years ago
i dont need them demystified, i need someone smarter than me to just tell me what to do lol
dwringer|3 years ago
It doesn't really matter, by the time you sit down and use it you'll find whatever that is, has also been deprecated and replaced by 2 more.
ollien|3 years ago
gosukiwi|3 years ago
hot_gril|3 years ago
Dockerfile ;)