carpentries-incubator / carpentries-incubator/python-intermediate-development

Possible: Standardise on Astral tooling?

Open
#491 12 comments 0 reactions 3 assignees Claimed by @bielsnohr View on GitHub
enhancement
Dominant language
TeX
Stars
63
Forks
77
Avg merge
20h 8m
Merged PRs (30d)
3

Description

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`](https://prefix.dev/blog/uv_in_pixi), it looks like a fairly clear _future_ standard and I think the Carpentries can be proactive about it.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.