From 8018f634577921a387ac342cae2ecbaf4a8bf995 Mon Sep 17 00:00:00 2001 From: Romain Dorgueil Date: Sun, 30 Apr 2017 10:14:44 +0200 Subject: [PATCH] trying to force exact requirements in the reqs.txt file while setup.py is a bit more loose. --- Makefile | 7 ++-- Projectfile | 11 ++++--- requirements.txt | 6 ++++ setup.py | 83 +++++++++++++++++++++--------------------------- 4 files changed, 52 insertions(+), 55 deletions(-) diff --git a/Makefile b/Makefile index e6bded1..a9c2888 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ # This file has been auto-generated. # All changes will be lost, see Projectfile. # -# Updated at 2017-04-28 06:33:29.712011 +# Updated at 2017-04-30 10:12:39.793759 PYTHON ?= $(shell which python) PYTHON_BASENAME ?= $(shell basename $(PYTHON)) @@ -10,7 +10,6 @@ PYTHON_REQUIREMENTS_DEV_FILE ?= requirements-dev.txt QUICK ?= VIRTUAL_ENV ?= .virtualenv-$(PYTHON_BASENAME) PIP ?= $(VIRTUAL_ENV)/bin/pip -PIP_INSTALL_OPTIONS ?= PYTEST ?= $(VIRTUAL_ENV)/bin/pytest PYTEST_OPTIONS ?= --capture=no --cov=bonobo --cov-report html SPHINX_OPTS ?= @@ -25,13 +24,13 @@ YAPF_OPTIONS ?= -rip # Installs the local project dependencies. install: $(VIRTUAL_ENV) if [ -z "$(QUICK)" ]; then \ - $(PIP) install -U pip wheel $(PIP_INSTALL_OPTIONS) -r $(PYTHON_REQUIREMENTS_FILE) ; \ + $(PIP) install -U pip wheel -r $(PYTHON_REQUIREMENTS_FILE) ; \ fi # Installs the local project dependencies, including development-only libraries. install-dev: $(VIRTUAL_ENV) if [ -z "$(QUICK)" ]; then \ - $(PIP) install -U pip wheel $(PIP_INSTALL_OPTIONS) -r $(PYTHON_REQUIREMENTS_DEV_FILE) ; \ + $(PIP) install -U pip wheel -r $(PYTHON_REQUIREMENTS_DEV_FILE) ; \ fi # Cleans up the local mess. diff --git a/Projectfile b/Projectfile index f8d446f..73a534c 100644 --- a/Projectfile +++ b/Projectfile @@ -20,12 +20,13 @@ enable_features = { 'yapf', } +# stricts deendencies in requirements.txt install_requires = [ - 'colorama ==0.3.9', - 'fs ==2.0.3', - 'psutil ==5.2.2', - 'requests ==2.13.0', - 'stevedore ==1.21.0', + 'colorama >=0.3,<1.0', + 'fs >=2.0,<3.0', + 'psutil >=5.2,<6.0', + 'requests >=2.0,<3.0', + 'stevedore >=1.21,<2.0', ] extras_require = { diff --git a/requirements.txt b/requirements.txt index d6e1198..0fa8267 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1 +1,7 @@ -e . + +colorama ==0.3.9 +fs ==2.0.3 +psutil ==5.2.2 +requests ==2.13.0 +stevedore ==1.21.0 diff --git a/setup.py b/setup.py index 5b276f8..0f2d0b8 100644 --- a/setup.py +++ b/setup.py @@ -8,68 +8,59 @@ root_dir = os.path.dirname(os.path.abspath(__file__)) tolines = lambda c: list(filter(None, map(lambda s: s.strip(), c.split('\n')))) - def read(filename, flt=None): try: with open(filename) as f: content = f.read().strip() return flt(content) if callable(flt) else content - except EnvironmentError: + except FileNotFoundError: return '' - # Py3 compatibility hacks, borrowed from IPython. try: execfile except NameError: - def execfile(fname, globs, locs=None): locs = locs or globs exec(compile(open(fname).read(), fname, "exec"), globs, locs) - version_ns = {} -try: - execfile(os.path.join(root_dir, 'bonobo/_version.py'), version_ns) -except EnvironmentError: - version = 'dev' -else: - version = version_ns.get('__version__', 'dev') +execfile(os.path.join(root_dir, 'bonobo/_version.py'), version_ns) +version = version_ns.get('__version__', 'dev') setup( - name='bonobo', - description='Bonobo', - license='Apache License, Version 2.0', - install_requires=['colorama ==0.3.9', 'fs ==2.0.3', 'psutil ==5.2.2', 'requests ==2.13.0', 'stevedore ==1.21.0'], - version=version, - long_description=read('README.rst'), - classifiers=read('classifiers.txt', tolines), - packages=find_packages(exclude=['ez_setup', 'example', 'test']), - include_package_data=True, - data_files=[ - ( - 'share/jupyter/nbextensions/bonobo-jupyter', [ - 'bonobo/ext/jupyter/static/extension.js', 'bonobo/ext/jupyter/static/index.js', - 'bonobo/ext/jupyter/static/index.js.map' - ] - ) - ], - extras_require={ - 'dev': [ - 'coverage >=4,<5', 'pylint >=1,<2', 'pytest >=3,<4', 'pytest-cov >=2,<3', 'pytest-timeout >=1,<2', 'sphinx', - 'sphinx_rtd_theme', 'yapf' - ], - 'jupyter': ['jupyter >=1.0,<1.1', 'ipywidgets >=6.0.0.beta5'] - }, - entry_points={ - 'bonobo.commands': [ - 'init = bonobo.commands.init:register', 'run = bonobo.commands.run:register', - 'version = bonobo.commands.version:register' - ], - 'console_scripts': ['bonobo = bonobo.commands:entrypoint'], - 'edgy.project.features': ['bonobo = ' - 'bonobo.ext.edgy.project.feature:BonoboFeature'] - }, - url='https://www.bonobo-project.org/', - download_url='https://github.com/python-bonobo/bonobo/tarball/{version}'.format(version=version), + name = 'bonobo', + description = 'Bonobo', + license = 'Apache License, Version 2.0', + install_requires = ['colorama >=0.3,<1.0', + 'fs >=2.0,<3.0', + 'psutil >=5.2,<6.0', + 'requests >=2.0,<3.0', + 'stevedore >=1.21,<2.0'], + version = version, + long_description = read('README.rst'), + classifiers = read('classifiers.txt', tolines), + packages = find_packages(exclude=['ez_setup', 'example', 'test']), + include_package_data = True, + data_files = [('share/jupyter/nbextensions/bonobo-jupyter', + ['bonobo/ext/jupyter/static/extension.js', + 'bonobo/ext/jupyter/static/index.js', + 'bonobo/ext/jupyter/static/index.js.map'])], + extras_require = {'dev': ['coverage >=4,<5', + 'pylint >=1,<2', + 'pytest >=3,<4', + 'pytest-cov >=2,<3', + 'pytest-timeout >=1,<2', + 'sphinx', + 'sphinx_rtd_theme', + 'yapf'], + 'jupyter': ['jupyter >=1.0,<1.1', 'ipywidgets >=6.0.0.beta5']}, + entry_points = {'bonobo.commands': ['init = bonobo.commands.init:register', + 'run = bonobo.commands.run:register', + 'version = bonobo.commands.version:register'], + 'console_scripts': ['bonobo = bonobo.commands:entrypoint'], + 'edgy.project.features': ['bonobo = ' + 'bonobo.ext.edgy.project.feature:BonoboFeature']}, + url = 'https://www.bonobo-project.org/', + download_url = 'https://github.com/python-bonobo/bonobo/tarball/{version}'.format(version=version), )