From e5027f8d19216a15178bdb6bfc2b5cfdaf3b86ff Mon Sep 17 00:00:00 2001 From: fry69 <142489379+fry69@users.noreply.github.com> Date: Fri, 10 Oct 2025 16:03:01 +0200 Subject: [PATCH 1/2] test: fix Python 3.14 datetime deprecation --- sqlite_utils/cli.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sqlite_utils/cli.py b/sqlite_utils/cli.py index 6b7ebd97..871cb606 100644 --- a/sqlite_utils/cli.py +++ b/sqlite_utils/cli.py @@ -1,7 +1,7 @@ import base64 import click from click_default_group import DefaultGroup # type: ignore -from datetime import datetime +from datetime import datetime, timezone import hashlib import pathlib from runpy import run_module @@ -3203,8 +3203,8 @@ def __init__(self, exception, path): "ctime": lambda p: p.stat().st_ctime, "mtime_int": lambda p: int(p.stat().st_mtime), "ctime_int": lambda p: int(p.stat().st_ctime), - "mtime_iso": lambda p: datetime.utcfromtimestamp(p.stat().st_mtime).isoformat(), - "ctime_iso": lambda p: datetime.utcfromtimestamp(p.stat().st_ctime).isoformat(), + "mtime_iso": lambda p: datetime.fromtimestamp(p.stat().st_mtime, timezone.utc).replace(tzinfo=None).isoformat(), + "ctime_iso": lambda p: datetime.fromtimestamp(p.stat().st_ctime, timezone.utc).replace(tzinfo=None).isoformat(), "size": lambda p: p.stat().st_size, "stem": lambda p: p.stem, "suffix": lambda p: p.suffix, From fd9a8843eae7bdaf4877c00d0c09cf9492d71bbe Mon Sep 17 00:00:00 2001 From: fry69 <142489379+fry69@users.noreply.github.com> Date: Fri, 10 Oct 2025 16:28:12 +0200 Subject: [PATCH 2/2] test: suppress PytestUnraisableExceptionWarning in dateparse_errors --- tests/test_recipes.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/test_recipes.py b/tests/test_recipes.py index eca39874..ff042253 100644 --- a/tests/test_recipes.py +++ b/tests/test_recipes.py @@ -64,6 +64,7 @@ def test_dayfirst_yearfirst(fresh_db, recipe, kwargs, expected): @pytest.mark.parametrize("fn", ("parsedate", "parsedatetime")) @pytest.mark.parametrize("errors", (None, recipes.SET_NULL, recipes.IGNORE)) +@pytest.mark.filterwarnings("ignore::pytest.PytestUnraisableExceptionWarning") def test_dateparse_errors(fresh_db, fn, errors): fresh_db["example"].insert_all( [