github / github/codeql-cli-binaries

typescript-parser-wrapper fails for tsconfig.json path check on Windows

Ouverte
#163 10 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
CLI
Langage dominant
Aucune donnée de langage
Étoiles
1k
Forks
184
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

When javascript is scanned during finalize typescript-parser-wrapper can throw with tsconfig.json path mismatch.
This particular situation was found when more than javascript was detected and was on a Windows agent.

```log
D:\a\_work\_temp\codeql3000\github\codeql\codeql.exe database trace-command --index-traceless-dbs --db-cluster D:\a\_work\_temp\codeql3000\d
Running 2 commands for 3 databases:
- D:\a\_work\_temp\codeql3000\d\cpp
- D:\a\_work\_temp\codeql3000\d\javascript
- D:\a\_work\_temp\codeql3000\d\python
Running command in D:\a\_work\1\s: [D:\a\_work\_temp\codeql3000\github\codeql\javascript\tools\autobuild.cmd]
[2023-04-25 22:24:54] [build-stdout] Single-threaded extraction.
[2023-04-25 22:24:54] [build-stdout] packages\domain\interop\package.json: Main file set to packages\domain\interop\src\index.ts
[2023-04-25 22:24:54] [build-stdout] packages\domain\shf_validator\package.json: Main file not found
[2023-04-25 22:24:54] [build-stdout] Found Node.js at: node
[2023-04-25 22:24:54] [build-stdout] Found Node.js version: v16.15.1
[2023-04-25 22:24:54] [build-stdout] Opening project D:\a\_work\1\s\build\tsconfig.json
[2023-04-25 22:24:54] [build-stdout] Memory for TypeScript process: 2000 MB, and 400 MB reserve
[2023-04-25 22:24:54] [build-stderr] D:\a\_work\_temp\codeql3000\github\codeql\javascript\tools\typescript-parser-wrapper\node_modules\typescript\lib\typescript.js:2572
[2023-04-25 22:24:54] [build-stderr] throw e;
[2023-04-25 22:24:54] [build-stderr] ^
[2023-04-25 22:24:54] [build-stderr] Error: Debug Failure. Expected D:/a/_work/1/s/build/tsconfig.json === D:\a\_work\1\s\build\tsconfig.json.
[2023-04-25 22:24:54] [build-stderr] at attachFileToDiagnostic (D:\a\_work\_temp\codeql3000\github\codeql\javascript\tools\typescript-parser-wrapper\node_modules\typescript\lib\typescript.js:20186:18)
[2023-04-25 22:24:54] [build-stderr] at Object.attachFileToDiagnostics (D:\a\_work\_temp\codeql3000\github\codeql\javascript\tools\typescript-parser-wrapper\node_modules\typescript\lib\typescript.js:20218:42)
[2023-04-25 22:24:54] [build-stderr] at Object.parseJsonText (D:\a\_work\_temp\codeql3000\github\codeql\javascript\tools\typescript-parser-wrapper\node_modules\typescript\lib\typescript.js:32364:46)
[2023-04-25 22:24:54] [build-stderr] at Object.parseJsonText (D:\a\_work\_temp\codeql3000\github\codeql\javascript\tools\typescript-parser-wrapper\node_modules\typescript\lib\typescript.js:32092:23)
[2023-04-25 22:24:54] [build-stderr] at parseConfigFileTextToJson (D:\a\_work\_temp\codeql3000\github\codeql\javascript\tools\typescript-parser-wrapper\node_modules\typescript\lib\typescript.js:41734:33)
[2023-04-25 22:24:54] [build-stderr] at Object.readConfigFile (D:\a\_work\_temp\codeql3000\github\codeql\javascript\tools\typescript-parser-wrapper\node_modules\typescript\lib\typescript.js:41725:48)
[2023-04-25 22:24:54] [build-stderr] at loadTsConfig (D:\a\_work\_temp\codeql3000\github\codeql\javascript\tools\typescript-parser-wrapper\main.js:327:23)
[2023-04-25 22:24:54] [build-stderr] at handleOpenProjectCommand (D:\a\_work\_temp\codeql3000\github\codeql\javascript\tools\typescript-parser-wrapper\main.js:393:14)
[2023-04-25 22:24:54] [build-stderr] at Interface. (D:\a\_work\_temp\codeql3000\github\codeql\javascript\tools\typescript-parser-wrapper\main.js:620:17)
[2023-04-25 22:24:54] [build-stderr] at Interface.emit (node:events:527:28)
[2023-04-25 22:24:55] [build-stderr] at Interface._onLine (node:readline:487:10)
[2023-04-25 22:24:55] [build-stderr] at Interface._normalWrite (node:readline:661:12)
[2023-04-25 22:24:55] [build-stderr] at Socket.ondata (node:readline:269:10)
[2023-04-25 22:24:55] [build-stderr] at Socket.emit (node:events:527:28)
[2023-04-25 22:24:55] [build-stderr] at addChunk (node:internal/streams/readable:315:12)
[2023-04-25 22:24:55] [build-stderr] at readableAddChunk (node:internal/streams/readable:289:9)
[2023-04-25 22:24:55] [build-stderr] at Socket.Readable.push (node:internal/streams/readable:228:10)
[2023-04-25 22:24:55] [build-stderr] at Pipe.onStreamRead (node:internal/stream_base_commons:190:23)
[2023-04-25 22:24:55] [build-stderr] com.semmle.util.exception.CatastrophicError: The TypeScript parser wrapper crashed with exit code 1
[2023-04-25 22:24:55] [ERROR] Spawned process exited abnormally (code 1; tried to run: [D:\a\_work\_temp\codeql3000\github\codeql\tools\win64\tracer.exe, D:\a\_work\_temp\codeql3000\github\codeql\tools\win64\runner.exe, cmd.exe, /C, type, NUL, &&, D:\a\_work\_temp\codeql3000\github\codeql\javascript\tools\autobuild.cmd])
A fatal error occurred: Exit status 1 from command: [D:\a\_work\_temp\codeql3000\github\codeql\tools\win64\runner.exe, cmd.exe, /C, type, NUL, &&, D:\a\_work\_temp\codeql3000\github\codeql\javascript\tools\autobuild.cmd]
```

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Commencez à javascript/tools/typescript-parser-wrapper/main.js:327, dans loadTsConfig, et suivez le chemin open-project depuis handleOpenProjectCommand. Reproduisez l’incompatibilité de tsconfig.json sur un agent Windows lors de l’analyse de plusieurs langages, puis vérifiez que autobuild.cmd se termine sans que le wrapper de l’analyseur ne plante et qu’il gère les chemins signalés de manière cohérente.

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

Évaluation

Stack technique
javascript, node.js, typescript
Domaine
devtools, operating-systems
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
45/100

Recevez les nouvelles issues par e-mail

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