Update dependency Flask to v2.2.5 [SECURITY] #622
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.
Coming soon: The Renovate bot (GitHub App) will be renamed to Mend. PRs from Renovate will soon appear from 'Mend'. Learn more here.
This PR contains the following updates:
==2.0.3->==2.2.5Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
GitHub Vulnerability Alerts
CVE-2023-30861
When all of the following conditions are met, a response containing data intended for one client may be cached and subsequently sent by a proxy to other clients. If the proxy also caches
Set-Cookieheaders, it may send one client'ssessioncookie to other clients. The severity depends on the application's use of the session, and the proxy's behavior regarding cookies. The risk depends on all these conditions being met.session.permanent = True.SESSION_REFRESH_EACH_REQUESTis enabled (the default).Cache-Controlheader to indicate that a page is private or should not be cached.This happens because vulnerable versions of Flask only set the
Vary: Cookieheader when the session is accessed or modified, not when it is refreshed (re-sent to update the expiration) without being accessed or modified.Release Notes
pallets/flask (Flask)
v2.2.5Compare Source
Released 2023-05-02
Vary: Cookieheader when the session is accessed, modified, or refreshed.v2.2.4Compare Source
Released 2023-04-25
v2.2.3Compare Source
Released 2023-02-15
.svgtemplate files. :issue:4831template_folderto acceptpathlib.Path. :issue:4892--debugoption to theflask runcommand. :issue:4777v2.2.2Compare Source
Released 2022-08-08
to the new faster router, header parsing, and the development
server. :pr:
4754app.envto be"production". Thisattribute remains deprecated. :issue:
4740v2.2.1Compare Source
Released 2022-08-03
json_encoderorjson_decoderraises adeprecation warning. :issue:
4732v2.2.0Compare Source
Released 2022-08-01
Remove previously deprecated code. :pr:
4667send_fileparameters have been removed.download_namereplacesattachment_filename,max_agereplaces
cache_timeout, andetagreplacesadd_etags.Additionally,
pathreplacesfilenameinsend_from_directory.RequestContext.gproperty returningAppContext.gisremoved.
Update Werkzeug dependency to >= 2.2.
The app and request contexts are managed using Python context vars
directly rather than Werkzeug's
LocalStack. This should resultin better performance and memory use. :pr:
4682_app_ctx_stack.topand
_request_ctx_stack.topare deprecated. Store data onginstead using a unique prefix, likeg._extension_name_attr.The
FLASK_ENVenvironment variable andapp.envattribute aredeprecated, removing the distinction between development and debug
mode. Debug mode should be controlled directly using the
--debugoption or
app.run(debug=True). :issue:4714Some attributes that proxied config keys on
appare deprecated:session_cookie_name,send_file_max_age_default,use_x_sendfile,propagate_exceptions, andtemplates_auto_reload. Use the relevant config keys instead.:issue:
4716Add new customization points to the
Flaskapp object for manypreviously global behaviors.
flask.url_forwill callapp.url_for. :issue:4568flask.abortwill callapp.aborter.Flask.aborter_classandFlask.make_abortercan be usedto customize this aborter. :issue:
4567flask.redirectwill callapp.redirect. :issue:4569flask.jsonis an instance ofJSONProvider. A differentprovider can be set to use a different JSON library.
flask.jsonifywill callapp.json.response, otherfunctions in
flask.jsonwill call corresponding functions inapp.json. :pr:4692JSON configuration is moved to attributes on the default
app.jsonprovider.JSON_AS_ASCII,JSON_SORT_KEYS,JSONIFY_MIMETYPE, andJSONIFY_PRETTYPRINT_REGULARaredeprecated. :pr:
4692Setting custom
json_encoderandjson_decoderclasses on theapp or a blueprint, and the corresponding
json.JSONEncoderandJSONDecoderclasses, are deprecated. JSON behavior can now beoverridden using the
app.jsonprovider interface. :pr:4692json.htmlsafe_dumpsandjson.htmlsafe_dumpare deprecated,the function is built-in to Jinja now. :pr:
4692Refactor
register_error_handlerto consolidate error checking.Rewrite some error messages to be more consistent. :issue:
4559Use Blueprint decorators and functions intended for setup after
registering the blueprint will show a warning. In the next version,
this will become an error just like the application setup methods.
:issue:
4571before_first_requestis deprecated. Run setup code when creatingthe application instead. :issue:
4605Added the
View.init_every_requestclass attribute. If a viewsubclass sets this to
False, the view will not create a newinstance on every request. :issue:
2520.A
flask.cli.FlaskGroupClick group can be nested as asub-command in a custom CLI. :issue:
3263Add
--appand--debugoptions to theflaskCLI, insteadof requiring that they are set through environment variables.
:issue:
2836Add
--env-fileoption to theflaskCLI. This allowsspecifying a dotenv file to load in addition to
.envand.flaskenv. :issue:3108It is no longer required to decorate custom CLI commands on
app.cliorblueprint.cliwith@with_appcontext, an appcontext will already be active at that point. :issue:
2410SessionInterface.get_expiration_timeuses a timezone-awarevalue. :pr:
4645View functions can return generators directly instead of wrapping
them in a
Response. :pr:4629Add
stream_templateandstream_template_stringfunctions torender a template as a stream of pieces. :pr:
4629A new implementation of context preservation during debugging and
testing. :pr:
4666request,g, and other context-locals point to thecorrect data when running code in the interactive debugger
console. :issue:
2836even if the context is preserved. They are also run after the
preserved context is popped.
stream_with_contextpreserves context separately from awith clientblock. It will be cleaned up whenresponse.get_data()orresponse.close()is called.Allow returning a list from a view function, to convert it to a
JSON response like a dict is. :issue:
4672When type checking, allow
TypedDictto be returned from viewfunctions. :pr:
4695Remove the
--eager-loading/--lazy-loadingoptions from theflask runcommand. The app is always eager loaded the firsttime, then lazily loaded in the reloader. The reloader always prints
errors immediately but continues serving. Remove the internal
DispatchingAppmiddleware used by the previous implementation.:issue:
4715v2.1.3Compare Source
Released 2022-07-13
commands. :pr:
4606after_requestfunctions. :issue:4600instance_pathfor namespace packages uses the path closest tothe imported submodule. :issue:
4610render_templateandrender_template_stringare used outside an application context.:pr:
4693v2.1.2Compare Source
Released 2022-04-28
json.loads, it accepts str or bytes.:issue:
4519--certand--keyoptions onflask runcan be givenin either order. :issue:
4459v2.1.1Compare Source
Released on 2022-03-30
which is required on Python < 3.10. :issue:
4502v2.1.0Compare Source
Released 2022-03-28
Drop support for Python 3.6. :pr:
4335Update Click dependency to >= 8.0. :pr:
4008Remove previously deprecated code. :pr:
4337script_infoto app factory functions.config.from_jsonis replaced byconfig.from_file(name, load=json.load).jsonfunctions no longer take anencodingparameter.safe_joinis removed, usewerkzeug.utils.safe_joininstead.
total_secondsis removed, usetimedelta.total_secondsinstead.
name=when registering to specify a unique name.as_tupleparameter is removed. Useresponse.request.environinstead. :pr:4417Some parameters in
send_fileandsend_from_directorywererenamed in 2.0. The deprecation period for the old names is extended
to 2.2. Be sure to test with deprecation warnings visible.
attachment_filenameis renamed todownload_name.cache_timeoutis renamed tomax_age.add_etagsis renamed toetag.filenameis renamed topath.The
RequestContext.gproperty is deprecated. Usegdirectlyor
AppContext.ginstead. :issue:3898copy_current_request_contextcan decorate async functions.:pr:
4303The CLI uses
importlib.metadatainstead ofpkg_resourcestoload command entry points. :issue:
4419Overriding
FlaskClient.openwill not cause an error on redirect.:issue:
3396Add an
--exclude-patternsoption to theflask runCLIcommand to specify patterns that will be ignored by the reloader.
:issue:
4188When using lazy loading (the default with the debugger), the Click
context from the
flask runcommand remains available in theloader thread. :issue:
4460Deleting the session cookie uses the
httponlyflag.:issue:
4485Relax typing for
errorhandlerto allow the user to use moreprecise types and decorate the same function multiple times.
:issue:
4095, 4295, 4297Fix typing for
__exit__methods for better compatibility withExitStack. :issue:4474From Werkzeug, for redirect responses the
Locationheader URLwill remain relative, and exclude the scheme and domain, by default.
:pr:
4496Add
Config.from_prefixed_env()to load config values fromenvironment variables that start with
FLASK_or another prefix.This parses values as JSON by default, and allows setting keys in
nested dicts. :pr:
4479Configuration
📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.