Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable strictFunctionTypes #49929

Merged
merged 112 commits into from Jan 18, 2023

Conversation

jakebailey
Copy link
Member

@jakebailey jakebailey commented Jul 17, 2022

TODO:

@typescript-bot typescript-bot added Author: Team For Uncommitted Bug PR for untriaged, rejected, closed or missing bug labels Jul 17, 2022
src/compiler/checker.ts Outdated Show resolved Hide resolved
src/compiler/checker.ts Outdated Show resolved Hide resolved
src/compiler/factory/nodeConverters.ts Outdated Show resolved Hide resolved
src/compiler/transformers/classFields.ts Outdated Show resolved Hide resolved
src/server/session.ts Outdated Show resolved Hide resolved
src/tsserver/nodeServer.ts Outdated Show resolved Hide resolved
src/compiler/core.ts Outdated Show resolved Hide resolved
src/compiler/types.ts Outdated Show resolved Hide resolved
@jakebailey jakebailey marked this pull request as ready for review July 18, 2022 20:41
src/compiler/checker.ts Outdated Show resolved Hide resolved
src/compiler/checker.ts Outdated Show resolved Hide resolved
src/compiler/checker.ts Outdated Show resolved Hide resolved
src/compiler/checker.ts Outdated Show resolved Hide resolved
src/compiler/core.ts Outdated Show resolved Hide resolved
src/compiler/core.ts Outdated Show resolved Hide resolved
src/compiler/path.ts Outdated Show resolved Hide resolved
src/compiler/types.ts Outdated Show resolved Hide resolved
src/compiler/visitorPublic.ts Outdated Show resolved Hide resolved
src/compiler/visitorPublic.ts Outdated Show resolved Hide resolved
@sandersn sandersn added this to Not started in PR Backlog Jul 27, 2022
@jakebailey jakebailey marked this pull request as draft July 27, 2022 18:12
@sandersn sandersn moved this from Not started to Waiting on reviewers in PR Backlog Jul 28, 2022
visitNode(node, visitor),
/*visitor*/ undefined,
visitNode(node, visitor, isInitializedVariable),
visitor,
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was the one case where we had an undefined visitor but I wasn't sure what to do. Passing in the visitor here still passes all tests, so, I can't tell if this was intentional or just an oversight.

export function visitNode(
node: Node,
visitor: Visitor | undefined,
test?: (node: Node) => boolean,
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tried making this change; there were a few cases where it wasn't clear what kind of thing was to be returned (sometimes it wasn't used at all, or were return visitNode(node, visitor)), then the 3-4 cases where we use visitNode to do node cloning (and more about the inability to pass a non-type-predicate test downward).

I'm personally still of the opinion that it's worth allowing a fallback that's just Node for cases where the return type doesn't matter or it isn't used. Maybe we could make that overload internal, but it does seem useful in general. Not sure how to evaluate that for existing codebases, though.

@jakebailey
Copy link
Member Author

@typescript-bot test this
@typescript-bot test top100
@typescript-bot user test this
@typescript-bot user test tsserver
@typescript-bot test tsserver top100
@typescript-bot run dt
@typescript-bot perf test this

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jan 13, 2023

Heya @jakebailey, I've started to run the diff-based user code test suite (tsserver) on this PR at 4ff34cb. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jan 13, 2023

Heya @jakebailey, I've started to run the extended test suite on this PR at 4ff34cb. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jan 13, 2023

Heya @jakebailey, I've started to run the diff-based user code test suite on this PR at 4ff34cb. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jan 13, 2023

Heya @jakebailey, I've started to run the parallelized Definitely Typed test suite on this PR at 4ff34cb. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jan 13, 2023

Heya @jakebailey, I've started to run the diff-based top-repos suite (tsserver) on this PR at 4ff34cb. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jan 13, 2023

Heya @jakebailey, I've started to run the diff-based top-repos suite on this PR at 4ff34cb. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jan 13, 2023

Heya @jakebailey, I've started to run the perf test suite on this PR at 4ff34cb. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

@jakebailey Here are the results of running the user test suite comparing main and refs/pull/49929/merge:

Everything looks good!

1 similar comment
@typescript-bot
Copy link
Collaborator

@jakebailey Here are the results of running the user test suite comparing main and refs/pull/49929/merge:

Everything looks good!

@typescript-bot
Copy link
Collaborator

Heya @jakebailey, I've run the RWC suite on this PR - assuming you're on the TS core team, you can view the resulting diff here.

@typescript-bot
Copy link
Collaborator

@jakebailey
The results of the perf run you requested are in!

Here they are:

Compiler

Comparison Report - main..49929
Metric main 49929 Delta Best Worst
Angular - node (v18.10.0, x64)
Memory used 358,856k (± 0.01%) 358,917k (± 0.01%) +61k (+ 0.02%) 358,892k 358,951k
Parse Time 3.94s (± 0.46%) 3.92s (± 0.44%) -0.02s (- 0.44%) 3.89s 3.94s
Bind Time 1.18s (± 0.83%) 1.20s (± 0.53%) +0.01s (+ 1.05%) 1.19s 1.20s
Check Time 8.77s (± 0.87%) 8.81s (± 0.31%) +0.04s (+ 0.46%) 8.77s 8.85s
Emit Time 7.51s (± 0.75%) 7.50s (± 0.69%) -0.01s (- 0.16%) 7.44s 7.59s
Total Time 21.40s (± 0.65%) 21.42s (± 0.28%) +0.02s (+ 0.11%) 21.32s 21.48s
Compiler-Unions - node (v18.10.0, x64)
Memory used 194,933k (± 1.59%) 194,103k (± 1.50%) -830k (- 0.43%) 192,183k 198,027k
Parse Time 1.66s (± 0.55%) 1.64s (± 0.81%) -0.02s (- 1.17%) 1.62s 1.65s
Bind Time 0.81s (± 0.52%) 0.80s (± 0.67%) -0.01s (- 0.68%) 0.80s 0.81s
Check Time 9.65s (± 0.74%) 9.60s (± 1.08%) -0.04s (- 0.45%) 9.48s 9.79s
Emit Time 2.91s (± 5.24%) 2.78s (± 0.79%) 🟩-0.13s (- 4.46%) 2.76s 2.81s
Total Time 15.03s (± 0.90%) 14.83s (± 0.81%) -0.19s (- 1.29%) 14.69s 15.05s
Monaco - node (v18.10.0, x64)
Memory used 345,734k (± 0.02%) 345,733k (± 0.01%) -0k (- 0.00%) 345,710k 345,750k
Parse Time 2.94s (± 0.76%) 2.93s (± 0.79%) -0.01s (- 0.28%) 2.90s 2.97s
Bind Time 1.06s (± 0.55%) 1.06s (± 0.64%) -0.00s (- 0.32%) 1.05s 1.07s
Check Time 7.29s (± 0.53%) 7.28s (± 0.68%) -0.01s (- 0.14%) 7.18s 7.32s
Emit Time 4.30s (± 0.95%) 4.33s (± 1.07%) +0.03s (+ 0.68%) 4.26s 4.38s
Total Time 15.60s (± 0.51%) 15.60s (± 0.46%) +0.00s (+ 0.00%) 15.50s 15.71s
TFS - node (v18.10.0, x64)
Memory used 300,534k (± 0.01%) 300,547k (± 0.01%) +13k (+ 0.00%) 300,525k 300,571k
Parse Time 2.26s (± 1.74%) 2.24s (± 1.09%) -0.02s (- 0.94%) 2.21s 2.28s
Bind Time 1.19s (± 0.78%) 1.19s (± 1.37%) +0.01s (+ 0.51%) 1.18s 1.22s
Check Time 6.86s (± 0.36%) 6.86s (± 0.57%) +0.01s (+ 0.09%) 6.81s 6.92s
Emit Time 3.98s (± 1.27%) 3.95s (± 0.24%) -0.02s (- 0.56%) 3.94s 3.97s
Total Time 14.29s (± 0.60%) 14.25s (± 0.56%) -0.04s (- 0.25%) 14.12s 14.34s
material-ui - node (v18.10.0, x64)
Memory used 476,393k (± 0.01%) 476,354k (± 0.01%) -40k (- 0.01%) 476,289k 476,425k
Parse Time 3.50s (± 1.85%) 3.50s (± 1.65%) +0.00s (+ 0.09%) 3.40s 3.57s
Bind Time 1.00s (± 2.14%) 0.99s (± 1.28%) -0.01s (- 0.93%) 0.98s 1.02s
Check Time 17.12s (± 0.88%) 17.07s (± 1.07%) -0.05s (- 0.29%) 16.85s 17.24s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 21.62s (± 0.69%) 21.56s (± 0.79%) -0.06s (- 0.28%) 21.33s 21.76s
xstate - node (v18.10.0, x64)
Memory used 546,270k (± 0.02%) 546,276k (± 0.01%) +6k (+ 0.00%) 546,235k 546,346k
Parse Time 4.41s (± 0.38%) 4.39s (± 0.93%) -0.02s (- 0.56%) 4.33s 4.44s
Bind Time 1.73s (± 1.02%) 1.72s (± 0.58%) -0.01s (- 0.42%) 1.71s 1.73s
Check Time 2.74s (± 0.89%) 2.73s (± 0.59%) -0.01s (- 0.34%) 2.70s 2.75s
Emit Time 0.08s (± 0.16%) 0.08s (± 0.20%) -0.00s (- 0.03%) 0.08s 0.08s
Total Time 8.95s (± 0.31%) 8.92s (± 0.25%) -0.03s (- 0.31%) 8.89s 8.95s
Angular - node (v16.17.1, x64)
Memory used 358,225k (± 0.01%) 358,338k (± 0.01%) +112k (+ 0.03%) 358,301k 358,384k
Parse Time 4.11s (± 0.47%) 4.10s (± 0.26%) -0.01s (- 0.23%) 4.08s 4.11s
Bind Time 1.26s (± 0.84%) 1.25s (± 0.71%) -0.01s (- 0.73%) 1.24s 1.26s
Check Time 9.47s (± 0.40%) 9.43s (± 0.31%) -0.04s (- 0.42%) 9.39s 9.46s
Emit Time 7.93s (± 0.50%) 7.95s (± 0.34%) +0.02s (+ 0.27%) 7.91s 7.99s
Total Time 22.76s (± 0.25%) 22.73s (± 0.11%) -0.04s (- 0.15%) 22.70s 22.76s
Compiler-Unions - node (v16.17.1, x64)
Memory used 195,553k (± 1.00%) 193,894k (± 0.03%) -1,659k (- 0.85%) 193,795k 193,974k
Parse Time 1.81s (± 0.45%) 1.80s (± 0.48%) -0.02s (- 0.86%) 1.79s 1.81s
Bind Time 0.85s (± 0.59%) 0.85s (± 0.58%) +0.00s (+ 0.16%) 0.84s 0.86s
Check Time 10.28s (± 1.06%) 10.29s (± 0.60%) +0.01s (+ 0.08%) 10.20s 10.35s
Emit Time 3.10s (± 3.96%) 3.02s (± 1.09%) -0.08s (- 2.49%) 2.98s 3.06s
Total Time 16.05s (± 0.83%) 15.97s (± 0.62%) -0.08s (- 0.51%) 15.82s 16.05s
Monaco - node (v16.17.1, x64)
Memory used 345,111k (± 0.01%) 345,104k (± 0.01%) -7k (- 0.00%) 345,072k 345,148k
Parse Time 3.11s (± 0.64%) 3.10s (± 0.93%) -0.01s (- 0.31%) 3.07s 3.15s
Bind Time 1.11s (± 0.64%) 1.12s (± 1.50%) +0.01s (+ 1.25%) 1.10s 1.14s
Check Time 7.89s (± 0.36%) 7.87s (± 0.55%) -0.02s (- 0.22%) 7.81s 7.91s
Emit Time 4.54s (± 0.41%) 4.53s (± 0.35%) -0.01s (- 0.14%) 4.51s 4.55s
Total Time 16.65s (± 0.23%) 16.63s (± 0.40%) -0.02s (- 0.14%) 16.56s 16.75s
TFS - node (v16.17.1, x64)
Memory used 299,886k (± 0.01%) 299,879k (± 0.01%) -7k (- 0.00%) 299,854k 299,900k
Parse Time 2.44s (± 0.96%) 2.42s (± 0.87%) -0.01s (- 0.54%) 2.40s 2.44s
Bind Time 1.27s (± 1.20%) 1.26s (± 0.72%) -0.01s (- 0.46%) 1.24s 1.27s
Check Time 7.43s (± 0.98%) 7.42s (± 0.45%) -0.00s (- 0.07%) 7.38s 7.46s
Emit Time 4.25s (± 0.72%) 4.24s (± 0.65%) -0.01s (- 0.26%) 4.21s 4.28s
Total Time 15.38s (± 0.49%) 15.35s (± 0.18%) -0.04s (- 0.24%) 15.31s 15.39s
material-ui - node (v16.17.1, x64)
Memory used 475,653k (± 0.00%) 475,684k (± 0.01%) +31k (+ 0.01%) 475,629k 475,706k
Parse Time 3.65s (± 0.47%) 3.66s (± 0.15%) +0.01s (+ 0.19%) 3.66s 3.67s
Bind Time 1.02s (± 0.63%) 1.02s (± 0.64%) -0.00s (- 0.03%) 1.01s 1.03s
Check Time 17.96s (± 0.62%) 17.93s (± 0.47%) -0.03s (- 0.16%) 17.86s 18.08s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 22.63s (± 0.56%) 22.61s (± 0.38%) -0.02s (- 0.10%) 22.54s 22.76s
xstate - node (v16.17.1, x64)
Memory used 543,875k (± 0.01%) 543,885k (± 0.00%) +10k (+ 0.00%) 543,848k 543,929k
Parse Time 4.57s (± 0.75%) 4.57s (± 0.64%) +0.00s (+ 0.10%) 4.53s 4.62s
Bind Time 1.79s (± 0.48%) 1.79s (± 0.41%) -0.00s (- 0.12%) 1.79s 1.81s
Check Time 2.93s (± 0.68%) 2.94s (± 0.36%) +0.01s (+ 0.29%) 2.92s 2.95s
Emit Time 0.08s (± 4.99%) 0.08s (± 6.06%) +0.00s (+ 2.10%) 0.08s 0.09s
Total Time 9.38s (± 0.68%) 9.38s (± 0.28%) +0.01s (+ 0.08%) 9.34s 9.42s
Angular - node (v14.15.1, x64)
Memory used 351,902k (± 0.00%) 351,961k (± 0.01%) +59k (+ 0.02%) 351,936k 351,982k
Parse Time 4.15s (± 0.47%) 4.13s (± 0.52%) -0.02s (- 0.37%) 4.10s 4.16s
Bind Time 1.27s (± 0.65%) 1.28s (± 0.20%) +0.01s (+ 0.56%) 1.27s 1.28s
Check Time 9.79s (± 0.35%) 9.80s (± 0.80%) +0.01s (+ 0.07%) 9.68s 9.90s
Emit Time 8.26s (± 0.40%) 8.28s (± 0.94%) +0.02s (+ 0.28%) 8.18s 8.41s
Total Time 23.47s (± 0.18%) 23.49s (± 0.73%) +0.02s (+ 0.09%) 23.24s 23.75s
Compiler-Unions - node (v14.15.1, x64)
Memory used 189,010k (± 0.02%) 189,021k (± 0.02%) +11k (+ 0.01%) 188,986k 189,083k
Parse Time 1.83s (± 0.64%) 1.83s (± 0.63%) -0.00s (- 0.12%) 1.81s 1.85s
Bind Time 0.88s (± 1.38%) 0.88s (± 1.36%) +0.00s (+ 0.53%) 0.87s 0.90s
Check Time 10.37s (± 0.53%) 10.39s (± 0.20%) +0.02s (+ 0.17%) 10.36s 10.41s
Emit Time 3.18s (± 1.22%) 3.16s (± 0.83%) -0.02s (- 0.77%) 3.11s 3.19s
Total Time 16.26s (± 0.53%) 16.25s (± 0.11%) -0.00s (- 0.02%) 16.23s 16.29s
Monaco - node (v14.15.1, x64)
Memory used 339,855k (± 0.01%) 339,866k (± 0.01%) +11k (+ 0.00%) 339,838k 339,910k
Parse Time 3.24s (± 0.91%) 3.24s (± 1.50%) -0.00s (- 0.09%) 3.18s 3.28s
Bind Time 1.14s (± 0.15%) 1.14s (± 0.78%) +0.00s (+ 0.21%) 1.13s 1.16s
Check Time 8.19s (± 0.55%) 8.21s (± 0.48%) +0.03s (+ 0.33%) 8.16s 8.27s
Emit Time 4.76s (± 0.62%) 4.78s (± 0.56%) +0.02s (+ 0.42%) 4.74s 4.81s
Total Time 17.32s (± 0.52%) 17.37s (± 0.30%) +0.05s (+ 0.27%) 17.31s 17.46s
TFS - node (v14.15.1, x64)
Memory used 294,789k (± 0.00%) 294,812k (± 0.01%) +23k (+ 0.01%) 294,772k 294,837k
Parse Time 2.72s (± 0.89%) 2.72s (± 0.72%) +0.00s (+ 0.12%) 2.69s 2.74s
Bind Time 1.11s (± 0.24%) 1.12s (± 0.86%) +0.01s (+ 0.83%) 1.10s 1.13s
Check Time 7.75s (± 0.53%) 7.71s (± 0.44%) -0.04s (- 0.52%) 7.66s 7.75s
Emit Time 4.63s (± 0.92%) 4.60s (± 0.72%) -0.03s (- 0.61%) 4.55s 4.64s
Total Time 16.21s (± 0.50%) 16.15s (± 0.45%) -0.06s (- 0.34%) 16.01s 16.22s
material-ui - node (v14.15.1, x64)
Memory used 471,144k (± 0.00%) 471,147k (± 0.00%) +4k (+ 0.00%) 471,122k 471,177k
Parse Time 3.81s (± 0.41%) 3.82s (± 0.49%) +0.02s (+ 0.46%) 3.80s 3.85s
Bind Time 1.03s (± 0.63%) 1.03s (± 0.47%) -0.00s (- 0.28%) 1.02s 1.04s
Check Time 18.85s (± 0.54%) 18.95s (± 0.36%) +0.10s (+ 0.52%) 18.87s 19.06s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 23.69s (± 0.46%) 23.80s (± 0.28%) +0.11s (+ 0.47%) 23.73s 23.90s
xstate - node (v14.15.1, x64)
Memory used 532,108k (± 0.01%) 532,119k (± 0.01%) +11k (+ 0.00%) 532,082k 532,157k
Parse Time 5.02s (± 0.97%) 4.97s (± 0.42%) -0.05s (- 0.96%) 4.94s 5.00s
Bind Time 1.67s (± 0.88%) 1.66s (± 0.61%) -0.01s (- 0.60%) 1.65s 1.68s
Check Time 3.08s (± 0.18%) 3.08s (± 0.51%) -0.00s (- 0.00%) 3.07s 3.10s
Emit Time 0.10s (± 4.05%) 0.10s (± 4.15%) +0.00s (+ 0.00%) 0.10s 0.11s
Total Time 9.88s (± 0.57%) 9.82s (± 0.31%) -0.06s (- 0.62%) 9.78s 9.87s
System
Machine Namets-ci-ubuntu
Platformlinux 5.4.0-135-generic
Architecturex64
Available Memory16 GB
Available Memory15 GB
CPUs4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
Hosts
  • node (v18.10.0, x64)
  • node (v16.17.1, x64)
  • node (v14.15.1, x64)
Scenarios
  • Angular - node (v18.10.0, x64)
  • Angular - node (v16.17.1, x64)
  • Angular - node (v14.15.1, x64)
  • Compiler-Unions - node (v18.10.0, x64)
  • Compiler-Unions - node (v16.17.1, x64)
  • Compiler-Unions - node (v14.15.1, x64)
  • Monaco - node (v18.10.0, x64)
  • Monaco - node (v16.17.1, x64)
  • Monaco - node (v14.15.1, x64)
  • TFS - node (v18.10.0, x64)
  • TFS - node (v16.17.1, x64)
  • TFS - node (v14.15.1, x64)
  • material-ui - node (v18.10.0, x64)
  • material-ui - node (v16.17.1, x64)
  • material-ui - node (v14.15.1, x64)
  • xstate - node (v18.10.0, x64)
  • xstate - node (v16.17.1, x64)
  • xstate - node (v14.15.1, x64)
Benchmark Name Iterations
Current 49929 6
Baseline main 6

TSServer

Comparison Report - main..49929
Metric main 49929 Delta Best Worst
Compiler-UnionsTSServer - node (v18.10.0, x64)
Req 1 - updateOpen 2,523ms (± 5.98%) 2,536ms (± 5.25%) +13ms (+ 0.52%) 2,269ms 2,624ms
Req 2 - geterr 5,299ms (± 5.69%) 5,373ms (± 5.81%) +75ms (+ 1.41%) 4,740ms 5,556ms
Req 3 - references 370ms (± 5.68%) 361ms (± 5.90%) -9ms (- 2.42%) 318ms 372ms
Req 4 - navto 285ms (± 5.85%) 286ms (± 5.57%) +1ms (+ 0.36%) 254ms 298ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 99ms (±82.77%) 64ms (± 8.26%) 🟩-35ms (-35.80%) 55ms 72ms
CompilerTSServer - node (v18.10.0, x64)
Req 1 - updateOpen 2,669ms (± 1.75%) 2,675ms (± 1.82%) +6ms (+ 0.23%) 2,630ms 2,738ms
Req 2 - geterr 3,956ms (± 0.40%) 3,982ms (± 0.73%) +26ms (+ 0.66%) 3,946ms 4,016ms
Req 3 - references 375ms (± 1.33%) 376ms (± 0.93%) +2ms (+ 0.43%) 372ms 381ms
Req 4 - navto 290ms (± 0.61%) 292ms (± 0.53%) +2ms (+ 0.58%) 290ms 295ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 82ms (± 3.09%) 84ms (± 0.94%) +2ms (+ 2.26%) 82ms 85ms
xstateTSServer - node (v18.10.0, x64)
Req 1 - updateOpen 3,326ms (± 0.47%) 3,356ms (± 0.91%) +30ms (+ 0.90%) 3,310ms 3,391ms
Req 2 - geterr 1,410ms (± 0.50%) 1,408ms (± 0.76%) -3ms (- 0.21%) 1,389ms 1,418ms
Req 3 - references 248ms (± 1.08%) 250ms (± 0.86%) +2ms (+ 0.93%) 248ms 254ms
Req 4 - navto 360ms (± 0.98%) 361ms (± 0.68%) +2ms (+ 0.49%) 358ms 364ms
Req 5 - completionInfo count 3,159 (± 0.00%) 3,159 (± 0.00%) 0 ( 0.00%) 3,159 3,159
Req 5 - completionInfo 447ms (± 1.15%) 446ms (± 0.89%) -0ms (- 0.10%) 442ms 452ms
Compiler-UnionsTSServer - node (v16.17.1, x64)
Req 1 - updateOpen 2,757ms (± 0.47%) 2,748ms (± 1.02%) -10ms (- 0.35%) 2,695ms 2,772ms
Req 2 - geterr 5,809ms (± 0.64%) 5,803ms (± 1.56%) -5ms (- 0.09%) 5,740ms 5,982ms
Req 3 - references 376ms (± 0.32%) 375ms (± 0.91%) -2ms (- 0.47%) 371ms 381ms
Req 4 - navto 273ms (± 0.60%) 274ms (± 1.11%) +1ms (+ 0.42%) 272ms 280ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 299ms (± 1.14%) 265ms (±33.20%) 🟩-34ms (-11.51%) 85ms 307ms
CompilerTSServer - node (v16.17.1, x64)
Req 1 - updateOpen 2,850ms (± 0.55%) 2,854ms (± 0.31%) +4ms (+ 0.15%) 2,841ms 2,868ms
Req 2 - geterr 4,321ms (± 0.47%) 4,310ms (± 0.50%) -10ms (- 0.24%) 4,281ms 4,338ms
Req 3 - references 390ms (± 1.37%) 384ms (± 1.48%) -6ms (- 1.54%) 378ms 391ms
Req 4 - navto 299ms (± 0.52%) 300ms (± 0.25%) +1ms (+ 0.39%) 299ms 301ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 80ms (± 1.25%) 79ms (± 1.41%) -0ms (- 0.57%) 77ms 80ms
xstateTSServer - node (v16.17.1, x64)
Req 1 - updateOpen 3,443ms (± 0.81%) 3,448ms (± 0.83%) +6ms (+ 0.16%) 3,413ms 3,488ms
Req 2 - geterr 1,671ms (± 3.44%) 1,621ms (± 5.31%) -50ms (- 2.99%) 1,520ms 1,703ms
Req 3 - references 135ms (±50.49%) 194ms (±48.48%) 🔻+60ms (+44.30%) 105ms 284ms
Req 4 - navto 341ms (± 1.51%) 341ms (± 2.75%) -0ms (- 0.09%) 329ms 353ms
Req 5 - completionInfo count 3,159 (± 0.00%) 3,159 (± 0.00%) 0 ( 0.00%) 3,159 3,159
Req 5 - completionInfo 473ms (± 2.51%) 477ms (± 1.96%) +4ms (+ 0.91%) 467ms 490ms
Compiler-UnionsTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 2,861ms (± 0.36%) 2,868ms (± 0.83%) +7ms (+ 0.24%) 2,846ms 2,911ms
Req 2 - geterr 6,235ms (± 0.89%) 6,184ms (± 0.49%) -51ms (- 0.81%) 6,147ms 6,232ms
Req 3 - references 389ms (± 0.59%) 390ms (± 1.03%) +1ms (+ 0.18%) 385ms 397ms
Req 4 - navto 288ms (± 0.70%) 286ms (± 0.39%) -2ms (- 0.64%) 284ms 287ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 81ms (±10.02%) 83ms (± 8.69%) +1ms (+ 1.57%) 72ms 91ms
CompilerTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 3,021ms (± 1.07%) 3,005ms (± 0.91%) -16ms (- 0.53%) 2,980ms 3,049ms
Req 2 - geterr 4,595ms (± 0.34%) 4,593ms (± 0.43%) -3ms (- 0.05%) 4,559ms 4,618ms
Req 3 - references 411ms (± 0.25%) 415ms (± 1.58%) +4ms (+ 0.88%) 410ms 427ms
Req 4 - navto 309ms (± 1.03%) 308ms (± 0.78%) -1ms (- 0.24%) 304ms 311ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 79ms (± 1.11%) 78ms (± 0.86%) -0ms (- 0.60%) 78ms 79ms
xstateTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 3,760ms (± 0.41%) 3,800ms (± 0.34%) +40ms (+ 1.07%) 3,786ms 3,823ms
Req 2 - geterr 1,460ms (± 1.24%) 1,463ms (± 0.90%) +2ms (+ 0.17%) 1,449ms 1,487ms
Req 3 - references 122ms (± 2.07%) 127ms (± 2.71%) +5ms (+ 4.15%) 123ms 131ms
Req 4 - navto 397ms (± 0.25%) 394ms (± 1.76%) -3ms (- 0.83%) 383ms 402ms
Req 5 - completionInfo count 3,159 (± 0.00%) 3,159 (± 0.00%) 0 ( 0.00%) 3,159 3,159
Req 5 - completionInfo 481ms (± 1.62%) 488ms (± 0.91%) +7ms (+ 1.45%) 483ms 497ms
System
Machine Namets-ci-ubuntu
Platformlinux 5.4.0-135-generic
Architecturex64
Available Memory16 GB
Available Memory15 GB
CPUs4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
Hosts
  • node (v18.10.0, x64)
  • node (v16.17.1, x64)
  • node (v14.15.1, x64)
Scenarios
  • Compiler-UnionsTSServer - node (v18.10.0, x64)
  • Compiler-UnionsTSServer - node (v16.17.1, x64)
  • Compiler-UnionsTSServer - node (v14.15.1, x64)
  • CompilerTSServer - node (v18.10.0, x64)
  • CompilerTSServer - node (v16.17.1, x64)
  • CompilerTSServer - node (v14.15.1, x64)
  • xstateTSServer - node (v18.10.0, x64)
  • xstateTSServer - node (v16.17.1, x64)
  • xstateTSServer - node (v14.15.1, x64)
Benchmark Name Iterations
Current 49929 6
Baseline main 6

Startup

Comparison Report - main..49929
Metric main 49929 Delta Best Worst
tsc-startup - node (v16.17.1, x64)
Execution time 139.27ms (± 0.21%) 139.48ms (± 0.23%) +0.21ms (+ 0.15%) 138.26ms 142.36ms
tsserver-startup - node (v16.17.1, x64)
Execution time 231.06ms (± 0.20%) 232.04ms (± 0.31%) +0.98ms (+ 0.42%) 230.21ms 241.47ms
tsserverlibrary-startup - node (v16.17.1, x64)
Execution time 234.04ms (± 0.25%) 236.43ms (± 0.36%) +2.39ms (+ 1.02%) 232.35ms 242.85ms
typescript-startup - node (v16.17.1, x64)
Execution time 215.37ms (± 0.20%) 216.48ms (± 0.29%) +1.10ms (+ 0.51%) 214.25ms 225.27ms
System
Machine Namets-ci-ubuntu
Platformlinux 5.4.0-135-generic
Architecturex64
Available Memory16 GB
Available Memory15 GB
CPUs4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
Hosts
  • node (v16.17.1, x64)
Scenarios
  • tsc-startup - node (v16.17.1, x64)
  • tsserver-startup - node (v16.17.1, x64)
  • tsserverlibrary-startup - node (v16.17.1, x64)
  • typescript-startup - node (v16.17.1, x64)
Benchmark Name Iterations
Current 49929 6
Baseline main 6

Developer Information:

Download Benchmark

@typescript-bot
Copy link
Collaborator

@jakebailey Here are the results of running the top-repos suite comparing main and refs/pull/49929/merge:

Everything looks good!

@typescript-bot
Copy link
Collaborator

@jakebailey Here are the results of running the top-repos suite comparing main and refs/pull/49929/merge:

Something interesting changed - please have a look.

Details

felixrieseberg/windows95

⚠️ Note that built also had errors ⚠️
Req #259 - references
    at formatMessage2 (/typescript-main/built/local/tsserver.js:174239:21)
    at IOSession.writeMessage (/typescript-main/built/local/tsserver.js:175513:21)
    at IOSession.send (/typescript-main/built/local/tsserver.js:175510:10)
    at IOSession.doOutput (/typescript-main/built/local/tsserver.js:175566:10)
    at IOSession.onMessage (/typescript-main/built/local/tsserver.js:177344:14)
    at Interface.<anonymous> (/typescript-main/built/local/tsserver.js:178782:14)
Req #259 - references
    at formatMessage2 (/typescript-49929/built/local/tsserver.js:174338:21)
    at IOSession.writeMessage (/typescript-49929/built/local/tsserver.js:175613:21)
    at IOSession.send (/typescript-49929/built/local/tsserver.js:175610:10)
    at IOSession.doOutput (/typescript-49929/built/local/tsserver.js:175666:10)
    at IOSession.onMessage (/typescript-49929/built/local/tsserver.js:177444:14)
    at Interface.<anonymous> (/typescript-49929/built/local/tsserver.js:178882:14)

That is a filtered view of the text. To see the raw error text, go to RepoResults4/felixrieseberg.windows95.rawError.txt in the artifact folder

Last few requests

{"seq":256,"type":"request","command":"completionEntryDetails","arguments":{"file":"@PROJECT_ROOT@/src/renderer/lib/_libwabt.js","line":13,"offset":7539,"entryNames":["_"]}}
{"seq":257,"type":"request","command":"completionInfo","arguments":{"file":"@PROJECT_ROOT@/src/renderer/lib/_libwabt.js","line":13,"offset":7676,"includeExternalModuleExports":false,"includeInsertTextCompletions":true,"triggerKind":1}}
{"seq":258,"type":"request","command":"completionEntryDetails","arguments":{"file":"@PROJECT_ROOT@/src/renderer/lib/_libwabt.js","line":13,"offset":7676,"entryNames":["_"]}}
{"seq":259,"type":"request","command":"references","arguments":{"file":"@PROJECT_ROOT@/src/renderer/lib/_libwabt.js","line":13,"offset":7864}}

Repro Steps

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

hasura/graphql-engine

⚠️ Note that built also had errors ⚠️
Req #6085 - references
    at formatMessage2 (/typescript-main/built/local/tsserver.js:174239:21)
    at IOSession.writeMessage (/typescript-main/built/local/tsserver.js:175513:21)
    at IOSession.send (/typescript-main/built/local/tsserver.js:175510:10)
    at IOSession.doOutput (/typescript-main/built/local/tsserver.js:175566:10)
    at IOSession.onMessage (/typescript-main/built/local/tsserver.js:177344:14)
    at Interface.<anonymous> (/typescript-main/built/local/tsserver.js:178782:14)
Req #6085 - references
    at formatMessage2 (/typescript-49929/built/local/tsserver.js:174338:21)
    at IOSession.writeMessage (/typescript-49929/built/local/tsserver.js:175613:21)
    at IOSession.send (/typescript-49929/built/local/tsserver.js:175610:10)
    at IOSession.doOutput (/typescript-49929/built/local/tsserver.js:175666:10)
    at IOSession.onMessage (/typescript-49929/built/local/tsserver.js:177444:14)
    at Interface.<anonymous> (/typescript-49929/built/local/tsserver.js:178882:14)

That is a filtered view of the text. To see the raw error text, go to RepoResults2/hasura.graphql-engine.rawError.txt in the artifact folder

Last few requests

{"seq":6082,"type":"request","command":"completionInfo","arguments":{"file":"@PROJECT_ROOT@/frontend/apps/console-ce/src/assets/common/codegen/javascript-js-doc-express/actions-codegen.js","line":1,"offset":32169,"includeExternalModuleExports":false,"includeInsertTextCompletions":true,"triggerKind":1}}
{"seq":6083,"type":"request","command":"completionEntryDetails","arguments":{"file":"@PROJECT_ROOT@/frontend/apps/console-ce/src/assets/common/codegen/javascript-js-doc-express/actions-codegen.js","line":1,"offset":32169,"entryNames":["_"]}}
{"seq":6084,"type":"request","command":"completionInfo","arguments":{"file":"@PROJECT_ROOT@/frontend/apps/console-ce/src/assets/common/codegen/javascript-js-doc-express/actions-codegen.js","line":1,"offset":32980,"includeExternalModuleExports":false,"includeInsertTextCompletions":true,"triggerKind":2,"triggerCharacter":" "}}
{"seq":6085,"type":"request","command":"references","arguments":{"file":"@PROJECT_ROOT@/frontend/apps/console-ce/src/assets/common/codegen/javascript-js-doc-express/actions-codegen.js","line":1,"offset":33456}}

Repro Steps

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

palantir/blueprint

⚠️ Note that built also had errors ⚠️
Req #19000 - references
    at resolveNameHelper (/typescript-main/built/local/tsserver.js:48031:29)
    at resolveName (/typescript-main/built/local/tsserver.js:48029:12)
    at getResolvedSymbol (/typescript-main/built/local/tsserver.js:67146:54)
    at checkIdentifier (/typescript-main/built/local/tsserver.js:69257:20)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77083:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at checkPropertyAccessExpression (/typescript-main/built/local/tsserver.js:71922:162)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77117:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at getEffectsSignature (/typescript-main/built/local/tsserver.js:67939:22)
    at getTypeAtFlowCall (/typescript-main/built/local/tsserver.js:68278:25)
    at getTypeAtFlowNode (/typescript-main/built/local/tsserver.js:68164:18)
    at getFlowTypeOfReference (/typescript-main/built/local/tsserver.js:68121:45)
    at checkIdentifier (/typescript-main/built/local/tsserver.js:69366:22)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77083:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at checkPropertyAccessExpression (/typescript-main/built/local/tsserver.js:71922:162)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77117:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at getEffectsSignature (/typescript-main/built/local/tsserver.js:67939:22)
    at getTypeAtFlowCall (/typescript-main/built/local/tsserver.js:68278:25)
    at getTypeAtFlowNode (/typescript-main/built/local/tsserver.js:68164:18)
    at getFlowTypeOfReference (/typescript-main/built/local/tsserver.js:68121:45)
    at checkIdentifier (/typescript-main/built/local/tsserver.js:69366:22)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77083:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at checkPropertyAccessExpression (/typescript-main/built/local/tsserver.js:71922:162)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77117:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at getEffectsSignature (/typescript-main/built/local/tsserver.js:67939:22)
    at getTypeAtFlowCall (/typescript-main/built/local/tsserver.js:68278:25)
    at getTypeAtFlowNode (/typescript-main/built/local/tsserver.js:68164:18)
    at getFlowTypeOfReference (/typescript-main/built/local/tsserver.js:68121:45)
    at checkIdentifier (/typescript-main/built/local/tsserver.js:69366:22)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77083:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at checkPropertyAccessExpression (/typescript-main/built/local/tsserver.js:71922:162)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77117:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at getEffectsSignature (/typescript-main/built/local/tsserver.js:67939:22)
    at getTypeAtFlowCall (/typescript-main/built/local/tsserver.js:68278:25)
    at getTypeAtFlowNode (/typescript-main/built/local/tsserver.js:68164:18)
    at getFlowTypeOfReference (/typescript-main/built/local/tsserver.js:68121:45)
    at checkIdentifier (/typescript-main/built/local/tsserver.js:69366:22)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77083:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at checkPropertyAccessExpression (/typescript-main/built/local/tsserver.js:71922:162)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77117:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at getEffectsSignature (/typescript-main/built/local/tsserver.js:67939:22)
    at getTypeAtFlowCall (/typescript-main/built/local/tsserver.js:68278:25)
    at getTypeAtFlowNode (/typescript-main/built/local/tsserver.js:68164:18)
    at getFlowTypeOfReference (/typescript-main/built/local/tsserver.js:68121:45)
    at checkIdentifier (/typescript-main/built/local/tsserver.js:69366:22)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77083:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at checkPropertyAccessExpression (/typescript-main/built/local/tsserver.js:71922:162)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77117:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at getEffectsSignature (/typescript-main/built/local/tsserver.js:67939:22)
    at getTypeAtFlowCall (/typescript-main/built/local/tsserver.js:68278:25)
    at getTypeAtFlowNode (/typescript-main/built/local/tsserver.js:68164:18)
    at getFlowTypeOfReference (/typescript-main/built/local/tsserver.js:68121:45)
    at checkIdentifier (/typescript-main/built/local/tsserver.js:69366:22)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77083:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at checkPropertyAccessExpression (/typescript-main/built/local/tsserver.js:71922:162)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77117:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at getEffectsSignature (/typescript-main/built/local/tsserver.js:67939:22)
    at getTypeAtFlowCall (/typescript-main/built/local/tsserver.js:68278:25)
    at getTypeAtFlowNode (/typescript-main/built/local/tsserver.js:68164:18)
    at getFlowTypeOfReference (/typescript-main/built/local/tsserver.js:68121:45)
    at checkIdentifier (/typescript-main/built/local/tsserver.js:69366:22)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77083:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at checkPropertyAccessExpression (/typescript-main/built/local/tsserver.js:71922:162)
    at checkExpressionWorker (/typescript-main/built/local/tsserver.js:77117:16)
    at checkExpression (/typescript-main/built/local/tsserver.js:77042:32)
    at checkNonNullExpression (/typescript-main/built/local/tsserver.js:71843:29)
    at getEffectsSignature (/typescript-main/built/local/tsserver.js:67939:22)
    at getTypeAtFlowCall (/typescript-main/built/local/tsserver.js:68278:25)
    at getTypeAtFlowNode (/typescript-main/built/local/tsserver.js:68164:18)
    at getFlowTypeOfReference (/typescript-main/built/local/tsserver.js:68121:45)
    at checkIdentifier (/typescript-main/built/local/tsserver.js:69366:22)
Req #19000 - references
    at resolveNameHelper (/typescript-49929/built/local/tsserver.js:48071:29)
    at resolveName (/typescript-49929/built/local/tsserver.js:48069:12)
    at getResolvedSymbol (/typescript-49929/built/local/tsserver.js:67187:54)
    at checkIdentifier (/typescript-49929/built/local/tsserver.js:69298:20)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77124:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at checkPropertyAccessExpression (/typescript-49929/built/local/tsserver.js:71963:162)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77158:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at getEffectsSignature (/typescript-49929/built/local/tsserver.js:67980:22)
    at getTypeAtFlowCall (/typescript-49929/built/local/tsserver.js:68319:25)
    at getTypeAtFlowNode (/typescript-49929/built/local/tsserver.js:68205:18)
    at getFlowTypeOfReference (/typescript-49929/built/local/tsserver.js:68162:45)
    at checkIdentifier (/typescript-49929/built/local/tsserver.js:69407:22)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77124:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at checkPropertyAccessExpression (/typescript-49929/built/local/tsserver.js:71963:162)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77158:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at getEffectsSignature (/typescript-49929/built/local/tsserver.js:67980:22)
    at getTypeAtFlowCall (/typescript-49929/built/local/tsserver.js:68319:25)
    at getTypeAtFlowNode (/typescript-49929/built/local/tsserver.js:68205:18)
    at getFlowTypeOfReference (/typescript-49929/built/local/tsserver.js:68162:45)
    at checkIdentifier (/typescript-49929/built/local/tsserver.js:69407:22)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77124:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at checkPropertyAccessExpression (/typescript-49929/built/local/tsserver.js:71963:162)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77158:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at getEffectsSignature (/typescript-49929/built/local/tsserver.js:67980:22)
    at getTypeAtFlowCall (/typescript-49929/built/local/tsserver.js:68319:25)
    at getTypeAtFlowNode (/typescript-49929/built/local/tsserver.js:68205:18)
    at getFlowTypeOfReference (/typescript-49929/built/local/tsserver.js:68162:45)
    at checkIdentifier (/typescript-49929/built/local/tsserver.js:69407:22)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77124:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at checkPropertyAccessExpression (/typescript-49929/built/local/tsserver.js:71963:162)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77158:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at getEffectsSignature (/typescript-49929/built/local/tsserver.js:67980:22)
    at getTypeAtFlowCall (/typescript-49929/built/local/tsserver.js:68319:25)
    at getTypeAtFlowNode (/typescript-49929/built/local/tsserver.js:68205:18)
    at getFlowTypeOfReference (/typescript-49929/built/local/tsserver.js:68162:45)
    at checkIdentifier (/typescript-49929/built/local/tsserver.js:69407:22)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77124:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at checkPropertyAccessExpression (/typescript-49929/built/local/tsserver.js:71963:162)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77158:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at getEffectsSignature (/typescript-49929/built/local/tsserver.js:67980:22)
    at getTypeAtFlowCall (/typescript-49929/built/local/tsserver.js:68319:25)
    at getTypeAtFlowNode (/typescript-49929/built/local/tsserver.js:68205:18)
    at getFlowTypeOfReference (/typescript-49929/built/local/tsserver.js:68162:45)
    at checkIdentifier (/typescript-49929/built/local/tsserver.js:69407:22)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77124:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at checkPropertyAccessExpression (/typescript-49929/built/local/tsserver.js:71963:162)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77158:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at getEffectsSignature (/typescript-49929/built/local/tsserver.js:67980:22)
    at getTypeAtFlowCall (/typescript-49929/built/local/tsserver.js:68319:25)
    at getTypeAtFlowNode (/typescript-49929/built/local/tsserver.js:68205:18)
    at getFlowTypeOfReference (/typescript-49929/built/local/tsserver.js:68162:45)
    at checkIdentifier (/typescript-49929/built/local/tsserver.js:69407:22)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77124:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at checkPropertyAccessExpression (/typescript-49929/built/local/tsserver.js:71963:162)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77158:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at getEffectsSignature (/typescript-49929/built/local/tsserver.js:67980:22)
    at getTypeAtFlowCall (/typescript-49929/built/local/tsserver.js:68319:25)
    at getTypeAtFlowNode (/typescript-49929/built/local/tsserver.js:68205:18)
    at getFlowTypeOfReference (/typescript-49929/built/local/tsserver.js:68162:45)
    at checkIdentifier (/typescript-49929/built/local/tsserver.js:69407:22)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77124:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at checkPropertyAccessExpression (/typescript-49929/built/local/tsserver.js:71963:162)
    at checkExpressionWorker (/typescript-49929/built/local/tsserver.js:77158:16)
    at checkExpression (/typescript-49929/built/local/tsserver.js:77083:32)
    at checkNonNullExpression (/typescript-49929/built/local/tsserver.js:71884:29)
    at getEffectsSignature (/typescript-49929/built/local/tsserver.js:67980:22)
    at getTypeAtFlowCall (/typescript-49929/built/local/tsserver.js:68319:25)
    at getTypeAtFlowNode (/typescript-49929/built/local/tsserver.js:68205:18)
    at getFlowTypeOfReference (/typescript-49929/built/local/tsserver.js:68162:45)
    at checkIdentifier (/typescript-49929/built/local/tsserver.js:69407:22)

That is a filtered view of the text. To see the raw error text, go to RepoResults4/palantir.blueprint.rawError.txt in the artifact folder

Last few requests

{"seq":18997,"type":"request","command":"definitionAndBoundSpan","arguments":{"file":"@PROJECT_ROOT@/site/docs/versions/2/docs-app.js","line":1,"offset":285006}}
{"seq":18998,"type":"request","command":"completionInfo","arguments":{"file":"@PROJECT_ROOT@/site/docs/versions/2/docs-app.js","line":1,"offset":285048,"includeExternalModuleExports":false,"includeInsertTextCompletions":true,"triggerKind":2,"triggerCharacter":" "}}
{"seq":18999,"type":"request","command":"definitionAndBoundSpan","arguments":{"file":"@PROJECT_ROOT@/site/docs/versions/2/docs-app.js","line":1,"offset":286114}}
{"seq":19000,"type":"request","command":"references","arguments":{"file":"@PROJECT_ROOT@/site/docs/versions/2/docs-app.js","line":1,"offset":288185}}

Repro Steps

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

vercel/hyper

⚠️ Note that built also had errors ⚠️
Req #12537 - references
    at formatMessage2 (/typescript-main/built/local/tsserver.js:174239:21)
    at IOSession.writeMessage (/typescript-main/built/local/tsserver.js:175513:21)
    at IOSession.send (/typescript-main/built/local/tsserver.js:175510:10)
    at IOSession.doOutput (/typescript-main/built/local/tsserver.js:175566:10)
    at IOSession.onMessage (/typescript-main/built/local/tsserver.js:177344:14)
    at Interface.<anonymous> (/typescript-main/built/local/tsserver.js:178782:14)
Req #12537 - references
    at formatMessage2 (/typescript-49929/built/local/tsserver.js:174338:21)
    at IOSession.writeMessage (/typescript-49929/built/local/tsserver.js:175613:21)
    at IOSession.send (/typescript-49929/built/local/tsserver.js:175610:10)
    at IOSession.doOutput (/typescript-49929/built/local/tsserver.js:175666:10)
    at IOSession.onMessage (/typescript-49929/built/local/tsserver.js:177444:14)
    at Interface.<anonymous> (/typescript-49929/built/local/tsserver.js:178882:14)

That is a filtered view of the text. To see the raw error text, go to RepoResults1/vercel.hyper.rawError.txt in the artifact folder

Last few requests

{"seq":12534,"type":"request","command":"completionInfo","arguments":{"file":"@PROJECT_ROOT@/bin/yarn-standalone.js","line":84971,"offset":44025,"includeExternalModuleExports":false,"includeInsertTextCompletions":true,"triggerKind":1}}
{"seq":12535,"type":"request","command":"completionInfo","arguments":{"file":"@PROJECT_ROOT@/bin/yarn-standalone.js","line":84971,"offset":44334,"includeExternalModuleExports":false,"includeInsertTextCompletions":true,"triggerKind":1}}
{"seq":12536,"type":"request","command":"completionEntryDetails","arguments":{"file":"@PROJECT_ROOT@/bin/yarn-standalone.js","line":84971,"offset":44334,"entryNames":["__webpack_require__"]}}
{"seq":12537,"type":"request","command":"references","arguments":{"file":"@PROJECT_ROOT@/bin/yarn-standalone.js","line":84971,"offset":45436}}

Repro Steps

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

@@ -4473,6 +4496,7 @@ declare namespace ts {
}
type FileWatcherCallback = (fileName: string, eventKind: FileWatcherEventKind, modifiedTime?: Date) => void;
type DirectoryWatcherCallback = (fileName: string) => void;
type BufferEncoding = "ascii" | "utf8" | "utf-8" | "utf16le" | "ucs2" | "ucs-2" | "base64" | "latin1" | "binary" | "hex";
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if we could even limit this to future-proof ourselves. But maybe we shouldn't break our heads over it.

@jakebailey
Copy link
Member Author

Looked at those server traces; they all reproduce on main as well.

@jakebailey
Copy link
Member Author

@typescript-bot pack this

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jan 16, 2023

Heya @jakebailey, I've started to run the tarball bundle task on this PR at 4ff34cb. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jan 16, 2023

Hey @jakebailey, I've packed this into an installable tgz. You can install it for testing by referencing it in your package.json like so:

{
    "devDependencies": {
        "typescript": "https://typescript.visualstudio.com/cf7ac146-d525-443c-b23c-0d58337efebc/_apis/build/builds/142800/artifacts?artifactName=tgz&fileId=F114E1137B4A9F5AF2F6E905E0266E209778087695D9A83D6E2443711704CC0D02&fileName=/typescript-5.0.0-insiders.20230116.tgz"
    }
}

and then running npm install.


There is also a playground for this build and an npm module you can use via "typescript": "npm:@typescript-deploys/pr-build@5.0.0-pr-49929-73".;

@jakebailey jakebailey merged commit 22b362c into microsoft:main Jan 18, 2023
PR Backlog automation moved this from Waiting on author to Done Jan 18, 2023
@jakebailey jakebailey deleted the enable-strict-function-types branch January 18, 2023 01:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
API Relates to the public API for TypeScript Author: Team Breaking Change Would introduce errors in existing code For Uncommitted Bug PR for untriaged, rejected, closed or missing bug
Projects
PR Backlog
  
Done
Development

Successfully merging this pull request may close these issues.

None yet

6 participants