Browse Source

fix changelog indentation

pull/2711/head
David Lord 7 years ago
parent
commit
16549370fd
No known key found for this signature in database
GPG Key ID: 7A1C87E3F5BC42A8
  1. 304
      CHANGES.rst

304
CHANGES.rst

@ -9,155 +9,161 @@ Version 1.0
unreleased unreleased
- **Python 2.6 and 3.3 are no longer supported.** (`pallets/meta#24`_) - **Python 2.6 and 3.3 are no longer supported.** (`pallets/meta#24`_)
- Bump minimum dependency versions to the latest stable versions: - Bump minimum dependency versions to the latest stable versions:
Werkzeug >= 0.14, Jinja >= 2.10, itsdangerous >= 0.24, Click >= 5.1. Werkzeug >= 0.14, Jinja >= 2.10, itsdangerous >= 0.24, Click >= 5.1.
(`#2586`_) (`#2586`_)
- Skip :meth:`app.run <Flask.run>` when a Flask application is run from - Skip :meth:`app.run <Flask.run>` when a Flask application is run
the command line. This avoids some behavior that was confusing to from the command line. This avoids some behavior that was confusing
debug. to debug.
- Change the default for :data:`JSONIFY_PRETTYPRINT_REGULAR` to - Change the default for :data:`JSONIFY_PRETTYPRINT_REGULAR` to
``False``. :func:`~json.jsonify` returns a compact format by default, ``False``. :func:`~json.jsonify` returns a compact format by
and an indented format in debug mode. (`#2193`_) default, and an indented format in debug mode. (`#2193`_)
- :meth:`Flask.__init__ <Flask>` accepts the ``host_matching`` argument - :meth:`Flask.__init__ <Flask>` accepts the ``host_matching``
and sets it on :attr:`~Flask.url_map`. (`#1559`_) argument and sets it on :attr:`~Flask.url_map`. (`#1559`_)
- :meth:`Flask.__init__ <Flask>` accepts the ``static_host`` argument - :meth:`Flask.__init__ <Flask>` accepts the ``static_host`` argument
and passes it as the ``host`` argument when defining the static route. and passes it as the ``host`` argument when defining the static
(`#1559`_) route. (`#1559`_)
- :func:`send_file` supports Unicode in ``attachment_filename``. - :func:`send_file` supports Unicode in ``attachment_filename``.
(`#2223`_) (`#2223`_)
- Pass ``_scheme`` argument from :func:`url_for` to - Pass ``_scheme`` argument from :func:`url_for` to
:meth:`~Flask.handle_url_build_error`. (`#2017`_) :meth:`~Flask.handle_url_build_error`. (`#2017`_)
- :meth:`~Flask.add_url_rule` accepts the ``provide_automatic_options`` - :meth:`~Flask.add_url_rule` accepts the
argument to disable adding the ``OPTIONS`` method. (`#1489`_) ``provide_automatic_options`` argument to disable adding the
- :class:`~views.MethodView` subclasses inherit method handlers from ``OPTIONS`` method. (`#1489`_)
base classes. (`#1936`_) - :class:`~views.MethodView` subclasses inherit method handlers from
- Errors caused while opening the session at the beginning of the base classes. (`#1936`_)
request are handled by the app's error handlers. (`#2254`_) - Errors caused while opening the session at the beginning of the
- Blueprints gained :attr:`~Blueprint.json_encoder` and request are handled by the app's error handlers. (`#2254`_)
:attr:`~Blueprint.json_decoder` attributes to override the app's - Blueprints gained :attr:`~Blueprint.json_encoder` and
encoder and decoder. (`#1898`_) :attr:`~Blueprint.json_decoder` attributes to override the app's
- :meth:`Flask.make_response` raises ``TypeError`` instead of encoder and decoder. (`#1898`_)
``ValueError`` for bad response types. The error messages have been - :meth:`Flask.make_response` raises ``TypeError`` instead of
improved to describe why the type is invalid. (`#2256`_) ``ValueError`` for bad response types. The error messages have been
- Add ``routes`` CLI command to output routes registered on the improved to describe why the type is invalid. (`#2256`_)
application. (`#2259`_) - Add ``routes`` CLI command to output routes registered on the
- Show warning when session cookie domain is a bare hostname or an IP application. (`#2259`_)
address, as these may not behave properly in some browsers, such as - Show warning when session cookie domain is a bare hostname or an IP
Chrome. (`#2282`_) address, as these may not behave properly in some browsers, such as
- Allow IP address as exact session cookie domain. (`#2282`_) Chrome. (`#2282`_)
- ``SESSION_COOKIE_DOMAIN`` is set if it is detected through - Allow IP address as exact session cookie domain. (`#2282`_)
``SERVER_NAME``. (`#2282`_) - ``SESSION_COOKIE_DOMAIN`` is set if it is detected through
- Auto-detect zero-argument app factory called ``create_app`` or ``SERVER_NAME``. (`#2282`_)
``make_app`` from ``FLASK_APP``. (`#2297`_) - Auto-detect zero-argument app factory called ``create_app`` or
- Factory functions are not required to take a ``script_info`` parameter ``make_app`` from ``FLASK_APP``. (`#2297`_)
to work with the ``flask`` command. If they take a single parameter or - Factory functions are not required to take a ``script_info``
a parameter named ``script_info``, the :class:`~cli.ScriptInfo` object parameter to work with the ``flask`` command. If they take a single
will be passed. (`#2319`_) parameter or a parameter named ``script_info``, the
- ``FLASK_APP`` can be set to an app factory, with arguments if needed, :class:`~cli.ScriptInfo` object will be passed. (`#2319`_)
for example ``FLASK_APP=myproject.app:create_app('dev')``. (`#2326`_) - ``FLASK_APP`` can be set to an app factory, with arguments if
- ``FLASK_APP`` can point to local packages that are not installed in needed, for example ``FLASK_APP=myproject.app:create_app('dev')``.
editable mode, although ``pip install -e`` is still preferred. (`#2326`_)
(`#2414`_) - ``FLASK_APP`` can point to local packages that are not installed in
- The :class:`~views.View` class attribute editable mode, although ``pip install -e`` is still preferred.
:attr:`~views.View.provide_automatic_options` is set in (`#2414`_)
:meth:`~views.View.as_view`, to be detected by - The :class:`~views.View` class attribute
:meth:`~Flask.add_url_rule`. (`#2316`_) :attr:`~views.View.provide_automatic_options` is set in
- Error handling will try handlers registered for ``blueprint, code``, :meth:`~views.View.as_view`, to be detected by
``app, code``, ``blueprint, exception``, ``app, exception``. :meth:`~Flask.add_url_rule`. (`#2316`_)
(`#2314`_) - Error handling will try handlers registered for ``blueprint, code``,
- ``Cookie`` is added to the response's ``Vary`` header if the session ``app, code``, ``blueprint, exception``, ``app, exception``.
is accessed at all during the request (and not deleted). (`#2288`_) (`#2314`_)
- :meth:`~Flask.test_request_context` accepts ``subdomain`` and - ``Cookie`` is added to the response's ``Vary`` header if the session
``url_scheme`` arguments for use when building the base URL. is accessed at all during the request (and not deleted). (`#2288`_)
(`#1621`_) - :meth:`~Flask.test_request_context` accepts ``subdomain`` and
- Set :data:`APPLICATION_ROOT` to ``'/'`` by default. This was already ``url_scheme`` arguments for use when building the base URL.
the implicit default when it was set to ``None``. (`#1621`_)
- :data:`TRAP_BAD_REQUEST_ERRORS` is enabled by default in debug mode. - Set :data:`APPLICATION_ROOT` to ``'/'`` by default. This was already
``BadRequestKeyError`` has a message with the bad key in debug mode the implicit default when it was set to ``None``.
instead of the generic bad request message. (`#2348`_) - :data:`TRAP_BAD_REQUEST_ERRORS` is enabled by default in debug mode.
- Allow registering new tags with ``BadRequestKeyError`` has a message with the bad key in debug mode
:class:`~json.tag.TaggedJSONSerializer` to support storing other types instead of the generic bad request message. (`#2348`_)
in the session cookie. (`#2352`_) - Allow registering new tags with
- Only open the session if the request has not been pushed onto the :class:`~json.tag.TaggedJSONSerializer` to support storing other
context stack yet. This allows :func:`~stream_with_context` types in the session cookie. (`#2352`_)
generators to access the same session that the containing view uses. - Only open the session if the request has not been pushed onto the
(`#2354`_) context stack yet. This allows :func:`~stream_with_context`
- Add ``json`` keyword argument for the test client request methods. generators to access the same session that the containing view uses.
This will dump the given object as JSON and set the appropriate (`#2354`_)
content type. (`#2358`_) - Add ``json`` keyword argument for the test client request methods.
- Extract JSON handling to a mixin applied to both the :class:`Request` This will dump the given object as JSON and set the appropriate
and :class:`Response` classes. This adds the :meth:`~Response.is_json` content type. (`#2358`_)
and :meth:`~Response.get_json` methods to the response to make testing - Extract JSON handling to a mixin applied to both the
JSON response much easier. (`#2358`_) :class:`Request` and :class:`Response` classes. This adds the
- Removed error handler caching because it caused unexpected results for :meth:`~Response.is_json` and :meth:`~Response.get_json` methods to
some exception inheritance hierarchies. Register handlers explicitly the response to make testing JSON response much easier. (`#2358`_)
for each exception if you want to avoid traversing the MRO. (`#2362`_) - Removed error handler caching because it caused unexpected results
- Fix incorrect JSON encoding of aware, non-UTC datetimes. (`#2374`_) for some exception inheritance hierarchies. Register handlers
- Template auto reloading will honor debug mode even even if explicitly for each exception if you want to avoid traversing the
:attr:`~Flask.jinja_env` was already accessed. (`#2373`_) MRO. (`#2362`_)
- The following old deprecated code was removed. (`#2385`_) - Fix incorrect JSON encoding of aware, non-UTC datetimes. (`#2374`_)
- Template auto reloading will honor debug mode even even if
- ``flask.ext`` - import extensions directly by their name instead of :attr:`~Flask.jinja_env` was already accessed. (`#2373`_)
through the ``flask.ext`` namespace. For example, - The following old deprecated code was removed. (`#2385`_)
``import flask.ext.sqlalchemy`` becomes ``import flask_sqlalchemy``.
- ``Flask.init_jinja_globals`` - extend - ``flask.ext`` - import extensions directly by their name instead
:meth:`Flask.create_jinja_environment` instead. of through the ``flask.ext`` namespace. For example,
- ``Flask.error_handlers`` - tracked by ``import flask.ext.sqlalchemy`` becomes
:attr:`Flask.error_handler_spec`, use :meth:`Flask.errorhandler` to ``import flask_sqlalchemy``.
register handlers. - ``Flask.init_jinja_globals`` - extend
- ``Flask.request_globals_class`` - use :meth:`Flask.create_jinja_environment` instead.
:attr:`Flask.app_ctx_globals_class` instead. - ``Flask.error_handlers`` - tracked by
- ``Flask.static_path`` - use :attr:`Flask.static_url_path` instead. :attr:`Flask.error_handler_spec`, use :meth:`Flask.errorhandler`
- ``Request.module`` - use :attr:`Request.blueprint` instead. to register handlers.
- ``Flask.request_globals_class`` - use
- The :attr:`Request.json` property is no longer deprecated. (`#1421`_) :attr:`Flask.app_ctx_globals_class` instead.
- Support passing a :class:`~werkzeug.test.EnvironBuilder` or - ``Flask.static_path`` - use :attr:`Flask.static_url_path`
``dict`` to :meth:`test_client.open <werkzeug.test.Client.open>`. instead.
(`#2412`_) - ``Request.module`` - use :attr:`Request.blueprint` instead.
- The ``flask`` command and :meth:`Flask.run` will load environment
variables from ``.env`` and ``.flaskenv`` files if python-dotenv is - The :attr:`Request.json` property is no longer deprecated.
installed. (`#2416`_) (`#1421`_)
- When passing a full URL to the test client, the scheme in the URL is - Support passing a :class:`~werkzeug.test.EnvironBuilder` or
used instead of :data:`PREFERRED_URL_SCHEME`. (`#2430`_) ``dict`` to :meth:`test_client.open <werkzeug.test.Client.open>`.
- :attr:`Flask.logger` has been simplified. ``LOGGER_NAME`` and (`#2412`_)
``LOGGER_HANDLER_POLICY`` config was removed. The logger is always - The ``flask`` command and :meth:`Flask.run` will load environment
named ``flask.app``. The level is only set on first access, it doesn't variables from ``.env`` and ``.flaskenv`` files if python-dotenv is
check :attr:`Flask.debug` each time. Only one format is used, not installed. (`#2416`_)
different ones depending on :attr:`Flask.debug`. No handlers are - When passing a full URL to the test client, the scheme in the URL is
removed, and a handler is only added if no handlers are already used instead of :data:`PREFERRED_URL_SCHEME`. (`#2430`_)
configured. (`#2436`_) - :attr:`Flask.logger` has been simplified. ``LOGGER_NAME`` and
- Blueprint view function names may not contain dots. (`#2450`_) ``LOGGER_HANDLER_POLICY`` config was removed. The logger is always
- Fix a ``ValueError`` caused by invalid ``Range`` requests in some named ``flask.app``. The level is only set on first access, it
cases. (`#2526`_) doesn't check :attr:`Flask.debug` each time. Only one format is
- The development server uses threads by default. (`#2529`_) used, not different ones depending on :attr:`Flask.debug`. No
- Loading config files with ``silent=True`` will ignore handlers are removed, and a handler is only added if no handlers are
:data:`~errno.ENOTDIR` errors. (`#2581`_) already configured. (`#2436`_)
- Pass ``--cert`` and ``--key`` options to ``flask run`` to run the - Blueprint view function names may not contain dots. (`#2450`_)
development server over HTTPS. (`#2606`_) - Fix a ``ValueError`` caused by invalid ``Range`` requests in some
- Added :data:`SESSION_COOKIE_SAMESITE` to control the ``SameSite`` cases. (`#2526`_)
attribute on the session cookie. (`#2607`_) - The development server uses threads by default. (`#2529`_)
- Added :meth:`~flask.Flask.test_cli_runner` to create a Click runner - Loading config files with ``silent=True`` will ignore
that can invoke Flask CLI commands for testing. (`#2636`_) :data:`~errno.ENOTDIR` errors. (`#2581`_)
- Subdomain matching is disabled by default and setting - Pass ``--cert`` and ``--key`` options to ``flask run`` to run the
:data:`SERVER_NAME` does not implicily enable it. It can be enabled by development server over HTTPS. (`#2606`_)
passing ``subdomain_matching=True`` to the ``Flask`` constructor. - Added :data:`SESSION_COOKIE_SAMESITE` to control the ``SameSite``
(`#2635`_) attribute on the session cookie. (`#2607`_)
- A single trailing slash is stripped from the blueprint ``url_prefix`` - Added :meth:`~flask.Flask.test_cli_runner` to create a Click runner
when it is registered with the app. (`#2629`_) that can invoke Flask CLI commands for testing. (`#2636`_)
- :meth:`Request.get_json` doesn't cache the - Subdomain matching is disabled by default and setting
result if parsing fails when ``silent`` is true. (`#2651`_) :data:`SERVER_NAME` does not implicily enable it. It can be enabled
- :func:`Request.get_json` no longer accepts arbitrary encodings. by passing ``subdomain_matching=True`` to the ``Flask`` constructor.
Incoming JSON should be encoded using UTF-8 per :rfc:`8259`, but Flask (`#2635`_)
will autodetect UTF-8, -16, or -32. (`#2691`_) - A single trailing slash is stripped from the blueprint
- Added :data:`MAX_COOKIE_SIZE` and :attr:`Response.max_cookie_size` to ``url_prefix`` when it is registered with the app. (`#2629`_)
control when Werkzeug warns about large cookies that browsers may - :meth:`Request.get_json` doesn't cache the
ignore. (`#2693`_) result if parsing fails when ``silent`` is true. (`#2651`_)
- Updated documentation theme to make docs look better in small - :func:`Request.get_json` no longer accepts arbitrary encodings.
windows. (`#2709`_) Incoming JSON should be encoded using UTF-8 per :rfc:`8259`, but
- Rewrote the tutorial docs and example project to take a more Flask will autodetect UTF-8, -16, or -32. (`#2691`_)
structured approach to help new users avoid common pitfalls. - Added :data:`MAX_COOKIE_SIZE` and :attr:`Response.max_cookie_size`
(`#2676`_) to control when Werkzeug warns about large cookies that browsers may
ignore. (`#2693`_)
- Updated documentation theme to make docs look better in small
windows. (`#2709`_)
- Rewrote the tutorial docs and example project to take a more
structured approach to help new users avoid common pitfalls.
(`#2676`_)
.. _pallets/meta#24: https://github.com/pallets/meta/issues/24 .. _pallets/meta#24: https://github.com/pallets/meta/issues/24
.. _#1421: https://github.com/pallets/flask/issues/1421 .. _#1421: https://github.com/pallets/flask/issues/1421

Loading…
Cancel
Save