On 25 Dec 2014 06:51, "Marcus Smith" <qwc...@gmail.com> wrote: > > > > Above, I used the word "environment", which was just short hand for the whole set of installed packages on the Python path for the interpreter used by your application. This is often literally a "virtual environment" created by virtualenv. > > To me, the distinction is over which project *owns* the whole environment, i.e what is the top-level project that the environment exists for. > > Requirements files are typically associated with the project that owns the environment.
>From my perspective, it's mainly a question of "Who is responsible for defining this metadata?". setup.py -> always the project publisher (and getting too specific annoys system integrators) requirements.txt -> always the system integrator (and you can be as specific as you like) Web applications just blur the line a lot, as the publisher and integrator are often the same person or group. For integration into Linux distros and other larger systems though, we prefer the first kind of metadata, as that's usually a bit more lenient on the acceptable versions of dependencies. Cheers, Nick. > > > Marcus > > _______________________________________________ > Distutils-SIG maillist - Distutils-SIG@python.org > https://mail.python.org/mailman/listinfo/distutils-sig >
_______________________________________________ Distutils-SIG maillist - Distutils-SIG@python.org https://mail.python.org/mailman/listinfo/distutils-sig