You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Edge case, but some plugins/setups apparently define a key property for structure component panes, which gives a warning about A props object containing a "key" prop is being spread into JSX when we render. This PR explicitly calls out key as being deprecated/should be avoided, but also picks it out of the props being spread and explicitly forwards it. This ensures backwards compatibility as well as avoiding the error, and potentially helps developers know not to pass it in the first place.
efps — editor "frames per second". The number of updates assumed to be possible within a second.
Derived from input latency. efps = 1000 / input_latency
Detailed information
🏠 Reference result
The performance result of sanity@latest
Benchmark
latency
p75
p90
p99
blocking time
test duration
article (title)
37ms
44ms
56ms
381ms
715ms
10.2s
article (body)
15ms
18ms
37ms
109ms
451ms
5.6s
article (string inside object)
36ms
39ms
42ms
148ms
325ms
6.8s
article (string inside array)
42ms
44ms
51ms
272ms
459ms
7.3s
recipe (name)
22ms
24ms
28ms
42ms
0ms
7.7s
recipe (description)
19ms
20ms
23ms
31ms
0ms
5.0s
recipe (instructions)
5ms
6ms
8ms
21ms
0ms
3.0s
synthetic (title)
49ms
54ms
78ms
456ms
1258ms
13.4s
synthetic (string inside object)
51ms
54ms
54ms
355ms
612ms
7.9s
🧪 Experiment result
The performance result of this branch
Benchmark
latency
p75
p90
p99
blocking time
test duration
article (title)
41ms
48ms
73ms
429ms
786ms
11.2s
article (body)
15ms
16ms
25ms
65ms
301ms
5.4s
article (string inside object)
41ms
43ms
72ms
177ms
390ms
7.6s
article (string inside array)
45ms
50ms
54ms
232ms
431ms
7.7s
recipe (name)
19ms
21ms
23ms
38ms
0ms
6.9s
recipe (description)
17ms
18ms
19ms
37ms
0ms
4.4s
recipe (instructions)
5ms
7ms
8ms
9ms
0ms
3.1s
synthetic (title)
51ms
54ms
66ms
240ms
654ms
13.3s
synthetic (string inside object)
50ms
53ms
58ms
375ms
809ms
8.5s
📚 Glossary
column definitions
benchmark — the name of the test, e.g. "article", followed by the label of the field being measured, e.g. "(title)".
latency — the time between when a key was pressed and when it was rendered. derived from a set of samples. the median (p50) is shown to show the most common latency.
p75 — the 75th percentile of the input latency in the test run. 75% of the sampled inputs in this benchmark were processed faster than this value. this provides insight into the upper range of typical performance.
p90 — the 90th percentile of the input latency in the test run. 90% of the sampled inputs were faster than this. this metric helps identify slower interactions that occurred less frequently during the benchmark.
p99 — the 99th percentile of the input latency in the test run. only 1% of sampled inputs were slower than this. this represents the worst-case scenarios encountered during the benchmark, useful for identifying potential performance outliers.
blocking time — the total time during which the main thread was blocked, preventing user input and UI updates. this metric helps identify performance bottlenecks that may cause the interface to feel unresponsive.
test duration — how long the test run took to complete.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Edge case, but some plugins/setups apparently define a
key
property for structurecomponent
panes, which gives a warning aboutA props object containing a "key" prop is being spread into JSX
when we render. This PR explicitly calls outkey
as being deprecated/should be avoided, but also picks it out of the props being spread and explicitly forwards it. This ensures backwards compatibility as well as avoiding the error, and potentially helps developers know not to pass it in the first place.What to review
User component panes still work as expected
Testing
Very edge-case, so not adding a test here.
Notes for release
None