remove lower bounds from global requirements
Now that we allow projects to diverge in their lower bounds, it no longer makes sense for us to track "global" lower bounds values. We need to retain the exclusion specifiers (using the "!=" operator) so that the automatic constraint update calculation continues to produce a set of values that we expect to work. In addition to updating the data, this patch updates the validation rules so that if a lower bound is included an error is reported. Change-Id: If9da4636755fc089b2ec5f075e03767f84c34a67 Signed-off-by: Doug Hellmann <doug@doughellmann.com>
This commit is contained in:
parent
1f98eb3e62
commit
8a4fa891e7
@ -1,465 +1,465 @@
|
|||||||
abclient>=0.2.3 # Apache-2.0
|
abclient # Apache-2.0
|
||||||
alembic>=0.8.10 # MIT
|
alembic # MIT
|
||||||
amqp>=2.1.1,!=2.1.4 # BSD
|
amqp!=2.1.4 # BSD
|
||||||
anyjson>=0.3.3 # BSD
|
anyjson # BSD
|
||||||
appdirs>=1.3.0 # MIT License
|
appdirs # MIT License
|
||||||
apscheduler>=3.0.5 # MIT License
|
apscheduler # MIT License
|
||||||
autobahn>=0.17.1 # MIT License
|
autobahn # MIT License
|
||||||
automaton>=1.9.0 # Apache-2.0
|
automaton # Apache-2.0
|
||||||
beautifulsoup4>=4.6.0 # MIT
|
beautifulsoup4 # MIT
|
||||||
Babel>=2.3.4,!=2.4.0 # BSD
|
Babel!=2.4.0 # BSD
|
||||||
bcrypt>=3.1.3 # Apache-2.0
|
bcrypt # Apache-2.0
|
||||||
betamax>=0.7.0 # Apache-2.0
|
betamax # Apache-2.0
|
||||||
betamax-matchers>=0.4.0 # Apache-2.0
|
betamax-matchers # Apache-2.0
|
||||||
boto>=2.32.1 # MIT
|
boto # MIT
|
||||||
botocore>=1.5.1 # Apache-2.0
|
botocore # Apache-2.0
|
||||||
cassandra-driver>=2.1.4,!=3.6.0 # Apache-2.0
|
cassandra-driver!=3.6.0 # Apache-2.0
|
||||||
castellan>=0.16.0 # Apache-2.0
|
castellan # Apache-2.0
|
||||||
ceilometermiddleware>=1.1.0 # Apache-2.0
|
ceilometermiddleware # Apache-2.0
|
||||||
cachetools>=2.0.0 # MIT License
|
cachetools # MIT License
|
||||||
cffi>=1.7.0 # MIT
|
cffi # MIT
|
||||||
cliff>=2.8.0,!=2.9.0 # Apache-2.0
|
cliff!=2.9.0 # Apache-2.0
|
||||||
cmd2>=0.8.0,!=0.8.3 # MIT
|
cmd2!=0.8.3 # MIT
|
||||||
cotyledon>=1.3.0 # Apache-2.0
|
cotyledon # Apache-2.0
|
||||||
construct>=2.8.10,<2.9 # MIT
|
construct<2.9 # MIT
|
||||||
PuLP>=1.4.1 # MIT
|
PuLP # MIT
|
||||||
contextlib2>=0.4.0 # PSF License
|
contextlib2 # PSF License
|
||||||
croniter>=0.3.4 # MIT License
|
croniter # MIT License
|
||||||
cryptography>=2.1 # BSD/Apache-2.0
|
cryptography # BSD/Apache-2.0
|
||||||
cursive>=0.2.1 # Apache-2.0
|
cursive # Apache-2.0
|
||||||
ddt>=1.0.1 # MIT
|
ddt # MIT
|
||||||
debtcollector>=1.2.0 # Apache-2.0
|
debtcollector # Apache-2.0
|
||||||
decorator>=3.4.0 # BSD
|
decorator # BSD
|
||||||
defusedxml>=0.5.0 # PSF
|
defusedxml # PSF
|
||||||
dib-utils>=0.0.8 # Apache-2.0
|
dib-utils # Apache-2.0
|
||||||
diskimage-builder>=1.1.2,!=1.6.0,!=1.7.0,!=1.7.1 # Apache-2.0
|
diskimage-builder!=1.6.0,!=1.7.0,!=1.7.1 # Apache-2.0
|
||||||
Django>=1.11,<2.0 # BSD
|
Django<2.0 # BSD
|
||||||
django-babel>=0.6.2 # BSD
|
django-babel # BSD
|
||||||
django-compressor>=2.0 # MIT
|
django-compressor # MIT
|
||||||
django-floppyforms>=1.0,<2 # BSD
|
django-floppyforms<2 # BSD
|
||||||
django-formtools>=1.0 # BSD
|
django-formtools # BSD
|
||||||
dnspython>=1.14.0;python_version=='2.7' # http://www.dnspython.org/LICENSE
|
dnspython;python_version=='2.7' # http://www.dnspython.org/LICENSE
|
||||||
dnspython3>=1.12.0,!=1.13.0,!=1.14.0;python_version>='3.0' # http://www.dnspython.org/LICENSE
|
dnspython3!=1.13.0,!=1.14.0;python_version>='3.0' # http://www.dnspython.org/LICENSE
|
||||||
# Note(tonyb): We don't actually directly depend on docutils but we pull it in
|
# Note(tonyb): We don't actually directly depend on docutils but we pull it in
|
||||||
# indirectly and we needed to blacklist 0.13.1 for problems with
|
# indirectly and we needed to blacklist 0.13.1 for problems with
|
||||||
# Sphinx 1.3. This can be now removed once all projects removed it.
|
# Sphinx 1.3. This can be now removed once all projects removed it.
|
||||||
docutils>=0.11 # OSI-Approved Open Source, Public Domain
|
docutils # OSI-Approved Open Source, Public Domain
|
||||||
dogpile.cache>=0.6.2 # BSD
|
dogpile.cache # BSD
|
||||||
dogtag-pki>=10.3.5.1 # LGPLv3+
|
dogtag-pki # LGPLv3+
|
||||||
dulwich>=0.15.0 # Apache-2.0
|
dulwich # Apache-2.0
|
||||||
elasticsearch>=2.0.0,<=3.0.0 # Apache-2.0
|
elasticsearch<=3.0.0 # Apache-2.0
|
||||||
enum34>=1.0.4;python_version=='2.7' or python_version=='2.6' or python_version=='3.3' # BSD
|
enum34;python_version=='2.7' or python_version=='2.6' or python_version=='3.3' # BSD
|
||||||
# NOTE: New versions of eventlet should not be accepted lightly
|
# NOTE: New versions of eventlet should not be accepted lightly
|
||||||
# as they have earned a reputation of frequently breaking things.
|
# as they have earned a reputation of frequently breaking things.
|
||||||
eventlet>=0.18.2,!=0.18.3,!=0.20.1 # MIT
|
eventlet!=0.18.3,!=0.20.1 # MIT
|
||||||
exabgp>=4.0.4 # BSD
|
exabgp # BSD
|
||||||
extras>=1.0.0 # MIT
|
extras # MIT
|
||||||
falcon>=1.0.0 # Apache-2.0
|
falcon # Apache-2.0
|
||||||
Flask>=0.10,!=0.11,<1.0 # BSD
|
Flask!=0.11,<1.0 # BSD
|
||||||
flask-keystone>=0.2 # Apache-2.0
|
flask-keystone # Apache-2.0
|
||||||
flask-oslolog>=0.1 # Apache-2.0
|
flask-oslolog # Apache-2.0
|
||||||
Flask-RESTful>=0.3.5 # BSD
|
Flask-RESTful # BSD
|
||||||
Flask-SQLAlchemy>=2.0 # BSD
|
Flask-SQLAlchemy # BSD
|
||||||
fortiosclient>=0.0.2 # Apache-2.0
|
fortiosclient # Apache-2.0
|
||||||
futures>=3.0.0;python_version=='2.7' or python_version=='2.6' # BSD
|
futures;python_version=='2.7' or python_version=='2.6' # BSD
|
||||||
futurist>=1.2.0 # Apache-2.0
|
futurist # Apache-2.0
|
||||||
funcsigs>=1.0.0;python_version=='2.7' or python_version=='2.6' # Apache-2.0
|
funcsigs;python_version=='2.7' or python_version=='2.6' # Apache-2.0
|
||||||
glance-store>=0.22.0 # Apache-2.0
|
glance-store # Apache-2.0
|
||||||
google-api-python-client>=1.4.2 # Apache-2.0
|
google-api-python-client # Apache-2.0
|
||||||
graphviz>=0.4,!=0.5.0 # MIT License
|
graphviz!=0.5.0 # MIT License
|
||||||
greenlet>=0.4.10 # MIT
|
greenlet # MIT
|
||||||
GitPython>=1.0.1 # BSD License (3 clause)
|
GitPython # BSD License (3 clause)
|
||||||
gunicorn>=19.0.0 # MIT
|
gunicorn # MIT
|
||||||
happybase>=0.5,!=0.7,!=1.0.0;python_version=='2.7' # MIT
|
happybase!=0.7,!=1.0.0;python_version=='2.7' # MIT
|
||||||
heat-translator>=0.4.0 # Apache-2.0
|
heat-translator # Apache-2.0
|
||||||
horizon>=13.0.0 # Apache-2.0
|
horizon # Apache-2.0
|
||||||
httplib2>=0.9.1 # MIT
|
httplib2 # MIT
|
||||||
icalendar>=3.10 # BSD
|
icalendar # BSD
|
||||||
influxdb>=2.9.2 # MIT
|
influxdb # MIT
|
||||||
instack-undercloud>=7.0.0 # Apache-2.0
|
instack-undercloud # Apache-2.0
|
||||||
ironic-lib>=2.5.0 # Apache-2.0
|
ironic-lib # Apache-2.0
|
||||||
ipaddress>=1.0.17;python_version<'3.3' # PSF
|
ipaddress;python_version<'3.3' # PSF
|
||||||
iso8601>=0.1.11 # MIT
|
iso8601 # MIT
|
||||||
Jinja2>=2.10 # BSD License (3 clause)
|
Jinja2 # BSD License (3 clause)
|
||||||
jmespath>=0.9.0 # MIT
|
jmespath # MIT
|
||||||
jsonmodels>=2.1.3 # BSD License (3 clause)
|
jsonmodels # BSD License (3 clause)
|
||||||
jsonpatch>=1.16,!=1.20 # BSD
|
jsonpatch!=1.20 # BSD
|
||||||
jsonpath-rw>=1.2.0,<2.0 # Apache-2.0
|
jsonpath-rw<2.0 # Apache-2.0
|
||||||
jsonpath-rw-ext>=1.1.2 # Apache-2.0
|
jsonpath-rw-ext # Apache-2.0
|
||||||
jsonschema>=2.6.0,<3.0.0 # MIT
|
jsonschema<3.0.0 # MIT
|
||||||
kazoo>=2.2 # Apache-2.0
|
kazoo # Apache-2.0
|
||||||
keystoneauth1>=3.4.0 # Apache-2.0
|
keystoneauth1 # Apache-2.0
|
||||||
keystonemiddleware>=4.17.0 # Apache-2.0
|
keystonemiddleware # Apache-2.0
|
||||||
krest>=1.3.1 # Apache-2.0
|
krest # Apache-2.0
|
||||||
kubernetes>=5.0.0 # Apache-2.0
|
kubernetes # Apache-2.0
|
||||||
kuryr-lib>=0.5.0 # Apache-2.0
|
kuryr-lib # Apache-2.0
|
||||||
packaging>=16.5 # Apache-2.0
|
packaging # Apache-2.0
|
||||||
pylev>=1.3.0 # BSD
|
pylev # BSD
|
||||||
pypowervm>=1.1.13 # Apache-2.0
|
pypowervm # Apache-2.0
|
||||||
pyScss>=1.3.4,!=1.3.5 # MIT License
|
pyScss!=1.3.5 # MIT License
|
||||||
django-pyscss>=2.0.2 # BSD License (2 clause)
|
django-pyscss # BSD License (2 clause)
|
||||||
kombu>=4.0.0,!=4.0.2 # BSD
|
kombu!=4.0.2 # BSD
|
||||||
ldap3>=1.0.2 # LGPLv3
|
ldap3 # LGPLv3
|
||||||
deprecation>=1.0 # Apache-2.0
|
deprecation # Apache-2.0
|
||||||
libvirt-python>=3.5.0,!=4.1.0 # LGPLv2+
|
libvirt-python!=4.1.0 # LGPLv2+
|
||||||
lxml>=3.4.1,!=3.7.0 # BSD
|
lxml!=3.7.0 # BSD
|
||||||
Mako>=0.4.0 # MIT
|
Mako # MIT
|
||||||
marathon>=0.8.6,!=0.9.1 # MIT
|
marathon!=0.9.1 # MIT
|
||||||
microversion-parse>=0.2.1 # Apache-2.0
|
microversion-parse # Apache-2.0
|
||||||
mistral-lib>=0.3.0 # Apache-2.0
|
mistral-lib # Apache-2.0
|
||||||
mistral-extra>=5.2.0 # Apache-2.0
|
mistral-extra # Apache-2.0
|
||||||
monasca-common>=2.7.0 # Apache-2.0
|
monasca-common # Apache-2.0
|
||||||
monasca-statsd>=1.1.0 # Apache-2.0
|
monasca-statsd # Apache-2.0
|
||||||
monotonic>=0.6 # Apache-2.0
|
monotonic # Apache-2.0
|
||||||
msgpack>=0.4.0 # Apache-2.0
|
msgpack # Apache-2.0
|
||||||
munch>=2.1.0 # MIT
|
munch # MIT
|
||||||
murano-pkg-check>=0.3.0 # Apache-2.0
|
murano-pkg-check # Apache-2.0
|
||||||
mypy>=0.560;python_version>='3.4' # MIT
|
mypy;python_version>='3.4' # MIT
|
||||||
ndg-httpsclient>=0.4.2;python_version<'3.0' # BSD
|
ndg-httpsclient;python_version<'3.0' # BSD
|
||||||
netaddr>=0.7.18 # BSD
|
netaddr # BSD
|
||||||
netifaces>=0.10.4 # MIT
|
netifaces # MIT
|
||||||
netmiko>=2.0.2 # MIT
|
netmiko # MIT
|
||||||
networking-bagpipe>=8.0.0 # Apache-2.0
|
networking-bagpipe # Apache-2.0
|
||||||
networking-bgpvpn>=8.0.0 # Apache-2.0
|
networking-bgpvpn # Apache-2.0
|
||||||
networking-l2gw>=12.0.0 # Apache-2.0
|
networking-l2gw # Apache-2.0
|
||||||
networking-odl>=12.0.0 # Apache-2.0
|
networking-odl # Apache-2.0
|
||||||
networking-sfc>=6.0.0 # Apache-2.0
|
networking-sfc # Apache-2.0
|
||||||
# Pinned to 1.0 branch until projects update, see:
|
# Pinned to 1.0 branch until projects update, see:
|
||||||
# https://bugs.launchpad.net/openstack-requirements/+bug/1718576
|
# https://bugs.launchpad.net/openstack-requirements/+bug/1718576
|
||||||
networkx>=1.10,<2.0 # BSD
|
networkx<2.0 # BSD
|
||||||
neutron-lib>=1.13.0 # Apache-2.0
|
neutron-lib # Apache-2.0
|
||||||
neutron-dynamic-routing>=12.0.0 # Apache-2.0
|
neutron-dynamic-routing # Apache-2.0
|
||||||
neutron-fwaas>=12.0.0 # Apache-2.0
|
neutron-fwaas # Apache-2.0
|
||||||
neutron-lbaas>=12.0.0 # Apache-2.0
|
neutron-lbaas # Apache-2.0
|
||||||
neutron-vpnaas>=12.0.0 # Apache-2.0
|
neutron-vpnaas # Apache-2.0
|
||||||
neutron>=12.0.0 # Apache-2.0
|
neutron # Apache-2.0
|
||||||
notifier>=1.0.3 # Apache-2.0
|
notifier # Apache-2.0
|
||||||
oauth2client>=1.5.0,!=4.0.0 # Apache-2.0
|
oauth2client!=4.0.0 # Apache-2.0
|
||||||
oauthlib>=0.6.2 # BSD
|
oauthlib # BSD
|
||||||
openstackdocstheme>=1.18.1 # Apache-2.0
|
openstackdocstheme # Apache-2.0
|
||||||
osc-lib>=1.10.0 # Apache-2.0
|
osc-lib # Apache-2.0
|
||||||
osc-placement>=1.0.0 # Apache-2.0
|
osc-placement # Apache-2.0
|
||||||
oslo.cache>=1.26.0 # Apache-2.0
|
oslo.cache # Apache-2.0
|
||||||
oslo.config>=5.2.0 # Apache-2.0
|
oslo.config # Apache-2.0
|
||||||
oslo.concurrency>=3.26.0 # Apache-2.0
|
oslo.concurrency # Apache-2.0
|
||||||
oslo.context>=2.19.2 # Apache-2.0
|
oslo.context # Apache-2.0
|
||||||
oslo.db>=4.27.0 # Apache-2.0
|
oslo.db # Apache-2.0
|
||||||
oslo.i18n>=3.15.3 # Apache-2.0
|
oslo.i18n # Apache-2.0
|
||||||
oslo.log>=3.36.0 # Apache-2.0
|
oslo.log # Apache-2.0
|
||||||
oslo.messaging>=5.29.0 # Apache-2.0
|
oslo.messaging # Apache-2.0
|
||||||
oslo.middleware>=3.31.0 # Apache-2.0
|
oslo.middleware # Apache-2.0
|
||||||
oslo.policy>=1.30.0 # Apache-2.0
|
oslo.policy # Apache-2.0
|
||||||
oslo.privsep>=1.23.0 # Apache-2.0
|
oslo.privsep # Apache-2.0
|
||||||
oslo.reports>=1.18.0 # Apache-2.0
|
oslo.reports # Apache-2.0
|
||||||
oslo.rootwrap>=5.8.0 # Apache-2.0
|
oslo.rootwrap # Apache-2.0
|
||||||
# NOTE(mriedem): oslo.serialization 2.19.1 is blocked for bug 1593641
|
# NOTE(mriedem): oslo.serialization 2.19.1 is blocked for bug 1593641
|
||||||
oslo.serialization>=2.18.0,!=2.19.1 # Apache-2.0
|
oslo.serialization!=2.19.1 # Apache-2.0
|
||||||
oslo.service>=1.24.0,!=1.28.1 # Apache-2.0
|
oslo.service!=1.28.1 # Apache-2.0
|
||||||
oslo.utils>=3.33.0 # Apache-2.0
|
oslo.utils # Apache-2.0
|
||||||
oslo.vmware>=2.17.0 # Apache-2.0
|
oslo.vmware # Apache-2.0
|
||||||
oslo.versionedobjects>=1.31.2 # Apache-2.0
|
oslo.versionedobjects # Apache-2.0
|
||||||
osprofiler>=1.4.0 # Apache-2.0
|
osprofiler # Apache-2.0
|
||||||
os-apply-config>=5.0.0 # Apache-2.0
|
os-apply-config # Apache-2.0
|
||||||
os-brick>=2.4.0 # Apache-2.0
|
os-brick # Apache-2.0
|
||||||
os-client-config>=1.28.0 # Apache-2.0
|
os-client-config # Apache-2.0
|
||||||
os-collect-config>=5.0.0 # Apache-2.0
|
os-collect-config # Apache-2.0
|
||||||
os-dpm>=1.0.0 # Apache-2.0
|
os-dpm # Apache-2.0
|
||||||
os-net-config>=7.1.0 # Apache-2.0
|
os-net-config # Apache-2.0
|
||||||
os-refresh-config>=6.0.0 # Apache-2.0
|
os-refresh-config # Apache-2.0
|
||||||
os-service-types>=1.2.0 # Apache-2.0
|
os-service-types # Apache-2.0
|
||||||
os-testr>=1.0.0 # Apache-2.0
|
os-testr # Apache-2.0
|
||||||
os-traits>=0.4.0 # Apache-2.0
|
os-traits # Apache-2.0
|
||||||
os-vif>=1.7.0,!=1.8.0 # Apache-2.0
|
os-vif!=1.8.0 # Apache-2.0
|
||||||
ovs>=2.8.0 # Apache-2.0
|
ovs # Apache-2.0
|
||||||
os-win>=3.0.0 # Apache-2.0
|
os-win # Apache-2.0
|
||||||
os-xenapi>=0.3.1 # Apache-2.0
|
os-xenapi # Apache-2.0
|
||||||
paramiko>=2.0.0 # LGPLv2.1+
|
paramiko # LGPLv2.1+
|
||||||
Parsley>=1.2 # MIT
|
Parsley # MIT
|
||||||
pathlib2>=2.1.0 # MIT
|
pathlib2 # MIT
|
||||||
passlib>=1.7.0 # BSD
|
passlib # BSD
|
||||||
Paste>=2.0.2 # MIT
|
Paste # MIT
|
||||||
PasteDeploy>=1.5.0 # MIT
|
PasteDeploy # MIT
|
||||||
paunch>=1.0.0 # Apache-2.0
|
paunch # Apache-2.0
|
||||||
pbr>=2.0.0,!=2.1.0 # Apache-2.0
|
pbr!=2.1.0 # Apache-2.0
|
||||||
pecan>=1.0.0,!=1.0.2,!=1.0.3,!=1.0.4,!=1.2 # BSD
|
pecan!=1.0.2,!=1.0.3,!=1.0.4,!=1.2 # BSD
|
||||||
pexpect>=3.1,!=3.3 # ISC License
|
pexpect!=3.3 # ISC License
|
||||||
pifpaf>=0.10.0 # Apache-2.0
|
pifpaf # Apache-2.0
|
||||||
pika>=0.10.0 # BSD
|
pika # BSD
|
||||||
pika-pool>=0.1.3 # BSD
|
pika-pool # BSD
|
||||||
Pillow>=2.4.0 # PIL License
|
Pillow # PIL License
|
||||||
Pint>=0.5 # BSD
|
Pint # BSD
|
||||||
pip>=8.0.2 # MIT
|
pip # MIT
|
||||||
PrettyTable>=0.7.1,<0.8 # BSD
|
PrettyTable<0.8 # BSD
|
||||||
psutil>=3.2.2 # BSD
|
psutil # BSD
|
||||||
pyasn1>=0.1.8,!=0.2.3 # BSD
|
pyasn1!=0.2.3 # BSD
|
||||||
pyasn1-modules>=0.0.6 # BSD
|
pyasn1-modules # BSD
|
||||||
pycadf>=1.1.0,!=2.0.0 # Apache-2.0
|
pycadf!=2.0.0 # Apache-2.0
|
||||||
pycrypto>=2.6 # Public Domain
|
pycrypto # Public Domain
|
||||||
PyECLib>=1.3.1 # BSD
|
PyECLib # BSD
|
||||||
pyghmi>=1.0.22 # Apache-2.0
|
pyghmi # Apache-2.0
|
||||||
pyinotify>=0.9.6;sys_platform!='win32' and sys_platform!='darwin' and sys_platform!='sunos5' # MIT
|
pyinotify;sys_platform!='win32' and sys_platform!='darwin' and sys_platform!='sunos5' # MIT
|
||||||
PyJWT>=1.0.1 # MIT
|
PyJWT # MIT
|
||||||
pykafka>=2.5.0 # Apache 2.0 License
|
pykafka # Apache 2.0 License
|
||||||
pykmip>=0.7.0 # Apache 2.0 License
|
pykmip # Apache 2.0 License
|
||||||
pyldap>=2.4.20 # PSF
|
pyldap # PSF
|
||||||
pylxd>=2.2.5 # Apache-2.0
|
pylxd # Apache-2.0
|
||||||
pymemcache>=1.2.9,!=1.3.0 # Apache 2.0 License
|
pymemcache!=1.3.0 # Apache 2.0 License
|
||||||
pymongo>=3.0.2,!=3.1 # Apache-2.0
|
pymongo!=3.1 # Apache-2.0
|
||||||
PyMySQL>=0.7.6 # MIT License
|
PyMySQL # MIT License
|
||||||
python-etcd>=0.4.3 # MIT License
|
python-etcd # MIT License
|
||||||
etcd3>=0.5.2 # Apache-2.0
|
etcd3 # Apache-2.0
|
||||||
etcd3gw>=0.2.0 # Apache-2.0
|
etcd3gw # Apache-2.0
|
||||||
typing>=3.5.2.2 # PSF
|
typing # PSF
|
||||||
voluptuous>=0.8.9 # BSD License
|
voluptuous # BSD License
|
||||||
pydot3>=1.0.8 # MIT License
|
pydot3 # MIT License
|
||||||
pydotplus>=2.0.2 # MIT License
|
pydotplus # MIT License
|
||||||
crc16>=0.1.1 # LGPLv3+
|
crc16 # LGPLv3+
|
||||||
pyzabbix>=0.7.4 # LGPL
|
pyzabbix # LGPL
|
||||||
statsd>=3.2.1 # MIT
|
statsd # MIT
|
||||||
weakrefmethod>=1.0.2;python_version=='2.7' # PSF
|
weakrefmethod;python_version=='2.7' # PSF
|
||||||
zVMCloudConnector>=0.3.2;sys_platform!='win32' # Apache 2.0 License
|
zVMCloudConnector;sys_platform!='win32' # Apache 2.0 License
|
||||||
|
|
||||||
# NOTE(flaper87): This added 2 packages to `integration.sh`
|
# NOTE(flaper87): This added 2 packages to `integration.sh`
|
||||||
# uuid-dev and swig
|
# uuid-dev and swig
|
||||||
pyngus>=2.2.0 # Apache-2.0
|
pyngus # Apache-2.0
|
||||||
|
|
||||||
pyOpenSSL>=17.1.0 # Apache-2.0
|
pyOpenSSL # Apache-2.0
|
||||||
pyparsing>=2.1.0 # MIT
|
pyparsing # MIT
|
||||||
pyroute2>=0.4.21;sys_platform!='win32' # Apache-2.0 (+ dual licensed GPL2)
|
pyroute2;sys_platform!='win32' # Apache-2.0 (+ dual licensed GPL2)
|
||||||
pysnmp>=4.2.3 # BSD
|
pysnmp # BSD
|
||||||
pystache>=0.5.4 # MIT
|
pystache # MIT
|
||||||
pysaml2>=4.0.2,!=4.0.3,!=4.0.4,!=4.0.5,!=4.0.5rc1,!=4.1.0,!=4.2.0,!=4.3.0,!=4.4.0 # Apache-2.0
|
pysaml2!=4.0.3,!=4.0.4,!=4.0.5,!=4.0.5rc1,!=4.1.0,!=4.2.0,!=4.3.0,!=4.4.0 # Apache-2.0
|
||||||
|
|
||||||
# OpenStack clients. None of these should have an upper bound
|
# OpenStack clients. None of these should have an upper bound
|
||||||
# as that has implications for testing in the gate.
|
# as that has implications for testing in the gate.
|
||||||
aodhclient>=0.9.0 # Apache-2.0
|
aodhclient # Apache-2.0
|
||||||
gnocchiclient>=3.3.1 # Apache-2.0
|
gnocchiclient # Apache-2.0
|
||||||
tricircleclient>=0.1.1 # Apache-2.0
|
tricircleclient # Apache-2.0
|
||||||
python-barbicanclient>=4.5.2 # Apache-2.0
|
python-barbicanclient # Apache-2.0
|
||||||
python-blazarclient>=1.0.0 # Apache-2.0
|
python-blazarclient # Apache-2.0
|
||||||
python-ceilometerclient>=2.5.0 # Apache-2.0
|
python-ceilometerclient # Apache-2.0
|
||||||
python-cinderclient>=3.3.0 # Apache-2.0
|
python-cinderclient # Apache-2.0
|
||||||
python-congressclient>=1.9.0,<2000 # Apache-2.0
|
python-congressclient<2000 # Apache-2.0
|
||||||
python-designateclient>=2.7.0 # Apache-2.0
|
python-designateclient # Apache-2.0
|
||||||
python-freezerclient>=1.3.0 # Apache-2.0
|
python-freezerclient # Apache-2.0
|
||||||
python-heatclient>=1.10.0 # Apache-2.0
|
python-heatclient # Apache-2.0
|
||||||
python-hnvclient>=0.1.0 # Apache-2.0
|
python-hnvclient # Apache-2.0
|
||||||
python-glanceclient>=2.8.0 # Apache-2.0
|
python-glanceclient # Apache-2.0
|
||||||
python-glareclient>=0.3.0 # Apache-2.0
|
python-glareclient # Apache-2.0
|
||||||
python-ironic-inspector-client>=1.5.0 # Apache-2.0
|
python-ironic-inspector-client # Apache-2.0
|
||||||
python-ironicclient>=2.3.0 # Apache-2.0
|
python-ironicclient # Apache-2.0
|
||||||
python-karborclient>=0.6.0 # Apache-2.0
|
python-karborclient # Apache-2.0
|
||||||
python-keystoneclient>=3.8.0 # Apache-2.0
|
python-keystoneclient # Apache-2.0
|
||||||
python-kingbirdclient>=0.1.0 # Apache-2.0
|
python-kingbirdclient # Apache-2.0
|
||||||
python-magnumclient>=2.1.0 # Apache-2.0
|
python-magnumclient # Apache-2.0
|
||||||
python-masakariclient>=3.0.1 # Apache-2.0
|
python-masakariclient # Apache-2.0
|
||||||
python-manilaclient>=1.16.0 # Apache-2.0
|
python-manilaclient # Apache-2.0
|
||||||
python-mistralclient>=3.1.0,!=3.2.0 # Apache-2.0
|
python-mistralclient!=3.2.0 # Apache-2.0
|
||||||
python-muranoclient>=0.8.2 # Apache-2.0
|
python-muranoclient # Apache-2.0
|
||||||
python-monascaclient>=1.7.0 # Apache-2.0
|
python-monascaclient # Apache-2.0
|
||||||
python-neutronclient>=6.7.0 # Apache-2.0
|
python-neutronclient # Apache-2.0
|
||||||
python-novaclient>=9.1.0 # Apache-2.0
|
python-novaclient # Apache-2.0
|
||||||
python-octaviaclient>=1.3.0 # Apache-2.0
|
python-octaviaclient # Apache-2.0
|
||||||
python-openstackclient>=3.12.0 # Apache-2.0
|
python-openstackclient # Apache-2.0
|
||||||
python-rsdclient>=0.1.0 # Apache-2.0
|
python-rsdclient # Apache-2.0
|
||||||
python-saharaclient>=1.4.0 # Apache-2.0
|
python-saharaclient # Apache-2.0
|
||||||
python-searchlightclient>=1.0.0 #Apache-2.0
|
python-searchlightclient #Apache-2.0
|
||||||
python-senlinclient>=1.1.0 # Apache-2.0
|
python-senlinclient # Apache-2.0
|
||||||
python-smaugclient>=0.0.5 # Apache-2.0
|
python-smaugclient # Apache-2.0
|
||||||
python-solumclient>=1.2.7 # Apache-2.0
|
python-solumclient # Apache-2.0
|
||||||
python-swiftclient>=3.2.0 # Apache-2.0
|
python-swiftclient # Apache-2.0
|
||||||
python-tackerclient>=0.8.0 # Apache-2.0
|
python-tackerclient # Apache-2.0
|
||||||
python-troveclient>=2.2.0 # Apache-2.0
|
python-troveclient # Apache-2.0
|
||||||
python-vitrageclient>=2.0.0 # Apache-2.0
|
python-vitrageclient # Apache-2.0
|
||||||
python-watcherclient>=1.1.0 # Apache-2.0
|
python-watcherclient # Apache-2.0
|
||||||
python-zaqarclient>=1.0.0 # Apache-2.0
|
python-zaqarclient # Apache-2.0
|
||||||
python-zunclient>=1.3.0 # Apache-2.0
|
python-zunclient # Apache-2.0
|
||||||
|
|
||||||
python-magic>=0.4.13 # MIT
|
python-magic # MIT
|
||||||
python-memcached>=1.56 # PSF
|
python-memcached # PSF
|
||||||
python-dateutil>=2.5.3 # BSD
|
python-dateutil # BSD
|
||||||
|
|
||||||
# 2013.6 is the first version of pytz that is PEP 440 compatible.
|
# 2013.6 is the first version of pytz that is PEP 440 compatible.
|
||||||
pytz>=2013.6 # MIT
|
pytz # MIT
|
||||||
pyudev>=0.16.1 # LGPLv2.1+
|
pyudev # LGPLv2.1+
|
||||||
PyYAML>=3.12 # MIT
|
PyYAML # MIT
|
||||||
qpid-python>=0.26;python_version=='2.7' # Apache-2.0
|
qpid-python;python_version=='2.7' # Apache-2.0
|
||||||
raven>=6.0.0 # BSD
|
raven # BSD
|
||||||
reno>=2.5.0 # Apache-2.0
|
reno # Apache-2.0
|
||||||
requests>=2.14.2 # Apache-2.0
|
requests # Apache-2.0
|
||||||
requests-aws>=0.1.4 # BSD License (3 clause)
|
requests-aws # BSD License (3 clause)
|
||||||
requests-kerberos>=0.6 # ISC
|
requests-kerberos # ISC
|
||||||
requestsexceptions>=1.2.0 # Apache-2.0
|
requestsexceptions # Apache-2.0
|
||||||
rfc3986>=0.3.1 # Apache-2.0
|
rfc3986 # Apache-2.0
|
||||||
Routes>=2.3.1 # MIT
|
Routes # MIT
|
||||||
rtslib-fb>=2.1.43,!=2.1.60,!=2.1.61,!=2.1.64 # Apache-2.0
|
rtslib-fb!=2.1.60,!=2.1.61,!=2.1.64 # Apache-2.0
|
||||||
ryu>=4.24 # Apache-2.0
|
ryu # Apache-2.0
|
||||||
semantic-version>=2.3.1 # BSD
|
semantic-version # BSD
|
||||||
fasteners>=0.7.0 # Apache-2.0
|
fasteners # Apache-2.0
|
||||||
scrypt>=0.8.0 # BSD
|
scrypt # BSD
|
||||||
simplejson>=3.5.1 # MIT
|
simplejson # MIT
|
||||||
six>=1.10.0 # MIT
|
six # MIT
|
||||||
scipy>=0.17.1 # BSD
|
scipy # BSD
|
||||||
scikit-learn>=0.17.1 # BSD
|
scikit-learn # BSD
|
||||||
# NOTE(yamahata):
|
# NOTE(yamahata):
|
||||||
# bug work around of sqlalchemy
|
# bug work around of sqlalchemy
|
||||||
# https://bitbucket.org/zzzeek/sqlalchemy/issues/3952/
|
# https://bitbucket.org/zzzeek/sqlalchemy/issues/3952/
|
||||||
# The fix which is in git master branch is planned for 1.1.9
|
# The fix which is in git master branch is planned for 1.1.9
|
||||||
SQLAlchemy>=1.0.10,!=1.1.5,!=1.1.6,!=1.1.7,!=1.1.8 # MIT
|
SQLAlchemy!=1.1.5,!=1.1.6,!=1.1.7,!=1.1.8 # MIT
|
||||||
SQLAlchemy-Utils>=0.30.11 # BSD License
|
SQLAlchemy-Utils # BSD License
|
||||||
sqlalchemy-migrate>=0.11.0 # Apache-2.0
|
sqlalchemy-migrate # Apache-2.0
|
||||||
sqlparse>=0.2.2 # BSD
|
sqlparse # BSD
|
||||||
stevedore>=1.20.0 # Apache-2.0
|
stevedore # Apache-2.0
|
||||||
systemd-python>=234 # LGPLv2+
|
systemd-python # LGPLv2+
|
||||||
sysv-ipc>=0.6.8 # BSD License
|
sysv-ipc # BSD License
|
||||||
suds-jurko>=0.6 # LGPLv3+
|
suds-jurko # LGPLv3+
|
||||||
sympy>=0.7.6 # BSD
|
sympy # BSD
|
||||||
taskflow>=2.16.0 # Apache-2.0
|
taskflow # Apache-2.0
|
||||||
tempest>=17.1.0 # Apache-2.0
|
tempest # Apache-2.0
|
||||||
tooz>=1.58.0 # Apache-2.0
|
tooz # Apache-2.0
|
||||||
tosca-parser>=0.8.1 # Apache-2.0
|
tosca-parser # Apache-2.0
|
||||||
tripleo-common>=7.1.0 # Apache-2.0
|
tripleo-common # Apache-2.0
|
||||||
urllib3>=1.21.1 # MIT
|
urllib3 # MIT
|
||||||
unicodecsv>=0.8.0;python_version<'3.0' # BSD
|
unicodecsv;python_version<'3.0' # BSD
|
||||||
warlock>=1.2.0,<2 # Apache-2.0
|
warlock<2 # Apache-2.0
|
||||||
WebOb>=1.7.1 # MIT
|
WebOb # MIT
|
||||||
websocket-client>=0.44.0 # LGPLv2+
|
websocket-client # LGPLv2+
|
||||||
websockify>=0.8.0 # LGPLv3
|
websockify # LGPLv3
|
||||||
wheel>=0.24.0 # MIT
|
wheel # MIT
|
||||||
PyMI>=1.0.0;sys_platform=='win32' # Apache 2.0 License
|
PyMI;sys_platform=='win32' # Apache 2.0 License
|
||||||
wmi>=0.5;sys_platform=='win32' # MIT
|
wmi;sys_platform=='win32' # MIT
|
||||||
WSME>=0.8.0 # MIT
|
WSME # MIT
|
||||||
xattr>=0.9.2 # MIT
|
xattr # MIT
|
||||||
XenAPI>=1.2 # LGPL
|
XenAPI # LGPL
|
||||||
XStatic>=1.0.0 # MIT License
|
XStatic # MIT License
|
||||||
XStatic-Angular>=1.5.8.0 # MIT License
|
XStatic-Angular # MIT License
|
||||||
XStatic-Angular-Bootstrap>=2.2.0.0 # MIT License
|
XStatic-Angular-Bootstrap # MIT License
|
||||||
XStatic-Angular-Gettext>=2.3.8.0 # MIT License
|
XStatic-Angular-Gettext # MIT License
|
||||||
XStatic-Angular-lrdragndrop>=1.0.2.2 # MIT License
|
XStatic-Angular-lrdragndrop # MIT License
|
||||||
XStatic-Angular-Schema-Form>=0.8.13.0 # MIT
|
XStatic-Angular-Schema-Form # MIT
|
||||||
XStatic-angular-ui-router>=0.3.1.2 # MIT
|
XStatic-angular-ui-router # MIT
|
||||||
XStatic-Bootstrap-Datepicker>=1.3.1.0 # Apache 2.0 License
|
XStatic-Bootstrap-Datepicker # Apache 2.0 License
|
||||||
XStatic-Bootstrap-SCSS>=3.3.7.1 # Apache 2.0 License
|
XStatic-Bootstrap-SCSS # Apache 2.0 License
|
||||||
XStatic-bootswatch>=3.3.7.0 # MIT License
|
XStatic-bootswatch # MIT License
|
||||||
XStatic-D3>=3.5.17.0 # BSD License (3 clause)
|
XStatic-D3 # BSD License (3 clause)
|
||||||
XStatic-Font-Awesome>=4.7.0.0 # SIL OFL 1.1 License, MIT License
|
XStatic-Font-Awesome # SIL OFL 1.1 License, MIT License
|
||||||
XStatic-Hogan>=2.0.0.2 # Apache 2.0 License
|
XStatic-Hogan # Apache 2.0 License
|
||||||
XStatic-Jasmine>=2.4.1.1 # MIT License
|
XStatic-Jasmine # MIT License
|
||||||
XStatic-jQuery>=1.8.2.1 # MIT License
|
XStatic-jQuery # MIT License
|
||||||
XStatic-JQuery-Migrate>=1.2.1.1 # MIT License
|
XStatic-JQuery-Migrate # MIT License
|
||||||
XStatic-JQuery.quicksearch>=2.0.3.1 # MIT License
|
XStatic-JQuery.quicksearch # MIT License
|
||||||
XStatic-JQuery.TableSorter>=2.14.5.1 # MIT License
|
XStatic-JQuery.TableSorter # MIT License
|
||||||
XStatic-jquery-ui>=1.10.4.1 # MIT License
|
XStatic-jquery-ui # MIT License
|
||||||
XStatic-JSEncrypt>=2.3.1.1 # MIT License
|
XStatic-JSEncrypt # MIT License
|
||||||
XStatic-mdi>=1.4.57.0 # SIL OPEN FONT LICENSE Version 1.1
|
XStatic-mdi # SIL OPEN FONT LICENSE Version 1.1
|
||||||
XStatic-objectpath>=1.2.1.0 # MIT
|
XStatic-objectpath # MIT
|
||||||
XStatic-Rickshaw>=1.5.0.0 # BSD License (prior)
|
XStatic-Rickshaw # BSD License (prior)
|
||||||
XStatic-roboto-fontface>=0.5.0.0 # Apache 2.0 License
|
XStatic-roboto-fontface # Apache 2.0 License
|
||||||
XStatic-smart-table>=1.4.13.2 # MIT License
|
XStatic-smart-table # MIT License
|
||||||
XStatic-Spin>=1.2.5.2 # MIT License
|
XStatic-Spin # MIT License
|
||||||
XStatic-term.js>=0.0.7.0 # MIT License
|
XStatic-term.js # MIT License
|
||||||
XStatic-tv4>=1.2.7.0 # MIT
|
XStatic-tv4 # MIT
|
||||||
XStatic-Angular-FileUpload>=12.0.4.0 # MIT License
|
XStatic-Angular-FileUpload # MIT License
|
||||||
yaql>=1.1.3 # Apache 2.0 License
|
yaql # Apache 2.0 License
|
||||||
zhmcclient>=0.9.0 # Apache 2.0 License
|
zhmcclient # Apache 2.0 License
|
||||||
|
|
||||||
# Testing tools below, which are typically in test-requires.txt
|
# Testing tools below, which are typically in test-requires.txt
|
||||||
|
|
||||||
bashate>=0.5.1 # Apache-2.0
|
bashate # Apache-2.0
|
||||||
couchdb>=0.8 # Apache-2.0
|
couchdb # Apache-2.0
|
||||||
coverage>=4.0,!=4.4 # Apache-2.0
|
coverage!=4.4 # Apache-2.0
|
||||||
demjson>=2.2.2 # GLGPLv3+
|
demjson # GLGPLv3+
|
||||||
docker>=2.4.2 # Apache-2.0
|
docker # Apache-2.0
|
||||||
django-nose>=1.4.4 # BSD
|
django-nose # BSD
|
||||||
doc8>=0.6.0 # Apache-2.0
|
doc8 # Apache-2.0
|
||||||
fixtures>=3.0.0 # Apache-2.0/BSD
|
fixtures # Apache-2.0/BSD
|
||||||
freezegun>=0.3.6 # Apache-2.0
|
freezegun # Apache-2.0
|
||||||
gabbi>=1.35.0 # Apache-2.0
|
gabbi # Apache-2.0
|
||||||
kafka-python>=1.3.1 # Apache-2.0
|
kafka-python # Apache-2.0
|
||||||
keyring>=5.5.1 # MIT/PSF
|
keyring # MIT/PSF
|
||||||
ldappool>=2.0.0 # MPL
|
ldappool # MPL
|
||||||
# Do not make mock conditional on Python version: we depend on newer code than
|
# Do not make mock conditional on Python version: we depend on newer code than
|
||||||
# in [most] releases of the Python std library.
|
# in [most] releases of the Python std library.
|
||||||
mock>=2.0.0 # BSD
|
mock # BSD
|
||||||
mox>=0.5.3 # Apache-2.0
|
mox # Apache-2.0
|
||||||
mox3>=0.20.0 # Apache-2.0
|
mox3 # Apache-2.0
|
||||||
nodeenv>=0.9.4 # BSD
|
nodeenv # BSD
|
||||||
nose>=1.3.7 # LGPL
|
nose # LGPL
|
||||||
nose-exclude>=0.3.0 # LGPL
|
nose-exclude # LGPL
|
||||||
nosehtmloutput>=0.0.3 # Apache-2.0
|
nosehtmloutput # Apache-2.0
|
||||||
nosexcover>=1.0.10 # BSD
|
nosexcover # BSD
|
||||||
openstack-doc-tools>=1.5.0 # Apache-2.0
|
openstack-doc-tools # Apache-2.0
|
||||||
openstack.nose-plugin>=0.7 # Apache-2.0
|
openstack.nose-plugin # Apache-2.0
|
||||||
openstacksdk>=0.11.2 # Apache-2.0
|
openstacksdk # Apache-2.0
|
||||||
os-api-ref>=1.4.0 # Apache-2.0
|
os-api-ref # Apache-2.0
|
||||||
oslosphinx>=4.7.0 # Apache-2.0
|
oslosphinx # Apache-2.0
|
||||||
oslotest>=3.2.0 # Apache-2.0
|
oslotest # Apache-2.0
|
||||||
ovsdbapp>=0.10.0 # Apache-2.0
|
ovsdbapp # Apache-2.0
|
||||||
proboscis>=1.2.5.3 # Apache-2.0
|
proboscis # Apache-2.0
|
||||||
psycopg2>=2.6.2 # LGPL/ZPL
|
psycopg2 # LGPL/ZPL
|
||||||
pysendfile>=2.0.0 # MIT
|
pysendfile # MIT
|
||||||
python-consul>=0.4.7 # MIT License
|
python-consul # MIT License
|
||||||
python-subunit>=1.0.0 # Apache-2.0/BSD
|
python-subunit # Apache-2.0/BSD
|
||||||
python-pytun>=2.2.1 # MIT
|
python-pytun # MIT
|
||||||
pyzmq>=14.3.1 # LGPL+BSD
|
pyzmq # LGPL+BSD
|
||||||
redis>=2.10.0 # MIT
|
redis # MIT
|
||||||
hiredis>=0.2.0 # BSD
|
hiredis # BSD
|
||||||
requests-mock>=1.2.0 # Apache-2.0
|
requests-mock # Apache-2.0
|
||||||
tenacity>=4.4.0 # Apache-2.0
|
tenacity # Apache-2.0
|
||||||
retrying>=1.2.3,!=1.3.0 # Apache-2.0
|
retrying!=1.3.0 # Apache-2.0
|
||||||
spec-cleaner>=0.8.2,!=0.9.3 # BSD
|
spec-cleaner!=0.9.3 # BSD
|
||||||
selenium>=2.50.1 # Apache-2.0
|
selenium # Apache-2.0
|
||||||
# While setuptools cannot deal with pre-installed incompatible versions,
|
# While setuptools cannot deal with pre-installed incompatible versions,
|
||||||
# setting a lower bound is not harmful - it makes error messages cleaner. DO
|
# setting a lower bound is not harmful - it makes error messages cleaner. DO
|
||||||
# NOT set an upper bound on setuptools, as that will lead to uninstallable
|
# NOT set an upper bound on setuptools, as that will lead to uninstallable
|
||||||
# situations as progressive releases of projects are done.
|
# situations as progressive releases of projects are done.
|
||||||
# Blacklist setuptools 34.0.0-34.3.2 due to https://github.com/pypa/setuptools/issues/951
|
# Blacklist setuptools 34.0.0-34.3.2 due to https://github.com/pypa/setuptools/issues/951
|
||||||
# Blacklist setuptools 36.2.0 due to https://github.com/pypa/setuptools/issues/1086
|
# Blacklist setuptools 36.2.0 due to https://github.com/pypa/setuptools/issues/1086
|
||||||
setuptools>=21.0.0,!=24.0.0,!=34.0.0,!=34.0.1,!=34.0.2,!=34.0.3,!=34.1.0,!=34.1.1,!=34.2.0,!=34.3.0,!=34.3.1,!=34.3.2,!=36.2.0 # PSF/ZPL
|
setuptools!=24.0.0,!=34.0.0,!=34.0.1,!=34.0.2,!=34.0.3,!=34.1.0,!=34.1.1,!=34.2.0,!=34.3.0,!=34.3.1,!=34.3.2,!=36.2.0 # PSF/ZPL
|
||||||
sphinx>=1.6.2,!=1.6.6,!=1.6.7 # BSD
|
sphinx!=1.6.6,!=1.6.7 # BSD
|
||||||
sphinx-testing>=0.7.2 # BSD License
|
sphinx-testing # BSD License
|
||||||
sphinxcontrib-actdiag>=0.8.5 # BSD
|
sphinxcontrib-actdiag # BSD
|
||||||
sphinxcontrib-apidoc>=0.2.0 # BSD
|
sphinxcontrib-apidoc # BSD
|
||||||
sphinxcontrib-blockdiag>=1.5.4 # BSD
|
sphinxcontrib-blockdiag # BSD
|
||||||
sphinxcontrib-httpdomain>=1.3.0 # BSD
|
sphinxcontrib-httpdomain # BSD
|
||||||
sphinxcontrib-nwdiag>=0.9.5 # BSD
|
sphinxcontrib-nwdiag # BSD
|
||||||
sphinxcontrib-seqdiag>=0.8.4 # BSD
|
sphinxcontrib-seqdiag # BSD
|
||||||
sphinxcontrib-pecanwsme>=0.8.0 # Apache-2.0
|
sphinxcontrib-pecanwsme # Apache-2.0
|
||||||
sphinxcontrib-fulltoc>=1.2.0 # Apache-2.0
|
sphinxcontrib-fulltoc # Apache-2.0
|
||||||
sphinx-feature-classification>=0.1.0 # Apache-2.0
|
sphinx-feature-classification # Apache-2.0
|
||||||
sphinxmark>=0.1.14 # Apache-2.0
|
sphinxmark # Apache-2.0
|
||||||
sphinxcontrib.datatemplates>=0.1.0 # BSD License
|
sphinxcontrib.datatemplates # BSD License
|
||||||
stestr>=1.0.0 # Apache-2.0
|
stestr # Apache-2.0
|
||||||
sushy>=0.1.0 # Apache-2.0
|
sushy # Apache-2.0
|
||||||
testrepository>=0.0.18 # Apache-2.0/BSD
|
testrepository # Apache-2.0/BSD
|
||||||
testresources>=2.0.0 # Apache-2.0/BSD
|
testresources # Apache-2.0/BSD
|
||||||
testscenarios>=0.4 # Apache-2.0/BSD
|
testscenarios # Apache-2.0/BSD
|
||||||
testtools>=2.2.0 # MIT
|
testtools # MIT
|
||||||
trollius>=2.1;python_version=='2.7' # Apache-2.0
|
trollius;python_version=='2.7' # Apache-2.0
|
||||||
ujson>=1.35 # BSD
|
ujson # BSD
|
||||||
unittest2>=1.1.0 # BSD
|
unittest2 # BSD
|
||||||
virtualbmc>=1.0.0 # Apache-2.0
|
virtualbmc # Apache-2.0
|
||||||
virtualenv>=14.0.6 # MIT
|
virtualenv # MIT
|
||||||
vmware-nsxlib>=12.0.0 # Apache-2.0
|
vmware-nsxlib # Apache-2.0
|
||||||
wrapt>=1.7.0 # BSD License
|
wrapt # BSD License
|
||||||
WebTest>=2.0.27 # MIT
|
WebTest # MIT
|
||||||
Werkzeug>=0.9 # BSD License
|
Werkzeug # BSD License
|
||||||
whereto>=0.3.0 # Apache-2.0
|
whereto # Apache-2.0
|
||||||
xmltodict>=0.10.1 # MIT
|
xmltodict # MIT
|
||||||
wsgi-intercept>=1.4.1 # MIT License
|
wsgi-intercept # MIT License
|
||||||
xvfbwrapper>=0.1.3 #license: MIT
|
xvfbwrapper #license: MIT
|
||||||
zake>=0.1.6 # Apache-2.0
|
zake # Apache-2.0
|
||||||
zuul-sphinx>=0.1.2 # Apache-2.0
|
zuul-sphinx # Apache-2.0
|
||||||
shade>=1.17.0 # Apache-2.0
|
shade # Apache-2.0
|
||||||
sadisplay>=0.4.8 # BSD
|
sadisplay # BSD
|
||||||
|
|
||||||
# Indirect dependencies that need blocking
|
# Indirect dependencies that need blocking
|
||||||
daiquiri>=1.2.1
|
daiquiri
|
||||||
|
|
||||||
# NOTE(dhellmann): We need to include this package for testing the
|
# NOTE(dhellmann): We need to include this package for testing the
|
||||||
# release jobs that propose constraint updates, even though it is not
|
# release jobs that propose constraint updates, even though it is not
|
||||||
# a real requirement of any of our software.
|
# a real requirement of any of our software.
|
||||||
openstack-release-test>=0.8.0
|
openstack-release-test
|
||||||
|
|
||||||
# NOTE(snapiri): This is required for Dragonflow topology visualization
|
# NOTE(snapiri): This is required for Dragonflow topology visualization
|
||||||
skydive-client>=0.4.2 # Apache-2.0
|
skydive-client # Apache-2.0
|
||||||
|
@ -215,18 +215,6 @@ def check_reqs_bounds_policy(global_reqs):
|
|||||||
for spec in _specifiers:
|
for spec in _specifiers:
|
||||||
if spec.operator == '>=':
|
if spec.operator == '>=':
|
||||||
lower_bound.add(spec)
|
lower_bound.add(spec)
|
||||||
if len(lower_bound) < 1:
|
if len(lower_bound):
|
||||||
yield ('Requirement %s needs a >= specifier' % req.package)
|
yield ('Requirement %s should not include a >= specifier' %
|
||||||
elif len(lower_bound) > 1:
|
|
||||||
yield ('Requirement %s has multiple >= specifier' %
|
|
||||||
req.package)
|
req.package)
|
||||||
else:
|
|
||||||
lower_bound = lower_bound.pop()
|
|
||||||
for spec in _specifiers:
|
|
||||||
if spec.operator == '!=':
|
|
||||||
if not lower_bound.contains(spec.version,
|
|
||||||
prereleases=True):
|
|
||||||
yield('Requirement %s has a !=%s specifier '
|
|
||||||
'that is not >=%s' % (req.package,
|
|
||||||
spec.version,
|
|
||||||
lower_bound.version))
|
|
||||||
|
@ -200,8 +200,8 @@ class TestReqPolicy(testtools.TestCase):
|
|||||||
|
|
||||||
def test_requirements_policy_pass(self):
|
def test_requirements_policy_pass(self):
|
||||||
content = textwrap.dedent("""\
|
content = textwrap.dedent("""\
|
||||||
cffi>=1.1.1,!=1.1.2
|
cffi!=1.1.2
|
||||||
other>=1.1.1
|
other
|
||||||
""")
|
""")
|
||||||
reqs = requirement.parse(content)
|
reqs = requirement.parse(content)
|
||||||
policy_check = [x for x in requirement.check_reqs_bounds_policy(reqs)]
|
policy_check = [x for x in requirement.check_reqs_bounds_policy(reqs)]
|
||||||
@ -211,11 +211,9 @@ class TestReqPolicy(testtools.TestCase):
|
|||||||
content = textwrap.dedent("""\
|
content = textwrap.dedent("""\
|
||||||
cffi>=1.1.1,!=1.1.0
|
cffi>=1.1.1,!=1.1.0
|
||||||
other>=1,>=2,!=1.1.0
|
other>=1,>=2,!=1.1.0
|
||||||
no_lower_bound
|
|
||||||
""")
|
""")
|
||||||
reqs = requirement.parse(content)
|
reqs = requirement.parse(content)
|
||||||
self.assertEqual([
|
self.assertEqual([
|
||||||
'Requirement cffi has a !=1.1.0 specifier that is not >=1.1.1',
|
'Requirement cffi should not include a >= specifier',
|
||||||
'Requirement no-lower-bound needs a >= specifier',
|
'Requirement other should not include a >= specifier'],
|
||||||
'Requirement other has multiple >= specifier'],
|
|
||||||
sorted([x for x in requirement.check_reqs_bounds_policy(reqs)]))
|
sorted([x for x in requirement.check_reqs_bounds_policy(reqs)]))
|
||||||
|
Loading…
Reference in New Issue
Block a user