On 03/16/2015 02:53 PM, Daniel Holth wrote:
No one should be asked to learn how to extend distutils, and in
practice no one knows how.

People have been begging for years for working setup_requires, far
longer than I've been interested in it, and all they want to do is

import fetch_version
setup(version=fetch_version(), ...)

Then they will eventually notice setup_requires has never worked the
way most people expect. As a result there are too few setup.py
abstractions.

FWIW, this particular use case (retrieving the version by importing it or a function that returns it after it reads a file or whatever), is dodgy. It's way better that code that needs version info inside the package consult pkg_resources or some similar system:

import pkg_resources
version = pkg_resources.get_distribution('mydistro').version

I realize there are other use cases that setup_requires solves, and that using pkg_resources can be a performance issue. I also realize that people badly want to be able to "from mypkg import version" or "from mypkg import get_version". But I'd try to come up with a different sample use case for driving decision-making because IMO we should dissuade them from doing that. Python packaging should be able to provide them this information, they should not need to provide it themselves.

- C


_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
https://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to