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.* }}

Offen
#250 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
62/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
github-actions, python
Bereich
devtools

Rechercherichtung

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.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

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

Vorherrschende Sprache
Python
Sterne
4
Forks
1
Ø Merge
10 Std. 41 Min.
Gemergte PRs (30 T.)
79

Entwicklungsumgebung

Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus cpp-best-practices/project_validator

Alle Issues in cpp-best-practices/project_validator

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.