Verify bundled deps using CI
Personne n'a encore pris cette issue.
- Langage dominant
- C
- Étoiles
- 40.4k
- Forks
- 8.1k
- Merge moyen
- 2 j 13 h
- PR mergées (30 j)
- 96
Description
Description
I am the author of https://github.com/php/php-src/blob/7db647dd99/.github/actions/verify-generated-files/action.yml and I would be happy if this integrity concept can be extended also to all extenal/bundled deps like PCRE [1], Unicode tables [2] etc.
The expected behaviour is zero changes after the update is run. This will prevent hiding bad code and prevent human mistakes.
- [1] PCRE2 https://github.com/php/php-src/pull/14498
- [2] Unicode tables https://github.com/php/php-src/pull/7502#issue-1000424830 /w update steps described
- [3] XSSE https://github.com/php/php-src/pull/18413
- [4] uriparser https://github.com/php/php-src/pull/19711
- [5] IR https://github.com/php/php-src/commit/2ff7a18bdc8e1ce184c8df312fe87a178f775761
- [6] timelib https://github.com/php/php-src/commit/a0329dbab009d984926f8817359ba5d83195d960 - https://github.com/derickr/timelib/tags
- [7] xxHash https://github.com/php/php-src/pull/20064
- [8] https://github.com/php/php-src/tree/master/ext/fileinfo/libmagic
- [9] https://github.com/php/php-src/tree/master/ext/standard/libavifinfo https://github.com/php/php-src/pull/21250
- [10] https://github.com/php/php-src/tree/master/ext/mbstring/libmbfl
- [11] https://github.com/php/php-src/tree/master/ext/bcmath/libbcmath
- [12] https://github.com/php/php-src/tree/master/ext/dba 3x libs
- [13] https://github.com/php/php-src/tree/master/ext/hash/murmur (impossible - https://github.com/php/php-src/pull/6059#issuecomment-692012970)
- [14] https://github.com/php/php-src/tree/master/ext/hash/sha3
- [15] https://github.com/php/php-src/tree/master/ext/lexbor/lexbor
- [16] https://github.com/php/php-src/tree/master/ext/dom/lexbor
- [17] https://github.com/php/php-src/tree/master/ext/gd/libgd
This was probably not done yet to not slow down the testing pipelines. The solution is to run the integrity verification of the external sources as a separate workflow only when the source files are changed and always in nightly.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par .github/actions/verify-generated-files/action.yml et examinez les répertoires de dépendances intégrées non cochés listés dans l’issue, notamment IR, libmagic, libavifinfo, libmbfl, libbcmath et libgd. Définissez le comportement du workflow distinct pour les sources modifiées et les exécutions nocturnes, puis vérifiez que chaque mise à jour applicable ne produise aucune modification après son contrôle d’intégrité.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- c, github-actions
- Domaine
- build-system, ci-cd, security
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100