abclient  # Apache-2.0
alembic!=1.2.0,!=1.6.3  # MIT
amqp!=2.1.4,!=5.0.4  # BSD
ansible-runner!=1.3.5  # Apache 2.0
anyjson  # BSD
appdirs  # MIT License
apscheduler  # MIT License
autobahn  # MIT License
automaton  # Apache-2.0
autopage  # Apache-2.0
beautifulsoup4  # MIT
Babel!=2.4.0  # BSD
bcrypt  # Apache-2.0
betamax  # Apache-2.0
blockdiag!=2.0.0  # Apache-2.0
boto  # MIT
boto3  # Apache-2.0
botocore  # Apache-2.0
cassandra-driver!=3.6.0  # Apache-2.0
castellan  # Apache-2.0
# ceilometermiddleware might not show up with a search of setup.cfg and
# requirements files, but some projects use it via being installed by devstack
ceilometermiddleware  # Apache-2.0
cachetools  # MIT License
cffi  # MIT
cliff!=2.9.0,!=2.17.0  # Apache-2.0
cmd2!=0.8.3  # MIT
confluent-kafka!=1.4.0  # Apache-2.0
confspirator  # Apache-2.0
cotyledon  # Apache-2.0
construct  # MIT
croniter  # MIT License
cryptography!=2.0  # BSD/Apache-2.0
cursive  # Apache-2.0
dataclasses;python_version=='3.6'  # Apache-2.0
datetimerange  # MIT
ddt  # MIT
debtcollector<2.0.0;python_version<'3.6'  # Apache-2.0
debtcollector;python_version>='3.6'  # Apache-2.0
decorator  # BSD
defusedxml  # PSF
dib-utils  # Apache-2.0
directord  # Apache-2.0
diskimage-builder!=1.6.0,!=1.7.0,!=1.7.1  # Apache-2.0
distro  # Apache-2.0
Django<3.3  # BSD
django-compressor  # MIT
django-debreach  # BSD
django-formtools  # BSD
django-pymemcache  # Apache-2.0
# eventlet is not compatibile with 2.0.0: https://github.com/eventlet/eventlet/issues/619
dnspython!=2.0.0,!=2.2.0  # http://www.dnspython.org/LICENSE
# 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
# Sphinx 1.3. This can be now removed once all projects removed it.
docutils  # OSI-Approved Open Source, Public Domain
dogpile.cache!=0.9.1  # BSD
dogtag-pki  # LGPLv3+
dulwich!=0.19.3,!=0.19.7  # Apache-2.0
edgegrid-python  # Apache-2.0
elasticsearch<3.0.0  # Apache-2.0
enmerkar  # BSD
# NOTE: New versions of eventlet should not be accepted lightly
# as they have earned a reputation of frequently breaking things.
eventlet!=0.18.3,!=0.20.1,!=0.21.0,!=0.23.0,!=0.25.0,!=0.32.0  # MIT
exabgp!=4.0.6  # BSD
extras  # MIT
falcon  # Apache-2.0
Flask!=0.11  # BSD
Flask-RESTful  # BSD
futurist  # Apache-2.0
glance-store!=0.29.0  # Apache-2.0
google-api-python-client  # Apache-2.0
graphviz!=0.5.0  # MIT License
greenlet!=0.4.14  # MIT
GitPython  # BSD License (3 clause)
gunicorn  # MIT
heat-translator  # Apache-2.0
horizon  # Apache-2.0
httplib2  # MIT
httpx  # BSD
hvac  # Apache-2.0
icalendar  # BSD
importlib-metadata;python_version<'3.8'  # Apache-2.0
infinisdk  # BSD-3
influxdb!=5.3.0  # MIT
ironic-lib!=4.6.0  # Apache-2.0
iso8601  # MIT
jira  # BSD License (2 clause)
Jinja2  # BSD License (3 clause)
jmespath  # MIT
jsonpatch!=1.20  # BSD
jsonpath-rw  # Apache-2.0
jsonpath-rw-ext  # Apache-2.0
jsonschema  # MIT
kazoo  # Apache-2.0
keystoneauth1  # Apache-2.0
keystonemiddleware  # Apache-2.0
krest  # Apache-2.0
kubernetes  # Apache-2.0
kuryr-lib  # Apache-2.0
packaging!=20.5,!=20.6,!=20.7  # Apache-2.0
pypowervm!=1.1.21,!=1.1.22  # Apache-2.0
pyScss!=1.3.5  # MIT License
django-pyscss  # BSD License (2 clause)
kombu!=4.0.2  # BSD
ldap3  # LGPLv3
deprecation  # Apache-2.0
libvirt-python!=4.1.0,!=4.2.0  # LGPLv2+
lxml!=3.7.0  # BSD
Mako  # MIT
marathon!=0.9.1  # MIT
metalsmith  # Apache-2.0
microversion-parse  # Apache-2.0
mistral-lib  # Apache-2.0
monasca-common  # Apache-2.0
monasca-statsd  # Apache-2.0
msgpack  # Apache-2.0
munch  # MIT
murano-pkg-check  # Apache-2.0
mypy  # MIT
netaddr  # BSD
netifaces!=0.10.0,!=0.10.1  # MIT
netmiko  # MIT
networking-bagpipe  # Apache-2.0
networking-bgpvpn  # Apache-2.0
networking-l2gw  # Apache-2.0
networking-odl  # Apache-2.0
networking-sfc  # Apache-2.0
# NOTE(fdegir): NetworkX 2.3 dropped support for Python 2
networkx  # BSD
# NOTE(ralonsoh): neutron-lib 2.0.0 dropped support for Python 2
neutron-lib  # Apache-2.0
neutron-dynamic-routing  # Apache-2.0
neutron-fwaas  # Apache-2.0
neutron  # Apache-2.0
oauth2client!=4.0.0  # Apache-2.0
oauthlib  # BSD
octavia-lib  # Apache-2.0
openstackdocstheme!=2.1.0,!=2.1.1  # Apache-2.0
osc-lib  # Apache-2.0
osc-placement  # Apache-2.0
oslo.cache!=1.31.1,!=2.1.0  # Apache-2.0
oslo.config!=4.3.0,!=4.4.0,<8.0.0;python_version<'3.6'  # Apache-2.0
oslo.config!=4.3.0,!=4.4.0;python_version>='3.6'  # Apache-2.0
oslo.concurrency  # Apache-2.0
oslo.context  # Apache-2.0
oslo.db  # Apache-2.0
oslo.i18n<4.0.0;python_version<'3.6'  # Apache-2.0
oslo.i18n;python_version>='3.6'  # Apache-2.0
oslo.limit  # Apache-2.0
oslo.log!=3.44.2,!=4.1.2,!=4.2.0  # Apache-2.0
oslo.messaging!=9.0.0  # Apache-2.0
oslo.metrics  # Apache-2.0
oslo.middleware  # Apache-2.0
oslo.policy!=3.0.0,!=3.6.1  # Apache-2.0
oslo.privsep  # Apache-2.0
oslo.reports  # Apache-2.0
oslo.rootwrap  # Apache-2.0
# NOTE(mriedem): oslo.serialization 2.19.1 is blocked for bug 1593641
oslo.serialization!=2.19.1  # Apache-2.0
oslo.service!=1.28.1  # Apache-2.0
oslo.upgradecheck  # Apache-2.0
# NOTE(lajoskatona): oslo.utils version between 3.39.1 and 3.40.1 excluded due to bug 1812922
oslo.utils!=3.39.1,!=3.40.0,!=3.40.1,<4.0.0;python_version<'3.6'  # Apache-2.0
oslo.utils!=3.39.1,!=3.40.0,!=3.40.1;python_version>='3.6'  # Apache-2.0
oslo.vmware  # Apache-2.0
oslo.versionedobjects  # Apache-2.0
osprofiler  # Apache-2.0
os-apply-config  # Apache-2.0
os-brick!=2.8.0  # Apache-2.0
os-client-config  # Apache-2.0
os-collect-config  # Apache-2.0
os-net-config  # Apache-2.0
os-refresh-config  # Apache-2.0
os-resource-classes  # Apache-2.0
os-service-types  # Apache-2.0
os-testr  # Apache-2.0
os-traits  # Apache-2.0
os-ken  # Apache-2.0
os-vif!=1.8.0,!=1.12.0  # Apache-2.0
ovs  # Apache-2.0
os-win  # Apache-2.0
os-xenapi  # Apache-2.0
paramiko!=2.9.0,!=2.9.1  # LGPLv2.1+
passlib  # BSD
Paste  # MIT
PasteDeploy  # MIT
pbr!=2.1.0  # Apache-2.0
pecan!=1.0.2,!=1.0.3,!=1.0.4,!=1.2,!=1.4.0  # BSD
pexpect!=3.3  # ISC License
pifpaf  # Apache-2.0
pika  # BSD
Pillow  # PIL License
Pint  # BSD
pip  # MIT
prometheus-client  # Apache-2.0
protobuf  # BSD License (3 clause)
PrettyTable  # BSD
psutil  # BSD
pyasn1!=0.2.3  # BSD
pyasn1-modules  # BSD
pycadf!=2.0.0  # Apache-2.0
pycdlib  # LGPLv2+
PyECLib  # BSD
pyghmi!=1.4.0,!=1.5.11  # Apache-2.0
pyinotify;sys_platform!='win32' and sys_platform!='darwin' and sys_platform!='sunos5'  # MIT
PyJWT  # MIT
pykmip  # Apache 2.0 License
python-gnupg  # BSD License
python-ldap  # PSF
pylxd  # Apache-2.0
pymemcache!=1.3.0  # Apache 2.0 License
pymongo!=3.1  # Apache-2.0
PyMySQL  # MIT License
pytest  # MIT
pytest-django  # BSD (3 clause)
pytest-html  #MPL-2.0
pytest-xdist  # MIT
pywbem  # LGPLv2.1+
pywinrm  # MIT
salt!=2019.2.1,!=2019.2.2  # Apache-2.0
sshtunnel  # MIT
storpool!=5.2.0,!=5.3.0  # Apache-2.0
storpool.spopenstack  # Apache-2.0
task-core  # Apache-2.0
dfs-sdk  # Apache-2.0
tap-as-a-service  # Apache-2.0
etcd3  # Apache-2.0
etcd3gw!=0.2.2,!=0.2.3,!=0.2.6  # Apache-2.0
typing  # PSF
voluptuous  # BSD License
pydot  # MIT License
pydotplus  # MIT License
pyzabbix  # LGPL
statsd  # MIT
zVMCloudConnector;sys_platform!='win32'  # Apache 2.0 License
jaeger-client  # Apache-2.0
python-linstor  # LGPLv3

pyngus  # Apache-2.0

pyOpenSSL  # Apache-2.0
pyparsing  # MIT
pyroute2!=0.5.4,!=0.5.5;sys_platform!='win32'  # Apache-2.0 (+ dual licensed GPL2)
pysnmp  # BSD
pystache  # MIT
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,!=4.6.0  # Apache-2.0

# OpenStack clients. None of these should have an upper bound
# as that has implications for testing in the gate.
aodhclient  # Apache-2.0
gnocchiclient  # Apache-2.0
python-barbicanclient  # Apache-2.0
python-blazarclient  # Apache-2.0
python-cinderclient!=4.0.0  # Apache-2.0
python-cyborgclient  # Apache-2.0
python-cloudkittyclient  # Apache-2.0
python-designateclient  # Apache-2.0
python-freezerclient  # Apache-2.0
python-heatclient  # Apache-2.0
python-glanceclient  # Apache-2.0
python-ironic-inspector-client  # Apache-2.0
python-ironicclient!=2.5.2,!=2.7.1,!=3.0.0  # Apache-2.0
python-keystoneclient!=2.1.0  # Apache-2.0
python-magnumclient  # Apache-2.0
python-masakariclient  # Apache-2.0
python-manilaclient  # Apache-2.0
python-mistralclient!=3.2.0  # Apache-2.0
python-muranoclient  # Apache-2.0
python-monascaclient  # Apache-2.0
python-neutronclient  # Apache-2.0
python-novaclient  # Apache-2.0
python-octaviaclient  # Apache-2.0
python-openstackclient  # Apache-2.0
python-rsdclient  # Apache-2.0
python-saharaclient  # Apache-2.0
python-senlinclient  # Apache-2.0
python-solumclient  # Apache-2.0
python-swiftclient  # Apache-2.0
python-tackerclient  # Apache-2.0
python-troveclient  # Apache-2.0
python-vitrageclient  # Apache-2.0
python-watcherclient  # Apache-2.0
python-zaqarclient  # Apache-2.0
python-zunclient  # Apache-2.0

python-memcached  # PSF
python-dateutil  # BSD

#Only required for sasl/binary protocol
python-binary-memcached  # MIT
uhashring  # BSD

# 2013.6 is the first version of pytz that is PEP 440 compatible.
pytz  # MIT
pyudev  # LGPLv2.1+
PyYAML  # MIT
rbd-iscsi-client  # Apache-2.0
reno<3;python_version<'3.6'  # Apache-2.0
reno;python_version>='3.6'  # Apache-2.0
requests!=2.20.0,!=2.24.0  # Apache-2.0
requests-aws  # BSD License (3 clause)
requests-kerberos  # ISC
requestsexceptions  # Apache-2.0
rfc3986  # Apache-2.0
rsd-lib  # Apache-2.0
Routes  # MIT
rtslib-fb  # Apache-2.0
rst2txt  # BSD
ruamel.yaml  # MIT
ryu  # Apache-2.0
semantic-version  # BSD
# https://github.com/harlowja/fasteners/issues/36
fasteners!=0.15,!=0.16  # Apache-2.0
scrypt  # BSD
simplejson  # MIT
six  # MIT
scipy  # BSD
scikit-learn  # BSD
setproctitle  # BSD
# NOTE(yamahata):
# bug work around of sqlalchemy
# https://bitbucket.org/zzzeek/sqlalchemy/issues/3952/
# The fix which is in git master branch is planned for 1.1.9
SQLAlchemy!=1.1.5,!=1.1.6,!=1.1.7,!=1.1.8  # MIT
SQLAlchemy-Utils  # BSD License
sqlalchemy-migrate  # Apache-2.0
sqlalchemy-filters  # Apache-2.0
sqlparse  # BSD
stevedore!=3.0.0  # Apache-2.0
storops  # Apache-2.0
systemd-python  # LGPLv2+
sysv-ipc  # BSD License
suds-community  # LGPLv3+
suds-jurko  # LGPLv3+
sympy  # BSD
taskflow  # Apache-2.0
tempest  # Apache-2.0
tooz  # Apache-2.0
tosca-parser  # Apache-2.0
tripleo-common!=11.3.0  # Apache-2.0
validations-libs  # Apache-2.0
urllib3  # MIT
warlock<2  # Apache-2.0
WebOb  # MIT
websocket-client  # LGPLv2+
websockify  # LGPLv3
wheel  # MIT
PyMI;sys_platform=='win32'  # Apache 2.0 License
wmi;sys_platform=='win32'  # MIT
WSME  # MIT
xattr;sys_platform!='win32'  # MIT
xstatic-angular-uuid  # MIT License
xstatic-angular-vis  # MIT License
xstatic-filesaver  # MIT License
xstatic-js-yaml  # MIT License
xstatic-json2yaml  # MIT License
XenAPI  # LGPL
XStatic  # MIT License
XStatic-Angular  # MIT License
XStatic-Angular-Bootstrap  # MIT License
XStatic-Angular-Gettext  # MIT License
XStatic-Angular-lrdragndrop  # MIT License
XStatic-Angular-Schema-Form  # MIT
XStatic-Bootstrap-Datepicker  # Apache 2.0 License
XStatic-Bootstrap-SCSS  # Apache 2.0 License
XStatic-bootswatch  # MIT License
XStatic-D3  # BSD License (3 clause)
XStatic-Dagre  # MIT License
XStatic-Dagre-D3  # MIT License
XStatic-Font-Awesome  # SIL OFL 1.1 License, MIT License
XStatic-Graphlib  # MIT License
XStatic-Hogan  # Apache 2.0 License
XStatic-Jasmine  # MIT License
XStatic-jQuery<2  # MIT License
# NOTE: horizon (at least horizon integration tests) does not work with jquery-migrate 3,
# so we need to cap the version of xstatic-jquery-migrate.
# https://bugs.launchpad.net/horizon/+bug/1914782
XStatic-JQuery-Migrate<3  # MIT License
XStatic-JQuery.quicksearch  # MIT License
XStatic-JQuery.TableSorter  # MIT License
XStatic-jquery-ui  # MIT License
XStatic-JSEncrypt  # MIT License
XStatic-lodash  # MIT License
XStatic-mdi  # SIL OPEN FONT LICENSE Version 1.1
XStatic-moment  # MIT License
XStatic-Moment-Timezone  # MIT License
XStatic-objectpath  # MIT
XStatic-Rickshaw  # BSD License (prior)
XStatic-roboto-fontface  # Apache 2.0 License
XStatic-smart-table  # MIT License
XStatic-Spin  # MIT License
XStatic-term.js  # MIT License
XStatic-tv4  # MIT
XStatic-Angular-FileUpload  # MIT License
yaql  # Apache 2.0 License
# NOTE(dtantsur): zeroconf dropped compatibility with Python 3.6 in version 0.38.0
zeroconf<0.38.0;python_version=='3.6'  # LGPL
zeroconf;python_version>'3.6'  # LGPL
zstd  # BSD License (2 clause)

# Testing tools below, which are typically in test-requires.txt

bashate  # Apache-2.0
couchdb  # Apache-2.0
coverage!=4.4  # Apache-2.0
docker  # Apache-2.0
django-nose  # BSD
doc8  # Apache-2.0
Pygments  # BSD license
fixtures  # Apache-2.0/BSD
freezegun  # Apache-2.0
# The following issue with urllib3 should be fixed to use gabbi 2.5.0.
# https://github.com/urllib3/urllib3/issues/2534
# Also see https://github.com/cdent/gabbi/issues/309
gabbi<2.5.0  # Apache-2.0
kafka-python  # Apache-2.0
keyring  # MIT/PSF
ldappool  # MPL
# Do not make mock conditional on Python version: we depend on newer code than
# in [most] releases of the Python std library.
# https://github.com/testing-cabal/mock/issues/487  for 4.0.[0-1] blacklist
mock!=4.0.0,!=4.0.1  # BSD
moto  # Apache-2.0
nodeenv  # BSD
nose  # LGPL
nose-exclude  # LGPL
nosehtmloutput  # Apache-2.0
nosexcover  # BSD
openstack-doc-tools  # Apache-2.0
openstack.nose-plugin  # Apache-2.0
openstacksdk  # Apache-2.0
os-api-ref  # Apache-2.0
oslosphinx  # Apache-2.0
oslotest<4;python_version<'3.6'  # Apache-2.0
oslotest;python_version>='3.6'  # Apache-2.0
ovsdbapp  # Apache-2.0
proboscis  # Apache-2.0
psycopg2  # LGPL/ZPL
psycopg2-binary  # LGPL/ZPL
purestorage  # BSD
pysendfile;sys_platform!='win32'  # MIT
python-3parclient  # Apache-2.0
python-consul  # MIT License
python-subunit  # Apache-2.0/BSD
pyzmq  # LGPL+BSD
redis!=4.0.0  # MIT
requests-mock  # Apache-2.0
tenacity  # Apache-2.0
retrying!=1.3.0  # Apache-2.0
selenium<4.0.0  # Apache-2.0
# While setuptools cannot deal with pre-installed incompatible versions,
# 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
# 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 36.2.0 due to https://github.com/pypa/setuptools/issues/1086
# Blacklist setuptools 48.0.0, 49.0.0 due to https://github.com/pypa/setuptools/issues/2232
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,!=48.0.0,!=49.0.0  # PSF/ZPL
sphinx!=1.6.6,!=1.6.7,!=2.1.0,!=3.0.0,!=3.4.2  # BSD
sphinx-testing  # BSD License
sphinxcontrib-actdiag  # BSD
sphinxcontrib-apidoc  # BSD
sphinxcontrib-blockdiag  # BSD
sphinxcontrib-httpdomain  # BSD
sphinxcontrib-nwdiag  # BSD
sphinxcontrib-seqdiag  # BSD
sphinxcontrib-pecanwsme  # Apache-2.0
sphinx-feature-classification  # Apache-2.0
sphinxcontrib.datatemplates  # BSD License
sphinxcontrib-programoutput  # BSD license
sphinxcontrib-svg2pdfconverter  # BSD License
sphinx-rtd-theme  # MIT
stestr!=2.3.0,!=3.0.0  # Apache-2.0
sushy!=1.9.0  # Apache-2.0
tabulate  # MIT
testrepository  # Apache-2.0/BSD
testresources  # Apache-2.0/BSD
testscenarios  # Apache-2.0/BSD
testtools  # MIT
types-paramiko  # Apache-2.0
unittest2  # BSD
virtualbmc  # Apache-2.0
virtualenv!=16.3.0  # MIT
wrapt  # BSD License
WebTest  # MIT
Werkzeug  # BSD License
whereto  # Apache-2.0
xmltodict  # MIT
wsgi-intercept  # MIT License
xvfbwrapper  #license: MIT
zake  # Apache-2.0
zuul-sphinx  # Apache-2.0
sadisplay  # BSD

# NOTE(tonyb): Generally adding OpenSatck services isn't allowed but some consumers of ceilometer
# use it like a library so until there is a ceilometer-lib (or similar) this is our best option.
ceilometer  # Apache-2.0

# Indirect dependencies that need blocking
# NOTE(bnemec): 1.16.0 introduced a bug that is breaking tooz. 1.18.0 fixes it.
# See https://bugs.launchpad.net/python-tooz/+bug/1808046
grpcio!=1.16.0,!=1.16.1,!=1.17.0,!=1.17.1

# NOTE(dhellmann): We need to include this package for testing the
# release jobs that propose constraint updates, even though it is not
# a real requirement of any of our software.
openstack-release-test

# NOTE(anilvenkata): This is required for profiling oslo.service processes
Yappi!=0.98,!=0.99  # MIT

# NOTE(yoctozepto): To avoid repeated breakage (this is a dep of deps)
# (gmann): Few branchless tools like hacking, stackviz, OpenStackSDK, and
# Keystoneauth keeping the support of py3.5 so we need to have zipp cap for
# < py3.6. We need to keep it until we completely drop py3.5 from OpenStack.
# https://governance.openstack.org/tc/goals/selected/ussuri/drop-py27.html#projects-keeping-py3-5-support
zipp<2;python_version<'3.6'  # MIT
zipp;python_version>='3.6'  # MIT

# NOTE(prometheanfire): python3 caps, are not approved for use in OpenStack
gitdb  # BSD
gitdb2  # BSD
toml!=0.10.1  # Apache-2.0
