python-intermediate-development
python-intermediate-development copied to clipboard
Possible: Standardise on Astral tooling?
The section on virtual environments always raises questions about different python versions, and the virtualenv stuff was dropped from the course for being a compatibility nightmare. However, we still get issues (e.g. #487) due to venv and pip being discrete tools, and half the learners have Conda installed which snares things up in various ways.
Honestly, uv has progressed enough that I think we could reasonably simplify things by just introducing it as a one-stop solution to fix the mess of dependency issues. It doesn't get snagged on Conda or accidentally invoke it thanks to uv run. We could then also standardise linting on ruff and type checking (#467) on ty.
Obviously we'd still list alternatives to all of these things, but it'd make things a bit more coherent. I think it's probably a reasonable 'proactive' stance to take as well, even if it isn't yet the overall community standard. Poetry for example didn't really get enough momentum to become one, but given Pixi is now integrating uv, it looks like a fairly clear future standard and I think the Carpentries can be proactive about it.