deprecate __version__

This commit is contained in:
David Lord 2025-05-28 11:39:42 -07:00
parent dfe82ade3d
commit b7ce542db1
No known key found for this signature in database
GPG Key ID: 43368A7AA8CC5926
4 changed files with 24 additions and 2 deletions

View File

@ -8,6 +8,8 @@ Unreleased
- Drop support for Python 3.7, 3.8, and 3.9. - Drop support for Python 3.7, 3.8, and 3.9.
- Update minimum MarkupSafe version to >= 3.0. - Update minimum MarkupSafe version to >= 3.0.
- Update minimum Babel version to >= 2.17. - Update minimum Babel version to >= 2.17.
- Deprecate the ``__version__`` attribute. Use feature detection or
``importlib.metadata.version("jinja2")`` instead.
- Use modern packaging metadata with ``pyproject.toml`` instead of ``setup.cfg``. - Use modern packaging metadata with ``pyproject.toml`` instead of ``setup.cfg``.
:pr:`1793` :pr:`1793`
- Use ``flit_core`` instead of ``setuptools`` as build backend. - Use ``flit_core`` instead of ``setuptools`` as build backend.

View File

@ -1,5 +1,6 @@
[project] [project]
name = "Jinja2" name = "Jinja2"
version = "3.2.0.dev"
description = "A very fast and expressive template engine." description = "A very fast and expressive template engine."
readme = "README.md" readme = "README.md"
license = "BSD-3-Clause" license = "BSD-3-Clause"
@ -17,7 +18,6 @@ classifiers = [
] ]
requires-python = ">=3.10" requires-python = ">=3.10"
dependencies = ["MarkupSafe>=3.0"] dependencies = ["MarkupSafe>=3.0"]
dynamic = ["version"]
[project.urls] [project.urls]
Donate = "https://palletsprojects.com/donate" Donate = "https://palletsprojects.com/donate"

View File

@ -3,6 +3,10 @@ non-XML syntax that supports inline expressions and an optional
sandboxed environment. sandboxed environment.
""" """
from __future__ import annotations
import typing as t
from .bccache import BytecodeCache as BytecodeCache from .bccache import BytecodeCache as BytecodeCache
from .bccache import FileSystemBytecodeCache as FileSystemBytecodeCache from .bccache import FileSystemBytecodeCache as FileSystemBytecodeCache
from .bccache import MemcachedBytecodeCache as MemcachedBytecodeCache from .bccache import MemcachedBytecodeCache as MemcachedBytecodeCache
@ -35,4 +39,19 @@ from .utils import pass_environment as pass_environment
from .utils import pass_eval_context as pass_eval_context from .utils import pass_eval_context as pass_eval_context
from .utils import select_autoescape as select_autoescape from .utils import select_autoescape as select_autoescape
__version__ = "3.2.0.dev0"
def __getattr__(name: str) -> t.Any:
if name == "__version__":
import importlib.metadata
import warnings
warnings.warn(
"The `__version__` attribute is deprecated and will be removed in"
" Werkzeug 3.3. Use feature detection or"
' `importlib.metadata.version("werkzeug")` instead.',
DeprecationWarning,
stacklevel=2,
)
return importlib.metadata.version("werkzeug")
raise AttributeError(name)

1
uv.lock generated
View File

@ -313,6 +313,7 @@ wheels = [
[[package]] [[package]]
name = "jinja2" name = "jinja2"
version = "3.2.0.dev0"
source = { editable = "." } source = { editable = "." }
dependencies = [ dependencies = [
{ name = "markupsafe" }, { name = "markupsafe" },