Skip to content

Fix 1831#1865

Merged
oberstet merged 3 commits into
crossbario:masterfrom
oberstet:fix_1831
Jun 17, 2026
Merged

Fix 1831#1865
oberstet merged 3 commits into
crossbario:masterfrom
oberstet:fix_1831

Conversation

@oberstet

Copy link
Copy Markdown
Contributor

fixes #1831

oberstet added 3 commits June 17, 2026 11:53
The project moved to a justfile + uv build system; these legacy files
were no longer referenced by any workflow, the justfile, or
pyproject.toml. Verified unreferenced before removal.

Removed:
- Makefile.orig, Dockerfile.wheels, test-docker-builds.sh, versions.sh,
  deploy.sh (legacy build/deploy scripts)
- mypy.ini (the typing recipe passes --config-file
  pyproject-static-typing.toml explicitly, so mypy.ini was never read)
- .prettierrc.json (prettier is not invoked by any recipe/workflow)
- docs/DOCKER_BUILDS.md, docker/README.md (documented deleted files /
  non-existent workflows)
- pyinstaller/ hooks and the unused "pyinstaller" dev dependency
  (PyInstaller is no longer explicitly supported)

Behavior-preserving adjustments (not pure deletions):
- .coveragerc was NOT redundant: it carried `omit = */test/*.py` and
  there was no [tool.coverage] in pyproject.toml, so dropping it would
  have started counting in-package test modules in coverage. The
  setting was migrated to [tool.coverage.run] in pyproject.toml
  (coverage.py auto-discovers it) and .coveragerc removed.
- Dropped the now-stale "DOCKER_BUILDS.md" entry from the Sphinx
  exclude_patterns in docs/conf.py.

Notes:
- uv.lock is gitignored (.gitignore:66) and untracked, so the "regenerate
  uv.lock" action item produces no committed change; it was refreshed
  locally and cleanly drops pyinstaller and its transitive deps
  (altgraph, macholib, pefile, pyinstaller-hooks-contrib, setuptools).
- The .coveragerc -> pyproject migration is a small config change beyond
  pure file removal; flagging for human review per AI_POLICY.md.

Fixes crossbario#1831.

Note: This work was completed with AI assistance (Claude Code).
…crossbario#1831)

Removing the pyinstaller dev dependency also dropped setuptools, which
was only present transitively (uv: "Removed setuptools v82.0.1"). On
Python >= 3.12 the stdlib distutils is gone, so cffi's ffi.compile()
requires setuptools to be installed. `just install-tools` does an
editable install of .[dev] and then runs `build-nvx` in the venv, so
the NVX CFFI build broke on cpy312/cpy314:

    Building _nvx_utf8validator...
    Exception: This CFFI feature requires setuptools on Python >= 3.12.
    error: recipe `build-nvx` failed with exit code 1

The wheel build path is unaffected (it uses `python -m build`, whose
isolated build env already gets setuptools from [build-system].requires).

Fix: add setuptools>=70.0.0 explicitly to the dev extra, with a comment
so it is not mistaken for unused. Reproduced the failure on a cpy314
venv (setuptools absent) and confirmed `just build-nvx cpy314` succeeds
once setuptools is installed.

Note: This work was completed with AI assistance (Claude Code).
@oberstet oberstet merged commit f5fb7b6 into crossbario:master Jun 17, 2026
35 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Remove orphaned/attic files from old CI/CD system

1 participant