Go extractor does not support build-mode: none, preventing overlay/incremental analysis on PRs
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 45/100
Direzione di ricerca
Inizia dalla gestione della modalità di build dell’estrattore Go e dall’opzione buildless indicata nell’issue; esamina codeql-extractor.yml per individuare le opzioni dichiarate, inclusa trap.cache.*. Riproduci il problema con build-mode: none e confronta il comportamento dell’estrazione con il workaround esistente. Il lavoro è completato quando Go accetta la modalità e l’estrazione overlay o incrementale funziona senza queste variabili d’ambiente.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem
The Go extractor (CodeQL CLI 2.25.1) does not support build-mode: none:
A fatal error occurred: Go does not support the none build mode.
Please try using one of the following build modes instead: autobuild, manual.
This means Go cannot benefit from overlay/incremental analysis on pull requests. JavaScript gets this automatically — in our monorepo we see Overlay filter removed 4311 out of 4312 files from extraction on JS PRs, reducing a full extraction to just the changed files. Go still does a full extraction of every package on every PR (~2.5 min for autobuild + ~1.5 min for analysis in a large monorepo).
Current workaround
We use legacy env var hacks to skip the actual go build:
env:
CODEQL_EXTRACTOR_GO_FAST_PACKAGE_INFO: y
CODEQL_EXTRACTOR_GO_BUILD_COMMAND: false
This avoids compilation but still runs full type extraction for every Go package on every PR.
Expected behavior
Setting build-mode: none should work for Go, enabling overlay/incremental analysis on PRs (as it already does for JavaScript/TypeScript). The Go extractor already has a buildless/standalone extraction path (DEPRECATED: Use --build-mode none instead appears in the extractor options for the buildless flag), so the extraction capability exists — it just isn't wired up to accept build-mode: none.
Additional context
- We also noticed that Go's extractor does not declare
trap.cache.*options incodeql-extractor.yml, so TRAP caching is also unavailable for Go. - The v3→v4 action upgrade enabled overlay for JS automatically, but there's no path to get the same benefit for Go.
- codeql-action v4.35.1, CodeQL CLI 2.25.1
- Lingua principale
- TypeScript
- Stelle
- 1.6k
- Fork
- 493
- Merge medio
- 1g 13h
- PR unite (30g)
- 44
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di github/codeql-action
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
github/codeql-action#4052 · 4 commenti ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
github/codeql-action#4078 · 1 commento ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
github/codeql-action#4008 · 9 commenti ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 52/100
github/codeql-action#3978 · 4 commenti · 1 reazione ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
github/codeql-action#3915 · 6 commenti · 3 reazioni ·
Tutte le issue di github/codeql-action
Issue simili
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
dennys-bd/agent-hive#184 ·
-
Add: hunch Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
AbdelStark/awesome-typesafe#104 ·
-
ai-observability bug team/ai-observability
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
vicharanashala/fln#563 ·