Commit be5b56c
authored
Remove PyPy 3.10 from test matrix to fix failing CI checks (#83)
## Summary
Remove PyPy 3.10 from the test matrix to fix failing CI checks.
## Problem
All 4 PyPy 3.10 jobs are failing on every build with:
```
error: the configured PyPy interpreter version (3.10) is lower than
PyO3's minimum supported version (3.11)
```
## Root Cause Analysis
This failure is caused by an **upstream dependency change**, not by any code change in this repository.
**The dependency chain:**
```
tox.ini → readme-renderer → nh3 → PyO3
```
1. Our `tox.ini` uses [`readme-renderer`](https://github.com/pypa/readme_renderer) for package metadata validation
2. `readme-renderer` requires [`nh3 >= 0.2.14`](https://github.com/pypa/readme_renderer/blob/main/pyproject.toml)
3. `nh3` has [no pre-built PyPy wheels](https://pypi.org/project/nh3/#files), so PyPy must build from source
4. Building from source compiles PyO3, which dropped PyPy 3.10 support in v0.27.0
**Timeline:**
| Date | Event |
|------|-------|
| Oct 21, 2025 | `nh3` updated PyO3 to 0.27.0 ([PR #102](messense/nh3#102)) |
| Oct 29, 2025 | [Last passing CI](https://github.com/AltimateAI/datapilot-cli/actions/runs/18909887249) on main |
| Oct 30, 2025 | `nh3` updated PyO3 to 0.27.1 ([PR #103](messense/nh3#103)) |
| Oct 30, 2025 | [First failing CI](https://github.com/AltimateAI/datapilot-cli/actions/runs/18955832290) on main |
**Upstream decisions:**
- [PyO3 v0.27.0](https://github.com/PyO3/pyo3/releases/tag/v0.27.0): *"Support for PyPy 3.9 and PyPy 3.10 (both no longer supported upstream) has been dropped."*
- [PyPy v7.3.19](https://doc.pypy.org/en/latest/release-v7.3.19.html): *"In the next release we will drop 3.10 and remove the 'beta' label."*
- [PyPy downloads](https://www.pypy.org/download.html) now only list PyPy 3.11 and 2.7 as current releases
## Solution
Remove PyPy 3.10 from both:
- ✅ `tox.ini` - envlist and basepython definitions
- ✅ `.github/workflows/github-actions.yml` - all 4 pypy310 jobs
## Removed Jobs
- `pypy310-pydantic28-cover`
- `pypy310-pydantic210-cover`
- `pypy310-pydantic28-nocov`
- `pypy310-pydantic210-nocov`
## Impact
- ✅ Fixes all failing CI builds
- ✅ PyPy 3.9 jobs continue to work and remain in the matrix
- ✅ All CPython versions (3.10, 3.11, 3.12) unaffected
- ✅ Aligns with upstream PyPy and PyO3 deprecation decisions
## Testing
CI will run on this PR to verify the fix works.1 parent 50140dd commit be5b56c
File tree
4 files changed
+2
-28
lines changed- .github/workflows
- tests/test_vendor
4 files changed
+2
-28
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
91 | 91 | | |
92 | 92 | | |
93 | 93 | | |
94 | | - | |
95 | | - | |
96 | | - | |
97 | | - | |
98 | | - | |
99 | | - | |
100 | | - | |
101 | | - | |
102 | | - | |
103 | | - | |
104 | | - | |
105 | | - | |
106 | | - | |
107 | | - | |
108 | | - | |
109 | | - | |
110 | | - | |
111 | | - | |
112 | | - | |
113 | | - | |
114 | | - | |
115 | | - | |
116 | | - | |
117 | | - | |
118 | 94 | | |
119 | 95 | | |
120 | 96 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| 14 | + | |
14 | 15 | | |
15 | 16 | | |
16 | 17 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
3 | | - | |
4 | 2 | | |
5 | 3 | | |
6 | 4 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
17 | | - | |
| 17 | + | |
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
25 | | - | |
26 | 25 | | |
27 | 26 | | |
28 | 27 | | |
| |||
0 commit comments