Merge branch '3.0.x'

This commit is contained in:
David Lord 2024-02-03 13:13:41 -08:00
commit 6b422a05f3
No known key found for this signature in database
GPG key ID: 7A1C87E3F5BC42A8
5 changed files with 21 additions and 3 deletions

View file

@ -1,3 +1,13 @@
Version 3.0.2
-------------
Released 2024-02-03
- Correct type for ``jinja_loader`` property. :issue:`5388`
- Fix error with ``--extra-files`` and ``--exclude-patterns`` CLI options.
:issue:`5391`
Version 3.0.1
-------------

View file

@ -1,6 +1,6 @@
[project]
name = "Flask"
version = "3.0.1"
version = "3.0.2"
description = "A simple framework for building complex web applications."
readme = "README.rst"
license = {file = "LICENSE.rst"}

View file

@ -858,7 +858,9 @@ class SeparatedPathType(click.Path):
self, value: t.Any, param: click.Parameter | None, ctx: click.Context | None
) -> t.Any:
items = self.split_envvar_value(value)
return [super().convert(item, param, ctx) for item in items]
# can't call no-arg super() inside list comprehension until Python 3.12
super_convert = super().convert
return [super_convert(item, param, ctx) for item in items]
@click.command("run", short_help="Run a development server.")

View file

@ -9,6 +9,7 @@ from collections import defaultdict
from functools import update_wrapper
import click
from jinja2 import BaseLoader
from jinja2 import FileSystemLoader
from werkzeug.exceptions import default_exceptions
from werkzeug.exceptions import HTTPException
@ -272,7 +273,7 @@ class Scaffold:
self._static_url_path = value
@cached_property
def jinja_loader(self) -> FileSystemLoader | None:
def jinja_loader(self) -> BaseLoader | None:
"""The Jinja loader for this object's templates. By default this
is a class :class:`jinja2.loaders.FileSystemLoader` to
:attr:`template_folder` if it is set.

View file

@ -679,3 +679,8 @@ def test_cli_empty(app):
result = app.test_cli_runner().invoke(args=["blue", "--help"])
assert result.exit_code == 2, f"Unexpected success:\n\n{result.output}"
def test_run_exclude_patterns():
ctx = run_command.make_context("run", ["--exclude-patterns", __file__])
assert ctx.params["exclude_patterns"] == [__file__]