#
# This constraints file was automatically generated on 2021-09-17T18:38:38Z
# via "eager-upgrade" mechanism of PIP. For the "v2-1-test" branch of Airflow.
# This variant of constraints install just the 'bare' 'apache-airflow' package build from the HEAD of
# the branch, without installing any of the providers.
#
# Those constraints represent the "newest" dependencies airflow could use, if providers did not limit
# Airflow in any way.
#
# Editable install with no version control (apache-airflow==2.1.4)
Authlib==0.15.4
Babel==2.9.1
Flask-AppBuilder==3.3.3
Flask-Babel==1.0.0
Flask-Bcrypt==0.7.1
Flask-Caching==1.10.1
Flask-JWT-Extended==3.25.1
Flask-Login==0.4.1
Flask-OpenID==1.3.0
Flask-SQLAlchemy==2.5.1
Flask-WTF==0.14.3
Flask==1.1.4
HeapDict==1.0.1
Jinja2==2.11.3
Mako==1.1.5
Markdown==3.3.4
MarkupSafe==1.1.1
PyJWT==1.7.1
PyYAML==5.4.1
Pygments==2.10.0
SQLAlchemy-JSONField==1.0.0
SQLAlchemy-Utils==0.37.8
SQLAlchemy==1.3.24
WTForms==2.3.3
Werkzeug==1.0.1
alembic==1.7.3
amqp==2.6.1
anyio==3.3.1
apispec==3.3.2
argcomplete==1.12.3
attrs==20.3.0
backports.entry-points-selectable==1.1.0
bcrypt==3.2.0
billiard==3.6.4.0
blinker==1.4
cachetools==4.2.2
cattrs==1.5.0
celery==4.4.7
certifi==2020.12.5
cffi==1.14.6
cgroupspy==0.2.1
charset-normalizer==2.0.5
click==7.1.2
clickclick==20.10.2
cloudpickle==1.4.1
colorama==0.4.4
colorlog==5.0.1
commonmark==0.9.1
croniter==1.0.15
cryptography==3.4.8
dask==2021.6.0
defusedxml==0.7.1
dill==0.3.2
distlib==0.3.2
distributed==2.19.0
dnspython==1.16.0
docutils==0.16
email-validator==1.1.3
eventlet==0.32.0
filelock==3.0.12
flower==0.9.7
fsspec==2021.8.1
gevent==21.8.0
google-auth==2.1.0
graphviz==0.17
greenlet==1.1.1
gunicorn==20.1.0
h11==0.12.0
httpcore==0.13.7
httpx==0.19.0
humanize==3.11.0
idna==3.2
importlib-metadata==4.8.1
importlib-resources==1.5.0
inflection==0.5.1
iso8601==0.1.16
isodate==0.6.0
itsdangerous==1.1.0
jsonschema==3.2.0
kombu==4.6.11
kubernetes==11.0.0
lazy-object-proxy==1.4.3
ldap3==2.9.1
locket==0.2.1
lockfile==0.12.2
marshmallow-enum==1.5.1
marshmallow-oneofschema==3.0.1
marshmallow-sqlalchemy==0.23.1
marshmallow==3.13.0
msgpack==1.0.2
numpy==1.21.2
oauthlib==3.1.1
openapi-schema-validator==0.1.5
openapi-spec-validator==0.3.1
pandas==1.3.3
partd==1.2.0
pendulum==2.1.2
platformdirs==2.3.0
plyvel==1.3.0
prison==0.2.1
prometheus-client==0.8.0
psutil==5.8.0
pure-sasl==0.6.2
pyasn1-modules==0.2.8
pyasn1==0.4.8
pycparser==2.20
pykerberos==1.2.1
pyrsistent==0.18.0
python-daemon==2.3.0
python-dateutil==2.8.2
python-ldap==3.3.1
python-nvd3==0.15.0
python-slugify==4.0.1
python3-openid==3.2.0
pytz==2021.1
pytzdata==2020.1
requests-kerberos==0.12.0
requests-oauthlib==1.3.0
requests==2.26.0
rfc3986==1.5.0
rich==10.9.0
rsa==4.7.2
sentry-sdk==1.3.1
setproctitle==1.2.2
six==1.16.0
sniffio==1.2.0
sortedcontainers==2.4.0
statsd==3.3.0
swagger-ui-bundle==0.0.9
tabulate==0.8.9
tblib==1.7.0
tenacity==6.2.0
termcolor==1.1.0
text-unidecode==1.3
thrift-sasl==0.4.3
thrift==0.13.0
toolz==0.11.1
tornado==6.1
unicodecsv==0.14.1
urllib3==1.26.6
vine==1.3.0
virtualenv==20.8.0
websocket-client==1.2.1
zict==2.0.0
zipp==3.5.0
zope.event==4.5.0
zope.interface==5.4.0
