lincc-frameworks / lincc-frameworks/python-project-template

Use dependency-group for "dev" and other non-user-facing dependencies

Abierto
#580 1 comentario 1 reacción 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Lenguaje dominante
Jinja
Estrellas
85
Forks
16
Merge medio
6 h 18 min
PR fusionados (30 d)
1

Descripción

pyproject.toml specifies two types of dependency sets: "extras" and "groups." The first is specified by [project.optional-dependencies] (this is what we have now), and the second is specified by [dependency-groups]. Extras may be installed with the package-name[extra-name] syntax, while groups are not supposed to be user-facing, are not listed on PyPI, and may be installed with the --group flag.

I propose making "dev" a dependency group in the template and changing CI/setup scripts to use it this way. This will make the extras list cleaner.

https://packaging.python.org/en/latest/specifications/pyproject-toml/#dependencies-optional-dependencies
https://packaging.python.org/en/latest/specifications/dependency-groups/

LSDB at PyPI
Image

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Comienza inspeccionando la plantilla pyproject.toml junto con los scripts de CI y de configuración que instalan las dependencias de desarrollo. Actualiza la plantilla para que las dependencias de desarrollo y otras dependencias no destinadas al usuario utilicen [dependency-groups], y asegúrate de que esos scripts utilicen el mecanismo de grupos; se considera terminado cuando la lista de extras ya no contiene dependencias de desarrollo y la configuración del proyecto generado sigue siendo funcional.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
python
Área
build-system, ci-cd
Tipo de issue
Nueva funcionalidad
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Tranquilo
Claridad
Bastante claro
Aptitud para principiantes
58/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.