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

fix: relax marshmallow-sqlalchemy version constraint to fix compatibility with marshmallow>=3.24 #2298

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 8 additions & 6 deletions requirements/base.txt
Original file line number Diff line number Diff line change
Expand Up @@ -39,15 +39,17 @@ flask-babel==2.0.0
# via flask-appbuilder
flask-jwt-extended==4.5.3
# via flask-appbuilder
flask-limiter==3.5.0
flask-limiter==3.7.0
# via flask-appbuilder
flask-login==0.6.3
# via flask-appbuilder
flask-sqlalchemy==2.5.1
# via flask-appbuilder
flask-wtf==1.2.1
# via flask-appbuilder
idna==3.4
greenlet==3.1.1
# via sqlalchemy
idna==3.6
# via email-validator
importlib-resources==6.1.0
# via limits
Expand All @@ -72,12 +74,12 @@ markupsafe==2.1.3
# jinja2
# werkzeug
# wtforms
marshmallow==3.20.1
marshmallow==3.24.1
# via
# flask-appbuilder
# marshmallow-sqlalchemy
marshmallow-sqlalchemy==0.28.2
# via Flask-AppBuilder (setup.py)
marshmallow-sqlalchemy==1.1.1
# via flask-appbuilder
mdurl==0.1.2
# via markdown-it-py
ordered-set==4.1.0
Expand Down Expand Up @@ -123,7 +125,7 @@ sqlalchemy==1.4.49
# sqlalchemy-utils
sqlalchemy-utils==0.41.1
# via flask-appbuilder
typing-extensions==4.8.0
typing-extensions==4.12.2
# via
# flask-limiter
# limits
Expand Down
4 changes: 2 additions & 2 deletions requirements/dev.txt
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ parameterized==0.8.1
# via -r requirements/tests.in
pathspec==0.12.1
# via black
pip-tools==6.8.0
pip-tools==7.4.1
# via -r requirements/dev.in
platformdirs==4.2.0
# via
Expand Down Expand Up @@ -80,7 +80,7 @@ tox==3.24.3
# via -r requirements/dev.in
types-pyyaml==6.0.12.2
# via -r requirements/dev.in
typing-extensions==4.9.0
typing-extensions==4.12.2
# via mypy
virtualenv==20.25.0
# via tox
Expand Down
85 changes: 62 additions & 23 deletions requirements/docs.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@
alabaster==0.7.16
# via sphinx
apispec[yaml]==6.3.0
# via -r requirements/base.txt
# via
# -r requirements/base.txt
# flask-appbuilder
attrs==23.1.0
# via
# -r requirements/base.txt
Expand All @@ -32,13 +34,16 @@ click==8.1.7
# via
# -r requirements/base.txt
# flask
# flask-appbuilder
colorama==0.4.6
# via -r requirements/base.txt
# via
# -r requirements/base.txt
# flask-appbuilder
deprecated==1.2.14
# via
# -r requirements/base.txt
# limits
dnspython==2.4.2
dnspython==2.6.1
# via
# -r requirements/base.txt
# email-validator
Expand All @@ -47,31 +52,50 @@ docutils==0.20.1
# sphinx
# sphinx-rtd-theme
email-validator==1.3.1
# via -r requirements/base.txt
# via
# -r requirements/base.txt
# flask-appbuilder
flask==2.3.3
# via
# -r requirements/base.txt
# flask-appbuilder
# flask-babel
# flask-jwt-extended
# flask-limiter
# flask-login
# flask-sqlalchemy
# flask-wtf
flask-babel==2.0.0
# via -r requirements/base.txt
# via
# -r requirements/base.txt
# flask-appbuilder
flask-jwt-extended==4.5.3
# via -r requirements/base.txt
flask-limiter==3.5.0
# via -r requirements/base.txt
# via
# -r requirements/base.txt
# flask-appbuilder
flask-limiter==3.7.0
# via
# -r requirements/base.txt
# flask-appbuilder
flask-login==0.6.3
# via -r requirements/base.txt
# via
# -r requirements/base.txt
# flask-appbuilder
flask-sqlalchemy==2.5.1
# via -r requirements/base.txt
# via
# -r requirements/base.txt
# flask-appbuilder
flask-wtf==1.2.1
# via -r requirements/base.txt
# via
# -r requirements/base.txt
# flask-appbuilder
funcparserlib==2.0.0a0
# via blockdiag
idna==3.4
greenlet==3.1.1
# via
# -r requirements/base.txt
# sqlalchemy
idna==3.6
# via
# -r requirements/base.txt
# email-validator
Expand All @@ -87,14 +111,16 @@ itsdangerous==2.1.2
# -r requirements/base.txt
# flask
# flask-wtf
jinja2==3.1.2
jinja2==3.1.3
# via
# -r requirements/base.txt
# flask
# flask-babel
# sphinx
jsonschema==4.19.1
# via -r requirements/base.txt
# via
# -r requirements/base.txt
# flask-appbuilder
jsonschema-specifications==2023.7.1
# via
# -r requirements/base.txt
Expand All @@ -113,12 +139,15 @@ markupsafe==2.1.3
# jinja2
# werkzeug
# wtforms
marshmallow==3.20.1
marshmallow==3.24.1
# via
# -r requirements/base.txt
# flask-appbuilder
# marshmallow-sqlalchemy
marshmallow-sqlalchemy==0.26.1
# via -r requirements/base.txt
marshmallow-sqlalchemy==1.1.1
# via
# -r requirements/base.txt
# flask-appbuilder
mdurl==0.1.2
# via
# -r requirements/base.txt
Expand All @@ -137,7 +166,9 @@ packaging==23.2
pillow==10.2.0
# via blockdiag
prison==0.2.1
# via -r requirements/base.txt
# via
# -r requirements/base.txt
# flask-appbuilder
pygments==2.16.1
# via
# -r requirements/base.txt
Expand All @@ -146,9 +177,12 @@ pygments==2.16.1
pyjwt==2.8.0
# via
# -r requirements/base.txt
# flask-appbuilder
# flask-jwt-extended
python-dateutil==2.8.2
# via -r requirements/base.txt
# via
# -r requirements/base.txt
# flask-appbuilder
pytz==2023.3.post1
# via
# -r requirements/base.txt
Expand Down Expand Up @@ -206,12 +240,15 @@ sphinxcontrib-serializinghtml==1.1.10
sqlalchemy==1.4.49
# via
# -r requirements/base.txt
# flask-appbuilder
# flask-sqlalchemy
# marshmallow-sqlalchemy
# sqlalchemy-utils
sqlalchemy-utils==0.41.1
# via -r requirements/base.txt
typing-extensions==4.8.0
# via
# -r requirements/base.txt
# flask-appbuilder
typing-extensions==4.12.2
# via
# -r requirements/base.txt
# flask-limiter
Expand All @@ -220,19 +257,21 @@ urllib3==2.2.0
# via requests
webcolors==1.13
# via blockdiag
werkzeug==3.0.1
werkzeug==3.0.3
# via
# -r requirements/base.txt
# flask
# flask-appbuilder
# flask-jwt-extended
# flask-login
wrapt==1.15.0
# via
# -r requirements/base.txt
# deprecated
wtforms==3.1.0
wtforms==3.2.1
# via
# -r requirements/base.txt
# flask-appbuilder
# flask-wtf

# The following packages are considered to be unsafe in a requirements file:
Expand Down
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ def desc():
"Flask-JWT-Extended>=4.0.0, <5.0.0",
"jsonschema>=3, <5",
"marshmallow>=3.18.0, <4",
"marshmallow-sqlalchemy>=0.22.0, <0.29.0",
"marshmallow-sqlalchemy>=0.22.0, <2.0.0",
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IMO we should remove the upper bound altogether

Suggested change
"marshmallow-sqlalchemy>=0.22.0, <2.0.0",
"marshmallow-sqlalchemy>=0.22.0",

to avoid issues like the one that Airflow ran into. since FAB is a library, its shouldn't impose such strict upper constraints on its dependencies and allow users to pin their own dependencies

"python-dateutil>=2.3, <3",
"prison>=0.2.1, <1.0.0",
"PyJWT>=2.0.0, <3.0.0",
Expand Down
Loading