Skip to content

Commit ef70557

Browse files
sync: update from python-copier-template (#83)
## Summary Automated sync from [python-copier-template](https://github.com/Komorebi-AI/python-copier-template). This PR was generated by rendering the copier template and comparing the output against this repository. Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 parent 7e25892 commit ef70557

3 files changed

Lines changed: 153 additions & 142 deletions

File tree

‎.pre-commit-config.yaml‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,3 +57,9 @@ repos:
5757
require_serial: true
5858
language: unsupported
5959
pass_filenames: false
60+
- id: deptry
61+
name: deptry
62+
entry: uv run deptry .
63+
language: unsupported
64+
always_run: true
65+
pass_filenames: false

‎pyproject.toml‎

Lines changed: 29 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,11 @@ readme = "README.md"
1212
authors = [{ name = "Komorebi AI", email = "info@komorebi.ai" }]
1313
dynamic = ["version"]
1414
dependencies = [
15-
"pandas",
1615
"fastapi",
16+
"pydantic",
1717
"uvicorn",
1818
"colorlog>=6.9.0",
19-
"typer-slim",
19+
"typer",
2020
]
2121

2222
[project.urls]
@@ -54,14 +54,34 @@ select = [
5454
"C404", # flake8-comprehensions: unnecessary-list-comprehension-dict
5555
"C405", # flake8-comprehensions: unnecessary-literal-set
5656
"W605", # pycodestyle: invalid-escape-sequence
57+
"S", # flake8-bandit (security)
58+
"RUF", # ruff-specific rules
59+
"PT", # flake8-pytest-style
60+
"A", # flake8-builtins (no builtin shadowing)
61+
"PERF", # perflint (performance anti-patterns)
62+
"N", # pep8-naming
63+
"RET501", # flake8-return: unnecessary-return-none
64+
"RET502", # flake8-return: implicit-return-value
65+
"RET503", # flake8-return: implicit-return
66+
"RET504", # flake8-return: unnecessary-assign
67+
"PIE", # flake8-pie
68+
"LOG", # flake8-logging
69+
"NPY", # numpy-specific rules
70+
"PD", # pandas-vet
71+
"ISC001", # flake8-implicit-str-concat: single-line implicit string concatenation
72+
"TRY", # tryceratops (exception handling best practices)
73+
"PLE", # pylint errors
74+
"PLW", # pylint warnings
75+
"PLC", # pylint convention
76+
"FAST", # fastapi
5777
]
5878

5979
# Ignore D100 Missing docstring in public module
60-
ignore = ["D100"]
80+
ignore = ["D100", "TRY003", "TRY300", "RUF001", "RUF005", "PD010", "LOG015"]
6181
[tool.ruff.lint.per-file-ignores]
6282
# Also ignore `D104` in all `__init__.py` files.
6383
"__init__.py" = ["D104"]
64-
"tests/*.py" = ["D"]
84+
"tests/*.py" = ["D", "S101"]
6585

6686
[tool.ruff.lint.pydocstyle]
6787
convention = "numpy"
@@ -74,6 +94,10 @@ xfail_strict = true
7494
addopts = ["-ra", "--strict-config", "--strict-markers"]
7595
filterwarnings = ["error", "ignore::DeprecationWarning"]
7696

97+
[tool.deptry]
98+
# colorlog is used in log_conf.yaml (not scanned by deptry)
99+
per_rule_ignores = {"DEP002" = ["colorlog"]}
100+
77101
[tool.ty.terminal]
78102
error-on-warning = true
79103

@@ -84,4 +108,5 @@ dev = [
84108
"prek",
85109
"ipykernel",
86110
"ty",
111+
"deptry>=0.25",
87112
]

0 commit comments

Comments
 (0)