-
Notifications
You must be signed in to change notification settings - Fork 31
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Consolidation BNLC : détecte les erreurs lors du décodage d'un CSV #3586
Consolidation BNLC : détecte les erreurs lors du décodage d'un CSV #3586
Conversation
Je suis tombé sur un problème avec csv dans mon premier commit, ça m'a pris du temps de remonter le problème beatrichartz/csv#125 |
defp validator_unavailable?(validation_errors) do | ||
validation_errors | ||
|> Enum.filter(&match?({:validator_unavailable_error, _, _}, &1)) | ||
|> Enum.any?() | ||
end |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
C'est du boy scout ceci et le renommage de :validation_error
vers :validator_unavailable_error
@AurelienC Avec ce changement tu pourras conserver Châlon dans |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ça me semble bien à part une micro typo dans un commentaire et une question de nommage.
Si je comprends bien, vu ton commentaire sur CSV.decode!, à la base, tu voulais gérer ça directement dans consolidate_resources (la partie append other valid resources) ? Ou pas ? En tout cas ça fait deux passes de décodage de CSV des resources d’origine, une pour vérifier la bonne conformité, l’autre pour append au fichier consolidé, donc ça rajoute un peu de temps de traitement, mais j’imagine que c’est mineur et qu’il n’y a pas de solution en une passe ?
2ad330c
to
a596594
Compare
@vdegove Merci pour ta review, j'ai traité tes commentaires !
Non je voulais traiter avant transport-site/apps/transport/lib/jobs/consolidate_bnlc_job.ex Lines 66 to 76 in 54bc471
En fait ce n'était pas prévu que cette erreur arrive. Aurélien et moi avons été surpris qu'une telle erreur (unescaped double quotes in a value) passe le validateur TableSchema et on a eu un crash inattendu dans Je pense qu'il est possible d'avoir un seul décodage, mais pas sûr que ça vaille le coup du refactor car :
|
Traite le problème détaillé ici #3419 (comment)
Certains fichiers CSV peuvent être invalides car mal encodés, le cas vu était la présence d'un
"
au sein d'un champ sans être échappé.