diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 250bf8a..f1633de 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -59,7 +59,7 @@ repos: # 2. Ruff Linter # ========================================== - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.8.4 + rev: v0.16.10 hooks: - id: ruff name: "Ruff 린터" @@ -92,7 +92,7 @@ repos: # 5. Commitizen (commit-msg 단계) # ========================================== - repo: https://github.com/commitizen-tools/commitizen - rev: v3.29.1 + rev: v4.19.1 hooks: - id: commitizen name: "Commitizen 메시지 검증" diff --git a/README.md b/README.md index 0269de3..434786a 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ [![CI](https://github.com/bigmooon/python-template/actions/workflows/ci.yml/badge.svg)](https://github.com/bigmooon/python-template/actions/workflows/ci.yml) ![Python](https://img.shields.io/badge/Python-3.12%20%7C%203.13-3776AB?logo=python&logoColor=white) -![Ruff](https://img.shields.io/badge/Ruff-0.8.4-D7FF64?logo=ruff&logoColor=261230) +![Ruff](https://img.shields.io/badge/Ruff-0.16.10-D7FF64?logo=ruff&logoColor=261230) ![Coverage](https://img.shields.io/badge/coverage-gate%2080%25-brightgreen) Python 3.12–3.13 프로젝트를 시작할 때 패키지 구조, 품질 검사, Git hook과 CI를 함께 재사용할 수 있는 템플릿입니다. Ruff, mypy strict, pytest, coverage, pre-commit, Commitizen을 하나의 Make 워크플로우로 묶습니다. @@ -34,10 +34,10 @@ make ci-check |---|---| | Python | `>=3.12,<3.14`; CI matrix는 3.12, 3.13 | | 실행 환경 | macOS/Linux, Make, POSIX shell | -| Ruff | `src`, `tests`, `scripts`; CLI와 hook 모두 0.8.4 | +| Ruff | `src`, `tests`, `scripts`; CLI와 hook 모두 0.16.10 | | mypy | `src`, `scripts`; strict mode | | pytest/coverage | 단위 테스트, `src`+`scripts` branch coverage 80% gate | -| Commitizen | CLI와 commit-msg hook 모두 3.29.1 | +| Commitizen | CLI와 commit-msg hook 모두 4.19.1 | | CI runner | `ubuntu-24.04`, `permissions: contents: read` | | 자동 의존성 갱신 | Dependabot의 pip, GitHub Actions 주간 검사 | | 라이선스 | MIT `LICENSE`, PEP 639 SPDX `license = "MIT"` | diff --git a/pyproject.toml b/pyproject.toml index bf9c42e..9a242af 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -21,9 +21,9 @@ dependencies = [] [project.optional-dependencies] dev = [ - "ruff==0.8.4", # .pre-commit-config.yaml의 ruff rev와 동일 + "ruff==0.16.10", # .pre-commit-config.yaml의 ruff rev와 동일 "pre-commit>=3.8.0", - "commitizen==3.29.1", # .pre-commit-config.yaml의 Commitizen rev와 동일 + "commitizen==4.19.1", # .pre-commit-config.yaml의 Commitizen rev와 동일 "pytest>=8.0", "pytest-cov>=5.0", "mypy>=1.10", diff --git a/requirements-dev.lock b/requirements-dev.lock index 899c6f2..6f55fa7 100644 --- a/requirements-dev.lock +++ b/requirements-dev.lock @@ -12,12 +12,14 @@ colorama==0.4.6 # via # commitizen # pytest -commitizen==3.29.1 +commitizen==4.19.1 # via your-project (pyproject.toml) coverage==7.16.2 # via pytest-cov decli==0.6.3 # via commitizen +deprecated==1.3.1 + # via commitizen distlib==0.4.3 # via virtualenv filelock==4.0.12 @@ -56,7 +58,9 @@ pluggy==1.6.0 pre-commit==4.6.2 # via your-project (pyproject.toml) prompt-toolkit==3.0.53 - # via questionary + # via + # commitizen + # questionary pygments==2.21.0 # via pytest pytest==9.1.1 @@ -73,7 +77,7 @@ pyyaml==6.0.3 # pre-commit questionary==2.1.1 # via commitizen -ruff==0.8.4 +ruff==0.16.10 # via your-project (pyproject.toml) termcolor==2.5.0 # via commitizen @@ -85,3 +89,5 @@ virtualenv==21.14.6 # via pre-commit wcwidth==0.9.2 # via prompt-toolkit +wrapt==2.5.0 + # via deprecated