DiamondLightSource / DiamondLightSource/python-copier-template
Support tox v4 and add action to generate lockfile
- Langage dominant
- Jinja
- Étoiles
- 25
- Forks
- 10
- Merge moyen
- 4 h 4 min
- PR mergées (30 j)
- 6
Description
At the moment we use tox to:
- Run specific tox envs in CI and locally, like `tox -e docs` to invoke `sphinx` with the right args including for `autobuild`
- Run `tox -p` to do the tasks that CI will run, but in parallel in a single terminal under a single version of python
- Do this without making a venv for each env with `tox-direct`
We considered using `nox`, but it doesn't have a parallel option at the moment as per https://github.com/wntrblm/nox/issues/544
We would like to add the ability to do something like `tox -e lock` to generate `dev-requirements.txt` as specified in https://github.com/DiamondLightSource/blueapi/pull/499
To do this we should should update to tox 4 and work out what changes are needed to support the current workflow, and also work out how to add a `lock` command that will not be run by the equivalent of `tox -p`
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Repérez la configuration de tox et de CI du dépôt, puis comparez les workflows actuels tox -e docs, tox -p et tox-direct avec le comportement de tox 4. La tâche est terminée lorsque les workflows existants fonctionnent toujours et qu’une entrée tox -e lock génère dev-requirements.txt sans être incluse dans l’ensemble des tâches de tox -p.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- build-system, ci-cd, tooling
- Type d'issue
- Fonctionnalité
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 30/100