Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ModuleNotFoundError: No module named 'werkzeug.wrappers.etag' #20723

Closed
dat-linux opened this issue Jul 15, 2022 · 27 comments
Closed

ModuleNotFoundError: No module named 'werkzeug.wrappers.etag' #20723

dat-linux opened this issue Jul 15, 2022 · 27 comments

Comments

@dat-linux
Copy link

dat-linux commented Jul 15, 2022

ModuleNotFoundError: No module named 'werkzeug.wrappers.etag' #20723

How to reproduce the bug

Install using pip on Ubuntu with python 3.9

Get to this point as per instructions:

$HOME/venv/superset/2.0.0/bin/superset db upgrade

Expected results

No error

Actual results

logging was configured successfully
2022-07-15 15:10:24,707:INFO:superset.utils.logging_configurator:logging was configured successfully
2022-07-15 15:10:24,713:INFO:root:Configured event logger of type <class 'superset.utils.log.DBEventLogger'>
Falling back to the built-in cache, that stores data in the metadata database, for the following cache: `FILTER_STATE_CACHE_CONFIG`. It is recommended to use `RedisCache`, `MemcachedCache` or another dedicated caching backend for production deployments
2022-07-15 15:10:24,716:WARNING:superset.utils.cache_manager:Falling back to the built-in cache, that stores data in the metadata database, for the following cache: `FILTER_STATE_CACHE_CONFIG`. It is recommended to use `RedisCache`, `MemcachedCache` or another dedicated caching backend for production deployments
Falling back to the built-in cache, that stores data in the metadata database, for the following cache: `EXPLORE_FORM_DATA_CACHE_CONFIG`. It is recommended to use `RedisCache`, `MemcachedCache` or another dedicated caching backend for production deployments
2022-07-15 15:10:24,720:WARNING:superset.utils.cache_manager:Falling back to the built-in cache, that stores data in the metadata database, for the following cache: `EXPLORE_FORM_DATA_CACHE_CONFIG`. It is recommended to use `RedisCache`, `MemcachedCache` or another dedicated caching backend for production deployments
Failed to create app
Traceback (most recent call last):
  File "$HOME/venv/superset/2.0.0/lib/python3.9/site-packages/superset/app.py", line 37, in create_app
    app_initializer.init_app()
  File "$HOME/venv/superset/2.0.0/lib/python3.9/site-packages/superset/initialization/__init__.py", line 460, in init_app
    self.init_app_in_ctx()
  File "$HOME/venv/superset/2.0.0/lib/python3.9/site-packages/superset/initialization/__init__.py", line 409, in init_app_in_ctx
    self.configure_url_map_converters()
  File "$HOME/venv/superset/2.0.0/lib/python3.9/site-packages/superset/initialization/__init__.py", line 508, in configure_url_map_converters
    from superset.utils.url_map_converters import (
  File "$HOME/venv/superset/2.0.0/lib/python3.9/site-packages/superset/utils/url_map_converters.py", line 21, in <module>
    from superset.models.tags import ObjectTypes
  File "$HOME/venv/superset/2.0.0/lib/python3.9/site-packages/superset/models/__init__.py", line 17, in <module>
    from . import core, datasource_access_request, dynamic_plugins, sql_lab, user_attributes
  File "$HOME/venv/superset/2.0.0/lib/python3.9/site-packages/superset/models/core.py", line 63, in <module>
    from superset.utils import cache as cache_util, core as utils
  File "$HOME/venv/superset/2.0.0/lib/python3.9/site-packages/superset/utils/cache.py", line 28, in <module>
    from werkzeug.wrappers.etag import ETagResponseMixin
ModuleNotFoundError: No module named 'werkzeug.wrappers.etag'
@dat-linux dat-linux added the #bug Bug report label Jul 15, 2022
@dat-linux
Copy link
Author

A hack to get around it:

python3 -m pip uninstall -y Werkzeug
python3 -m pip install Werkzeug==2.0.3

If there's one thing you can reply on with a superset release is dodgy pip deps.

@alanorth
Copy link

Duplicate of #20717.

@srinify
Copy link
Contributor

srinify commented Jul 17, 2022

I just installed Superset 2.0.0 from scratch and wasn't able to replicate this issue unfortunately.

@dat-linux
Copy link
Author

Did you test this on Ubuntu 22.04?

@srinify
Copy link
Contributor

srinify commented Jul 18, 2022

I tested this within a Docker container and on Mac OS X. It's unclear to me why Ubuntu would be playing a role here, or what am I missing? The packages installed are all the same on any *nix operating system :)

@dat-linux
Copy link
Author

dat-linux commented Jul 21, 2022

I'm just the Ubuntu messenger. I cannot speak for Mac.

I recommend trying to install on a fresh Ubuntu 22.04 using pip install and you'll see the problems. It comes with python 3.10, and this results in a failure based on a couple of problematic deps (see below).

Even when I install python 3.9 alongside, I get the error described above.

In order to overcome ALL issues I encountered I need to perform:

  • Python 3.9 install using pyenv (and run pip install apache-superset using the 3.9 binary)
    And immediately after that:
- python3.9 -m pip uninstall -y markupsafe
- python3.9 -m pip install markupsafe==2.0.1
- python3.9 -m pip uninstall -y Werkzeug
- python3.9 -m pip install Werkzeug==2.0.3

The above needs to be done before the superset db upgrade step.

Just reporting as I see it based on a fresh install of Ubuntu 22.04 (with all system updates applied). Issues re markupsafe, and 3.10 failure (it results in an error when building the pyarrow pkg) have been reported elsewhere on this message board.

@marcos-mendez
Copy link

I just installed Superset 2.0.0 from scratch and wasn't able to replicate this issue unfortunately.

It happends only in LXC containers and python 3.9 installations

@EMCP
Copy link

EMCP commented Jul 31, 2022

can confirm it is indeed happening inside my LXC 20.04 container

python is 3.8.10 with latest pip

@eogren
Copy link

eogren commented Aug 4, 2022

I ran into a similar issue trying @dat-linux 's workaround, and also had to downgrade Flask - downgrading to Flask 2.1.0 seemed to fix things. (I also downgraded markup safe / Werkzeug as they suggested - did not try tweaking anything else)

@dat-linux
Copy link
Author

@eogren Yes, Flask is now also creating a problem. Which version of Flask did you fall back to?

@eogren
Copy link

eogren commented Aug 8, 2022

@dat-linux I installed Flask == 2.1.0

@dpgaspar
Copy link
Member

Seems like ETagResponseMixin was removed here: pallets/werkzeug#2276
it was deprecated, we should update our etag_cache method accordingly.

Do note that production Superset installations should use pinned dependencies based on: https://github.com/apache/superset/blob/master/requirements/base.txt

@alanorth
Copy link

Do note that production Superset installations should use pinned dependencies based on: https://github.com/apache/superset/blob/master/requirements/base.txt

We are all installing Superset via pip!

@WesleyBatista
Copy link

@dpgaspar thanks a lot for pointing that out!

Was facing the same problem. Running 1.5.0, upgrading to 2.0.0.

My solution was:

wget -O- https://raw.githubusercontent.com/apache/superset/2.0.0/requirements/base.txt | tail -n +10 > superset_requirements.txt
pip install apache-superset==2.0.0 -r superset_requirements.txt

This requirements/base.txt assumes a development environment (considering the -e file:. in there), and that was causing conflicts with my installation setup. tail in my command is to skip those lines.

After that I could move forward with applying db migrations successfully :)

@cwegener
Copy link
Contributor

Do note that production Superset installations should use pinned dependencies based on:

Would it be a good idea to use constraints like Airflow does, considering that there a quite a lot of optional extra requires in Superset which do not need to be installed?

I'm not sure if any of the dependencies for the extra requires are actually currently included in the pip-compile-multi generated requirements files to begin with.

Just thinking out loud.

@dat-linux
Copy link
Author

dat-linux commented Aug 30, 2022

Collecting pyarrow==5.0.0
  Downloading pyarrow-5.0.0.tar.gz (739 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 739.1/739.1 kB 4.4 MB/s eta 0:00:00
  Installing build dependencies ... error
  error: subprocess-exited-with-error
  
  × pip subprocess to install build dependencies did not run successfully.
  │ exit code: 1
  ╰─> [945 lines of output]
      Ignoring numpy: markers 'python_version < "3.9"' don't match your environment

Install still fails on platforms that have Python 3.10 by default (ie Ubuntu 22.04).

@cwegener
Copy link
Contributor

cwegener commented Aug 30, 2022

Install still fails on platforms that have Python 3.10 by default (ie Ubuntu 22.04).

That is not exactly related to the original issue. Python 3.10 support is in a different issue: #21002

@dat-linux
Copy link
Author

Well, the original issue was found due to an attempt to install Superset on Ubuntu 22.04.

@Aymane11
Copy link

wget -O- https://raw.githubusercontent.com/apache/superset/2.0.0/requirements/base.txt[](https://raw.githubusercontent.com/apache/superset/2.0.0/requirements/base.txt) | tail -n +10 > superset_requirements.txt
pip install apache-superset==2.0.0 -r superset_requirements.txt

I made a variant of the command @WesleyBatista made, since the one he shared creates a file which isn't necessary:

curl -sS https://raw.githubusercontent.com/apache/superset/2.0.0/requirements/base.txt | tail -n +10 | awk -v ORS=" " '/^[A-z]/{print}' | xargs pip install apache-superset==2.0.0

@trimat1
Copy link

trimat1 commented Oct 1, 2022

I'm just the Ubuntu messenger. I cannot speak for Mac.

I recommend trying to install on a fresh Ubuntu 22.04 using pip install and you'll see the problems. It comes with python 3.10, and this results in a failure based on a couple of problematic deps (see below).

Even when I install python 3.9 alongside, I get the error described above.

In order to overcome ALL issues I encountered I need to perform:

  • Python 3.9 install using pyenv (and run pip install apache-superset using the 3.9 binary)
    And immediately after that:
- python3.9 -m pip uninstall -y markupsafe
- python3.9 -m pip install markupsafe==2.0.1
- python3.9 -m pip uninstall -y Werkzeug
- python3.9 -m pip install Werkzeug==2.0.3

The above needs to be done before the superset db upgrade step.

Just reporting as I see it based on a fresh install of Ubuntu 22.04 (with all system updates applied). Issues re markupsafe, and 3.10 failure (it results in an error when building the pyarrow pkg) have been reported elsewhere on this message board.

i then get an error while installing Werzeug 2.0.3
"flask 2.2.2 requires Werkzeug>=2.2.2,"

and further during superset db upgrade
"TypeError: init() got an unexpected keyword argument 'unbound_message'"

@EMCP
Copy link

EMCP commented Oct 1, 2022

@trimat1 , I couldn't get 22.04 to work whatsoever.. python 3.10 has some breaking changes in the dependencies superset uses..

I backed down to 20.04 and did this routine to get setup, remove the sudo -u ubuntu .. I use Juju and that runs as Root by default which I do not want for Superset

apt-get update
apt-get -y upgrade
apt-get -y install build-essential libssl-dev libffi-dev python3-dev python3-pip libsasl2-dev libldap2-dev default-libmysqlclient-dev libpq-dev python-is-python3

pip install --upgrade pip
sudo -u ubuntu pip install --upgrade pip --no-warn-script-location
sudo -u ubuntu pip install werkzeug==2.0.3 --no-warn-script-location
sudo -u ubuntu pip install flask==2.1.3 --no-warn-script-location
sudo -u ubuntu pip install wtforms==2.3.0 --no-warn-script-location
sudo -u ubuntu pip install --upgrade pyopenssl --no-warn-script-location
sudo -u ubuntu pip install psycopg2-binary pillow gunicorn gevent --no-warn-script-location

sudo -u ubuntu pip install sqlalchemy-trino pyhive --no-warn-script-location
sudo -u ubuntu pip install apache-superset --no-warn-script-location

sudo touch /etc/profile.d/superset.sh
echo -e 'export FLASK_APP=superset' >> /etc/profile.d/superset.sh
  
export FLASK_APP=superset
sudo -u ubuntu FLASK_APP=superset /home/ubuntu/.local/bin/superset db upgrade
sudo -u ubuntu FLASK_APP=superset /home/ubuntu/.local/bin/superset fab create-admin --username admin --firstname admin --lastname user --email [email protected] --password YOURFAVORITEPASSWORDHERE 

install_example_data="$(config-get install_example_data)"
if $install_example_data; then
  sudo -u ubuntu FLASK_APP=superset /home/ubuntu/.local/bin/superset load_examples
else
  juju-log -l "WARNING" "Forgoing superset load_examples"
  status-set maintenance "Forgoing superset load_examples $(date +"%H:%M")"
fi
sudo -u ubuntu FLASK_APP=superset /home/ubuntu/.local/bin/superset init

@trimat1
Copy link

trimat1 commented Oct 1, 2022

@trimat1 , I couldn't get 22.04 to work whatsoever.. python 3.10 has some breaking changes in the dependencies superset uses..

I backed down to 20.04 and did this routine to get setup, remove the sudo -u ubuntu .. I use Juju and that runs as Root by default which I do not want for Superset

apt-get update
apt-get -y upgrade
apt-get -y install build-essential libssl-dev libffi-dev python3-dev python3-pip libsasl2-dev libldap2-dev default-libmysqlclient-dev libpq-dev python-is-python3

pip install --upgrade pip
sudo -u ubuntu pip install --upgrade pip --no-warn-script-location
sudo -u ubuntu pip install werkzeug==2.0.3 --no-warn-script-location
sudo -u ubuntu pip install flask==2.1.3 --no-warn-script-location
sudo -u ubuntu pip install wtforms==2.3.0 --no-warn-script-location
sudo -u ubuntu pip install --upgrade pyopenssl --no-warn-script-location
sudo -u ubuntu pip install psycopg2-binary pillow gunicorn gevent --no-warn-script-location

sudo -u ubuntu pip install sqlalchemy-trino pyhive --no-warn-script-location
sudo -u ubuntu pip install apache-superset --no-warn-script-location

sudo touch /etc/profile.d/superset.sh
echo -e 'export FLASK_APP=superset' >> /etc/profile.d/superset.sh
  
export FLASK_APP=superset
sudo -u ubuntu FLASK_APP=superset /home/ubuntu/.local/bin/superset db upgrade
sudo -u ubuntu FLASK_APP=superset /home/ubuntu/.local/bin/superset fab create-admin --username admin --firstname admin --lastname user --email [email protected] --password YOURFAVORITEPASSWORDHERE 

install_example_data="$(config-get install_example_data)"
if $install_example_data; then
  sudo -u ubuntu FLASK_APP=superset /home/ubuntu/.local/bin/superset load_examples
else
  juju-log -l "WARNING" "Forgoing superset load_examples"
  status-set maintenance "Forgoing superset load_examples $(date +"%H:%M")"
fi
sudo -u ubuntu FLASK_APP=superset /home/ubuntu/.local/bin/superset init

Hi @EMCP ,
i finally managed to run it.

pip uninstall -y markupsafe
pip install markupsafe==2.0.1
pip uninstall -y Werkzeug
pip install Werkzeug==2.0.3
pip uninstall WTForms 
pip install WTForms==2.3.0

this is whats was needed (hopefully).
installed and uninstalled a dozen of packages, but these might be the relevant ones.

@hubrix
Copy link

hubrix commented Oct 4, 2022

I get this when I tried your options

superset db upgrade
Traceback (most recent call last):
  File "/root/venv/bin/superset", line 33, in <module>
    sys.exit(load_entry_point('apache-superset==2.0.0', 'console_scripts', 'superset')())
  File "/root/venv/bin/superset", line 25, in importlib_load_entry_point
    return next(matches).load()
  File "/usr/lib/python3.9/importlib/metadata.py", line 86, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.9/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 972, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 972, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 850, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/root/venv/lib/python3.9/site-packages/superset/__init__.py", line 18, in <module>
    from flask import current_app, Flask
  File "/root/venv/lib/python3.9/site-packages/flask/__init__.py", line 4, in <module>
    from . import json as json
  File "/root/venv/lib/python3.9/site-packages/flask/json/__init__.py", line 8, in <module>
    from ..globals import current_app
  File "/root/venv/lib/python3.9/site-packages/flask/globals.py", line 56, in <module>
    app_ctx: "AppContext" = LocalProxy(  # type: ignore[assignment]
TypeError: __init__() got an unexpected keyword argument 'unbound_message'

@zhaoyongjie
Copy link
Member

I also face this problem when I test 2.0.1RC1. @srinify

I follow above steps

  1. create a new virtual environment
yongjie.zhao@:tmp$ mkvirtualenv release
created virtual environment CPython3.8.6.final.0-64 in 482ms
  creator CPython3Posix(dest=/Users/yongjie.zhao/.virtualenvs/release, clear=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/Users/yongjie.zhao/Library/Application Support/virtualenv)
    added seed packages: pip==22.2.2, setuptools==65.3.0, wheel==0.37.1
  activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator
virtualenvwrapper.user_scripts creating /Users/yongjie.zhao/.virtualenvs/release/bin/predeactivate
virtualenvwrapper.user_scripts creating /Users/yongjie.zhao/.virtualenvs/release/bin/postdeactivate
virtualenvwrapper.user_scripts creating /Users/yongjie.zhao/.virtualenvs/release/bin/preactivate
virtualenvwrapper.user_scripts creating /Users/yongjie.zhao/.virtualenvs/release/bin/postactivate
virtualenvwrapper.user_scripts creating /Users/yongjie.zhao/.virtualenvs/release/bin/get_env_details
  1. download rc1 tarball
(release) yongjie.zhao@:tmp$ wget -c https://dist.apache.org/repos/dist/dev/superset/2.0.1rc1/apache-superset-2.0.1rc1-source.tar.gz
--2022-10-08 14:08:32--  https://dist.apache.org/repos/dist/dev/superset/2.0.1rc1/apache-superset-2.0.1rc1-source.tar.gz
Resolving dist.apache.org (dist.apache.org)... 13.90.137.153
Connecting to dist.apache.org (dist.apache.org)|13.90.137.153|:443... connected.
HTTP request sent, awaiting response... 200 OK
  1. installation
(release) yongjie.zhao@:tmp$ pip list
Package    Version
---------- -------
pip        22.2.2
setuptools 65.3.0
wheel      0.37.1

(release) yongjie.zhao@:tmp$ pip install apache-superset-2.0.1rc1-source.tar.gz
Processing ./apache-superset-2.0.1rc1-source.tar.gz
  Preparing metadata (setup.py) ... done
Collecting backoff>=1.8.0
  Using cached backoff-2.2.1-py3-none-any.whl (15 kB)
Collecting bleach<4.0.0,>=3.0.2
  Using cached bleach-3.3.1-py2.py3-none-any.whl (146 kB)
Collecting cachelib<0.5,>=0.4.1
  Using cached cachelib-0.4.1-py3-none-any.whl (14 kB)
Collecting celery<6.0.0,>=5.2.2
  Using cached celery-5.2.7-py3-none-any.whl (405 kB)
Collecting click>=8.0.3
  Using cached click-8.1.3-py3-none-any.whl (96 kB)
Collecting colorama
  Using cached colorama-0.4.5-py2.py3-none-any.whl (16 kB)
Collecting croniter>=0.3.28
  Using cached croniter-1.3.7-py2.py3-none-any.whl (17 kB)
Collecting cron-descriptor
  Using cached cron_descriptor-1.2.31-py3-none-any.whl
Collecting cryptography>=3.3.2
  Using cached cryptography-38.0.1-cp36-abi3-macosx_10_10_x86_64.whl (2.8 MB)
Collecting deprecation<2.2.0,>=2.1.0
  Using cached deprecation-2.1.0-py2.py3-none-any.whl (11 kB)
Collecting flask<3.0.0,>=2.0.0
  Using cached Flask-2.2.2-py3-none-any.whl (101 kB)
Collecting flask-appbuilder<5.0.0,>=4.1.3
  Using cached Flask_AppBuilder-4.1.4-py3-none-any.whl (1.8 MB)
Collecting flask-caching>=1.10.0
  Using cached Flask_Caching-2.0.1-py3-none-any.whl (28 kB)
Collecting flask-compress
  Using cached Flask_Compress-1.13-py3-none-any.whl (7.9 kB)
Collecting flask-talisman
  Using cached flask_talisman-1.0.0-py2.py3-none-any.whl (18 kB)
Collecting flask-migrate
  Using cached Flask_Migrate-3.1.0-py3-none-any.whl (20 kB)
Collecting flask-wtf
  Using cached Flask_WTF-1.0.1-py3-none-any.whl (12 kB)
Collecting func_timeout
  Using cached func_timeout-4.3.5-py3-none-any.whl
Collecting geopy
  Using cached geopy-2.2.0-py3-none-any.whl (118 kB)
Collecting graphlib-backport
  Using cached graphlib_backport-1.0.3-py3-none-any.whl (5.1 kB)
Collecting gunicorn>=20.1.0
  Using cached gunicorn-20.1.0-py3-none-any.whl (79 kB)
Collecting hashids<2,>=1.3.1
  Using cached hashids-1.3.1-py2.py3-none-any.whl (6.6 kB)
Collecting holidays==0.14.2
  Using cached holidays-0.14.2-py3-none-any.whl (179 kB)
Collecting humanize
  Using cached humanize-4.4.0-py3-none-any.whl (106 kB)
Collecting isodate
  Using cached isodate-0.6.1-py2.py3-none-any.whl (41 kB)
Collecting markdown>=3.0
  Using cached Markdown-3.4.1-py3-none-any.whl (93 kB)
Collecting msgpack<1.1,>=1.0.0
  Using cached msgpack-1.0.4-cp38-cp38-macosx_10_9_x86_64.whl (73 kB)
Collecting numpy==1.22.1
  Using cached numpy-1.22.1-cp38-cp38-macosx_10_9_x86_64.whl (17.6 MB)
Collecting pandas<1.4,>=1.3.0
  Using cached pandas-1.3.5-cp38-cp38-macosx_10_9_x86_64.whl (11.2 MB)
Collecting parsedatetime
  Using cached parsedatetime-2.6-py3-none-any.whl (42 kB)
Collecting pgsanity
  Using cached pgsanity-0.2.9-py3-none-any.whl
Collecting polyline
  Using cached polyline-1.4.0-py2.py3-none-any.whl (4.4 kB)
Collecting pyparsing<4,>=3.0.6
  Using cached pyparsing-3.0.9-py3-none-any.whl (98 kB)
Collecting python-dateutil
  Using cached python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
Collecting python-dotenv
  Using cached python_dotenv-0.21.0-py3-none-any.whl (18 kB)
Collecting python-geohash
  Using cached python_geohash-0.8.5-cp38-cp38-macosx_10_15_x86_64.whl
Collecting pyarrow<6.0,>=5.0.0
  Using cached pyarrow-5.0.0-cp38-cp38-macosx_10_13_x86_64.whl (17.6 MB)
Collecting pyyaml>=5.4
  Using cached PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl (192 kB)
Collecting PyJWT<3.0,>=2.4.0
  Using cached PyJWT-2.5.0-py3-none-any.whl (20 kB)
Collecting redis
  Using cached redis-4.3.4-py3-none-any.whl (246 kB)
Collecting selenium>=3.141.0
  Using cached selenium-4.5.0-py3-none-any.whl (995 kB)
Collecting simplejson>=3.15.0
  Using cached simplejson-3.17.6-cp38-cp38-macosx_10_9_x86_64.whl (74 kB)
Collecting slackclient==2.5.0
  Using cached slackclient-2.5.0-py2.py3-none-any.whl (54 kB)
^ACollecting sqlalchemy!=1.3.21,<1.4,>=1.3.16
  Using cached SQLAlchemy-1.3.24-cp38-cp38-macosx_10_14_x86_64.whl (1.2 MB)
Collecting sqlalchemy-utils<0.38,>=0.37.8
  Using cached SQLAlchemy_Utils-0.37.9-py3-none-any.whl (100 kB)
Collecting sqlparse==0.3.0
  Using cached sqlparse-0.3.0-py2.py3-none-any.whl (39 kB)
Collecting tabulate==0.8.9
  Using cached tabulate-0.8.9-py3-none-any.whl (25 kB)
Collecting typing-extensions<4,>=3.10
  Using cached typing_extensions-3.10.0.2-py3-none-any.whl (26 kB)
Collecting wtforms-json
  Using cached WTForms_JSON-0.3.5-py3-none-any.whl
Collecting hijri-converter
  Using cached hijri_converter-2.2.4-py3-none-any.whl (14 kB)
Collecting korean-lunar-calendar
  Using cached korean_lunar_calendar-0.3.1-py3-none-any.whl (9.0 kB)
Collecting convertdate>=2.3.0
  Using cached convertdate-2.4.0-py3-none-any.whl (47 kB)
Collecting aiohttp>3.5.2
  Using cached aiohttp-3.8.3-cp38-cp38-macosx_10_9_x86_64.whl (359 kB)
Collecting packaging
  Using cached packaging-21.3-py3-none-any.whl (40 kB)
Collecting six>=1.9.0
  Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting webencodings
  Using cached webencodings-0.5.1-py2.py3-none-any.whl (11 kB)
Collecting vine<6.0,>=5.0.0
  Using cached vine-5.0.0-py2.py3-none-any.whl (9.4 kB)
Collecting click-repl>=0.2.0
  Using cached click_repl-0.2.0-py3-none-any.whl (5.2 kB)
Collecting billiard<4.0,>=3.6.4.0
  Using cached billiard-3.6.4.0-py3-none-any.whl (89 kB)
Collecting click-plugins>=1.1.1
  Using cached click_plugins-1.1.1-py2.py3-none-any.whl (7.5 kB)
Collecting kombu<6.0,>=5.2.3
  Using cached kombu-5.2.4-py3-none-any.whl (189 kB)
Collecting click-didyoumean>=0.0.3
  Using cached click_didyoumean-0.3.0-py3-none-any.whl (2.7 kB)
Collecting pytz>=2021.3
  Using cached pytz-2022.4-py2.py3-none-any.whl (500 kB)
Collecting cffi>=1.12
  Using cached cffi-1.15.1-cp38-cp38-macosx_10_9_x86_64.whl (178 kB)
Collecting Jinja2>=3.0
  Using cached Jinja2-3.1.2-py3-none-any.whl (133 kB)
Collecting Werkzeug>=2.2.2
  Using cached Werkzeug-2.2.2-py3-none-any.whl (232 kB)
Collecting importlib-metadata>=3.6.0
  Using cached importlib_metadata-5.0.0-py3-none-any.whl (21 kB)
Collecting itsdangerous>=2.0
  Using cached itsdangerous-2.1.2-py3-none-any.whl (15 kB)
Collecting apispec[yaml]<4,>=3.3
  Using cached apispec-3.3.2-py2.py3-none-any.whl (27 kB)
Collecting prison<1.0.0,>=0.2.1
  Using cached prison-0.2.1-py2.py3-none-any.whl (5.8 kB)
Collecting Flask-JWT-Extended<5.0.0,>=4.0.0
  Using cached Flask_JWT_Extended-4.4.4-py2.py3-none-any.whl (22 kB)
Collecting Flask-Login<0.7,>=0.3
  Using cached Flask_Login-0.6.2-py3-none-any.whl (17 kB)
Collecting WTForms<4
  Using cached WTForms-3.0.1-py3-none-any.whl (136 kB)
Collecting Flask-Babel<3,>=1
  Using cached Flask_Babel-2.0.0-py3-none-any.whl (9.3 kB)
Collecting jsonschema<5,>=3
  Using cached jsonschema-4.16.0-py3-none-any.whl (83 kB)
Collecting email-validator<2,>=1.0.5
  Using cached email_validator-1.3.0-py2.py3-none-any.whl (22 kB)
Collecting Flask-SQLAlchemy<3,>=2.4
  Using cached Flask_SQLAlchemy-2.5.1-py2.py3-none-any.whl (17 kB)
Collecting marshmallow-enum<2,>=1.5.1
  Using cached marshmallow_enum-1.5.1-py2.py3-none-any.whl (4.2 kB)
Collecting marshmallow-sqlalchemy<0.27.0,>=0.22.0
  Using cached marshmallow_sqlalchemy-0.26.1-py2.py3-none-any.whl (15 kB)
Collecting marshmallow<4,>=3
  Using cached marshmallow-3.18.0-py3-none-any.whl (48 kB)
Collecting flask-caching>=1.10.0
  Using cached Flask_Caching-2.0.0-py3-none-any.whl (28 kB)
Collecting flask<3.0.0,>=2.0.0
  Downloading Flask-2.1.2-py3-none-any.whl (95 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 95.2/95.2 kB 696.9 kB/s eta 0:00:00
Collecting flask-caching>=1.10.0
  Using cached Flask_Caching-1.11.1-py3-none-any.whl (29 kB)
Requirement already satisfied: setuptools>=3.0 in /Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages (from gunicorn>=20.1.0->apache-superset==2.0.1) (65.3.0)
Collecting trio~=0.17
  Using cached trio-0.22.0-py3-none-any.whl (384 kB)
Collecting urllib3[socks]~=1.26
  Using cached urllib3-1.26.12-py2.py3-none-any.whl (140 kB)
Collecting trio-websocket~=0.9
  Using cached trio_websocket-0.9.2-py3-none-any.whl (16 kB)
Collecting certifi>=2021.10.8
  Using cached certifi-2022.9.24-py3-none-any.whl (161 kB)
Collecting brotli
  Using cached Brotli-1.0.9-cp38-cp38-macosx_10_9_x86_64.whl (421 kB)
Collecting alembic>=0.7
  Using cached alembic-1.8.1-py3-none-any.whl (209 kB)
Collecting geographiclib<2,>=1.49
  Using cached geographiclib-1.52-py3-none-any.whl (38 kB)
Collecting async-timeout>=4.0.2
  Using cached async_timeout-4.0.2-py3-none-any.whl (5.8 kB)
Collecting deprecated>=1.2.3
  Using cached Deprecated-1.2.13-py2.py3-none-any.whl (9.6 kB)
Collecting charset-normalizer<3.0,>=2.0
  Using cached charset_normalizer-2.1.1-py3-none-any.whl (39 kB)
Collecting attrs>=17.3.0
  Using cached attrs-22.1.0-py2.py3-none-any.whl (58 kB)
Collecting yarl<2.0,>=1.0
  Using cached yarl-1.8.1-cp38-cp38-macosx_10_9_x86_64.whl (60 kB)
Collecting multidict<7.0,>=4.5
  Using cached multidict-6.0.2-cp38-cp38-macosx_10_9_x86_64.whl (28 kB)
Collecting aiosignal>=1.1.2
  Using cached aiosignal-1.2.0-py3-none-any.whl (8.2 kB)
Collecting frozenlist>=1.1.1
  Using cached frozenlist-1.3.1-cp38-cp38-macosx_10_9_x86_64.whl (36 kB)
Collecting Mako
  Using cached Mako-1.2.3-py3-none-any.whl (78 kB)
Collecting importlib-resources
  Using cached importlib_resources-5.10.0-py3-none-any.whl (34 kB)
Collecting pycparser
  Using cached pycparser-2.21-py2.py3-none-any.whl (118 kB)
Collecting prompt-toolkit
  Using cached prompt_toolkit-3.0.31-py3-none-any.whl (382 kB)
Collecting pymeeus<=1,>=0.3.13
  Using cached PyMeeus-0.5.11-py3-none-any.whl
Collecting wrapt<2,>=1.10
  Using cached wrapt-1.14.1-cp38-cp38-macosx_10_9_x86_64.whl (35 kB)
Collecting dnspython>=1.15.0
  Using cached dnspython-2.2.1-py3-none-any.whl (269 kB)
Collecting idna>=2.0.0
  Using cached idna-3.4-py3-none-any.whl (61 kB)
Collecting Babel>=2.3
  Using cached Babel-2.10.3-py3-none-any.whl (9.5 MB)
Collecting zipp>=0.5
  Using cached zipp-3.8.1-py3-none-any.whl (5.6 kB)
Collecting MarkupSafe>=2.0
  Using cached MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_x86_64.whl (13 kB)
Collecting pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0
  Using cached pyrsistent-0.18.1-cp38-cp38-macosx_10_9_universal2.whl (81 kB)
Collecting pkgutil-resolve-name>=1.3.10
  Using cached pkgutil_resolve_name-1.3.10-py3-none-any.whl (4.7 kB)
Collecting amqp<6.0.0,>=5.0.9
  Using cached amqp-5.1.1-py3-none-any.whl (50 kB)
Collecting exceptiongroup>=1.0.0rc9
  Using cached exceptiongroup-1.0.0rc9-py3-none-any.whl (12 kB)
Collecting outcome
  Using cached outcome-1.2.0-py2.py3-none-any.whl (9.7 kB)
Collecting async-generator>=1.9
  Using cached async_generator-1.10-py3-none-any.whl (18 kB)
Collecting sortedcontainers
  Using cached sortedcontainers-2.4.0-py2.py3-none-any.whl (29 kB)
Collecting sniffio
  Using cached sniffio-1.3.0-py3-none-any.whl (10 kB)
Collecting wsproto>=0.14
  Using cached wsproto-1.2.0-py3-none-any.whl (24 kB)
Collecting PySocks!=1.5.7,<2.0,>=1.5.6
  Using cached PySocks-1.7.1-py3-none-any.whl (16 kB)
Collecting h11<1,>=0.9.0
  Using cached h11-0.14.0-py3-none-any.whl (58 kB)
Collecting wcwidth
  Using cached wcwidth-0.2.5-py2.py3-none-any.whl (30 kB)
Building wheels for collected packages: apache-superset
  Building wheel for apache-superset (setup.py) ... done
  Created wheel for apache-superset: filename=apache_superset-2.0.1-py3-none-any.whl size=4240895 sha256=d952ea864fba31da95fcfe50d1c175497ff18f38f4065b2caa1a2b3a1a8032c8
  Stored in directory: /Users/yongjie.zhao/Library/Caches/pip/wheels/4a/8e/92/a749272535d841e2b346f07ac4ac78850f40779f9710888162
Successfully built apache-superset
Installing collected packages: webencodings, wcwidth, typing-extensions, tabulate, sortedcontainers, pytz, python-geohash, pymeeus, pgsanity, parsedatetime, msgpack, korean-lunar-calendar, geographiclib, func_timeout, flask-talisman, cron-descriptor, brotli, billiard, zipp, wrapt, vine, urllib3, sqlparse, sqlalchemy, sniffio, six, simplejson, pyyaml, python-dotenv, PySocks, pyrsistent, pyparsing, PyJWT, pycparser, prompt-toolkit, pkgutil-resolve-name, numpy, multidict, MarkupSafe, itsdangerous, idna, humanize, hijri-converter, hashids, h11, gunicorn, graphlib-backport, geopy, frozenlist, exceptiongroup, dnspython, convertdate, colorama, click, charset-normalizer, certifi, cachelib, backoff, Babel, attrs, async-timeout, async-generator, apispec, yarl, WTForms, wsproto, Werkzeug, sqlalchemy-utils, python-dateutil, pyarrow, prison, polyline, packaging, outcome, Mako, Jinja2, isodate, importlib-resources, importlib-metadata, email-validator, deprecated, click-repl, click-plugins, click-didyoumean, cffi, amqp, aiosignal, wtforms-json, trio, redis, pandas, marshmallow, markdown, kombu, jsonschema, holidays, flask, deprecation, cryptography, croniter, bleach, alembic, aiohttp, trio-websocket, slackclient, marshmallow-sqlalchemy, marshmallow-enum, flask-wtf, Flask-SQLAlchemy, Flask-Login, Flask-JWT-Extended, flask-compress, flask-caching, Flask-Babel, celery, selenium, flask-migrate, flask-appbuilder, apache-superset
Successfully installed Babel-2.10.3 Flask-Babel-2.0.0 Flask-JWT-Extended-4.4.4 Flask-Login-0.6.2 Flask-SQLAlchemy-2.5.1 Jinja2-3.1.2 Mako-1.2.3 MarkupSafe-2.1.1 PyJWT-2.5.0 PySocks-1.7.1 WTForms-3.0.1 Werkzeug-2.2.2 aiohttp-3.8.3 aiosignal-1.2.0 alembic-1.8.1 amqp-5.1.1 apache-superset-2.0.1 apispec-3.3.2 async-generator-1.10 async-timeout-4.0.2 attrs-22.1.0 backoff-2.2.1 billiard-3.6.4.0 bleach-3.3.1 brotli-1.0.9 cachelib-0.4.1 celery-5.2.7 certifi-2022.9.24 cffi-1.15.1 charset-normalizer-2.1.1 click-8.1.3 click-didyoumean-0.3.0 click-plugins-1.1.1 click-repl-0.2.0 colorama-0.4.5 convertdate-2.4.0 cron-descriptor-1.2.31 croniter-1.3.7 cryptography-38.0.1 deprecated-1.2.13 deprecation-2.1.0 dnspython-2.2.1 email-validator-1.3.0 exceptiongroup-1.0.0rc9 flask-2.2.2 flask-appbuilder-4.1.4 flask-caching-1.11.1 flask-compress-1.13 flask-migrate-3.1.0 flask-talisman-1.0.0 flask-wtf-1.0.1 frozenlist-1.3.1 func_timeout-4.3.5 geographiclib-1.52 geopy-2.2.0 graphlib-backport-1.0.3 gunicorn-20.1.0 h11-0.14.0 hashids-1.3.1 hijri-converter-2.2.4 holidays-0.14.2 humanize-4.4.0 idna-3.4 importlib-metadata-5.0.0 importlib-resources-5.10.0 isodate-0.6.1 itsdangerous-2.1.2 jsonschema-4.16.0 kombu-5.2.4 korean-lunar-calendar-0.3.1 markdown-3.4.1 marshmallow-3.18.0 marshmallow-enum-1.5.1 marshmallow-sqlalchemy-0.26.1 msgpack-1.0.4 multidict-6.0.2 numpy-1.22.1 outcome-1.2.0 packaging-21.3 pandas-1.3.5 parsedatetime-2.6 pgsanity-0.2.9 pkgutil-resolve-name-1.3.10 polyline-1.4.0 prison-0.2.1 prompt-toolkit-3.0.31 pyarrow-5.0.0 pycparser-2.21 pymeeus-0.5.11 pyparsing-3.0.9 pyrsistent-0.18.1 python-dateutil-2.8.2 python-dotenv-0.21.0 python-geohash-0.8.5 pytz-2022.4 pyyaml-6.0 redis-4.3.4 selenium-4.5.0 simplejson-3.17.6 six-1.16.0 slackclient-2.5.0 sniffio-1.3.0 sortedcontainers-2.4.0 sqlalchemy-1.3.24 sqlalchemy-utils-0.37.9 sqlparse-0.3.0 tabulate-0.8.9 trio-0.22.0 trio-websocket-0.9.2 typing-extensions-3.10.0.2 urllib3-1.26.12 vine-5.0.0 wcwidth-0.2.5 webencodings-0.5.1 wrapt-1.14.1 wsproto-1.2.0 wtforms-json-0.3.5 yarl-1.8.1 zipp-3.8.1
  1. set system environment for Flask App
yongjie.zhao@:tmp$ export FLASK_APP="superset.app:create_app()"

(release) yongjie.zhao@:tmp$ env | grep -i flask
FLASK_APP=superset.app:create_app()
  1. throw an exception when run superset db upgrade
(release) yongjie.zhao@:tmp$ superset db upgrade
--------------------------------------------------------------------------------
                                    WARNING
--------------------------------------------------------------------------------
A Default SECRET_KEY was detected, please use superset_config.py to override it.
Use a strong complex alphanumeric string and use a tool to help you generate
a sufficiently random sequence, ex: openssl rand -base64 42
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
logging was configured successfully
2022-10-08 14:16:48,961:INFO:superset.utils.logging_configurator:logging was configured successfully
2022-10-08 14:16:48,968:INFO:root:Configured event logger of type <class 'superset.utils.log.DBEventLogger'>
Falling back to the built-in cache, that stores data in the metadata database, for the following cache: `FILTER_STATE_CACHE_CONFIG`. It is recommended to use `RedisCache`, `MemcachedCache` or another dedicated caching backend for production deployments
2022-10-08 14:16:48,971:WARNING:superset.utils.cache_manager:Falling back to the built-in cache, that stores data in the metadata database, for the following cache: `FILTER_STATE_CACHE_CONFIG`. It is recommended to use `RedisCache`, `MemcachedCache` or another dedicated caching backend for production deployments
Falling back to the built-in cache, that stores data in the metadata database, for the following cache: `EXPLORE_FORM_DATA_CACHE_CONFIG`. It is recommended to use `RedisCache`, `MemcachedCache` or another dedicated caching backend for production deployments
2022-10-08 14:16:48,974:WARNING:superset.utils.cache_manager:Falling back to the built-in cache, that stores data in the metadata database, for the following cache: `EXPLORE_FORM_DATA_CACHE_CONFIG`. It is recommended to use `RedisCache`, `MemcachedCache` or another dedicated caching backend for production deployments
Failed to create app
Traceback (most recent call last):
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/app.py", line 37, in create_app
    app_initializer.init_app()
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/initialization/__init__.py", line 460, in init_app
    self.init_app_in_ctx()
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/initialization/__init__.py", line 409, in init_app_in_ctx
    self.configure_url_map_converters()
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/initialization/__init__.py", line 508, in configure_url_map_converters
    from superset.utils.url_map_converters import (
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/utils/url_map_converters.py", line 21, in <module>
    from superset.models.tags import ObjectTypes
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/models/__init__.py", line 17, in <module>
    from . import core, datasource_access_request, dynamic_plugins, sql_lab, user_attributes
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/models/core.py", line 63, in <module>
    from superset.utils import cache as cache_util, core as utils
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/utils/cache.py", line 28, in <module>
    from werkzeug.wrappers.etag import ETagResponseMixin
ModuleNotFoundError: No module named 'werkzeug.wrappers.etag'
2022-10-08 14:16:49,065:ERROR:superset.app:Failed to create app
Traceback (most recent call last):
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/app.py", line 37, in create_app
    app_initializer.init_app()
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/initialization/__init__.py", line 460, in init_app
    self.init_app_in_ctx()
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/initialization/__init__.py", line 409, in init_app_in_ctx
    self.configure_url_map_converters()
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/initialization/__init__.py", line 508, in configure_url_map_converters
    from superset.utils.url_map_converters import (
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/utils/url_map_converters.py", line 21, in <module>
    from superset.models.tags import ObjectTypes
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/models/__init__.py", line 17, in <module>
    from . import core, datasource_access_request, dynamic_plugins, sql_lab, user_attributes
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/models/core.py", line 63, in <module>
    from superset.utils import cache as cache_util, core as utils
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/utils/cache.py", line 28, in <module>
    from werkzeug.wrappers.etag import ETagResponseMixin
ModuleNotFoundError: No module named 'werkzeug.wrappers.etag'
Traceback (most recent call last):
  File "/Users/yongjie.zhao/.virtualenvs/release/bin/superset", line 8, in <module>
    sys.exit(superset())
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/click/core.py", line 1654, in invoke
    super().invoke(ctx)
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/click/decorators.py", line 26, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/flask/cli.py", line 354, in decorator
    app = __ctx.ensure_object(ScriptInfo).load_app()
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/flask/cli.py", line 308, in load_app
    app = locate_app(import_name, name)
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/flask/cli.py", line 237, in locate_app
    return find_app_by_string(module, app_name)
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/flask/cli.py", line 165, in find_app_by_string
    app = attr(*args, **kwargs)
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/app.py", line 44, in create_app
    raise ex
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/app.py", line 37, in create_app
    app_initializer.init_app()
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/initialization/__init__.py", line 460, in init_app
    self.init_app_in_ctx()
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/initialization/__init__.py", line 409, in init_app_in_ctx
    self.configure_url_map_converters()
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/initialization/__init__.py", line 508, in configure_url_map_converters
    from superset.utils.url_map_converters import (
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/utils/url_map_converters.py", line 21, in <module>
    from superset.models.tags import ObjectTypes
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/models/__init__.py", line 17, in <module>
    from . import core, datasource_access_request, dynamic_plugins, sql_lab, user_attributes
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/models/core.py", line 63, in <module>
    from superset.utils import cache as cache_util, core as utils
  File "/Users/yongjie.zhao/.virtualenvs/release/lib/python3.8/site-packages/superset/utils/cache.py", line 28, in <module>
    from werkzeug.wrappers.etag import ETagResponseMixin
ModuleNotFoundError: No module named 'werkzeug.wrappers.etag'

@eschutho
Copy link
Member

Fixed as per the above commit.

@kokiers
Copy link

kokiers commented Mar 4, 2023

I get this when I tried your options

superset db upgrade
Traceback (most recent call last):
  File "/root/venv/bin/superset", line 33, in <module>
    sys.exit(load_entry_point('apache-superset==2.0.0', 'console_scripts', 'superset')())
  File "/root/venv/bin/superset", line 25, in importlib_load_entry_point
    return next(matches).load()
  File "/usr/lib/python3.9/importlib/metadata.py", line 86, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.9/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 972, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 972, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 850, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/root/venv/lib/python3.9/site-packages/superset/__init__.py", line 18, in <module>
    from flask import current_app, Flask
  File "/root/venv/lib/python3.9/site-packages/flask/__init__.py", line 4, in <module>
    from . import json as json
  File "/root/venv/lib/python3.9/site-packages/flask/json/__init__.py", line 8, in <module>
    from ..globals import current_app
  File "/root/venv/lib/python3.9/site-packages/flask/globals.py", line 56, in <module>
    app_ctx: "AppContext" = LocalProxy(  # type: ignore[assignment]
TypeError: __init__() got an unexpected keyword argument 'unbound_message'

I got the same result.....

@cll-mtk
Copy link

cll-mtk commented Mar 30, 2023

Solved problem with flask==2.1.0 WTForms==2.3.0 Werkzeug==2.0.3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests