top | item 4574812

Pin Your Packages

3 points| nvie81 | 13 years ago |nvie.com

2 comments

order

zacharyvoase|13 years ago

A point worth raising: pinning versions of dependencies in your reusable Python packages is a great way of creating conflicts. e.g.: package A requires lxml==2.2.0 and package B requires lxml==2.2.1. Both packages may even work with lxml 2.2.2, but by being overly specific you've created a packaging conflict.

Perhaps a caveat should apply to this article -- it's only applicable to deployments, not to Python packages intended for third-party use.

martey|13 years ago

The article does state that you should not do version pinning with libraries:

WARNING: don’t pin by default when you’re building libraries! Only use pinning for end products.