bazel-contrib / bazel-contrib/rules_python

Allow customized coveragerc for Python coverage

Abierto
#1,434 8 comentarios 7 reacciones 0 asignados Ver en GitHub
type: feature request untriaged
Lenguaje dominante
Starlark
Estrellas
688
Forks
721
Merge medio
15 h 7 min
PR fusionados (30 d)
76

Descripción

### Description of the feature request:

For python coverage collection, `.coveragerc` is hardcoded in https://github.com/bazelbuild/bazel/blame/d435c6dd6e977a5c3ea1bc726557a9321948a317/tools/python/python_bootstrap_template.txt#L393-L397. To provide configurability, we'd like to introduce custom `.coveragerc` to set configurations including https://coverage.readthedocs.io/en/stable/excluding.html#advanced-exclusion.

### Which category does this issue belong to?

Configurability, Python Rules

### What underlying problem are you trying to solve with this feature?

Allow coverage configurations. In particular, we're interested in excluding import statements being collected as executable lines in coverage reports.

### Which operating system are you running Bazel on?

macOS, Linux

### What is the output of `bazel info release`?

release 6.3.0

### If `bazel info release` returns `development version` or `(@non-git)`, tell us how you built Bazel.

_No response_

### What's the output of `git remote get-url origin; git rev-parse master; git rev-parse HEAD` ?

_No response_

### Have you found anything relevant by searching the web?

_No response_

### Any other information, logs, or outputs that you want to share?

_No response_

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Start by reading tools/python/python_bootstrap_template.txt around lines 393-397, where the .coveragerc path is hardcoded, and trace how Python coverage is collected on macOS and Linux. Done means users can provide a custom .coveragerc and configure coverage exclusions, including import statements, without the default behavior becoming unusable.

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

Evaluación

Stack tecnológico
python
Área
build-system
Tipo de issue
Nueva funcionalidad
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
45/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.