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

werkzeug version in requirements.txt #4643

Closed
seem8 opened this issue Feb 12, 2020 · 3 comments
Closed

werkzeug version in requirements.txt #4643

seem8 opened this issue Feb 12, 2020 · 3 comments

Comments

@seem8
Copy link

seem8 commented Feb 12, 2020

Since it's my first post here. Hi! :)

Issue Summary

I think, that werkzeug should have higher version in requirements.txt.

Steps to Reproduce

  1. On werkzeug 0.16.1
    python3 manage.py
    Traceback (most recent call last):
    File "manage.py", line 6, in
    from redash.cli import manager
    File "/home/lukasz/progi/redash/redash/redash/init.py", line 14, in
    from .app import create_app # noqa
    File "/home/lukasz/progi/redash/redash/redash/app.py", line 2, in
    from werkzeug.middleware.proxy_fix import ProxyFix
    ModuleNotFoundError: No module named 'werkzeug.middleware'

  2. After uprading werkzeug to version 1.0.0:
    python3 manage.py
    Usage: manage.py [OPTIONS] COMMAND [ARGS]...
    [...]
    it works.

Technical details:

I think it's more do to with werkzeug as a Flask dependency, but I'm not sure.

  • Redash Version:
    From today.
  • Browser/OS:
    None so far / Fedora 31
  • How did you install Redash:
    I pulled from git into virtualenv dir.

Thanks. Redash looks like a really good application.

@arikfr
Copy link
Member

arikfr commented Feb 12, 2020

Are you sure you got this error with werkzeug 0.16.1?

@seem8
Copy link
Author

seem8 commented Feb 13, 2020

Yes it was 0.16.1. From pipdeptree:
[...]
Flask-Limiter==0.9.3
- Werkzeug [required: >=0.15, installed: 0.16.1]
[...]
and I think I know what happened. manage.py throw an exception:
python3 manage.py
Traceback (most recent call last):
File "manage.py", line 6, in
from redash.cli import manager
File "/home/lukasz/progi/redash3/redash/redash/init.py", line 56, in
import_query_runners(settings.QUERY_RUNNERS)
File "/home/lukasz/progi/redash3/redash/redash/query_runner/init.py", line 263, in import_query_runners
import(runner_import)
File "/home/lukasz/progi/redash3/redash/redash/query_runner/cloudwatch.py", line 1, in
import boto3
ModuleNotFoundError: No module named 'boto3'

so... I installed flask-boto3, which pulled Flask 1.1.1, which than seeks for werkzeug.middleware module. After uprading werkzeug to 1.0.0 manage.py works, but pip complains about incompatibility;
ERROR: flask-boto3 0.3.2 has requirement werkzeug==0.14.1, but you'll have werkzeug 1.0.0 which is incompatible.

So yes. I figure it out and post requirements.txt, that will work for me.
Thanks.

@seem8
Copy link
Author

seem8 commented Feb 20, 2020

I figured it out. I think my biggest problem was insisting of using Redash without containers (I know that is now officially supported now) and it works. I installed it on a local VM and plan to rsync that to production server, to avoid installing a ton of dependencies for building Python modules and npm there.
I used both requirements_all_ds.txt and requirements.txt file and installed everything.
Sorry for poking You with it.

@seem8 seem8 closed this as completed Feb 20, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants