validate
Synopsis
Section intitulée « Synopsis »gapline validate [-f PATH] [--format FORMAT] [-o PATH] [--min-severity LEVEL] [--disable-rule RULE_ID...]Description
Section intitulée « Description »validate applique toutes les règles enregistrées dans le build à un flux GTFS et affiche les anomalies groupées par sévérité. C’est le point d’entrée principal des pipelines CI et des workflows de nettoyage.
Si --feed est omis, gapline se rabat sur la clé [default] feed du plus proche gapline.toml. Idem pour --format et --output.
Les anomalies sont produites dans cinq formats : texte terminal coloré (défaut), JSON, CSV, XML, ou rapport HTML auto-contenu. Le processus sort non nul dès qu’une anomalie ERROR est présente.
| Flag | Court | Valeur | Description |
|---|---|---|---|
--feed | -f | PATH | Chemin vers le flux GTFS (.zip ou répertoire décompressé). Optionnel si [default] feed est défini dans un fichier de config. |
--format | FORMAT | Format de sortie : text, json, csv, xml, html. Défaut text. | |
--output | -o | PATH | Écrit le rapport vers ce chemin au lieu de stdout. |
--min-severity | LEVEL | Filtre les anomalies en dessous de ce niveau. Une de error, warning, info. Affecte listing et compteurs du résumé. | |
--disable-rule | RULE_ID | Désactive une ou plusieurs règles de validation. Accepte plusieurs IDs après un seul flag. S’ajoute à [validation] disabled_rules. |
Les flags globaux sont listés sur référence / flags globaux.
Pendant la validation, gapline stream des barres de progression par groupe pour les sept stages. À la fin, un bloc de résumé est ajouté avec les compteurs totaux et un statut PASS/FAIL.
Sans -o, chaque anomalie est affichée inline au-dessus du résumé, précédée de son label de sévérité :
[ERROR] fk_violation — stop_id "BAD_STOP" not found in stops.txt — stop_times.txt:14203 — stop_id = BAD_STOP[WARNING] duplicate_route_short_name — two routes share short_name "747" — routes.txt:58 — route_short_name = 747[INFO] missing_shape — trip has no shape_id — trips.txt:1029 — shape_id =Avec -o, les anomalies vont dans le fichier et la console n’affiche que les barres de progression et le résumé :
$ gapline validate -f stm.zip -o output.txtFile Structure [██████████████████████████████] 14/14CSV Formatting [██████████████████████████████] 2/2→ Feed loaded: 847,392 rows in 14 filesThird-Party Validators [██████████████████████████████] 6/6Field Validation [██████████████████████████████] 13/13Key & Reference Validation [██████████████████████████████] 24/24Semantic & Logic [██████████████████████████████] 24/24Best Practices [██████████████████████████████] 9/9
===================================Summary===================================45 Errors — 94912 Warnings — 177074 InfosStatus: FAILExemples
Section intitulée « Exemples »Valider un flux
Section intitulée « Valider un flux »gapline validate -f gtfs.zipProduire un rapport JSON pour la CI
Section intitulée « Produire un rapport JSON pour la CI »gapline validate -f gtfs.zip --format json -o report.jsonRapport HTML pour partie prenante
Section intitulée « Rapport HTML pour partie prenante »gapline validate -f gtfs.zip --format html -o report.htmlLe fichier HTML est auto-contenu (CSS et JS inlinés). Ouvrez-le par double-clic.
Échouer uniquement sur les erreurs
Section intitulée « Échouer uniquement sur les erreurs »gapline validate -f gtfs.zip --min-severity errorLes avertissements et infos sont retirés du listing et des compteurs.
Désactiver des règles bruyantes
Section intitulée « Désactiver des règles bruyantes »gapline validate -f gtfs.zip --disable-rule speed_validation coords_out_of_rangeListez chaque ID enregistré avec gapline rules list. L’autocomplétion shell suggère aussi les IDs dynamiquement.
Lire le flux depuis la config
Section intitulée « Lire le flux depuis la config »[default]feed = "./data/gtfs.zip"format = "json"
[validation]min_severity = "warning"disabled_rules = ["speed_validation"]gapline validate -o report.jsonCodes de retour
Section intitulée « Codes de retour »| Code | Signification |
|---|---|
0 | Validation terminée. Aucune anomalie au-dessus du seuil de sévérité effectif. |
1 | Validation terminée mais le flux a des anomalies ERROR (ou toute anomalie après --min-severity). |
2 | Erreur de configuration (gapline.toml malformé, clé inconnue, seuil invalide). |
3 | Erreur I/O (flux introuvable, chemin de sortie non-écrivable). |
Voir concepts / codes de retour pour la table complète.
Voir aussi
Section intitulée « Voir aussi »- Formats de sortie — schéma JSON, colonnes CSV, racine XML.
- Règles de validation — catalogue complet des règles enregistrées.
- Guides / Valider des flux — workflow de bout en bout.
- Concepts / Sévérités — distinction ERROR, WARNING, INFO.