Repository navigation
fix(example): make Flask examples installable with Flask 3.1 - #357
Merged
Merged
Conversation
Earlier Dependabot bumps moved the Flask examples to Flask 3.1.3 without updating the rest of the requirements, so none of them could be installed. - itsdangerous 2.1.2 -> 2.2.0 (required by Flask 3.1) - flask_sqlalchemy 2.5.1 -> 3.1.1 (2.x imports _app_ctx_stack, removed in Flask 2.3) and access db.engine inside an app context, as 3.x requires - pin sqlalchemy 2.0.x (instrumentation 0.66b0 supports < 2.1) - uWSGI 2.0.22 -> 2.0.31 (2.0.22 does not build on Python 3.12) - pin opentelemetry-instrumentation-logging 0.66b0 so pip 24 can resolve - flask-auto-instrumentation: flask 2.3.2 -> 3.1.3 (supersedes #328)
This was referenced Nov 1, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Earlier Dependabot bumps (#312, #321) moved the Flask examples to Flask 3.1.3 without updating the rest of the requirements, so
pip install -r requirements.txtfailed forflask,flask-gunicornandflask-uwsgi. #328 would have brokenflask-auto-instrumentationthe same way. CI doesn't install the examples, so it didn't catch this.Changes:
itsdangerous2.1.2 → 2.2.0 (required by Flask 3.1)flask_sqlalchemy2.5.1 → 3.1.1 (2.x imports_app_ctx_stack, which Flask removed), anddb.engineis accessed insideapp.app_context(), as 3.x requiressqlalchemy==2.0.55(the 0.66b0 SQLAlchemy instrumentation supports < 2.1)uWSGI2.0.22 → 2.0.31 (2.0.22 doesn't build on Python 3.12)opentelemetry-instrumentation-logging==0.66b0(otherwise pip 24.0 fails to resolve it against the 0.66b0 instrumentations)flask-auto-instrumentation: Flask 2.3.2 → 3.1.3 (supersedes chore(deps): bump flask from 2.3.2 to 3.1.3 in /example/flask-auto-instrumentation #328)Tested on Python 3.12 with pip 24.0: a clean install of each example's requirements, then the example run under its own server (Flask test client, gunicorn,
opentelemetry-instrument, uwsgi)./hello/worldreturns 200 in all four.