Updated deprecation timeline

This commit is contained in:
Andrew Murray 2025-07-01 21:19:30 +10:00
parent 92bafe6b88
commit 0e3aac1ed1
2 changed files with 10 additions and 12 deletions

View File

@ -9,9 +9,9 @@ from PIL import _deprecate
"version, expected", "version, expected",
[ [
( (
12, 13,
"Old thing is deprecated and will be removed in Pillow 12 " "Old thing is deprecated and will be removed in Pillow 13 "
r"\(2025-10-15\)\. Use new thing instead\.", r"\(2026-10-15\)\. Use new thing instead\.",
), ),
( (
None, None,
@ -53,18 +53,18 @@ def test_old_version(deprecated: str, plural: bool, expected: str) -> None:
def test_plural() -> None: def test_plural() -> None:
expected = ( expected = (
r"Old things are deprecated and will be removed in Pillow 12 \(2025-10-15\)\. " r"Old things are deprecated and will be removed in Pillow 13 \(2026-10-15\)\. "
r"Use new thing instead\." r"Use new thing instead\."
) )
with pytest.warns(DeprecationWarning, match=expected): with pytest.warns(DeprecationWarning, match=expected):
_deprecate.deprecate("Old things", 12, "new thing", plural=True) _deprecate.deprecate("Old things", 13, "new thing", plural=True)
def test_replacement_and_action() -> None: def test_replacement_and_action() -> None:
expected = "Use only one of 'replacement' and 'action'" expected = "Use only one of 'replacement' and 'action'"
with pytest.raises(ValueError, match=expected): with pytest.raises(ValueError, match=expected):
_deprecate.deprecate( _deprecate.deprecate(
"Old thing", 12, replacement="new thing", action="Upgrade to new thing" "Old thing", 13, replacement="new thing", action="Upgrade to new thing"
) )
@ -77,16 +77,16 @@ def test_replacement_and_action() -> None:
) )
def test_action(action: str) -> None: def test_action(action: str) -> None:
expected = ( expected = (
r"Old thing is deprecated and will be removed in Pillow 12 \(2025-10-15\)\. " r"Old thing is deprecated and will be removed in Pillow 13 \(2026-10-15\)\. "
r"Upgrade to new thing\." r"Upgrade to new thing\."
) )
with pytest.warns(DeprecationWarning, match=expected): with pytest.warns(DeprecationWarning, match=expected):
_deprecate.deprecate("Old thing", 12, action=action) _deprecate.deprecate("Old thing", 13, action=action)
def test_no_replacement_or_action() -> None: def test_no_replacement_or_action() -> None:
expected = ( expected = (
r"Old thing is deprecated and will be removed in Pillow 12 \(2025-10-15\)" r"Old thing is deprecated and will be removed in Pillow 13 \(2026-10-15\)"
) )
with pytest.warns(DeprecationWarning, match=expected): with pytest.warns(DeprecationWarning, match=expected):
_deprecate.deprecate("Old thing", 12) _deprecate.deprecate("Old thing", 13)

View File

@ -46,8 +46,6 @@ def deprecate(
elif when <= int(__version__.split(".")[0]): elif when <= int(__version__.split(".")[0]):
msg = f"{deprecated} {is_} deprecated and should be removed." msg = f"{deprecated} {is_} deprecated and should be removed."
raise RuntimeError(msg) raise RuntimeError(msg)
elif when == 12:
removed = "Pillow 12 (2025-10-15)"
elif when == 13: elif when == 13:
removed = "Pillow 13 (2026-10-15)" removed = "Pillow 13 (2026-10-15)"
else: else: