@@ -35,7 +35,6 @@ classifiers = [
3535 " Development Status :: 5 - Production/Stable" ,
3636 " License :: OSI Approved :: MIT License" ,
3737 " Programming Language :: Python :: 3" ,
38- " Programming Language :: Python :: 3.11" ,
3938 " Programming Language :: Python :: 3.12" ,
4039 " Programming Language :: Python :: 3.13" ,
4140 " Programming Language :: Python :: 3.14" ,
@@ -44,7 +43,7 @@ classifiers = [
4443 " Intended Audience :: Developers" ,
4544 " Natural Language :: English" ,
4645]
47- requires-python = " >=3.11 "
46+ requires-python = " >=3.12 "
4847dependencies = [
4948 " pydantic-settings>=2.11.0" ,
5049]
@@ -59,6 +58,8 @@ dev = [
5958
6059[tool .poe .tasks ]
6160linter.shell = " uv run ruff check --fix . && uv run ruff format ."
61+ snyk-export.shell = " rm -f requirements.txt && uv export --no-hashes --no-annotate --format requirements-txt > requirements.txt && uvx pre-commit run --all-files || uvx pre-commit run --all-files"
62+ snyk.sequence = [" snyk-export" , { shell = " uv pip install pip && snyk test --file=requirements.txt && snyk code test; uv pip uninstall pip" }]
6263profile = " uv run python -m cProfile -o cprofile_unit.prof -m pytest --no-cov"
6364tests.sequence = [" linter" , {shell = " uv run pytest" }]
6465updatedev.sequence = [" linter" , {shell = " uv lock --upgrade && uv sync --all-extras --group dev" }]
@@ -96,7 +97,7 @@ exclude_lines = [
9697
9798[tool .ruff ]
9899line-length = 120
99- target-version = " py311 "
100+ target-version = " py312 "
100101
101102[tool .ruff .lint ]
102103select = [" E" , " W" , " F" , " I" , " B" , " C4" , " UP" , " S" , " SLF" ]
0 commit comments