pip-save NPM Style Package Management for Python
One of my favorite things about npm is how simple it makes it to manage production, testing, and development dependencies with the npm install –save
command. I was browsing through the latest packages on PyPI and I came across pip-save which does basically the same thing as npm –save as a wrapper around pip.
From the Project README:
Currently its a big pain while installing new dependencies using pip. After installing the dependency, you need to figure out the version number and then manually add it to your requirements file. pip-save allows you to install/uninstall any dependecy and automatically add/remove it to/from your requirements file using one command only.I cannot count the number of times where I have read a doc for some package and it said that installation was as simple as
pip install foo
. Sure, installing the package is that easy, but keeping track of versions is a whole different story.
One approach is to dump every single package into your requirements.txt with pip freeze > requirements.txt
but this is troublesome because it also includes dependencies which clutter up the requirements.txt file.
What I then end up doing is finding the package on either GitHub or PyPI, figuring out what the latest version is, putting the package with the version into my requirements.txt file and then running pip install -r requirements.txt
.
pip-save
does exactly what it says on the tin and solves this annoying workflow in one step. It installs whatever package you want, and adds it to your requirements.txt with the version that you installed. Simple, Rustic, Yes.
Thank you for reading! Share your thoughts with me on mastodon or via email.
Check out some more stuff to read down below.
Most popular posts this month
- Daggerversary
- SQLite DB Migrations with PRAGMA user_version
- Moving to New Jersey
- Setting up ANTLR4 on Windows
- Forbidden Words
Recent Favorite Blog Posts
This is a collection of the last 8 posts that I bookmarked.
- Pluralistic: What the fuck is a PBM? (23 Sep 2024) from Pluralistic: Daily links from Cory Doctorow
- The Framework 13 has a new high-res screen! from David Heinemeier Hansson
- 40 Thoughts At 40 from Blog – Brad Frost
- To Blog or to Social-Post from jwz
- Gotchas with SQLite in Production from Anže’s Blog
- Petter Reinholdtsen: More than 200 orphaned Debian packages moved to git, 216 to go from Planet Debian
- Eli Bendersky: You don't need virtualenv in Go from Planet Python
- Introducing Writebook from Jason Fried
Articles from blogs I follow around the net
OpenAI Twitter account once again hacked and used to promote scam token
The Twitter account belonging to OpenAI's news account was compromised and used to "announce" a scam website purporting to announce the $OPENAI token. "All OpenAI users are eligible to claim a piece of $OPENAI’s initi…
via Web3 is Going Just Great September 23, 2024DNA Lounge: Wherein a winnar is us!
As foretold by prophecy, you the people have once again declared DNA Lounge to be "Best Nightclub", and Hubba Hubba Revue to be "Best Burlesque" in the 2024 Best of the Bay! Also "Best Pizza" runner-up for DNA Pizza, and "Best D…
via jwz September 23, 2024SmashingConf NYC
I’m extremely excited to be a part of Smashing Conf NYC coming up on October 7-10. I’ll be: If you’re in NYC or able to make it there, I hope you’re able to make it!
via Blog – Brad Frost September 23, 2024Generated by openring