Airflow: Webserver doesnt start with WTForms==2.3.0

Created on 22 Apr 2020  路  5Comments  路  Source: apache/airflow

Apache Airflow version: 1.10.7

Kubernetes version (if you are using kubernetes) (use kubectl version):

Environment: local

  • Cloud provider or hardware configuration: 3Ghz Intel Core i5, 16GB
  • OS (e.g. from /etc/os-release): Debian 9
  • Kernel (e.g. uname -a): Linux debian 4.9.0-12-amd64 #1 SMP Debian 4.9.210-1 (2020-01-20) x86_64 GNU/Linux
  • Install tools:
  • Others:

What happened:

Traceback (most recent call last):
File "/usr/local/bin/airflow", line 26, in
from airflow.bin.cli import CLIFactory
File "/usr/local/lib/python3.6/site-packages/airflow/bin/cli.py", line 71, in
from airflow.www_rbac.app import cached_app as cached_app_rbac
File "/usr/local/lib/python3.6/site-packages/airflow/www_rbac/app.py", line 26, in
from flask_appbuilder import AppBuilder, SQLA
File "/usr/local/lib/python3.6/site-packages/flask_appbuilder/__init__.py", line 6, in
from .base import AppBuilder # noqa: F401
File "/usr/local/lib/python3.6/site-packages/flask_appbuilder/base.py", line 8, in
from .api.manager import OpenApiManager
File "/usr/local/lib/python3.6/site-packages/flask_appbuilder/api/manager.py", line 7, in
from flask_appbuilder.baseviews import BaseView
File "/usr/local/lib/python3.6/site-packages/flask_appbuilder/baseviews.py", line 21, in
from .forms import GeneralModelConverter
File "/usr/local/lib/python3.6/site-packages/flask_appbuilder/forms.py", line 17, in
from .fieldwidgets import (
File "/usr/local/lib/python3.6/site-packages/flask_appbuilder/fieldwidgets.py", line 3, in
from wtforms.widgets import html_params, HTMLString
ImportError: cannot import name 'HTMLString'


It seems that after the release of WTForms==2.3.0 webserver doesnt start
Changing it back to WTForms==2.2.1 solves the issue

How to reproduce it:
Use WTForms==2.3.0

duplicate bug

Most helpful comment

Closing as duplicate #8512. You can also install airflow using pinned requirements that are already released in 1.10.10. See also #8513 with detail description of repeatable installation process.

All 5 comments

Thanks for opening your first issue here! Be sure to follow the issue template!

Seeing the same issue. They release WTForms 2.3.0 today so that probably broke airflow for everyone.


My pip freeze ouput (working configuration)

aiohttp==3.5.4
alembic==1.4.2
amqp==2.5.2
apache-airflow==1.10.7
apispec==1.3.3
argcomplete==1.11.1
astroid==2.3.3
async-timeout==3.0.1
asyncio==3.4.3
attrs==19.3.0
Babel==2.8.0
bcrypt==3.1.7
billiard==3.6.3.0
boto3==1.12.43
botocore==1.15.43
cached-property==1.5.1
cachetools==4.1.0
cattrs==0.9.2
celery==4.4.2
certifi==2020.4.5.1
cffi==1.14.0
chardet==3.0.4
click==7.1.1
clickhouse-cityhash==1.0.2.3
clickhouse-driver==0.1.3
colorama==0.4.3
colorlog==4.0.2
configparser==3.5.3
croniter==0.3.31
cryptography==2.9.1
ddt==1.3.1
defusedxml==0.6.0
dill==0.3.1.1
docutils==0.15.2
Flask==1.1.2
Flask-Admin==1.5.4
Flask-AppBuilder==2.3.2
Flask-Babel==1.0.0
Flask-Caching==1.3.3
Flask-JWT-Extended==3.24.1
Flask-Login==0.4.1
Flask-OpenID==1.2.5
Flask-SQLAlchemy==2.4.1
flask-swagger==0.2.13
Flask-WTF==0.14.3
flower==0.9.4
funcsigs==1.0.2
future==0.16.0
google-api-core==1.17.0
google-auth==1.14.1
google-cloud-bigquery==1.17.0
google-cloud-core==1.3.0
google-resumable-media==0.5.0
googleapis-common-protos==1.51.0
graphviz==0.14
graypy==1.1.2
greenstalk==0.5.2
gunicorn==19.10.0
hmsclient==0.1.1
humanize==0.5.1
idna==2.8
idna-ssl==1.1.0
importlib-metadata==1.6.0
iso8601==0.1.12
isort==4.3.21
itsdangerous==1.1.0
JayDeBeApi==1.1.1
Jinja2==2.10.3
jmespath==0.9.5
JPype1==0.7.3
json-merge-patch==0.2
jsonschema==3.2.0
kombu==4.6.8
kubernetes==11.0.0
lazy-object-proxy==1.4.3
lockfile==0.12.2
lz4==3.0.1
Mako==1.1.2
Markdown==2.6.11
MarkupSafe==1.1.1
marshmallow==2.21.0
marshmallow-enum==1.5.1
marshmallow-sqlalchemy==0.22.3
mccabe==0.6.1
multidict==4.7.5
mysqlclient==1.3.14
ndg-httpsclient==0.5.1
numpy==1.18.3
oauthlib==3.1.0
pandas==0.25.3
paramiko==2.7.1
pendulum==1.4.4
prison==0.1.3
protobuf==3.11.3
psutil==5.7.0
psycopg2-binary==2.8.4
pyasn1==0.4.8
pyasn1-modules==0.2.8
pycparser==2.20
Pygments==2.6.1
PyHive==0.6.2
PyJWT==1.7.1
pylint==2.4.2
PyNaCl==1.3.0
pyOpenSSL==19.1.0
pyrsistent==0.16.0
pysftp==0.2.9
python-daemon==2.1.2
python-dateutil==2.8.1
python-editor==1.0.4
python3-openid==3.1.0
pytz==2019.3
pytzdata==2019.3
PyYAML==5.3.1
ratelimit==2.2.1
redis==3.4.1
requests==2.21.0
requests-oauthlib==1.3.0
rsa==4.0
s3transfer==0.3.3
sasl==0.2.1
setproctitle==1.1.10
six==1.14.0
SQLAlchemy==1.3.15
SQLAlchemy-JSONField==0.9.0
SQLAlchemy-Utils==0.33.9
sshtunnel==0.1.5
tabulate==0.8.7
tenacity==4.12.0
termcolor==1.1.0
text-unidecode==1.2
thrift==0.13.0
thrift-sasl==0.3.0
tornado==5.1.1
typed-ast==1.4.1
typing==3.7.4.1
typing-extensions==3.7.4.2
tzlocal==1.5.1
unicodecsv==0.14.1
urllib3==1.24.3
vine==1.3.0
websocket-client==0.57.0
Werkzeug==0.16.1
wrapt==1.11.2
WTForms==2.2.1
yarl==1.4.2
zipp==3.1.0
zope.deprecation==4.4.0

I see they already updated setup.py in airflow to use 2.2.1 https://github.com/apache/airflow/blob/1d5d6613a14ae3120093979cb31ae8b0de90c2d4/setup.py#L601, but not released it yet.

Closing as duplicate #8512. You can also install airflow using pinned requirements that are already released in 1.10.10. See also #8513 with detail description of repeatable installation process.

Was this page helpful?
0 / 5 - 0 ratings