jdx / mise

dev tools, env vars, task runner
https://mise.jdx.dev
MIT License
8.11k stars 214 forks source link

Per-project Python default packages _for virtualenv_ (happy to submit a PR) #2194

Open egnor opened 1 month ago

egnor commented 1 month ago

The default python packages system is handy enough but it's global with all the issues that entails. (It also only updates when any given python runtime is actually installed.)

Since mise can set up a local virtualenv, it makes sense that when doing so it would be able to add some default packages, which would be specified somewhere in settings:

[settings]
experimental = true
python_compile = false
python_venv_auto_create = true
python_venv_default_packages = ["pyserial"]

In an ideal world it could even install a local package as editable (pip install -e .) but maybe that's too esoteric to ask for.

rsyring commented 3 weeks ago

Related: https://github.com/jdx/mise/issues/323