diff --git a/algorithms_keeper/parser/python_parser.py b/algorithms_keeper/parser/python_parser.py index 61cebb9..4e7d485 100644 --- a/algorithms_keeper/parser/python_parser.py +++ b/algorithms_keeper/parser/python_parser.py @@ -72,6 +72,9 @@ class PythonParser(BaseFilesParser): ".csv", ".json", ".txt", + # Lock files (e.g. ``uv.lock``, ``poetry.lock``) are committed to keep CI + # reproducible; a transitive dependency bump lives only here, so allow it. + ".lock", # Good old Python file ".py", *DOCS_EXTENSIONS, diff --git a/tests/test_parser.py b/tests/test_parser.py index 6cf830e..805eee2 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -56,6 +56,8 @@ def test_contains_testfile(parser: PythonParser, expected: int) -> None: get_parser("test/test.html, test/test.cpp, test/test.py"), "test/test.html, test/test.cpp", ), + # Lock files are committed for reproducible CI, so they are valid. + (get_parser("uv.lock, sol1.py"), ""), ), ) def test_validate_extension(parser: PythonParser, expected: str) -> None: