Small message fixes: cxx-extensions prints the example value (c_std=c17) not the fact (c11); raco fmt hint is empty; "4 of 4 actions" for reusable workflows; map job names with ${{ inputs.* }}

Ouverte
#250 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
62/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
github-actions, python
Domaine
devtools

Piste de recherche

Four separate message fixes are bundled here; the C extensions one is the most self-contained. Start in project_validator/ecosystems/c_cpp/extensions.py around lines 85 and 95, where the passed message uses the requirement's example value instead of the found value, and check meson.build's c_std=c11 in the audit repro. Done when a c11 project reports c11 in the PASS message. The Racket hint and the reusable-workflow wording are in other modules and can be split out.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

dbus-broker: "C compiler extensions are disabled with c_std=c17" where the project sets c11 (the requirement's example is printed, not the fact found). Every Racket repo: code-formatting hint consider a CI job that runs with nothing after it (RACO_FMT.can defines only APPLY while the hint asks for CHECK). cloudposse/terraform-null-label: "4 of 4 actions are not pinned … pin each action" for jobs.<id>.uses reusable workflows.

Evidence from the corpus audit

bus1/dbus-broker / cxx-extensions
  • kind: MESSAGE
  • actual: PASS: C compiler extensions are disabled with c_std=c17
  • expected: PASS: ... with c_std=c11 (the project's value). The message prints the requirement's example, not the
    fact found.
  • evidence: meson.build:10-11: default_options: [ / 'c_std=c11',; --facts: "name": "c_std", "value": "c11", "origin": "meson.build:project[8]"; validator project_validator/ecosystems/c_cpp/extensions.py:95
    C_EXTENSIONS = _practice("C", "C", "c_std", r"c\d\w*", "c17") and :85 passed=f"... disabled with {found}".
  • repro: a meson.build with default_options: ['c_std=c11']; expect the message to say c11.
  • confidence: high
all five Racket repos / code-formatting
  • kind: MESSAGE
  • actual: FAIL: CI never runs raco fmt; its formatting is not enforced / consider a CI job that runs (empty hint; identical in typed-racket, koyo, frog, scribble, rebellion)
  • expected: the hint should name the command (raco fmt -i $(git ls-files '*.rkt') then git diff --exit-code): RACO_FMT.can defines only Enforcement.APPLY, while the policy hint asks for Enforcement.CHECK.
  • evidence: project_validator/policy/formatting.py:13-14: def _hint(answer): return f"consider a CI job that runs {alternatives(answer.how(Enforcement.CHECK))}"; project_validator/ecosystems/racket.py RACO_FMT = format_tool(..., can={Enforcement.APPLY: "raco fmt -i $(git ls-files '*.rkt'), with the job failing on git diff --exit-code"}, ...).
  • repro: any Racket repo with CI and no raco fmt.
  • confidence: high
cloudposse/terraform-null-label / action-pinning
  • kind: MESSAGE
  • actual: FAIL: action-pinning: 4 of 4 actions are not pinned to a commit / .github/workflows/branch.yml: cloudposse/.github/.github/workflows/shared-terraform-module.yml@main (pinned to a branch)
  • expected: same status, but these are reusable workflows (jobs.<id>.uses), not actions; the count "4 of 4 actions" and the hint ("pin each action") should say "reusable workflow".
  • evidence: .github/workflows/branch.yml:23-24: terraform-module: / uses: cloudposse/.github/.github/workflows/shared-terraform-module.yml@main.
  • repro: a workflow whose only uses: is a job-level reusable workflow; expect "1 of 1 reusable workflows is pinned to a branch".
  • confidence: medium

Found by the regression-corpus audit (235 real repositories, one or more per ecosystem profile; corpus and expected results in corpus/). Evidence is quoted from the audited checkouts at the commits pinned in corpus/projects.toml; <checkouts>/<owner>__<repo> is such a checkout.

🤖 Generated with Claude Code

https://claude.ai/code/session_01ByTXNqDWdM7HzezrFtEvQt

Langage dominant
Python
Étoiles
4
Forks
1
Merge moyen
10 h 41 min
PR mergées (30 j)
79

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de cpp-best-practices/project_validator

Toutes les issues de cpp-best-practices/project_validator

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.