diff options
-rw-r--r-- | CHANGES.rst | 6 | ||||
-rw-r--r-- | ptr.py | 12 | ||||
-rw-r--r-- | setup.py | 2 |
3 files changed, 19 insertions, 1 deletions
diff --git a/CHANGES.rst b/CHANGES.rst index 37882ab..3fa11b9 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -1,3 +1,9 @@ +4.2 +=== + +* #40: Remove declared dependency and instead assert it at + run time. + 4.1 === @@ -93,6 +93,18 @@ class PyTest(orig.test): self.index_url = None self.allow_hosts = None self.addopts = [] + self.ensure_setuptools_version() + + @staticmethod + def ensure_setuptools_version(): + """ + Due to the fact that pytest-runner is often required (via + setup-requires directive) by toolchains that never invoke + it (i.e. they're only installing the package, not testing it), + instead of declaring the dependency in the package + metadata, assert the requirement at run time. + """ + pkg_resources.require('setuptools>=27.3') def finalize_options(self): if self.addopts: @@ -32,7 +32,7 @@ params = dict( py_modules=['ptr'], python_requires='>=2.7,!=3.0,!=3.1', install_requires=[ - 'setuptools>=27.3', + # setuptools 27.3 is required at run time ], extras_require={ 'testing': [ |