Releases: balena-io-examples/balena-python-hello-world
v2.0.15
v2.0.13
v2.0.12
Update dependency click to v8.1.8
Notable changes
- Fix an issue with type hints for
click.open_file()
. :issue:2717
- Fix issue where error message for invalid
click.Path
displays on - Fixed issue that prevented a default value of
""
from being displayed in - The test runner handles stripping color consistently on Windows.
- Show correct value for flag default when using
default_map
. - Fix
click.echo(color=...)
passingcolor
to coloroma so it can be - More robust bash version check, fixing problem on Windows with git-bash.
- Cache the help option generated by the
help_option_names
setting to - Replace uses of
os.system
withsubprocess.Popen
. :issue:1476
- Exceptions generated during a command will use the context's
color
- Error message when defining option with invalid name is more descriptive.
- Refactor code generating default
--help
option to deduplicate code. - Test
CLIRunner
resets patched_compat.should_strip_ansi
. - Fix issue with regex flags in shell completion. :issue:
2581
- Bash version detection issues a warning instead of an error. :issue:
2574
- Fix issue with completion script for Fish shell. :issue:
2567
- Fix an issue with type hints for
@click.group()
. :issue:2558
- Fix an issue with type hints for
@click.command()
,@click.option()
, and - Replace all
typing.Dict
occurrences totyping.MutableMapping
for - Improve type hinting for decorators and give all generic types parameters.
- Fix return value and type signature of
shell_completion.add_completion_class
- Bash version detection doesn't fail on Windows. :issue:
2461
- Completion works if there is a dot (
.
) in the program name. :issue:2166
- Improve type annotations for pyright type checker. :issue:
2268
- Improve responsiveness of
click.clear()
. :issue:2284
- Improve command name detection when using Shiv or PEX. :issue:
2332
- Avoid showing empty lines if command help text is empty. :issue:
2368
- ZSH completion script works when loaded from
fpath
. :issue:2344
. EOFError
andKeyboardInterrupt
tracebacks are not suppressed when@group.command
does not fail if the group was created with a custommultiple=True
is allowed for flag options again and does not require- Make the decorators returned by
@argument()
and@option()
reusable when the - Don't fail when writing filenames to streams with strict errors. Replace invalid
- Remove unnecessary attempt to detect MSYS2 environment. :issue:
2355
- Remove outdated and unnecessary detection of App Engine environment. :pr:
2554
echo()
does not fail when no streams are attached, such as withpythonw
on- Argument with
expose_value=False
do not cause completion to fail. :issue:2336
- Use verbose form of
typing.Callable
for@command
and - Show error when attempting to create an option with
- Fix error message for readable path check that was mixed up with the
- Restore parameter order for
Path
, placing theexecutable
- Fix an issue with decorator typing that caused type checking to
- Drop support for Python 3.6. :pr:
2129
- Remove previously deprecated code. :pr:
2130
- Rely on :pep:
538
and :pep:540
to handle selecting UTF-8 encoding - Single options boolean flags with
show_default=True
only show - The
command
andgroup
decorators can be applied with or - The
Path
type can check whether the target is executable. Command.show_default
overridesContext.show_default
, instead- Parameter decorators and
@group
handlescls=None
the same as - A flag option with
required=True
requires that the flag is - Indentation in help text passed to
Option
andCommand
is - Store unprocessed
Command.help
,epilog
andshort_help
- Allow empty str input for
prompt()
when - Windows glob pattern expansion doesn't fail if a value is an invalid
- It's possible to pass a list of
params
to@command
. Any @command
decorator is annotated as returning the correct type if- A
Group
withinvoke_without_command=True
andchain=False
to_info_dict
will not fail if aParamType
doesn't define a- Shell completion prioritizes option values with option prefixes over
- Options that get an environment variable value using
pallets/click (click)
v8.1.8
Released 2024-12-19
- Fix an issue with type hints for
click.open_file()
. :issue:2717
- Fix issue where error message for invalid
click.Path
displays on
multiple lines. :issue:2697
- Fixed issue that prevented a default value of
""
from being displayed in
the help for an option. :issue:2500
- The test runner handles stripping color consistently on Windows.
:issue:2705
- Show correct value for flag default when using
default_map
.
:issue:2632
- Fix
click.echo(color=...)
passingcolor
to coloroma so it can be
forced on Windows. :issue:2606
. - More robust bash version check, fixing problem on Windows with git-bash.
:issue:2638
- Cache the help option generated by the
help_option_names
setting to
respect its eagerness. :pr:2811
- Replace uses of
os.system
withsubprocess.Popen
. :issue:1476
- Exceptions generated during a command will use the context's
color
setting when being displayed. :issue:2193
- Error message when defining option with invalid name is more descriptive.
:issue:2452
- Refactor code generating default
--help
option to deduplicate code.
:pr:2563
- Test
CLIRunner
resets patched_compat.should_strip_ansi
.
:issue:2732
v8.1.7
Released 2023-08-17
- Fix issue with regex flags in shell completion. :issue:
2581
- Bash version detection issues a warning instead of an error. :issue:
2574
- Fix issue with completion script for Fish shell. :issue:
2567
v8.1.6
Released 2023-07-18
- Fix an issue with type hints for
@click.group()
. :issue:2558
v8.1.5
Released 2023-07-13
- Fix an issue with type hints for
@click.command()
,@click.option()
, and
other decorators. Introduce typing tests. :issue:2558
v8.1.4
Released 2023-07-06
- Replace all
typing.Dict
occurrences totyping.MutableMapping
for
parameter hints. :issue:2255
- Improve type hinting for decorators and give all generic types parameters.
:issue:2398
- Fix return value and type signature of
shell_completion.add_completion_class
function. :pr:2421
- Bash version detection doesn't fail on Windows. :issue:
2461
- Completion works if there is a dot (
.
) in the program name. :issue:2166
- Improve type annotations for pyright type checker. :issue:
2268
- Improve responsiveness of
click.clear()
. :issue:2284
- Improve command name detection when using Shiv or PEX. :issue:
2332
- Avoid showing empty lines if command help text is empty. :issue:
2368
- ZSH completion script works when loaded from
fpath
. :issue:2344
. EOFError
andKeyboardInterrupt
tracebacks are not suppressed when
standalone_mode
is disabled. :issue:2380
@group.command
does not fail if the group was created with a custom
command_class
. :issue:2416
multiple=True
is allowed for flag options again and does not require
settingdefault=()
. :issue:2246, 2292, 2295
- Make the decorators returned by
@argument()
and@option()
reusable when the
cls
parameter is used. :issue:2294
- Don't fail when writing filenames to streams with strict errors. Replace invalid
bytes with the replacement character (�
). :issue:2395
- Remove unnecessary attempt to detect MSYS2 environment. :issue:
2355
- Remove outdated and unnecessary detection of App Engine environment. :pr:
2554
echo()
does not fail when no streams are attached, such as withpythonw
on
Windows. :issue:2415
- Argument with
expose_value=False
do not cause completion to fail. :issue:2336
v8.1.3
Released 2022-04-28
- Use verbose form of
typing.Callable
for@command
and
@group
. :issue:2255
- Show error when attempting to create an option with
multiple=True, is_flag=True
. Usecount
instead.
:issue:2246
v8.1.2
Released 2022-03-31
- Fix error message for readable path check that was mixed up with the
executable check. :pr:2236
- Restore parameter order for
Path
, placing theexecutable
parameter at the end. It is recommended to use keyword arguments
instead of positional arguments. :issue:2235
v8.1.1
Released 2022-03-30
- Fix an issue with decorator typing that caused type checking to
report that a command was not callable. :issue:2227
[v8.1.0
](https:/...
v2.0.11
Update dependency MarkupSafe to v2.1.5
Notable changes
- Fix
striptags
not collapsing spaces. :issue:417
- Don't use regular expressions for
striptags
, avoiding a performance - Implement
format_map
,casefold
,removeprefix
, andremovesuffix
- Fix static typing for basic
str
methods onMarkup
. :issue:358
- Use
Self
for annotating return types. :pr:379
- Fix
striptags
not stripping tags containing newlines. - Avoid ambiguous regex matches in
striptags
. :pr:293
- Drop support for Python 3.6. :pr:
262
- Remove
soft_unicode
, which was previously deprecated. Use - Raise error on missing single placeholder during string
- Disable speedups module for GraalPython. :issue:
277
pallets/markupsafe (MarkupSafe)
v2.1.5
Released 2024-02-02
- Fix
striptags
not collapsing spaces. :issue:417
v2.1.4
Released 2024-01-19
- Don't use regular expressions for
striptags
, avoiding a performance
issue. :pr:413
v2.1.3
Released 2023-06-02
- Implement
format_map
,casefold
,removeprefix
, andremovesuffix
methods. :issue:370
- Fix static typing for basic
str
methods onMarkup
. :issue:358
- Use
Self
for annotating return types. :pr:379
v2.1.2
Released 2023-01-17
- Fix
striptags
not stripping tags containing newlines.
:issue:310
v2.1.1
Released 2022-03-14
- Avoid ambiguous regex matches in
striptags
. :pr:293
v2.1.0
Released 2022-02-17
- Drop support for Python 3.6. :pr:
262
- Remove
soft_unicode
, which was previously deprecated. Use
soft_str
instead. :pr:261
- Raise error on missing single placeholder during string
interpolation. :issue:225
- Disable speedups module for GraalPython. :issue:
277
List of commits
3f2fc25 (Update dependency MarkupSafe to v2.1.5, 2025-05-06)
v2.0.10
Update dependency Flask to v2.3.3
Notable changes
- Python 3.12 compatibility.
- Require Werkzeug >= 2.3.7.
- Use
flit_core
instead ofsetuptools
as build backend. - Refactor how an app's root and instance paths are determined. :issue:
5160
- Set
Vary: Cookie
header when the session is accessed, modified, or refreshed. - Update Werkzeug requirement to >=2.3.3 to apply recent bug fixes.
- Restore deprecated
from flask import Markup
. :issue:5084
- Drop support for Python 3.7. :pr:
5072
- Update minimum requirements to the latest versions: Werkzeug>=2.3.0, Jinja2>3.1.2,
- Remove previously deprecated code. :pr:
4995
- Importing
escape
andMarkup
fromflask
is deprecated. Import them - The
app.got_first_request
property is deprecated. :pr:4997
- The
locked_cached_property
decorator is deprecated. Use a lock inside the - Signals are always available.
blinker>=1.6.2
is a required dependency. The - Signals support
async
subscriber functions. :pr:5049
- Remove uses of locks that could cause requests to block each other very briefly.
- Use modern packaging metadata with
pyproject.toml
instead ofsetup.cfg
. - Ensure subdomains are applied with nested blueprints. :issue:
4834
config.from_file
can usetext=False
to indicate that the parser wants a- If a blueprint is created with an empty name it raises a
ValueError
. SESSION_COOKIE_DOMAIN
does not fall back toSERVER_NAME
. The default is not- The
routes
command shows each rule'ssubdomain
orhost
when domain - Use postponed evaluation of annotations. :pr:
5071
- Update for compatibility with Werkzeug 2.3.3.
- Update for compatibility with Werkzeug 2.3.
- Autoescape is enabled by default for
.svg
template files. :issue:4831
- Fix the type of
template_folder
to acceptpathlib.Path
. :issue:4892
- Add
--debug
option to theflask run
command. :issue:4777
- Update Werkzeug dependency to >= 2.2.2. This includes fixes related
- Fix the default value for
app.env
to be"production"
. This - Setting or accessing
json_encoder
orjson_decoder
raises a - Remove previously deprecated code. :pr:
4667
- Update Werkzeug dependency to >= 2.2.
- The app and request contexts are managed using Python context vars
- The
FLASK_ENV
environment variable andapp.env
attribute are - Some attributes that proxied config keys on
app
are deprecated: - Add new customization points to the
Flask
app object for many - JSON configuration is moved to attributes on the default
- Setting custom
json_encoder
andjson_decoder
classes on the json.htmlsafe_dumps
andjson.htmlsafe_dump
are deprecated,- Refactor
register_error_handler
to consolidate error checking. - Use Blueprint decorators and functions intended for setup after
before_first_request
is deprecated. Run setup code when creating- Added the
View.init_every_request
class attribute. If a view - A
flask.cli.FlaskGroup
Click group can be nested as a - Add
--app
and--debug
options to theflask
CLI, instead - Add
--env-file
option to theflask
CLI. This allows - It is no longer required to decorate custom CLI commands on
SessionInterface.get_expiration_time
uses a timezone-aware- View functions can return generators directly instead of wrapping
- Add
stream_template
andstream_template_string
functions to - A new implementation of context preservation during debugging and
- Allow returning a list from a view function, to convert it to a
- When type checking, allow
TypedDict
to be returned from view - Remove the
--eager-loading/--lazy-loading
options from the - Inline some optional imports that are only used for certain CLI
- Relax type annotation for
after_request
functions. :issue:4600
instance_path
for namespace packages uses the path closest to- Clearer error message when
render_template
and - Fix type annotation for
json.loads
, it accepts str or bytes. - The
--cert
and--key
options onflask run
can be given - Set the minimum required version of importlib_metadata to 3.6.0,
- Drop support for Python 3.6. :pr:
4335
- Update Click dependency to >= 8.0. :pr:
4008
- Remove previously deprecated code. :pr:
4337
- Some parameters in
send_file
andsend_from_directory
were - The
RequestContext.g
property is deprecated. Useg
directly copy_current_request_context
can decorate async functions.- The CLI uses
importlib.metadata
instead ofpkg_resources
to - Overriding
FlaskClient.open
will not cause an error on redirect. - Add an
--exclude-patterns
option to theflask run
CLI - When using lazy loading (the default with the debugger), the Click
- Deleting the session cookie uses the
httponly
flag. - Relax typing for
errorhandler
to allow the user to use more - Fix typing for
__exit__
methods for better compatibility with - From Werkzeug, for redirect responses the
Location
header URL - Add
Config.from_prefixed_env()
to load config values from
pallets/flask (Flask)
v2.3.3
Released 2023-08-21
- Python 3.12 compatibility.
- Require Werkzeug >= 2.3.7.
- Use
flit_core
instead ofsetuptools
as build backend. - Refactor how an app's root and instance paths are determined. :issue:
5160
v2.3.2
Released 2023-05-01
- Set
Vary: Cookie
header when the session is accessed, modified, or refreshed. - Update Werkzeug requirement to >=2.3.3 to apply recent bug fixes.
:ghsa:m2qf-hxjv-5gpq
v2.3.1
Released 2023-04-25
- Restore deprecated
from flask import Markup
. :issue:5084
v2.3.0
Released 2023-04-25
-
Drop support for Python 3.7. :pr:
5072
-
Update minimum requirements to the latest versions: Werkzeug>=2.3.0, Jinja2>3.1.2,
itsdangerous>=2.1.2, click>=8.1.3. -
Remove previously deprecated code. :pr:
4995
- The
push
andpop
methods of the deprecated_app_ctx_stack
and
_request_ctx_stack
objects are removed.top
still exists to give
extensions more time to update, but it will be removed. - The
FLASK_ENV
environment variable,ENV
config key, andapp.env
property are removed. - The
session_cookie_name
,send_file_max_age_default
,use_x_sendfile
,
propagate_exceptions
, andtemplates_auto_reload
properties onapp
are removed. - The
JSON_AS_ASCII
,JSON_SORT_KEYS
,JSONIFY_MIMETYPE
, and
JSONIFY_PRETTYPRINT_REGULAR
config keys are removed. - The
app.before_first_request
andbp.before_app_first_request
decorators
are removed. json_encoder
andjson_decoder
attributes on app and blueprint, and the
correspondingjson.JSONEncoder
andJSONDecoder
classes, are removed.- The
json.htmlsafe_dumps
andhtmlsafe_dump
functions are removed. - Calling setup methods on blueprints after registration is an error instead of a
warning. :pr:4997
- The
-
Importing
escape
andMarkup
fromflask
is deprecated. Import them
directly frommarkupsafe
instead. :pr:4996
-
The
app.got_first_request
property is deprecated. :pr:4997
-
The
locked_cached_property
decorator is deprecated. Use a lock inside the
decorated function if locking is needed. :issue:4993
-
Signals are always available.
blinker>=1.6.2
is a required dependency. The
signals_available
attribute is deprecated. :issue:5056
-
Signals support
async
subscriber functions. :pr:5049
-
Remove uses of locks that could cause requests to block each other very briefly.
:issue:4993
-
Use modern packaging metadata with
pyproject.toml
instead ofsetup.cfg
.
:pr:4947
-
Ensure subdomains are applied with nested blueprints. :issue:
4834
-
config.from_file
can usetext=False
to indicate that the parser wants a
binary file instead. :issue:4989
-
If a blueprint is created with an empty name it raises a
ValueError
.
:issue:5010
-
SESSION_COOKIE_DOMAIN
does not fall back toSERVER_NAME
. The default is not
to set the domain, which modern browsers interpret as an exact match rather than
a subdomain match. Warnings aboutlocalhost
and IP addresses are also removed.
:issue:5051
-
The
routes
command shows each rule'ssubdomain
orhost
when domain
matching is in use. :issue:5004
-
Use postponed evaluation of annotations. :pr:
5071
v2.2.5
Released 2023-05-02
- Update for compatibility with Werkzeug 2.3.3.
- Set
Vary: Cookie
header when the session is accessed, modified, or refreshed.
v2.2.4
Released 2023-04-25
- Update for compatibility with Werkzeug 2.3.
v2.2.3
Released 2023-02-15
- Autoescape is enabled by default for
.svg
template files. :issue:4831
- Fix the type...
v2.0.8
Update dependency zipp to v3.19.1 [SECURITY]
Notable changes
jaraco/zipp (zipp)
v3.19.1
v3.19.0
v3.18.2
v3.18.1
v3.18.0
v3.17.0
v3.16.2
v3.16.1
v3.16.0
v3.15.0
v3.14.0
v3.13.0
v3.12.1
v3.12.0
v3.11.0
v3.10.0
v3.9.1
v3.9.0
v3.8.1
v3.8.0
v3.7.0
List of commits
a2377fd (Update dependency zipp to v3.19.1 [SECURITY], 2025-05-06)