Skip to content

chore(deps): update dependency flask to v3.1.3 [security]#13971

Open
renovate-bot wants to merge 1 commit intoGoogleCloudPlatform:mainfrom
renovate-bot:renovate/pypi-flask-vulnerability
Open

chore(deps): update dependency flask to v3.1.3 [security]#13971
renovate-bot wants to merge 1 commit intoGoogleCloudPlatform:mainfrom
renovate-bot:renovate/pypi-flask-vulnerability

Conversation

@renovate-bot
Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
Flask (changelog) ==3.0.3==3.1.3 age confidence
Flask (changelog) ==2.2.5==3.1.3 age confidence
flask (changelog) ==3.0.3==3.1.3 age confidence

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.

GitHub Vulnerability Alerts

CVE-2026-27205

When the session object is accessed, Flask should set the Vary: Cookie header. This instructs caches not to cache the response, as it may contain information specific to a logged in user. This is handled in most cases, but some forms of access such as the Python in operator were overlooked.

The severity depends on the application's use of the session, and the cache's behavior regarding cookies. The risk depends on all these conditions being met.

  1. The application must be hosted behind a caching proxy that does not ignore responses with cookies.
  2. The application does not set a Cache-Control header to indicate that a page is private or should not be cached.
  3. The application accesses the session in a way that does not access the values, only the keys, and does not mutate the session.

Release Notes

pallets/flask (Flask)

v3.1.3

Compare Source

Released 2026-02-18

  • The session is marked as accessed for operations that only access the keys
    but not the values, such as in and len. :ghsa:68rp-wp8r-4726

v3.1.2

Compare Source

Released 2025-08-19

  • stream_with_context does not fail inside async views. :issue:5774
  • When using follow_redirects in the test client, the final state
    of session is correct. :issue:5786
  • Relax type hint for passing bytes IO to send_file. :issue:5776

v3.1.1

Compare Source

Released 2025-05-13

  • Fix signing key selection order when key rotation is enabled via
    SECRET_KEY_FALLBACKS. :ghsa:4grg-w6v8-c28g
  • Fix type hint for cli_runner.invoke. :issue:5645
  • flask --help loads the app and plugins first to make sure all commands
    are shown. :issue:5673
  • Mark sans-io base class as being able to handle views that return
    AsyncIterable. This is not accurate for Flask, but makes typing easier
    for Quart. :pr:5659

v3.1.0

Compare Source

Released 2024-11-13

  • Drop support for Python 3.8. :pr:5623
  • Update minimum dependency versions to latest feature releases.
    Werkzeug >= 3.1, ItsDangerous >= 2.2, Blinker >= 1.9. :pr:5624,5633
  • Provide a configuration option to control automatic option
    responses. :pr:5496
  • Flask.open_resource/open_instance_resource and
    Blueprint.open_resource take an encoding parameter to use when
    opening in text mode. It defaults to utf-8. :issue:5504
  • Request.max_content_length can be customized per-request instead of only
    through the MAX_CONTENT_LENGTH config. Added
    MAX_FORM_MEMORY_SIZE and MAX_FORM_PARTS config. Added documentation
    about resource limits to the security page. :issue:5625
  • Add support for the Partitioned cookie attribute (CHIPS), with the
    SESSION_COOKIE_PARTITIONED config. :issue:5472
  • -e path takes precedence over default .env and .flaskenv files.
    load_dotenv loads default files in addition to a path unless
    load_defaults=False is passed. :issue:5628
  • Support key rotation with the SECRET_KEY_FALLBACKS config, a list of old
    secret keys that can still be used for unsigning. Extensions will need to
    add support. :issue:5621
  • Fix how setting host_matching=True or subdomain_matching=False
    interacts with SERVER_NAME. Setting SERVER_NAME no longer restricts
    requests to only that domain. :issue:5553
  • Request.trusted_hosts is checked during routing, and can be set through
    the TRUSTED_HOSTS config. :issue:5636

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Never, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate-bot renovate-bot requested review from a team as code owners March 30, 2026 19:55
@trusted-contributions-gcf trusted-contributions-gcf bot added kokoro:force-run Add this label to force Kokoro to re-run the tests. owlbot:run Add this label to trigger the Owlbot post processor. labels Mar 30, 2026
@product-auto-label product-auto-label bot added samples Issues that are directly related to samples. api: cloudmedia Issues related to the Media Livestream API. api: datastore Issues related to the Datastore API. api: dialogflow Issues related to the Dialogflow API. labels Mar 30, 2026
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request updates the Flask dependency to version 3.1.3 across several requirements files. The review identifies that this upgrade introduces dependency conflicts with Werkzeug, which must be updated to at least version 3.1.0. Additionally, the change breaks compatibility for environments using Python 3.7 or 3.8, as Flask 3.1.0+ has dropped support for these versions.

@@ -1,4 +1,4 @@
Flask==2.2.5
Flask==3.1.3
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

high

Flask 3.1.0 and later require Werkzeug >= 3.1.0. The current version pinned in this file is 3.0.6 (line 11), which will cause a dependency conflict during installation. Please update Werkzeug to a compatible version (e.g., 3.1.5).

@@ -1,3 +1,3 @@
google-cloud-ndb==2.3.4
Flask==3.0.3
Flask==3.1.3
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

high

Flask 3.1.0 and later require Werkzeug >= 3.1.0. The current version pinned in this file is 3.0.6 (line 3), which will cause a dependency conflict. Please update Werkzeug to a compatible version (e.g., 3.1.5).

@@ -1,5 +1,5 @@
google-cloud-dialogflow==2.46.0
Flask==3.0.3
Flask==3.1.3
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

high

Flask 3.1.0 and later require Werkzeug >= 3.1.0. The current version pinned in this file is 3.0.6 (line 6), which will cause a dependency conflict. Please update Werkzeug to a compatible version (e.g., 3.1.5).

@@ -1,5 +1,5 @@
google-cloud-dialogflow-cx==2.0.0
Flask==3.0.3
Flask==3.1.3
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

high

Flask 3.1.0 dropped support for Python 3.8. This project appears to support Python 3.8, as indicated by the environment marker on line 7 (python_version == "3.8"). Upgrading to Flask 3.1.3 will break compatibility for users on Python 3.8.

@@ -1,3 +1,3 @@
pytest==8.2.0
flask==3.0.3
flask==3.1.3
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

high

Flask 3.1.0 dropped support for Python 3.8. This project appears to support Python versions as old as 3.7, as indicated by the environment marker on line 3 (python_version >= "3.7"). Upgrading to Flask 3.1.3 will break compatibility for these versions.

@kokoro-team kokoro-team removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Mar 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

api: cloudmedia Issues related to the Media Livestream API. api: datastore Issues related to the Datastore API. api: dialogflow Issues related to the Dialogflow API. owlbot:run Add this label to trigger the Owlbot post processor. samples Issues that are directly related to samples.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants