Clause
← Toute la documentation

L'original anglais a changé depuis cette traduction ; certaines parties peuvent donc être obsolètes. Lire en anglais

Traduit de l'original anglais · 1e3a39c8-dirty · 2026-10-26

Référence des sources Erlang/OTP

Clause suit la branche officielle maint-29. La révision épinglée (pin), vérifiée, se trouve dans references/otp-pin.cmake :

references/otp est un checkout ignoré par Git. Les compilations et tests normaux utilisent des goldens appartenant au projet et n'ont besoin ni du checkout ni d'un OTP installé. La configuration et les tests ne récupèrent ni n'avancent jamais la référence. Les audits en direct sont optionnels, avec -DCLAUSE_OTP_AUDITS=ON ; voir régénération des fixtures.

Les sources d'OTP, les utilitaires copiés et les en-têtes générés par OTP n'entrent jamais dans Git. Les entrées de test commitées sont écrites localement ; les goldens commités sont des observations de ces entrées. Voir validation.

Procédure de mise à jour

À exécuter au début de tout travail dépendant d'OTP.

  1. Vérifier git -C references/otp status --short et préserver le travail local. Récupérer : git -C references/otp fetch https://github.com/erlang/otp.git refs/heads/maint-29:refs/remotes/origin/maint-29. Examiner git -C references/otp log -1 origin/maint-29 et les changements depuis le pin, en particulier la grammaire, le scanner, le préprocesseur et les entrées du corpus.
  2. Avancer en fast-forward la branche locale propre : git merge --ff-only origin/maint-29 (première installation : git switch --create maint-29 --track origin/maint-29). Utiliser des octets de checkout en LF (core.autocrlf=false) pour que les sommes de contrôle correspondent sur chaque hôte ; sur un checkout Windows existant, ne normaliser que les fichiers texte listés dans le manifeste et erl_parse.yrl, et laisser inchangées les fixtures binaires amont.
  3. Générer l'en-tête du compilateur à partir de la même révision (depuis la racine du projet) : perl references/otp/erts/emulator/utils/beam_makeops -compiler -outdir references/otp/lib/compiler/src references/otp/lib/compiler/src/genop.tab. Sous Windows, ne normaliser en LF que le fichier généré beam_opcodes.hrl.
  4. Mettre à jour le pin et vérifier chaque chemin de tests/fixtures/parser/phase6/otp.tsv. Ne rafraîchir les empreintes qu'après avoir examiné de vrais changements amont. Si erl_parse.yrl change, examiner tests/fixtures/parser/grammar.tsv, ses fixtures et phase6/coverage.tsv ; chaque production ordinaire a besoin d'un témoin mesuré.
  5. Configurer avec CLAUSE_OTP_AUDITS=ON et CLAUSE_OTP_SOURCE_ROOT pointant vers le checkout. Exécuter les tests d'audit et tests/compiler/patternmatch/regenerate.py --corpus all --check. Consigner la révision et les résultats ci-dessous ; signaler toute dérive au lieu de régénérer pour la masquer.

Historique du pin

Les enregistrements historiques conservent la révision sur laquelle ils ont été faits.

DateÉvénementRévision
2026-09-19Validation du parseur contre le tag OTP 29.1751f87b703fe5948607d08e82599ce644b772e76
2026-09-28Passage à maint-29 ; grammaire et dix fichiers du corpus identiques21776803ecd11f5fa948732c0ec66b8f325dedfc
2026-10-01 – 10-03Récupéré à nouveau avant chaque étape motifs/guards ; inchangéidentique
2026-10-03Plan 11 step 1 : 14 tests d'audit réussis, 19 corpus reproduitsidentique
2026-10-14Actualisé vers OTP 29.1.2 : empreintes de la grammaire, du scanner, du préprocesseur et de phase6/otp.tsv inchangées (genop.tab : commentaire seulement) ; 17 tests d'audit réussis et 19 corpus reproduits avec l'oracle 29.1.1 ; révision enregistrée par les goldens d'exécutables, de lint, de programmes et d'affichage mise à jour (sorties inchangées, external_terms garde sa sortie de map dépendant de l'ordre des atomes)d199a49a01a2079afb6f2c5c9ae047cd4555e68d
2026-10-24Actualisé ; seuls les workflows .github/ ont changé en amont (32 fichiers), donc les entrées de la grammaire, du scanner, du préprocesseur, du corpus et de phase6/otp.tsv sont identiques octet pour octet et les audits n’ont pas été relancés ; révision enregistrée par les goldens mise à jour9710673e5916164dff9616327df7de39f1aa75a9