chore/Python-version-pin · L-261023-028959

Merged
LC
10d ago
+26-5

cocode now pins its development interpreter to 3.13 in .python-version, and the Makefile exports it as UV_PYTHON, so make install builds on the pin and PYTHON_VERSION=3.11 make install really rebuilds on 3.11, which it silently did not before. The lint and test matrices set UV_PYTHON per cell and end by asserting the interpreter they ran, the docs check keeps 3.11 at job level, and the docs deploy reads the version from the file.

Closes L-261023-028959

🤖 Generated with Claude Code

https://claude.ai/code/session_01TuqArJByf4EdN7khSDRiPe


Summary by cubic

Pins the development interpreter to 3.13 in .python-version and has the Makefile and CI read it, so the terminal, editor, and CI all agree on one Python version.

Before, PYTHON_VERSION=3.11 make install silently left an existing .venv on its old Python; now it rebuilds on the version named, and a plain make install returns the environment to the pin. The lint and test matrix jobs set UV_PYTHON per version and fail unless .venv ran the version the job names. The docs check keeps 3.11 at job level, and the docs deploy installs the pinned version from the file.

Closes L-261023-028959