Multi-language scanners and auditors should declare the languages they read

Aperta
#143 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
68/100
Tipo di issue
Refactoring
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
github, python
Ambito
testing, tooling

Direzione di ricerca

Start by reading the shared modules that define multi_language_scanners and multi_ecosystem_audits, then inspect the profiles that currently filter tools by language name. The issue also points to tests/checks/test_security_scanning.py::test_passes_with_codeql_in_every_layout; use that test to understand the current exclusions. Done means tool language or lockfile support is declared centrally, profiles select compatible tools from that data, and the test derives CodeQL exclusions from it.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

multi_language_scanners(languages) returns CodeQL, GitLab SAST and semgrep for whatever languages a profile passes, and multi_ecosystem_audits returns osv-scanner, trivy, snyk and GitLab Dependency Scanning likewise. But the tools do not read every language: CodeQL reads none of PHP, HCL, Elixir, Erlang, Scala or Dart; osv-scanner and trivy read no sbt build; snyk reads no pubspec.lock. So each profile filters the lists by name (php, terraform, beam, scala, dart all do), and tests/checks/test_security_scanning.py::test_passes_with_codeql_in_every_layout keeps a hand-written set of the languages CodeQL does not read.

Better: the shared modules know what each tool reads (CODEQL_LANGUAGES = {"C", "C++", "Go", "Java", ...}, OSV_LOCKFILES per ecosystem), and a profile asks for multi_language_scanners(languages) and gets only the tools that read one of them. The CodeQL layout test then derives its exclusions from the same table.

🤖 Generated with Claude Code

https://claude.ai/code/session_01ByTXNqDWdM7HzezrFtEvQt

Lingua principale
Python
Stelle
4
Fork
1
Merge medio
10h 41m
PR unite (30g)
79

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di cpp-best-practices/project_validator

Tutte le issue di cpp-best-practices/project_validator

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.