🏠ci: conventions mécaniques + tout src/ en anglais#30
Merged
Conversation
Les règles du guide ne valaient que par ma vigilance : aucune n'était vérifiée.
Six contrĂ´les les rendent non contournables.
- Symfony hors de src/Bridge/ : la librairie doit rester utilisable sans
Symfony, c'est la raison d'ĂŞtre d'un type: library ;
- GD dans src/ : il fabrique et valide dans les tests, jamais n'extrait — le
package ne dépend d'aucune extension ;
- declare(strict_types=1) partout ;
- unpack('S'/'L') : ils suivent l'endianness du CPU et rendraient le parsing
dépendant de la machine ;
- commentaires français dans src/ : le package est public, son PHPDoc est sa
documentation d'API ;
- RAW commité : les EXIF (numéro de série, GPS) resteraient dans l'historique
git Ă vie.
Chaque contrôle a été exécuté localement avant d'être ajouté : le sixième
détectait bien les 20 fichiers à traduire.
Le package est public : son PHPDoc est sa documentation d'API, et ses messages d'exception sont ce que voit un utilisateur non francophone quand la librairie échoue. Des commentaires français y excluent les contributeurs. Traduits : les 728 lignes de commentaires des 20 fichiers de src/, et les 12 messages d'exception avec les 7 assertions de test correspondantes. Le sens et la précision sont préservés — ces commentaires portent des découvertes coûteuses issues de la rétro-ingénierie de fichiers réels (les 8 octets propriétaires avant PRVW dans un CR3, le JPEG lossless que Canon marque Compression = 6, le MakerNote de 75 Ko d'un 5D de 2005). Aucune n'a été résumée. « façade » devient « facade » : c'est le nom du pattern, et la graphie usuelle en contexte technique. CLAUDE.md, les skills et .claude/ restent en français : ils sont locaux et git-ignorés, ils ne concernent pas les utilisateurs du package.
…irmer La liste des échecs connus était affirmative : elle n'expliquait ni comment on l'a vérifié, ni pourquoi ces modèles n'ont pas de preview. De quoi passer pour arbitraire. Elle donne désormais la commande de vérification — grep -c $'\xff\xd8\xff' rend 0, pas un seul marqueur JPEG dans le fichier entier — et les deux raisons réelles : les boîtiers les plus anciens précèdent la convention (un D1H de 2001 stocke une vignette RGB brute, embarquer un JPEG n'était pas encore l'usage), et les compacts n'ont jamais eu de mode RAW (leurs DNG viennent de CHDK, un firmware alternatif). Il n'y a rien à extraire dans ces fichiers : lever est correct, rendre quelque chose reviendrait à l'inventer.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Trois choses : un job CI qui applique CONTRIBUTING.md, la traduction complète de
src/, et la justification des modèles sans preview.1. Les règles deviennent mécaniques
CONTRIBUTING.mddocumentait des règles que rien ne vérifiait — elles reposaient sur ma vigilance seule. Six contrôles, quelques secondes de CI :Symfony\horssrc/Bridge/src/declare(strict_types=1)partoutunpack('S'/'L')src/Chacun a été exécuté localement avant d'être ajouté — le sixième détectait bien les 20 fichiers à traduire, preuve qu'il n'est pas décoratif.
2. Tout
src/en anglaisLe PHPDoc est la documentation d'API d'un package Packagist, et les messages d'exception sont ce qu'un utilisateur non francophone voit quand la librairie échoue :
Traduits : 728 lignes de commentaires sur 20 fichiers, 12 messages d'exception, 7 assertions de test.
Le sens est préservé — ces commentaires portent des découvertes coûteuses (les 8 octets propriétaires avant
PRVW, le JPEG lossless marquéCompression = 6par Canon, leMakerNotede 75 Ko d'un 5D de 2005). Aucune n'a été résumée.CLAUDE.mdet.claude/restent en français : locaux, git-ignorés, ils ne concernent pas les utilisateurs.3. Les échecs justifiés, pas affirmés
La liste des modèles sans preview était affirmative. Elle donne maintenant la commande de vérification :
Et les deux raisons réelles : les boîtiers anciens précèdent la convention (un D1H de 2001 stocke une vignette RGB brute), les compacts n'ont jamais eu de mode RAW (leurs DNG viennent de CHDK, un firmware alternatif). Il n'y a rien à extraire — lever est correct, rendre quelque chose reviendrait à l'inventer.