This is a feature release, which includes new features and removes previously deprecated features. The 2.1.x branch is now the supported bugfix branch, the 2.0.x branch will become a tag marking the end of support for that branch. We encourage everyone to upgrade, and to use a tool such as pip-tools to pin all dependencies and control upgrades.
Follow our blog, Twitter, or GitHub to see future announcements.
This represents a significant amount of work, and there are quite a few changes. Be sure to carefully read the changelog, and use tools such as pip-compile and Dependabot to pin your dependencies and control your updates.
Using gevent or eventlet requires greenlet>=1.0 or PyPy>=7.3.7.
werkzeug.locals and contextvars will not work correctly with
older versions. :pr:2278
Remove previously deprecated code. :pr:2276
Remove the non-standard shutdown function from the WSGI
environ when running the development server. See the docs for
alternatives.
Request and response mixins have all been merged into the
Request and Response classes.
The user agent parser and the useragents module is removed.
The user_agent module provides an interface that can be
subclassed to add a parser, such as ua-parser. By default it
only stores the whole string.
The test client returns TestResponse instances and can no
longer be treated as a tuple. All data is available as
properties on the response.
Remove locals.get_ident and related thread-local code from
locals, it no longer makes sense when moving to a
contextvars-based implementation.
Remove the python -m werkzeug.serving CLI.
The has_key method on some mapping datastructures; use
key in data instead.
Request.disable_data_descriptor is removed, pass
shallow=True instead.
Remove the no_etag parameter from Response.freeze().
Remove the HTTPException.wrap class method.
Remove the cookie_date function. Use http_date instead.
Remove the pbkdf2_hex, pbkdf2_bin, and safe_str_cmp
functions. Use equivalents in hashlib and hmac modules
instead.
Remove the Href class.
Remove the HTMLBuilder class.
Remove the invalidate_cached_property function. Use
del obj.attr instead.
Remove bind_arguments and validate_arguments. Use
:meth:Signature.bind and :func:inspect.signature instead.
Remove detect_utf_encoding, it's built-in to json.loads.
Remove format_string, use :class:string.Template instead.
Remove escape and unescape. Use MarkupSafe instead.
The multiple parameter of parse_options_header is
deprecated. :pr:2357
Rely on :pep:538 and :pep:540 to handle decoding file names
... (truncated)
Commits
294de75 Merge pull request #2358 from pallets/release-2.1.0
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps werkzeug from 1.0.1 to 2.1.0.
Release notes
Sourced from werkzeug's releases.
... (truncated)
Changelog
Sourced from werkzeug's changelog.
... (truncated)
Commits
294de75
Merge pull request #2358 from pallets/release-2.1.067b108c
release version 2.1.0dae7e0d
Merge pull request #2357 from pallets/parse_options_header-multiple2ffa7c1
deprecate parse_options_header multiple parameter560dd5f
Merge pull request #2356 from spaceone/fix-typos-in-docstringsce1d844
[style]: fix various typos in docstrings and comments6f7e1e5
Merge pull request #2355 from pallets/json-content-typebf4ede2
400 error on bad json content type76de1b8
Merge pull request #2354 from pallets/redirect-moderndfb5d5c
add back fail-on-warning for testsDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)