Azure / Azure/azure-sdk-for-python
Add per-package `coverage` enforcement mechanism
- Vorherrschende Sprache
- Python
- Sterne
- 5.6k
- Forks
- 3.4k
- Ø Merge
- 2 T.
- Gemergte PRs (30 T.)
- 217
Beschreibung
@pdhotems has requested that we enforce a minimum code coverage number, below which we will deny the pullrequest.
I didn't receive any specific feedback on the feature itself. I think the way I'd _want_ this to work is to offer a `pyproject.toml` customization that will enable this behavior. That way nobody will be surprised.
Here is a section of the `azure-ai-ml` `pyproject.toml`
```toml
# existing config
[tool.azure-sdk-build]
mypy = true
pyright = false
type_check_samples = false
pylint = true
mindependency = false
latestdependency = false
black = true
# new keys
enforce_coverage = true
coverage_limit = 0.3 # the check will be <=
```
Where the overall coverage goal comes from `coverage_limit`, and `enforce_coverage` enables this behavior. Opt-in to start.
Beitragsleitfaden
Rechercherichtung
Beginne damit zu ermitteln, wie die Einstellungen in azure-ai-ml pyproject.toml [tool.azure-sdk-build] gelesen werden und wo Pull-Request-Prüfungen die Abdeckung berechnen. Definiere das Opt-in-Verhalten für enforce_coverage und coverage_limit, einschließlich dessen, was passiert, wenn die Abdeckung auf oder unter dem konfigurierten Limit liegt, und überprüfe anschließend das Verhalten mit den vorhandenen Prüf-Tests des Repositorys.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- build-system, ci-cd, testing
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 30/100