Repository navigation
Resolve Oneleet security advisories (certifi, anyio, openapi-python-client, pypi-publish) - #98
junkai-roe-ai wants to merge 1 commit into
Conversation
- certifi 2025.8.3 -> 2026.10.19 (GHSA-6q48-6c7w-9gw2) - anyio 4.10.0 -> 4.15.1 (CVE-2026-63374, CVE-2026-64847) - openapi-python-client 0.28.3 -> 0.29.1 (CVE-2026-105801). 0.29 requires Python 3.11+, so the codegen dependency is gated on python_version >= 3.11 instead of raising the SDK's requires-python. Generated code is not regenerated here: 0.29 emits StrEnum / datetime.fromisoformat, which would break SDK users on Python 3.10. - pypa/gh-action-pypi-publish release/v1 -> v1.14.3 (GHSA-vxmw-7h4f-hqxh) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
[Medium impact] The changes reach SDK dependency installs, code generation, and release publishing. Fix the code generation check before merging.
|
| ] | ||
| codegen = [ | ||
| "openapi-python-client>=0.28,<0.29", | ||
| "openapi-python-client>=0.29.1,<0.30; python_version >= '3.11'", |
There was a problem hiding this comment.
check-codegen-drift runs the upgraded generator on Python 3.11.9, replaces src/roe/_generated, and checks that the result matches the committed files. Those files still use Enum, while the PR description confirms that 0.29.1 generates StrEnum. The existing CI job therefore fails now, not just on the next manual regeneration.
Preserve the current output with compatible templates, or update the generated files alongside the Python support decision.
Resolves the five Oneleet alerts open against roe-python.
release/v1→v1.14.3Note on openapi-python-client
0.29 requires Python 3.11+, while the SDK supports 3.10. The
codegendependency is gated onpython_version >= '3.11', so the SDK'srequires-pythonis unchanged. It is only used byscripts/generate-sdk.The SDK code is not regenerated in this PR. Running
scripts/generate-sdkwith 0.29.1 produces code that usesStrEnumanddatetime.fromisoformat, which would break SDK users on Python 3.10. The next regeneration will hit this, so we should decide whether to drop 3.10 support (it reaches end-of-life this month) or pin the templates before then.Testing
uv run pytest: 62 passeduv lock --check: in sync (lock revision unchanged)v*tag.🤖 Generated with Claude Code