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

fix(58399): [isolatedDeclarations][5.5] Autofix does not work when JSX prop contains a dash #58478

Merged
merged 4 commits into from May 8, 2024

Conversation

a-tarasyuk
Copy link
Contributor

Fixes #58399

@typescript-bot typescript-bot added the For Backlog Bug PRs that fix a backlog bug label May 8, 2024
@a-tarasyuk a-tarasyuk requested a review from jakebailey May 8, 2024 20:27
@jakebailey
Copy link
Member

@typescript-bot perf test this

@typescript-bot
Copy link
Collaborator

typescript-bot commented May 8, 2024

Starting jobs; this comment will be updated as builds start and complete.

Command Status Results
perf test this ✅ Started 👀 Results

Copy link
Member

@jakebailey jakebailey left a comment

Choose a reason for hiding this comment

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

Assuming perf is fine, LGTM. Doubt it will say anything; the function very clearly says:

/**
 * Creates a deep, memberwise clone of a node with no source map location.
 *
 * WARNING: This is an expensive operation and is only intended to be used in refactorings
 * and code fixes (because those are triggered by explicit user actions).
 *
 * @internal
 */
export function getSynthesizedDeepClone<T extends Node | undefined>(node: T, includeTrivia = true): T {

@typescript-bot
Copy link
Collaborator

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

Here they are:

tsc

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
Compiler-Unions - node (v18.15.0, x64)
Errors 30 30 ~ ~ ~ p=1.000 n=6
Symbols 62,154 62,154 ~ ~ ~ p=1.000 n=6
Types 50,248 50,248 ~ ~ ~ p=1.000 n=6
Memory used 193,500k (± 0.98%) 192,874k (± 0.75%) ~ 192,131k 195,798k p=0.936 n=6
Parse Time 1.54s (± 1.42%) 1.56s (± 0.96%) ~ 1.54s 1.58s p=0.060 n=6
Bind Time 0.87s (± 0.86%) 0.86s (± 0.60%) ~ 0.86s 0.87s p=0.069 n=6
Check Time 11.28s (± 0.50%) 11.28s (± 0.30%) ~ 11.22s 11.32s p=0.936 n=6
Emit Time 3.17s (± 0.79%) 3.18s (± 0.69%) ~ 3.16s 3.22s p=0.625 n=6
Total Time 16.86s (± 0.47%) 16.89s (± 0.27%) ~ 16.83s 16.96s p=0.336 n=6
angular-1 - node (v18.15.0, x64)
Errors 5 5 ~ ~ ~ p=1.000 n=6
Symbols 944,110 944,110 ~ ~ ~ p=1.000 n=6
Types 407,141 407,141 ~ ~ ~ p=1.000 n=6
Memory used 1,221,993k (± 0.00%) 1,221,958k (± 0.00%) ~ 1,221,875k 1,221,998k p=0.471 n=6
Parse Time 8.09s (± 0.47%) 8.09s (± 0.68%) ~ 8.03s 8.17s p=1.000 n=6
Bind Time 2.25s (± 0.67%) 2.23s (± 0.75%) ~ 2.22s 2.26s p=0.131 n=6
Check Time 36.38s (± 0.55%) 36.46s (± 0.62%) ~ 36.15s 36.79s p=0.575 n=6
Emit Time 17.55s (± 0.65%) 17.51s (± 0.32%) ~ 17.45s 17.61s p=0.574 n=6
Total Time 64.27s (± 0.39%) 64.29s (± 0.37%) ~ 63.94s 64.65s p=1.000 n=6
mui-docs - node (v18.15.0, x64)
Errors 5 5 ~ ~ ~ p=1.000 n=6
Symbols 1,956,528 1,956,528 ~ ~ ~ p=1.000 n=6
Types 676,220 676,220 ~ ~ ~ p=1.000 n=6
Memory used 1,765,439k (± 0.00%) 1,765,448k (± 0.00%) ~ 1,765,376k 1,765,556k p=0.689 n=6
Parse Time 7.97s (± 0.52%) 7.96s (± 0.32%) ~ 7.92s 7.98s p=0.375 n=6
Bind Time 2.74s (± 0.68%) 2.74s (± 0.60%) ~ 2.72s 2.76s p=0.934 n=6
Check Time 66.45s (± 0.34%) 66.71s (± 0.15%) +0.25s (+ 0.38%) 66.59s 66.89s p=0.045 n=6
Emit Time 0.16s (± 3.16%) 0.16s (± 2.52%) ~ 0.16s 0.17s p=0.595 n=6
Total Time 77.33s (± 0.25%) 77.57s (± 0.10%) +0.24s (+ 0.31%) 77.49s 77.70s p=0.037 n=6
self-build-src - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 1,218,923 1,218,925 +2 (+ 0.00%) ~ ~ p=0.001 n=6
Types 258,674 258,677 +3 (+ 0.00%) ~ ~ p=0.001 n=6
Memory used 2,334,044k (± 0.04%) 2,332,493k (± 0.05%) -1,552k (- 0.07%) 2,331,591k 2,334,486k p=0.045 n=6
Parse Time 7.42s (± 0.79%) 7.44s (± 1.30%) ~ 7.32s 7.58s p=1.000 n=6
Bind Time 2.75s (± 1.10%) 2.75s (± 1.07%) ~ 2.71s 2.79s p=1.000 n=6
Check Time 48.80s (± 0.57%) 48.85s (± 0.49%) ~ 48.62s 49.25s p=0.936 n=6
Emit Time 3.88s (± 1.86%) 3.98s (± 2.97%) ~ 3.81s 4.14s p=0.128 n=6
Total Time 62.86s (± 0.49%) 63.01s (± 0.53%) ~ 62.49s 63.46s p=0.298 n=6
self-build-src-public-api - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 1,218,923 1,218,925 +2 (+ 0.00%) ~ ~ p=0.001 n=6
Types 258,674 258,677 +3 (+ 0.00%) ~ ~ p=0.001 n=6
Memory used 2,525,663k (±11.34%) 2,408,637k (± 0.03%) ~ 2,407,695k 2,409,690k p=0.810 n=6
Parse Time 7.75s (± 1.04%) 7.77s (± 0.82%) ~ 7.70s 7.87s p=0.810 n=6
Bind Time 2.48s (± 1.66%) 2.49s (± 1.16%) ~ 2.44s 2.53s p=0.627 n=6
Check Time 49.39s (± 0.60%) 49.45s (± 0.38%) ~ 49.19s 49.75s p=0.298 n=6
Emit Time 3.89s (± 3.74%) 3.84s (± 2.79%) ~ 3.67s 3.95s p=0.689 n=6
Total Time 63.52s (± 0.43%) 63.55s (± 0.45%) ~ 63.31s 64.08s p=0.810 n=6
self-compiler - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 256,476 256,476 ~ ~ ~ p=1.000 n=6
Types 104,239 104,239 ~ ~ ~ p=1.000 n=6
Memory used 425,331k (± 0.01%) 425,346k (± 0.01%) ~ 425,316k 425,377k p=0.689 n=6
Parse Time 4.17s (± 0.48%) 4.19s (± 0.38%) ~ 4.18s 4.22s p=0.145 n=6
Bind Time 1.61s (± 0.68%) 1.61s (± 0.55%) ~ 1.60s 1.62s p=0.932 n=6
Check Time 21.90s (± 0.45%) 21.98s (± 0.19%) ~ 21.93s 22.03s p=0.199 n=6
Emit Time 1.72s (± 2.06%) 1.72s (± 1.71%) ~ 1.68s 1.75s p=1.000 n=6
Total Time 29.40s (± 0.39%) 29.50s (± 0.20%) ~ 29.40s 29.57s p=0.108 n=6
ts-pre-modules - node (v18.15.0, x64)
Errors 35 35 ~ ~ ~ p=1.000 n=6
Symbols 224,575 224,575 ~ ~ ~ p=1.000 n=6
Types 93,785 93,785 ~ ~ ~ p=1.000 n=6
Memory used 369,813k (± 0.02%) 369,827k (± 0.02%) ~ 369,750k 369,960k p=0.873 n=6
Parse Time 2.32s (± 1.31%) 2.34s (± 0.94%) ~ 2.32s 2.36s p=0.361 n=6
Bind Time 1.35s (± 1.52%) 1.33s (± 1.00%) ~ 1.32s 1.35s p=0.082 n=6
Check Time 13.28s (± 0.90%) 13.24s (± 0.42%) ~ 13.17s 13.30s p=0.936 n=6
Emit Time 0.00s 0.00s ~ ~ ~ p=1.000 n=6
Total Time 16.95s (± 0.80%) 16.92s (± 0.35%) ~ 16.85s 17.00s p=1.000 n=6
vscode - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 2,809,033 2,809,033 ~ ~ ~ p=1.000 n=6
Types 953,187 953,187 ~ ~ ~ p=1.000 n=6
Memory used 2,980,814k (± 0.00%) 2,980,772k (± 0.00%) ~ 2,980,673k 2,980,883k p=0.423 n=6
Parse Time 11.47s (± 0.26%) 11.49s (± 0.48%) ~ 11.43s 11.59s p=0.628 n=6
Bind Time 3.43s (± 0.24%) 3.43s (± 0.15%) ~ 3.43s 3.44s p=0.929 n=6
Check Time 62.77s (± 0.46%) 62.63s (± 0.51%) ~ 62.15s 62.94s p=0.521 n=6
Emit Time 20.19s (± 0.99%) 20.19s (± 0.58%) ~ 20.03s 20.32s p=0.810 n=6
Total Time 97.87s (± 0.46%) 97.75s (± 0.42%) ~ 97.08s 98.18s p=0.748 n=6
webpack - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 265,866 265,866 ~ ~ ~ p=1.000 n=6
Types 108,424 108,424 ~ ~ ~ p=1.000 n=6
Memory used 410,481k (± 0.02%) 410,449k (± 0.01%) ~ 410,421k 410,492k p=0.378 n=6
Parse Time 3.85s (± 0.72%) 3.82s (± 0.70%) ~ 3.79s 3.87s p=0.145 n=6
Bind Time 1.67s (± 0.82%) 1.66s (± 0.59%) -0.02s (- 1.00%) 1.65s 1.67s p=0.044 n=6
Check Time 16.89s (± 0.49%) 16.87s (± 0.34%) ~ 16.80s 16.95s p=0.688 n=6
Emit Time 0.00s 0.00s ~ ~ ~ p=1.000 n=6
Total Time 22.42s (± 0.44%) 22.36s (± 0.21%) ~ 22.28s 22.41s p=0.470 n=6
xstate-main - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 524,576 524,576 ~ ~ ~ p=1.000 n=6
Types 178,847 178,847 ~ ~ ~ p=1.000 n=6
Memory used 462,564k (± 0.01%) 462,504k (± 0.01%) ~ 462,423k 462,553k p=0.054 n=6
Parse Time 2.61s (± 0.61%) 2.61s (± 0.86%) ~ 2.60s 2.66s p=0.866 n=6
Bind Time 0.98s (± 1.06%) 0.97s (± 1.06%) ~ 0.96s 0.98s p=0.652 n=6
Check Time 15.30s (± 0.62%) 15.35s (± 0.80%) ~ 15.22s 15.49s p=0.625 n=6
Emit Time 0.00s 0.00s ~ ~ ~ p=1.000 n=6
Total Time 18.89s (± 0.53%) 18.94s (± 0.55%) ~ 18.82s 19.06s p=0.467 n=6
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • Compiler-Unions - node (v18.15.0, x64)
  • angular-1 - node (v18.15.0, x64)
  • mui-docs - node (v18.15.0, x64)
  • self-build-src - node (v18.15.0, x64)
  • self-build-src-public-api - node (v18.15.0, x64)
  • self-compiler - node (v18.15.0, x64)
  • ts-pre-modules - node (v18.15.0, x64)
  • vscode - node (v18.15.0, x64)
  • webpack - node (v18.15.0, x64)
  • xstate-main - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

tsserver

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
Compiler-UnionsTSServer - node (v18.15.0, x64)
Req 1 - updateOpen 3,419ms (± 0.22%) 3,082ms (±11.79%) ~ 2,740ms 3,425ms p=0.065 n=6
Req 2 - geterr 7,597ms (± 0.68%) 7,094ms (±10.32%) ~ 6,121ms 7,598ms p=0.092 n=6
Req 3 - references 439ms (± 1.48%) 402ms (±11.17%) ~ 344ms 439ms p=0.053 n=6
Req 4 - navto 336ms (± 0.91%) 317ms (± 9.71%) ~ 277ms 338ms p=0.288 n=6
Req 5 - completionInfo count 1,357 1,357 ~ ~ ~ p=1.000 n=6
Req 5 - completionInfo 112ms (± 0.75%) 115ms (± 3.06%) ~ 111ms 121ms p=0.067 n=6
CompilerTSServer - node (v18.15.0, x64)
Req 1 - updateOpen 2,921ms (± 1.15%) 2,940ms (± 0.83%) ~ 2,899ms 2,973ms p=0.173 n=6
Req 2 - geterr 4,759ms (± 9.36%) 4,766ms (± 9.47%) ~ 4,563ms 5,688ms p=0.748 n=6
Req 3 - references 375ms (± 8.32%) 370ms (± 9.47%) ~ 355ms 442ms p=0.165 n=6
Req 4 - navto 297ms (±10.29%) 298ms (± 9.86%) ~ 274ms 336ms p=1.000 n=6
Req 5 - completionInfo count 1,519 1,519 ~ ~ ~ p=1.000 n=6
Req 5 - completionInfo 99ms (±13.89%) 99ms (±10.12%) ~ 86ms 109ms p=1.000 n=6
xstate-main-1-tsserver - node (v18.15.0, x64)
Req 1 - updateOpen 6,104ms (± 0.70%) 6,120ms (± 0.44%) ~ 6,084ms 6,160ms p=0.520 n=6
Req 2 - geterr 1,396ms (± 9.77%) 1,334ms (± 1.27%) 🟩-62ms (- 4.44%) 1,305ms 1,358ms p=0.045 n=6
Req 3 - references 111ms (± 9.91%) 107ms (± 3.36%) ~ 100ms 109ms p=0.932 n=6
Req 4 - navto 520ms (± 6.82%) 516ms (± 4.30%) ~ 500ms 559ms p=0.748 n=6
Req 5 - completionInfo count 3,413 3,413 ~ ~ ~ p=1.000 n=6
Req 5 - completionInfo 1,095ms (± 9.71%) 1,055ms (± 0.89%) ~ 1,042ms 1,068ms p=1.000 n=6
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • CompilerTSServer - node (v18.15.0, x64)
  • Compiler-UnionsTSServer - node (v18.15.0, x64)
  • xstate-main-1-tsserver - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

startup

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
tsc-startup - node (v18.15.0, x64)
Execution time 227.69ms (± 0.16%) 227.80ms (± 0.20%) ~ 225.24ms 232.45ms p=0.055 n=600
tsserver-startup - node (v18.15.0, x64)
Execution time 294.41ms (± 0.30%) 294.40ms (± 0.27%) ~ 287.72ms 298.67ms p=0.534 n=600
tsserverlibrary-startup - node (v18.15.0, x64)
Execution time 287.87ms (± 0.25%) 287.89ms (± 0.28%) ~ 280.93ms 292.05ms p=0.712 n=600
typescript-startup - node (v18.15.0, x64)
Execution time 234.69ms (± 0.16%) 234.63ms (± 0.16%) ~ 233.11ms 240.49ms p=0.093 n=600
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • tsc-startup - node (v18.15.0, x64)
  • tsserver-startup - node (v18.15.0, x64)
  • tsserverlibrary-startup - node (v18.15.0, x64)
  • typescript-startup - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

Developer Information:

Download Benchmarks

@jakebailey jakebailey merged commit dcec37e into microsoft:main May 8, 2024
28 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
For Backlog Bug PRs that fix a backlog bug
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[isolatedDeclarations][5.5] Autofix does not work when JSX prop contains a dash -
4 participants