Skip to content

Upgrade Typescript 5.x - #5340

Merged
nazarhussain merged 4 commits into
unstablefrom
nh/upgrade-ts
Apr 5, 2023
Merged

Upgrade Typescript 5.x#5340
nazarhussain merged 4 commits into
unstablefrom
nh/upgrade-ts

Conversation

@nazarhussain

@nazarhussain nazarhussain commented Apr 4, 2023

Copy link
Copy Markdown
Contributor

Motivation

Keep the dependencies on cutting edge.

Description

Upgrade Typescript to 5.x

Steps to test or reproduce

Run all tests.

@nazarhussain nazarhussain changed the title Upgrade Typescript 5.0 Upgrade Typescript 5.x Apr 4, 2023
@github-actions

github-actions Bot commented Apr 4, 2023

Copy link
Copy Markdown
Contributor

Performance Report

鉁旓笍 no performance regression detected

Full benchmark results
Benchmark suite Current: 7ff5d43 Previous: 887064d Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 871.69 us/op 712.14 us/op 1.22
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 47.650 us/op 48.253 us/op 0.99
BLS verify - blst-native 1.2122 ms/op 1.2805 ms/op 0.95
BLS verifyMultipleSignatures 3 - blst-native 2.5091 ms/op 2.5904 ms/op 0.97
BLS verifyMultipleSignatures 8 - blst-native 5.2995 ms/op 5.6022 ms/op 0.95
BLS verifyMultipleSignatures 32 - blst-native 19.327 ms/op 20.067 ms/op 0.96
BLS aggregatePubkeys 32 - blst-native 25.606 us/op 26.881 us/op 0.95
BLS aggregatePubkeys 128 - blst-native 101.00 us/op 104.50 us/op 0.97
getAttestationsForBlock 55.761 ms/op 63.909 ms/op 0.87
isKnown best case - 1 super set check 265.00 ns/op 267.00 ns/op 0.99
isKnown normal case - 2 super set checks 258.00 ns/op 264.00 ns/op 0.98
isKnown worse case - 16 super set checks 260.00 ns/op 262.00 ns/op 0.99
CheckpointStateCache - add get delete 4.9530 us/op 5.2480 us/op 0.94
validate gossip signedAggregateAndProof - struct 2.7692 ms/op 2.8761 ms/op 0.96
validate gossip attestation - struct 1.3225 ms/op 1.3859 ms/op 0.95
pickEth1Vote - no votes 1.2561 ms/op 1.3652 ms/op 0.92
pickEth1Vote - max votes 10.928 ms/op 11.775 ms/op 0.93
pickEth1Vote - Eth1Data hashTreeRoot value x2048 8.8611 ms/op 9.4674 ms/op 0.94
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 14.659 ms/op 17.344 ms/op 0.85
pickEth1Vote - Eth1Data fastSerialize value x2048 633.44 us/op 729.57 us/op 0.87
pickEth1Vote - Eth1Data fastSerialize tree x2048 7.9977 ms/op 5.0493 ms/op 1.58
bytes32 toHexString 469.00 ns/op 527.00 ns/op 0.89
bytes32 Buffer.toString(hex) 337.00 ns/op 406.00 ns/op 0.83
bytes32 Buffer.toString(hex) from Uint8Array 547.00 ns/op 633.00 ns/op 0.86
bytes32 Buffer.toString(hex) + 0x 330.00 ns/op 410.00 ns/op 0.80
Object access 1 prop 0.15800 ns/op 0.18500 ns/op 0.85
Map access 1 prop 0.16000 ns/op 0.17100 ns/op 0.94
Object get x1000 7.1020 ns/op 7.0420 ns/op 1.01
Map get x1000 0.62000 ns/op 0.65400 ns/op 0.95
Object set x1000 50.113 ns/op 57.238 ns/op 0.88
Map set x1000 42.457 ns/op 47.788 ns/op 0.89
Return object 10000 times 0.23600 ns/op 0.24970 ns/op 0.95
Throw Error 10000 times 4.1107 us/op 4.4459 us/op 0.92
fastMsgIdFn sha256 / 200 bytes 3.4240 us/op 3.6310 us/op 0.94
fastMsgIdFn h32 xxhash / 200 bytes 305.00 ns/op 296.00 ns/op 1.03
fastMsgIdFn h64 xxhash / 200 bytes 406.00 ns/op 423.00 ns/op 0.96
fastMsgIdFn sha256 / 1000 bytes 11.357 us/op 12.310 us/op 0.92
fastMsgIdFn h32 xxhash / 1000 bytes 426.00 ns/op 434.00 ns/op 0.98
fastMsgIdFn h64 xxhash / 1000 bytes 477.00 ns/op 492.00 ns/op 0.97
fastMsgIdFn sha256 / 10000 bytes 103.10 us/op 109.31 us/op 0.94
fastMsgIdFn h32 xxhash / 10000 bytes 1.9040 us/op 2.0210 us/op 0.94
fastMsgIdFn h64 xxhash / 10000 bytes 1.3440 us/op 1.4360 us/op 0.94
enrSubnets - fastDeserialize 64 bits 1.3190 us/op 1.3600 us/op 0.97
enrSubnets - ssz BitVector 64 bits 514.00 ns/op 513.00 ns/op 1.00
enrSubnets - fastDeserialize 4 bits 188.00 ns/op 184.00 ns/op 1.02
enrSubnets - ssz BitVector 4 bits 515.00 ns/op 522.00 ns/op 0.99
prioritizePeers score -10:0 att 32-0.1 sync 2-0 101.34 us/op 125.68 us/op 0.81
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 132.22 us/op 160.60 us/op 0.82
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 165.77 us/op 191.84 us/op 0.86
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 316.57 us/op 353.40 us/op 0.90
prioritizePeers score 0:0 att 64-1 sync 4-1 371.56 us/op 428.13 us/op 0.87
array of 16000 items push then shift 1.6388 us/op 1.7035 us/op 0.96
LinkedList of 16000 items push then shift 8.8910 ns/op 9.1510 ns/op 0.97
array of 16000 items push then pop 79.613 ns/op 120.59 ns/op 0.66
LinkedList of 16000 items push then pop 8.5620 ns/op 9.0210 ns/op 0.95
array of 24000 items push then shift 2.3226 us/op 2.4093 us/op 0.96
LinkedList of 24000 items push then shift 8.7690 ns/op 9.5340 ns/op 0.92
array of 24000 items push then pop 77.815 ns/op 86.208 ns/op 0.90
LinkedList of 24000 items push then pop 8.5680 ns/op 10.009 ns/op 0.86
intersect bitArray bitLen 8 13.170 ns/op 14.345 ns/op 0.92
intersect array and set length 8 78.470 ns/op 89.620 ns/op 0.88
intersect bitArray bitLen 128 43.631 ns/op 45.589 ns/op 0.96
intersect array and set length 128 1.0577 us/op 1.2351 us/op 0.86
Buffer.concat 32 items 2.9710 us/op 2.8380 us/op 1.05
Uint8Array.set 32 items 3.1610 us/op 2.8230 us/op 1.12
pass gossip attestations to forkchoice per slot 2.8894 ms/op 3.1412 ms/op 0.92
computeDeltas 3.0568 ms/op 3.0552 ms/op 1.00
computeProposerBoostScoreFromBalances 1.7862 ms/op 1.8214 ms/op 0.98
altair processAttestation - 250000 vs - 7PWei normalcase 2.3438 ms/op 2.4099 ms/op 0.97
altair processAttestation - 250000 vs - 7PWei worstcase 3.4749 ms/op 3.6556 ms/op 0.95
altair processAttestation - setStatus - 1/6 committees join 141.00 us/op 152.07 us/op 0.93
altair processAttestation - setStatus - 1/3 committees join 280.49 us/op 294.76 us/op 0.95
altair processAttestation - setStatus - 1/2 committees join 397.42 us/op 389.02 us/op 1.02
altair processAttestation - setStatus - 2/3 committees join 486.61 us/op 485.74 us/op 1.00
altair processAttestation - setStatus - 4/5 committees join 674.99 us/op 678.43 us/op 0.99
altair processAttestation - setStatus - 100% committees join 785.87 us/op 825.50 us/op 0.95
altair processBlock - 250000 vs - 7PWei normalcase 20.305 ms/op 19.148 ms/op 1.06
altair processBlock - 250000 vs - 7PWei normalcase hashState 26.975 ms/op 27.580 ms/op 0.98
altair processBlock - 250000 vs - 7PWei worstcase 47.910 ms/op 53.271 ms/op 0.90
altair processBlock - 250000 vs - 7PWei worstcase hashState 71.232 ms/op 81.103 ms/op 0.88
phase0 processBlock - 250000 vs - 7PWei normalcase 2.2768 ms/op 2.2785 ms/op 1.00
phase0 processBlock - 250000 vs - 7PWei worstcase 30.074 ms/op 32.269 ms/op 0.93
altair processEth1Data - 250000 vs - 7PWei normalcase 486.64 us/op 569.72 us/op 0.85
vc - 250000 eb 1 eth1 1 we 0 wn 0 - smpl 15 8.5630 us/op 8.1840 us/op 1.05
vc - 250000 eb 0.95 eth1 0.1 we 0.05 wn 0 - smpl 219 29.668 us/op 24.184 us/op 1.23
vc - 250000 eb 0.95 eth1 0.3 we 0.05 wn 0 - smpl 42 11.996 us/op 10.506 us/op 1.14
vc - 250000 eb 0.95 eth1 0.7 we 0.05 wn 0 - smpl 18 10.557 us/op 8.1060 us/op 1.30
vc - 250000 eb 0.1 eth1 0.1 we 0 wn 0 - smpl 1020 113.39 us/op 101.08 us/op 1.12
vc - 250000 eb 0.03 eth1 0.03 we 0 wn 0 - smpl 11777 661.37 us/op 782.86 us/op 0.84
vc - 250000 eb 0.01 eth1 0.01 we 0 wn 0 - smpl 16384 919.90 us/op 1.0940 ms/op 0.84
vc - 250000 eb 0 eth1 0 we 0 wn 0 - smpl 16384 919.90 us/op 1.0286 ms/op 0.89
vc - 250000 eb 0 eth1 0 we 0 wn 0 nocache - smpl 16384 2.3491 ms/op 2.4923 ms/op 0.94
vc - 250000 eb 0 eth1 1 we 0 wn 0 - smpl 16384 1.4982 ms/op 1.8486 ms/op 0.81
vc - 250000 eb 0 eth1 1 we 0 wn 0 nocache - smpl 16384 4.2829 ms/op 4.3451 ms/op 0.99
Tree 40 250000 create 320.12 ms/op 356.20 ms/op 0.90
Tree 40 250000 get(125000) 177.91 ns/op 201.81 ns/op 0.88
Tree 40 250000 set(125000) 940.21 ns/op 1.0450 us/op 0.90
Tree 40 250000 toArray() 20.206 ms/op 23.136 ms/op 0.87
Tree 40 250000 iterate all - toArray() + loop 21.696 ms/op 22.687 ms/op 0.96
Tree 40 250000 iterate all - get(i) 71.699 ms/op 77.367 ms/op 0.93
MutableVector 250000 create 9.2850 ms/op 12.825 ms/op 0.72
MutableVector 250000 get(125000) 6.5080 ns/op 6.7190 ns/op 0.97
MutableVector 250000 set(125000) 268.20 ns/op 309.38 ns/op 0.87
MutableVector 250000 toArray() 2.8704 ms/op 4.1861 ms/op 0.69
MutableVector 250000 iterate all - toArray() + loop 3.1149 ms/op 3.4936 ms/op 0.89
MutableVector 250000 iterate all - get(i) 1.4979 ms/op 1.6534 ms/op 0.91
Array 250000 create 2.4501 ms/op 2.6802 ms/op 0.91
Array 250000 clone - spread 1.0425 ms/op 1.1486 ms/op 0.91
Array 250000 get(125000) 0.52900 ns/op 0.58900 ns/op 0.90
Array 250000 set(125000) 0.60600 ns/op 0.75800 ns/op 0.80
Array 250000 iterate all - loop 82.636 us/op 87.714 us/op 0.94
effectiveBalanceIncrements clone Uint8Array 300000 24.094 us/op 29.076 us/op 0.83
effectiveBalanceIncrements clone MutableVector 300000 323.00 ns/op 367.00 ns/op 0.88
effectiveBalanceIncrements rw all Uint8Array 300000 167.39 us/op 181.37 us/op 0.92
effectiveBalanceIncrements rw all MutableVector 300000 77.296 ms/op 85.554 ms/op 0.90
phase0 afterProcessEpoch - 250000 vs - 7PWei 113.01 ms/op 123.74 ms/op 0.91
phase0 beforeProcessEpoch - 250000 vs - 7PWei 42.637 ms/op 46.073 ms/op 0.93
altair processEpoch - mainnet_e81889 320.61 ms/op 362.31 ms/op 0.88
mainnet_e81889 - altair beforeProcessEpoch 51.859 ms/op 70.354 ms/op 0.74
mainnet_e81889 - altair processJustificationAndFinalization 16.667 us/op 17.024 us/op 0.98
mainnet_e81889 - altair processInactivityUpdates 5.6231 ms/op 6.0316 ms/op 0.93
mainnet_e81889 - altair processRewardsAndPenalties 69.874 ms/op 73.643 ms/op 0.95
mainnet_e81889 - altair processRegistryUpdates 3.1030 us/op 3.1720 us/op 0.98
mainnet_e81889 - altair processSlashings 418.00 ns/op 574.00 ns/op 0.73
mainnet_e81889 - altair processEth1DataReset 520.00 ns/op 537.00 ns/op 0.97
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.2612 ms/op 1.5547 ms/op 0.81
mainnet_e81889 - altair processSlashingsReset 3.8060 us/op 4.0560 us/op 0.94
mainnet_e81889 - altair processRandaoMixesReset 6.0420 us/op 5.0050 us/op 1.21
mainnet_e81889 - altair processHistoricalRootsUpdate 729.00 ns/op 674.00 ns/op 1.08
mainnet_e81889 - altair processParticipationFlagUpdates 2.5210 us/op 3.3510 us/op 0.75
mainnet_e81889 - altair processSyncCommitteeUpdates 492.00 ns/op 670.00 ns/op 0.73
mainnet_e81889 - altair afterProcessEpoch 129.92 ms/op 135.77 ms/op 0.96
phase0 processEpoch - mainnet_e58758 338.27 ms/op 360.87 ms/op 0.94
mainnet_e58758 - phase0 beforeProcessEpoch 110.00 ms/op 132.24 ms/op 0.83
mainnet_e58758 - phase0 processJustificationAndFinalization 17.362 us/op 20.122 us/op 0.86
mainnet_e58758 - phase0 processRewardsAndPenalties 51.684 ms/op 55.790 ms/op 0.93
mainnet_e58758 - phase0 processRegistryUpdates 7.9210 us/op 7.8680 us/op 1.01
mainnet_e58758 - phase0 processSlashings 486.00 ns/op 506.00 ns/op 0.96
mainnet_e58758 - phase0 processEth1DataReset 484.00 ns/op 649.00 ns/op 0.75
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 998.07 us/op 1.2743 ms/op 0.78
mainnet_e58758 - phase0 processSlashingsReset 3.2360 us/op 8.4360 us/op 0.38
mainnet_e58758 - phase0 processRandaoMixesReset 4.3890 us/op 4.6350 us/op 0.95
mainnet_e58758 - phase0 processHistoricalRootsUpdate 579.00 ns/op 646.00 ns/op 0.90
mainnet_e58758 - phase0 processParticipationRecordUpdates 5.7230 us/op 4.5720 us/op 1.25
mainnet_e58758 - phase0 afterProcessEpoch 93.253 ms/op 103.58 ms/op 0.90
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.2117 ms/op 1.2948 ms/op 0.94
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.4663 ms/op 1.8965 ms/op 0.77
altair processInactivityUpdates - 250000 normalcase 24.250 ms/op 30.135 ms/op 0.80
altair processInactivityUpdates - 250000 worstcase 24.666 ms/op 29.593 ms/op 0.83
phase0 processRegistryUpdates - 250000 normalcase 6.6710 us/op 7.8350 us/op 0.85
phase0 processRegistryUpdates - 250000 badcase_full_deposits 231.10 us/op 333.98 us/op 0.69
phase0 processRegistryUpdates - 250000 worstcase 0.5 124.07 ms/op 130.12 ms/op 0.95
altair processRewardsAndPenalties - 250000 normalcase 69.060 ms/op 71.283 ms/op 0.97
altair processRewardsAndPenalties - 250000 worstcase 69.243 ms/op 73.677 ms/op 0.94
phase0 getAttestationDeltas - 250000 normalcase 6.6823 ms/op 7.0390 ms/op 0.95
phase0 getAttestationDeltas - 250000 worstcase 6.7033 ms/op 7.5930 ms/op 0.88
phase0 processSlashings - 250000 worstcase 3.6436 ms/op 3.9278 ms/op 0.93
altair processSyncCommitteeUpdates - 250000 185.56 ms/op 193.74 ms/op 0.96
BeaconState.hashTreeRoot - No change 335.00 ns/op 372.00 ns/op 0.90
BeaconState.hashTreeRoot - 1 full validator 53.030 us/op 55.501 us/op 0.96
BeaconState.hashTreeRoot - 32 full validator 543.05 us/op 600.46 us/op 0.90
BeaconState.hashTreeRoot - 512 full validator 5.3507 ms/op 6.1384 ms/op 0.87
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 62.805 us/op 74.469 us/op 0.84
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 911.66 us/op 1.0545 ms/op 0.86
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 11.820 ms/op 12.766 ms/op 0.93
BeaconState.hashTreeRoot - 1 balances 50.528 us/op 56.010 us/op 0.90
BeaconState.hashTreeRoot - 32 balances 475.71 us/op 512.47 us/op 0.93
BeaconState.hashTreeRoot - 512 balances 4.5205 ms/op 5.1991 ms/op 0.87
BeaconState.hashTreeRoot - 250000 balances 73.598 ms/op 83.488 ms/op 0.88
aggregationBits - 2048 els - zipIndexesInBitList 15.439 us/op 17.529 us/op 0.88
regular array get 100000 times 39.427 us/op 35.390 us/op 1.11
wrappedArray get 100000 times 32.602 us/op 35.367 us/op 0.92
arrayWithProxy get 100000 times 17.121 ms/op 18.250 ms/op 0.94
ssz.Root.equals 572.00 ns/op 632.00 ns/op 0.91
byteArrayEquals 531.00 ns/op 564.00 ns/op 0.94
shuffle list - 16384 els 6.9824 ms/op 7.2296 ms/op 0.97
shuffle list - 250000 els 102.09 ms/op 105.87 ms/op 0.96
processSlot - 1 slots 8.8080 us/op 9.1240 us/op 0.97
processSlot - 32 slots 1.4709 ms/op 1.4628 ms/op 1.01
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 37.105 ms/op 40.710 ms/op 0.91
getCommitteeAssignments - req 1 vs - 250000 vc 3.0119 ms/op 3.0902 ms/op 0.97
getCommitteeAssignments - req 100 vs - 250000 vc 4.2465 ms/op 4.3764 ms/op 0.97
getCommitteeAssignments - req 1000 vs - 250000 vc 4.5946 ms/op 4.6727 ms/op 0.98
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 5.0600 ns/op 4.9700 ns/op 1.02
state getBlockRootAtSlot - 250000 vs - 7PWei 641.60 ns/op 650.80 ns/op 0.99
computeProposers - vc 250000 10.995 ms/op 11.174 ms/op 0.98
computeEpochShuffling - vc 250000 106.77 ms/op 112.71 ms/op 0.95
getNextSyncCommittee - vc 250000 177.55 ms/op 186.45 ms/op 0.95

by benchmarkbot/action

@nazarhussain
nazarhussain marked this pull request as ready for review April 4, 2023 14:22
@nazarhussain
nazarhussain requested a review from a team as a code owner April 4, 2023 14:22
@nazarhussain nazarhussain self-assigned this Apr 4, 2023
@matthewkeil

Copy link
Copy Markdown
Member

I was able to pull and build the branch.

Screen Shot 2023-04-05 at 4 41 08 AM

@nazarhussain nazarhussain added this to the v1.8.0 milestone Apr 5, 2023
@nazarhussain
nazarhussain merged commit 1e0eba3 into unstable Apr 5, 2023
@nazarhussain
nazarhussain deleted the nh/upgrade-ts branch April 5, 2023 08:51
@wemeetagain

Copy link
Copy Markdown
Member

馃帀 This PR is included in v1.8.0 馃帀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants