microsoft / TypeScript

TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
https://www.typescriptlang.org
Apache License 2.0
100.74k stars 12.46k forks source link

[ServerErrors][JavaScript] 5.2.0-dev.20230625 #54772

Closed typescript-bot closed 1 year ago

typescript-bot commented 1 year ago

The following errors were reported by 5.2.0-dev.20230625 Pipeline that generated this bug Logs for the pipeline run File that generated the pipeline

This run considered 200 popular TS repos from GH (after skipping the top 0).

Successfully analyzed 192 of 200 visited repos | Outcome | Count | |---------|-------| | Detected interesting changes | 2 | | Detected no interesting changes | 190 | | Unknown failure | 8 |

Investigation Status

Repo Errors Outcome
05dc022b77792efd84491358bf4bf0af 1
5271622eb700e29fec035e476b4712d5 1
typescript-bot commented 1 year ago

Server exited prematurely with code unknown and signal SIGABRT

Server exited prematurely with code unknown and signal SIGABRT

Affected repos

tastejs/todomvc Raw error text: RepoResults2/tastejs.todomvc.rawError.txt in the artifact folder

Last few requests

```json {"seq":4633,"type":"request","command":"definitionAndBoundSpan","arguments":{"file":"@PROJECT_ROOT@/examples/angular-dart/web/main.dart.js","line":19919,"offset":103}} {"seq":4634,"type":"request","command":"completionInfo","arguments":{"file":"@PROJECT_ROOT@/examples/angular-dart/web/main.dart.js","line":19919,"offset":103,"includeExternalModuleExports":false,"triggerKind":1}} {"seq":4635,"type":"request","command":"references","arguments":{"file":"@PROJECT_ROOT@/examples/angular-dart/web/main.dart.js","line":19919,"offset":108}} {"seq":4636,"type":"request","command":"completionInfo","arguments":{"file":"@PROJECT_ROOT@/examples/angular-dart/web/main.dart.js","line":19919,"offset":108,"includeExternalModuleExports":false,"triggerKind":1}} ```

Repro steps

  1. git clone https://github.com/tastejs/todomvc --recurse-submodules
  2. In dir todomvc, run git reset --hard 4e301c7014093505dcf6678c8f97a5e8dee2d250
  3. Install packages (exact steps are below, but it might be easier to follow the repo readme)
    1. In dir todomvc/bower_components/bootstrap, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    2. In dir todomvc/bower_components/webcomponentsjs, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    3. In dir todomvc/examples/angular-dart, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    4. In dir todomvc/examples/angular2_es2015, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    5. In dir todomvc/examples/angular2, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    6. In dir todomvc/examples/angularjs_require, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    7. In dir todomvc/examples/angularjs_require/test, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    8. In dir todomvc/examples/angularjs, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    9. In dir todomvc/examples/aurelia, run npm ci --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    10. In dir todomvc/examples/backbone_marionette, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    11. In dir todomvc/examples/backbone_require, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    12. In dir todomvc/examples/backbone, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    13. In dir todomvc/examples/binding-scala, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    14. In dir todomvc/examples/canjs_require, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    15. In dir todomvc/examples/canjs, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    16. In dir todomvc/examples/closure, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    17. In dir todomvc/examples/cujo, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    18. In dir todomvc/examples/dijon, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    19. In dir todomvc/examples/dojo, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    20. In dir todomvc/examples/duel, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    21. In dir todomvc/examples/elm, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    22. In dir todomvc/examples/emberjs/todomvc, run npm ci --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    23. In dir todomvc/examples/enyo_backbone, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    24. In dir todomvc/examples/exoskeleton, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    25. In dir todomvc/examples/firebase-angular, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    26. In dir todomvc/examples/gwt, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    27. In dir todomvc/examples/jquery, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    28. In dir todomvc/examples/js_of_ocaml, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    29. In dir todomvc/examples/jsblocks, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    30. In dir todomvc/examples/knockback, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    31. In dir todomvc/examples/knockoutjs_require, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    32. In dir todomvc/examples/knockoutjs, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    33. In dir todomvc/examples/kotlin-react, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    34. In dir todomvc/examples/lavaca_require, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    35. In dir todomvc/examples/mithril, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    36. In dir todomvc/examples/polymer, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    37. In dir todomvc/examples/ractive, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    38. In dir todomvc/examples/react-alt, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    39. In dir todomvc/examples/react-backbone, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    40. In dir todomvc/examples/react-hooks, run npm ci --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    41. In dir todomvc/examples/react, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    42. In dir todomvc/examples/reagent, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    43. In dir todomvc/examples/riotjs, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    44. In dir todomvc/examples/scalajs-react, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    45. In dir todomvc/examples/typescript-angular, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    46. In dir todomvc/examples/typescript-backbone, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    47. In dir todomvc/examples/typescript-react, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    48. In dir todomvc/examples/vanilla-es6, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    49. In dir todomvc/examples/vanillajs, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    50. In dir todomvc/examples/vue, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    51. In dir todomvc, run npm ci --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    52. In dir todomvc/tasks, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    53. In dir todomvc/tests, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
    54. In dir todomvc/tooling, run npm install --prefer-offline --no-audit --no-progress --legacy-peer-deps --ignore-scripts -q
  4. Back in the initial folder, download RepoResults2/tastejs.todomvc.replay.txt from the artifact folder
  5. npm install --no-save @typescript/server-replay
  6. npx tsreplay ./todomvc ./tastejs.todomvc.replay.txt path/to/tsserver.js
  7. npx tsreplay --help to learn about helpful switches for debugging, logging, etc

typescript-bot commented 1 year ago

Error: Debug Failure. False expression: Token end is child end

Req #5676 - completionInfo
    at processChildNode (/typescript-5.2.0-dev.20230625/lib/tsserver.js:170513:17)
    at /typescript-5.2.0-dev.20230625/lib/tsserver.js:170444:9
    at visitNode2 (/typescript-5.2.0-dev.20230625/lib/tsserver.js:30061:18)
    at forEachChildInPropertySignature (/typescript-5.2.0-dev.20230625/lib/tsserver.js:30117:59)
    at forEachChild (/typescript-5.2.0-dev.20230625/lib/tsserver.js:30578:35)
    at processNode (/typescript-5.2.0-dev.20230625/lib/tsserver.js:170441:5)
    at processChildNode (/typescript-5.2.0-dev.20230625/lib/tsserver.js:170520:7)
    at processChildNodes (/typescript-5.2.0-dev.20230625/lib/tsserver.js:170563:32)
    at /typescript-5.2.0-dev.20230625/lib/tsserver.js:170457:9
    at visitNodes (/typescript-5.2.0-dev.20230625/lib/tsserver.js:30066:14)
    at forEachChildInTypeLiteral (/typescript-5.2.0-dev.20230625/lib/tsserver.js:30176:12)
    at forEachChild (/typescript-5.2.0-dev.20230625/lib/tsserver.js:30578:35)
    at processNode (/typescript-5.2.0-dev.20230625/lib/tsserver.js:170441:5)
    at processChildNode (/typescript-5.2.0-dev.20230625/lib/tsserver.js:170520:7)
    at /typescript-5.2.0-dev.20230625/lib/tsserver.js:170444:9
    at visitNode2 (/typescript-5.2.0-dev.20230625/lib/tsserver.js:30061:18)
    at forEachChildInPropertyDeclaration (/typescript-5.2.0-dev.20230625/lib/tsserver.js:30114:179)
    at forEachChild (/typescript-5.2.0-dev.20230625/lib/tsserver.js:30578:35)
    at processNode (/typescript-5.2.0-dev.20230625/lib/tsserver.js:170441:5)
    at formatSpanWorker (/typescript-5.2.0-dev.20230625/lib/tsserver.js:170243:5)
    at /typescript-5.2.0-dev.20230625/lib/tsserver.js:170183:105
    at getFormattingScanner (/typescript-5.2.0-dev.20230625/lib/tsserver.js:169001:15)
    at Object.formatNodeGivenIndentation (/typescript-5.2.0-dev.20230625/lib/tsserver.js:170183:10)
    at /typescript-5.2.0-dev.20230625/lib/tsserver.js:158008:36
    at flatMap (/typescript-5.2.0-dev.20230625/lib/tsserver.js:2596:17)
    at Object.printAndFormatSnippetList (/typescript-5.2.0-dev.20230625/lib/tsserver.js:158006:21)
    at getEntryForMemberCompletion (/typescript-5.2.0-dev.20230625/lib/tsserver.js:157771:28)
    at createCompletionEntry (/typescript-5.2.0-dev.20230625/lib/tsserver.js:157602:35)
    at getCompletionEntriesFromSymbols (/typescript-5.2.0-dev.20230625/lib/tsserver.js:158177:19)
    at completionInfoFromData (/typescript-5.2.0-dev.20230625/lib/tsserver.js:157265:23)
    at Object.getCompletionsAtPosition (/typescript-5.2.0-dev.20230625/lib/tsserver.js:156807:24)
    at Object.getCompletionsAtPosition2 [as getCompletionsAtPosition] (/typescript-5.2.0-dev.20230625/lib/tsserver.js:143798:35)
    at IOSession.getCompletions (/typescript-5.2.0-dev.20230625/lib/tsserver.js:183570:54)
    at completionInfo (/typescript-5.2.0-dev.20230625/lib/tsserver.js:181983:43)
    at /typescript-5.2.0-dev.20230625/lib/tsserver.js:184346:69
    at IOSession.executeWithRequestId (/typescript-5.2.0-dev.20230625/lib/tsserver.js:184338:14)
    at IOSession.executeCommand (/typescript-5.2.0-dev.20230625/lib/tsserver.js:184346:29)
    at IOSession.onMessage (/typescript-5.2.0-dev.20230625/lib/tsserver.js:184388:51)
    at Interface.<anonymous> (/typescript-5.2.0-dev.20230625/lib/tsserver.js:185945:14)

Affected repos

dimsemenov/PhotoSwipe Raw error text: RepoResults4/dimsemenov.PhotoSwipe.rawError.txt in the artifact folder

Last few requests

```json {"seq":5673,"type":"request","command":"completionInfo","arguments":{"file":"@PROJECT_ROOT@/dist/types/core/base.d.ts","line":19,"offset":8,"includeExternalModuleExports":false,"triggerKind":1}} {"seq":5674,"type":"request","command":"completionEntryDetails","arguments":{"file":"@PROJECT_ROOT@/dist/types/core/base.d.ts","line":19,"offset":8,"entryNames":["@abstract"]}} {"seq":5675,"type":"request","command":"definitionAndBoundSpan","arguments":{"file":"@PROJECT_ROOT@/dist/types/core/base.d.ts","line":20,"offset":8}} {"seq":5676,"type":"request","command":"completionInfo","arguments":{"file":"@PROJECT_ROOT@/dist/types/core/base.d.ts","line":23,"offset":1,"includeExternalModuleExports":false,"triggerKind":1}} ```

Repro steps

  1. git clone https://github.com/dimsemenov/PhotoSwipe --recurse-submodules
  2. In dir PhotoSwipe, run git reset --hard ac0188be13d3a1b4f80796fe7fed59b89bd41da8
  3. Back in the initial folder, download RepoResults4/dimsemenov.PhotoSwipe.replay.txt from the artifact folder
  4. npm install --no-save @typescript/server-replay
  5. npx tsreplay ./PhotoSwipe ./dimsemenov.PhotoSwipe.replay.txt path/to/tsserver.js
  6. npx tsreplay --help to learn about helpful switches for debugging, logging, etc