Commit 84f2c46
feat: Standardize on Python 3.12+ with forward compatibility for 3.13 (#132)
* feat: standardize on Python 3.12+ with forward compatibility for 3.13
Migrate project to require Python 3.12 as minimum version while maintaining
forward compatibility with Python 3.13 through CI testing matrix.
**Configuration Changes:**
- pyproject.toml: Update requires-python to >=3.12, add 3.13 classifier
- pyproject.toml: Update black target-version to py312
- pyproject.toml: Improve description to highlight assess/bootstrap/learning
- pyproject.toml: Bump version to 2.1.0 (minor release)
- .pre-commit-config.yaml: Update language_version to python3.12
- uv.lock: Regenerate with new Python requirement (55 packages)
**CI/CD Workflows (5 files):**
- tests.yml: Test matrix now covers ['3.12', '3.13'] for forward compatibility
- agentready-assessment.yml: Use Python 3.12
- security.yml: Use Python 3.12
- continuous-learning.yml: Use Python 3.12
- publish-pypi.yml: Use Python 3.12
**Bootstrap Templates (5 files):**
- workflows/tests-python.yml.j2: Generate workflows testing 3.12 and 3.13
- workflows/agentready-assessment.yml.j2: Use Python 3.12
- workflows/security.yml.j2: Use Python 3.12
- precommit-python.yaml.j2: Use Python 3.12
- CONTRIBUTING.md.j2: Update Python version references
**Documentation (5 files):**
- CLAUDE.md: Update "Python 3.11+" → "Python 3.12+"
- docs/user-guide.md: Update version references
- docs/developer-guide.md: Update version references
- docs/examples.md: Update version references
- docs/attributes.md: Update version references
**Verification:**
- ✅ Dependencies verified: radon 6.0.1 and lizard 1.17.10 work with Python 3.12
- ✅ Test suite: 685 tests passed
- ✅ CLI functional: agentready --version works
- ✅ Batch assessment: Successfully assessed 3 repositories
**Rationale:**
- Python 3.12 provides good balance of recent features and stability
- Codebase already uses 3.10+ syntax (union types, generic annotations)
- Testing both 3.12 and 3.13 ensures smooth future upgrades
- No breaking changes to code required
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* chore: apply black/isort formatting from rebase
Fix formatting issues that emerged after rebasing on main.
Auto-formatters (black, isort, ruff --fix) applied to ensure
CI passes.
Changes:
- Black reformatted 12 files
- isort organized imports
- ruff removed unused imports (align.py)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* chore: fix black formatting in test_security.py
* chore: fix isort formatting
* fix: resolve ruff lint errors to pass CI
- Fix undefined 'repo' variable in align.py (use assessment.repository)
- Add noqa comments for intentional jsonschema import checks
- Fix unused variable warnings in test files
All linters now pass: black, isort, and ruff.
---------
Co-authored-by: Claude <noreply@anthropic.com>1 parent ea02433 commit 84f2c46
File tree
44 files changed
+634
-178
lines changed- .github/workflows
- .skills-proposals
- docs
- src/agentready
- cli
- models
- reporters
- services
- templates/bootstrap
- workflows
- tests
- integration
- security
- unit
- cli
- learners
- utils
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
44 files changed
+634
-178
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
24 | | - | |
| 24 | + | |
25 | 25 | | |
26 | 26 | | |
27 | 27 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
40 | | - | |
| 40 | + | |
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
30 | | - | |
| 30 | + | |
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
46 | | - | |
| 46 | + | |
47 | 47 | | |
48 | 48 | | |
49 | 49 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | | - | |
| 14 | + | |
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
48 | | - | |
| 48 | + | |
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
18 | | - | |
| 18 | + | |
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
| 2 | + | |
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
428 | 428 | | |
429 | 429 | | |
430 | 430 | | |
431 | | - | |
| 431 | + | |
432 | 432 | | |
433 | 433 | | |
434 | 434 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
111 | 111 | | |
112 | 112 | | |
113 | 113 | | |
114 | | - | |
| 114 | + | |
115 | 115 | | |
116 | 116 | | |
117 | 117 | | |
| |||
233 | 233 | | |
234 | 234 | | |
235 | 235 | | |
236 | | - | |
| 236 | + | |
237 | 237 | | |
238 | 238 | | |
239 | 239 | | |
| |||
943 | 943 | | |
944 | 944 | | |
945 | 945 | | |
946 | | - | |
| 946 | + | |
947 | 947 | | |
948 | 948 | | |
949 | 949 | | |
| |||
0 commit comments