mattrobenolt / mattrobenolt/alloconda
Audit @hasDecl usage and CPython version requirements
Nobody has claimed this yet.
- Dominant language
- Zig
- Stars
- 7
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
Problem
We rely on @hasDecl to guard CPython APIs/flags in several places. Some of these guards may be unnecessary given our supported Python versions (3.10–3.14), and they introduce extra conditional paths.
Goals
- Inventory all
@hasDecluses in the Zig sources. - For each, document the CPython version the symbol/flag was introduced.
- Remove guards that are unnecessary for 3.10–3.14, or convert to a documented compatibility note if they must remain.
Notes
This should result in fewer conditional branches and clearer version expectations in the code/docs.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Search the Zig sources for every @hasDecl use and list the CPython symbol or flag each guard references. Check when each item was introduced across CPython 3.10–3.14, then remove unnecessary guards or record the compatibility rationale; done means the inventory and version expectations are documented and the remaining conditional paths are justified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, zig
- Domain
- backend
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100