gems-uff / noworkflow

Supporting infrastructure to run scientific experiments without a scientific workflow management system.
http://gems-uff.github.io/noworkflow
MIT License
120 stars 28 forks source link

Downgrade werkzeug to fix incompatibility with Flask 2.1.3 #159

Closed JoshuaGlaZ closed 4 months ago

JoshuaGlaZ commented 5 months ago

I have newly installed noWorkFlow using pip install capture[demo] to visualize using now vis.

. . . Collecting flask==2.1.3 Using cached Flask-2.1.3-py3-none-any.whl (95 kB) Collecting Werkzeug>=2.0 Using cached werkzeug-3.0.3-py3-none-any.whl (227 kB) . . .

The flask version 2.1.3 then was installed. But I encountered an ImportError instead:

Traceback (most recent call last): File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python38\Scripts\now-script.py", line 33, in sys.exit(load_entry_point('noworkflow', 'console_scripts', 'now')()) File "c:\users\lenovo\onedrive\documents\noworkflow\capture\noworkflow\now\cmd__init.py", line 78, in main args.func(args) File "c:\users\lenovo\onedrive\documents\noworkflow\capture\noworkflow\now\cmd\cmd_vis.py", line 56, in execute run(path=args.dir, browser=args.browser, port=args.port, File "c:\users\lenovo\onedrive\documents\noworkflow\capture\noworkflow\now\cmd\cmd_vis.py", line 24, in run from ..vis.views import app File "c:\users\lenovo\onedrive\documents\noworkflow\capture\noworkflow\now\vis\views.py", line 13, in from flask import render_template, jsonify, request, make_response, send_file,send_file, Response
File "c:\users\lenovo\appdata\local\programs\python\python38\lib\site-packages\flask\
init__.py", line 7, in from .app import Flask as Flask File "c:\users\lenovo\appdata\local\programs\python\python38\lib\site-packages\flask\app.py", line 27, in from . import cli File "c:\users\lenovo\appdata\local\programs\python\python38\lib\site-packages\flask\cli.py", line 17, in from .helpers import get_debug_flag File "c:\users\lenovo\appdata\local\programs\python\python38\lib\site-packages\flask\helpers.py", line 14, in from werkzeug.urls import url_quote ImportError: cannot import name 'url_quote' from 'werkzeug.urls' (c:\users\lenovo\appdata\local\programs\python\python38\lib\site-packages\werkzeug\urls.py)

The error stemmed from incompatibility between flask 2.1.3 and werkzeug versions 3.0.3. The solution was to downgrading werkzeug to version 2.3.7 resolves the issue.