./www/py-flask, Python web microframework

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 1.1.2, Package name: py37-flask-1.1.2, Maintainer: kleink

Flask is a microframework for Python based on Werkzeug, Jinja 2
and good intentions.


Required to run:
[devel/py-setuptools] [textproc/py-jinja2] [www/py-werkzeug] [security/py-itsdangerous] [devel/py-click] [lang/python37]

Required to build:
[pkgtools/cwrappers]

Master sites:

SHA1: c3c3a1ad658816dc62ed724849eccc72d905cdac
RMD160: b28143a7f4f5c9b99e34f45dce277320765073d9
Filesize: 622.574 KB

Version history: (Expand)


CVS history: (Expand)


   2020-05-17 22:18:36 by Adam Ciarcinski | Files touched by this commit (10)
Log message:
pytest from versioned depends
   2020-04-07 10:52:06 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-flask: updated to 1.1.2

Version 1.1.2
- Work around an issue when running the ``flask`` command with an
  external debugger on Windows.
- The static route will not catch all URLs if the ``Flask``
  ``static_folder`` argument ends with a slash.
   2019-07-13 11:28:59 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-flask: updated to 1.1.1

Version 1.1.1

The flask.json_available flag was added back for compatibility with some \ 
extensions. It will raise a deprecation warning when used, and will be removed \ 
in version 2.0.0.

Version 1.1.0

Bump minimum Werkzeug version to >= 0.15.
Drop support for Python 3.4.
Error handlers for InternalServerError or 500 will always be passed an instance \ 
of InternalServerError. If they are invoked due to an unhandled exception, that \ 
original exception is now available as e.original_exception rather than being \ 
passed directly to the handler. The same is true if the handler is for the base \ 
HTTPException. This makes error handler behavior more consistent.
Flask.finalize_request() is called for all unhandled exceptions even if there is \ 
no 500 error handler.
Flask.logger takes the same name as Flask.name (the value passed as \ 
Flask(import_name). This reverts 1.0’s behavior of always logging to \ 
"flask.app", in order to support multiple apps in the same process. A \ 
warning will be shown if old configuration is detected that needs to be moved.
flask.RequestContext.copy() includes the current session object in the request \ 
context copy. This prevents session pointing to an out-of-date object.
Using built-in RequestContext, unprintable Unicode characters in Host header \ 
will result in a HTTP 400 response and not HTTP 500 as previously.
send_file() supports PathLike objects as described in PEP 0519, to support \ 
pathlib in Python 3.
send_file() supports BytesIO partial content.
open_resource() accepts the “rt” file mode. This still does the same thing \ 
as “r”.
The MethodView.methods attribute set in a base class is used by subclasses.
Flask.jinja_options is a dict instead of an ImmutableDict to allow easier \ 
configuration. Changes must still be made before creating the environment.
Flask’s JSONMixin for the request and response wrappers was moved into \ 
Werkzeug. Use Werkzeug’s version with Flask-specific support. This bumps the \ 
Werkzeug dependency to >= 0.15.
The flask command entry point is simplified to take advantage of Werkzeug \ 
0.15’s better reloader support. This bumps the Werkzeug dependency to >= \ 
0.15.
Support static_url_path that ends with a forward slash.
Support empty static_folder without requiring setting an empty static_url_path \ 
as well.
jsonify() supports dataclasses.dataclass objects.
Allow customizing the Flask.url_map_class used for routing.
The development server port can be set to 0, which tells the OS to pick an \ 
available port.
The return value from cli.load_dotenv() is more consistent with the \ 
documentation. It will return False if python-dotenv is not installed, or if the \ 
given path isn’t a file.
Signaling support has a stub for the connect_via method when the Blinker library \ 
is not installed.
Add an --extra-files option to the flask run CLI command to specify extra files \ 
that will trigger the reloader on change.
Allow returning a dictionary from a view function. Similar to how returning a \ 
string will produce a text/html response, returning a dict will call jsonify to \ 
produce a application/json response.
Blueprints have a cli Click group like app.cli. CLI commands registered with a \ 
blueprint will be available as a group under the flask command..
When using the test client as a context manager (with client:), all preserved \ 
request contexts are popped when the block exits, ensuring nested contexts are \ 
cleaned up correctly.
Show a better error message when the view return type is not supported.
flask.testing.make_test_environ_builder() has been deprecated in favour of a new \ 
class flask.testing.EnvironBuilder.
The flask run command no longer fails if Python is not built with SSL support. \ 
Using the --cert option will show an appropriate error message.
URL matching now occurs after the request context is pushed, rather than when \ 
it’s created. This allows custom URL converters to access the app and request \ 
contexts, such as to query a database for an id.
   2019-05-19 09:59:50 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-flask: updated to 1.0.3

Version 1.0.3
-   :func:send_file encodes filenames as ASCII instead of Latin-1
    (ISO-8859-1). This fixes compatibility with Gunicorn, which is
    stricter about header encodings than PEP 3333.
-   Allow custom CLIs using FlaskGroup to set the debug flag without
    it always being overwritten based on environment variables.
-   flask --version outputs Werkzeug's version and simplifies the
    Python version.
-   :func:send_file handles an attachment_filename that is a
    native Python 2 string (bytes) with UTF-8 coded bytes.
-   A catch-all error handler registered for HTTPException will not
    handle RoutingExcpetion, which is used internally during
    routing. This fixes the unexpected behavior that had been introduced
    in 1.0.
-   Passing the json argument to app.test_client does not
    push/pop an extra app context.
   2018-07-26 09:34:03 by Thomas Klausner | Files touched by this commit (1)
Log message:
py-flask: remove patch that is not in distinfo
   2018-07-20 10:40:42 by Adam Ciarcinski | Files touched by this commit (4) | Package updated
Log message:
py-flask: updated to 1.0.2

Version 1.0.2:
Fix more backwards compatibility issues with merging slashes between a blueprint \ 
prefix and route.
Fix error with flask routes command when there are no routes.

Version 1.0.1:
Fix registering partials (with no __name__) as view functions.
Don't treat lists returned from view functions the same as tuples. Only tuples \ 
are interpreted as response data.
Extra slashes between a blueprint's url_prefix and a route URL are merged. This \ 
fixes some backwards compatibility issues with the change in 1.0.
Only trap BadRequestKeyError errors in debug mode, not all BadRequest errors. \ 
This allows abort(400) to continue working as expected.
The FLASK_SKIP_DOTENV environment variable can be set to 1 to skip automatically \ 
loading dotenv files.

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

Version 0.12.1
Bugfix release, released on March 31st 2017
- Prevent `flask run` from showing a NoAppException when an ImportError occurs
  within the imported application module.
- Fix encoding behavior of ``app.config.from_pyfile`` for Python 3.
- Call `ctx.auto_pop` with the exception object instead of `None`, in the
  event that a `BaseException` such as `KeyboardInterrupt` is raised in a
  request handler.