My colleague Andrew Halberstadt stepped up with a great contribution on hashin (on PyPI). Now you can install multiple packages in one sweep. Like this:

$ hashin requests Django premailer mincss

And if you need to specify a different requirements file than the default (./requirements.txt) or a different algorithm than the default (sha256) you can do that like this:

$ hashin requests Django premailer mincss --algorithm=sha512 --requirements-file=dev/reqs.txt

or

$ hashin requests Django premailer mincss -a sha512 -r dev/reqs.txt

This is an important change if you were used to typing:

$ hashin somepackage dev/reqs.txt

...because if you continue to do that it's going to try to fetch the hash for a PyPI package supposedly called "dev/reqs.txt".

Thanks @ahal!

Note! The operation is not atomic. So if you do hashin requests somejunk it will hash in the latest requests to your requirements.txt and error on the second one.

Comments

Your email will never ever be published.

Previous:
django-html-validator - now locally, fast! August 12, 2016 Python, Web development, Django
Next:
Django test optimization with no-op PIL engine October 27, 2016 Python, Django
Related by category:
A Python dict that can report which keys you did not use June 12, 2025 Python
Combining Django signals with in-memory LRU cache August 9, 2025 Python
Native connection pooling in Django 5 with PostgreSQL June 25, 2025 Python
Faster way to sum an integer series in Python August 28, 2025 Python
Related by keyword:
hashin 0.14.0 with --update-all and a bunch of other features November 13, 2018 Python, Linux
hashin 0.15.0 now copes nicely with under_scores June 15, 2020 Python
Bestest and securest way to handle Python dependencies February 1, 2016 Python
hashin 0.14.5 and canonical pip hashes January 31, 2019 Python