Skip to content

fix: correct release workflow publish issues#513

Open
wemeetagain wants to merge 1 commit intomasterfrom
fix/release-workflow-publish
Open

fix: correct release workflow publish issues#513
wemeetagain wants to merge 1 commit intomasterfrom
fix/release-workflow-publish

Conversation

@wemeetagain
Copy link
Member

Summary

  • Fix typo: release_created (singular) → releases_created (plural) on the pnpm/action-setup step — this caused the step to silently be skipped on every release
  • Add missing conditional to corepack enable so it only runs when a release is created
  • Add registry-url to actions/setup-node so the OIDC token exchange can authenticate against npm for trusted publishing

Test plan

  • Verify release workflow runs correctly on next release-please PR merge
  • Confirm npm packages are published with provenance

🤖 Generated with Claude Code

- Fix typo: `release_created` → `releases_created` on pnpm setup step
- Add missing conditional to `corepack enable` step
- Add `registry-url` to setup-node for OIDC npm trusted publishing

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@wemeetagain wemeetagain requested a review from a team as a code owner March 17, 2026 21:31
@github-actions github-actions bot added the CI label Mar 17, 2026
@github-actions
Copy link

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 5888957 Previous: 1d0ff62 Ratio
digestTwoHashObjects 50023 times 48.048 ms/op 48.267 ms/op 1.00
digest2Bytes32 50023 times 55.173 ms/op 54.974 ms/op 1.00
digest 50023 times 53.478 ms/op 54.196 ms/op 0.99
input length 32 1.2240 us/op 1.2350 us/op 0.99
input length 64 1.4280 us/op 1.3910 us/op 1.03
input length 128 2.3150 us/op 2.3090 us/op 1.00
input length 256 3.3820 us/op 3.4960 us/op 0.97
input length 512 5.6440 us/op 5.6330 us/op 1.00
input length 1024 10.791 us/op 10.871 us/op 0.99
digest 1000000 times 898.11 ms/op 869.43 ms/op 1.03
hashObjectToByteArray 50023 times 935.80 us/op 936.63 us/op 1.00
byteArrayToHashObject 50023 times 1.3563 ms/op 1.3196 ms/op 1.03
digest64 200092 times 213.48 ms/op 215.40 ms/op 0.99
hash 200092 times using batchHash4UintArray64s 242.24 ms/op 235.99 ms/op 1.03
digest64HashObjects 200092 times 190.89 ms/op 191.99 ms/op 0.99
hash 200092 times using batchHash4HashObjectInputs 197.99 ms/op 196.49 ms/op 1.01
getGindicesAtDepth 3.8270 us/op 3.5730 us/op 1.07
iterateAtDepth 6.9250 us/op 6.5780 us/op 1.05
getGindexBits 454.00 ns/op 533.00 ns/op 0.85
gindexIterator 920.00 ns/op 978.00 ns/op 0.94
HashComputationLevel.push then loop 29.113 ms/op 27.886 ms/op 1.04
HashComputation[] push then loop 50.193 ms/op 49.700 ms/op 1.01
hash 2 32 bytes Uint8Array 500000 times - hashtree 148.97 ms/op 150.44 ms/op 0.99
batch hash 16 x 64 Uint8Array 31250 times - hashtree 24.471 ms/op 24.410 ms/op 1.00
hashTwoObjects 500000 times - hashtree 168.81 ms/op 172.19 ms/op 0.98
executeHashComputations - hashtree 9.5493 ms/op 9.4993 ms/op 1.01
hash 2 32 bytes Uint8Array 500000 times - as-sha256 492.46 ms/op 488.47 ms/op 1.01
batch hash 16 x 64 Uint8Array 31250 times - as-sha256 559.54 ms/op 524.05 ms/op 1.07
hashTwoObjects 500000 times - as-sha256 509.36 ms/op 506.07 ms/op 1.01
executeHashComputations - as-sha256 47.378 ms/op 46.555 ms/op 1.02
hash 2 32 bytes Uint8Array 500000 times - noble 1.3148 s/op 1.2401 s/op 1.06
batch hash 16 x 64 Uint8Array 31250 times - noble 1.2900 s/op 1.2170 s/op 1.06
hashTwoObjects 500000 times - noble 1.6863 s/op 1.5287 s/op 1.10
executeHashComputations - noble 36.345 ms/op 37.049 ms/op 0.98
getHashComputations 2.5688 ms/op 2.4945 ms/op 1.03
executeHashComputations 10.982 ms/op 9.9182 ms/op 1.11
get root 12.670 ms/op 12.659 ms/op 1.00
getNodeH() x7812.5 avg hindex 12.085 us/op 13.296 us/op 0.91
getNodeH() x7812.5 index 0 7.4730 us/op 8.0340 us/op 0.93
getNodeH() x7812.5 index 7 7.4930 us/op 7.5070 us/op 1.00
getNodeH() x7812.5 index 7 with key array 6.2580 us/op 6.2860 us/op 1.00
new LeafNode() x7812.5 310.17 us/op 321.94 us/op 0.96
getHashComputations 250000 nodes 16.150 ms/op 16.494 ms/op 0.98
batchHash 250000 nodes 81.818 ms/op 85.818 ms/op 0.95
get root 250000 nodes 93.597 ms/op 95.391 ms/op 0.98
getHashComputations 500000 nodes 31.048 ms/op 35.585 ms/op 0.87
batchHash 500000 nodes 151.88 ms/op 164.89 ms/op 0.92
get root 500000 nodes 187.14 ms/op 189.74 ms/op 0.99
getHashComputations 1000000 nodes 59.925 ms/op 60.321 ms/op 0.99
batchHash 1000000 nodes 357.53 ms/op 324.84 ms/op 1.10
get root 1000000 nodes 374.30 ms/op 379.53 ms/op 0.99
multiproof - depth 15, 1 requested leaves 8.3550 us/op 7.9580 us/op 1.05
tree offset multiproof - depth 15, 1 requested leaves 18.342 us/op 17.380 us/op 1.06
compact multiproof - depth 15, 1 requested leaves 3.3940 us/op 3.5620 us/op 0.95
multiproof - depth 15, 2 requested leaves 11.373 us/op 11.061 us/op 1.03
tree offset multiproof - depth 15, 2 requested leaves 23.193 us/op 20.471 us/op 1.13
compact multiproof - depth 15, 2 requested leaves 4.8830 us/op 3.4510 us/op 1.41
multiproof - depth 15, 3 requested leaves 18.099 us/op 15.539 us/op 1.16
tree offset multiproof - depth 15, 3 requested leaves 31.294 us/op 26.846 us/op 1.17
compact multiproof - depth 15, 3 requested leaves 5.5680 us/op 4.0240 us/op 1.38
multiproof - depth 15, 4 requested leaves 23.213 us/op 20.738 us/op 1.12
tree offset multiproof - depth 15, 4 requested leaves 37.620 us/op 33.218 us/op 1.13
compact multiproof - depth 15, 4 requested leaves 4.8100 us/op 4.2540 us/op 1.13
packedRootsBytesToLeafNodes bytes 4000 offset 0 6.0000 us/op 6.0100 us/op 1.00
packedRootsBytesToLeafNodes bytes 4000 offset 1 6.2580 us/op 5.3920 us/op 1.16
packedRootsBytesToLeafNodes bytes 4000 offset 2 6.1070 us/op 5.4100 us/op 1.13
packedRootsBytesToLeafNodes bytes 4000 offset 3 6.5030 us/op 5.4080 us/op 1.20
subtreeFillToContents depth 40 count 250000 49.909 ms/op 42.256 ms/op 1.18
setRoot - gindexBitstring 23.287 ms/op 19.982 ms/op 1.17
setRoot - gindex 21.740 ms/op 20.665 ms/op 1.05
getRoot - gindexBitstring 2.4931 ms/op 2.3966 ms/op 1.04
getRoot - gindex 3.0389 ms/op 3.0024 ms/op 1.01
getHashObject then setHashObject 21.256 ms/op 21.070 ms/op 1.01
setNodeWithFn 18.448 ms/op 18.819 ms/op 0.98
getNodeAtDepth depth 0 x100000 280.66 us/op 280.87 us/op 1.00
setNodeAtDepth depth 0 x100000 2.2648 ms/op 2.4067 ms/op 0.94
getNodesAtDepth depth 0 x100000 313.75 us/op 314.20 us/op 1.00
setNodesAtDepth depth 0 x100000 800.83 us/op 768.07 us/op 1.04
getNodeAtDepth depth 1 x100000 342.69 us/op 349.49 us/op 0.98
setNodeAtDepth depth 1 x100000 7.3720 ms/op 7.7144 ms/op 0.96
getNodesAtDepth depth 1 x100000 436.13 us/op 444.79 us/op 0.98
setNodesAtDepth depth 1 x100000 6.4059 ms/op 6.3794 ms/op 1.00
getNodeAtDepth depth 2 x100000 848.56 us/op 867.19 us/op 0.98
setNodeAtDepth depth 2 x100000 14.233 ms/op 14.697 ms/op 0.97
getNodesAtDepth depth 2 x100000 19.249 ms/op 18.867 ms/op 1.02
setNodesAtDepth depth 2 x100000 22.002 ms/op 23.887 ms/op 0.92
tree.getNodesAtDepth - gindexes 8.4906 ms/op 7.2219 ms/op 1.18
tree.getNodesAtDepth - push all nodes 2.0964 ms/op 2.3240 ms/op 0.90
tree.getNodesAtDepth - navigation 312.30 us/op 315.47 us/op 0.99
tree.setNodesAtDepth - indexes 712.82 us/op 682.78 us/op 1.04
set at depth 8 787.00 ns/op 818.00 ns/op 0.96
set at depth 16 1.2240 us/op 1.1510 us/op 1.06
set at depth 32 2.1610 us/op 2.0200 us/op 1.07
iterateNodesAtDepth 8 256 13.959 us/op 13.566 us/op 1.03
getNodesAtDepth 8 256 3.7130 us/op 3.5900 us/op 1.03
iterateNodesAtDepth 16 65536 4.6193 ms/op 4.4703 ms/op 1.03
getNodesAtDepth 16 65536 1.1956 ms/op 1.1897 ms/op 1.00
iterateNodesAtDepth 32 250000 16.476 ms/op 16.418 ms/op 1.00
getNodesAtDepth 32 250000 4.6238 ms/op 4.9933 ms/op 0.93
iterateNodesAtDepth 40 250000 16.386 ms/op 16.709 ms/op 0.98
getNodesAtDepth 40 250000 4.6405 ms/op 4.9807 ms/op 0.93
250000 validators root getter 95.540 ms/op 97.724 ms/op 0.98
250000 validators batchHash() 92.536 ms/op 90.575 ms/op 1.02
250000 validators hashComputations 20.494 ms/op 19.265 ms/op 1.06
bitlist bytes to struct (120,90) 542.00 ns/op 518.00 ns/op 1.05
bitlist bytes to tree (120,90) 2.3370 us/op 2.0760 us/op 1.13
bitlist bytes to struct (2048,2048) 1.0940 us/op 889.00 ns/op 1.23
bitlist bytes to tree (2048,2048) 4.3990 us/op 3.4670 us/op 1.27
ByteListType - deserialize 10.666 ms/op 9.1630 ms/op 1.16
BasicListType - deserialize 10.670 ms/op 9.2182 ms/op 1.16
ByteListType - serialize 11.719 ms/op 9.2197 ms/op 1.27
BasicListType - serialize 12.918 ms/op 9.0995 ms/op 1.42
BasicListType - tree_convertToStruct 23.697 ms/op 20.696 ms/op 1.15
List[uint8, 68719476736] len 300000 ViewDU.getAll() + iterate 6.4605 ms/op 4.6853 ms/op 1.38
List[uint8, 68719476736] len 300000 ViewDU.get(i) 4.4001 ms/op 4.3799 ms/op 1.00
Array.push len 300000 empty Array - number 8.0237 ms/op 6.5378 ms/op 1.23
Array.set len 300000 from new Array - number 2.1910 ms/op 1.8651 ms/op 1.17
Array.set len 300000 - number 6.8118 ms/op 6.2447 ms/op 1.09
Uint8Array.set len 300000 396.96 us/op 374.28 us/op 1.06
Uint32Array.set len 300000 517.24 us/op 442.85 us/op 1.17
Container({a: uint8, b: uint8}) getViewDU x300000 33.502 ms/op 29.464 ms/op 1.14
ContainerNodeStruct({a: uint8, b: uint8}) getViewDU x300000 12.373 ms/op 10.683 ms/op 1.16
List(Container) len 300000 ViewDU.getAllReadonly() + iterate 199.26 ms/op 209.64 ms/op 0.95
List(Container) len 300000 ViewDU.getAllReadonlyValues() + iterate 245.03 ms/op 234.29 ms/op 1.05
List(Container) len 300000 ViewDU.get(i) 6.7419 ms/op 6.3033 ms/op 1.07
List(Container) len 300000 ViewDU.getReadonly(i) 6.6422 ms/op 6.3331 ms/op 1.05
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonly() + iterate 38.103 ms/op 38.312 ms/op 0.99
List(ContainerNodeStruct) len 300000 ViewDU.getAllReadonlyValues() + iterate 5.5017 ms/op 5.2874 ms/op 1.04
List(ContainerNodeStruct) len 300000 ViewDU.get(i) 6.3126 ms/op 5.9578 ms/op 1.06
List(ContainerNodeStruct) len 300000 ViewDU.getReadonly(i) 6.7809 ms/op 5.9531 ms/op 1.14
Array.push len 300000 empty Array - object 7.0520 ms/op 6.7024 ms/op 1.05
Array.set len 300000 from new Array - object 2.1944 ms/op 2.1425 ms/op 1.02
Array.set len 300000 - object 6.8476 ms/op 6.3884 ms/op 1.07
cachePermanentRootStruct no cache 3.2470 us/op 3.1520 us/op 1.03
cachePermanentRootStruct with cache 181.00 ns/op 201.00 ns/op 0.90
epochParticipation len 250000 rws 7813 2.4334 ms/op 2.3280 ms/op 1.05
Deneb BeaconBlock.hashTreeRoot(), numTransaction=200 4.9763 ms/op 4.5898 ms/op 1.08
BeaconState ViewDU batchHashTreeRoot vc=200000 mod=100000 217.96 ms/op 213.39 ms/op 1.02
BeaconState ViewDU batchHashTreeRoot - commit step vc=200000 mod=100000 190.01 ms/op 176.28 ms/op 1.08
BeaconState ViewDU batchHashTreeRoot - hash step vc=200000 mod=100000 50.107 ms/op 48.311 ms/op 1.04
BeaconState ViewDU hashTreeRoot() vc=200000 mod=100000 718.73 ms/op 700.33 ms/op 1.03
BeaconState ViewDU hashTreeRoot - commit step vc=200000 mod=100000 64.315 ms/op 63.861 ms/op 1.01
BeaconState ViewDU hashTreeRoot - validator tree creation vc=100000 mod=100000 283.30 ms/op 284.20 ms/op 1.00
deserialize Attestation - tree 4.0660 us/op 3.6890 us/op 1.10
deserialize Attestation - struct 2.1280 us/op 1.9660 us/op 1.08
deserialize Attestation - struct (reuse bytes) 1.6530 us/op 1.5280 us/op 1.08
deserialize SignedAggregateAndProof - tree 5.1770 us/op 4.8810 us/op 1.06
deserialize SignedAggregateAndProof - struct 3.2240 us/op 3.0730 us/op 1.05
deserialize SignedAggregateAndProof - struct (reuse bytes) 2.1020 us/op 2.0450 us/op 1.03
deserialize SyncCommitteeMessage - tree 1.5920 us/op 1.4620 us/op 1.09
deserialize SyncCommitteeMessage - struct 1.1330 us/op 1.1290 us/op 1.00
deserialize SyncCommitteeMessage - struct (reuse bytes) 813.00 ns/op 759.00 ns/op 1.07
deserialize SignedContributionAndProof - tree 3.1080 us/op 2.8790 us/op 1.08
deserialize SignedContributionAndProof - struct 2.7220 us/op 2.3690 us/op 1.15
deserialize SignedContributionAndProof - struct (reuse bytes) 1.3790 us/op 1.3240 us/op 1.04
deserialize SignedBeaconBlock - tree 307.06 us/op 272.10 us/op 1.13
deserialize SignedBeaconBlock - struct 134.88 us/op 128.43 us/op 1.05
deserialize SignedBeaconBlock - struct (reuse bytes) 84.320 us/op 82.249 us/op 1.03
BeaconState vc 300000 - deserialize tree 664.92 ms/op 635.07 ms/op 1.05
BeaconState vc 300000 - serialize tree 93.112 ms/op 80.304 ms/op 1.16
BeaconState.historicalRoots vc 300000 - deserialize tree 1.0570 us/op 888.00 ns/op 1.19
BeaconState.historicalRoots vc 300000 - serialize tree 758.00 ns/op 654.00 ns/op 1.16
BeaconState.validators vc 300000 - deserialize tree 641.90 ms/op 614.92 ms/op 1.04
BeaconState.validators vc 300000 - serialize tree 36.775 ms/op 28.848 ms/op 1.27
BeaconState.balances vc 300000 - deserialize tree 28.005 ms/op 29.596 ms/op 0.95
BeaconState.balances vc 300000 - serialize tree 4.8697 ms/op 3.7653 ms/op 1.29
BeaconState.previousEpochParticipation vc 300000 - deserialize tree 1.0613 ms/op 932.35 us/op 1.14
BeaconState.previousEpochParticipation vc 300000 - serialize tree 320.44 us/op 329.89 us/op 0.97
BeaconState.currentEpochParticipation vc 300000 - deserialize tree 1.0640 ms/op 958.04 us/op 1.11
BeaconState.currentEpochParticipation vc 300000 - serialize tree 324.00 us/op 328.67 us/op 0.99
BeaconState.inactivityScores vc 300000 - deserialize tree 27.707 ms/op 29.069 ms/op 0.95
BeaconState.inactivityScores vc 300000 - serialize tree 5.4410 ms/op 4.5746 ms/op 1.19
hashTreeRoot Attestation - struct 11.911 us/op 10.223 us/op 1.17
hashTreeRoot Attestation - tree 7.5640 us/op 7.6730 us/op 0.99
hashTreeRoot SignedAggregateAndProof - struct 14.747 us/op 13.767 us/op 1.07
hashTreeRoot SignedAggregateAndProof - tree 11.221 us/op 11.255 us/op 1.00
hashTreeRoot SyncCommitteeMessage - struct 3.6230 us/op 3.3610 us/op 1.08
hashTreeRoot SyncCommitteeMessage - tree 2.9550 us/op 2.9080 us/op 1.02
hashTreeRoot SignedContributionAndProof - struct 8.7040 us/op 7.9760 us/op 1.09
hashTreeRoot SignedContributionAndProof - tree 7.5820 us/op 8.0620 us/op 0.94
hashTreeRoot SignedBeaconBlock - struct 818.76 us/op 789.91 us/op 1.04
hashTreeRoot SignedBeaconBlock - tree 674.96 us/op 668.86 us/op 1.01
hashTreeRoot Validator - struct 4.9250 us/op 4.5490 us/op 1.08
hashTreeRoot Validator - tree 6.5720 us/op 5.9580 us/op 1.10
BeaconState vc 300000 - hashTreeRoot tree 2.0421 s/op 2.0530 s/op 0.99
BeaconState vc 300000 - batchHashTreeRoot tree 4.1213 s/op 4.1121 s/op 1.00
BeaconState.historicalRoots vc 300000 - hashTreeRoot tree 849.00 ns/op 878.00 ns/op 0.97
BeaconState.validators vc 300000 - hashTreeRoot tree 2.2078 s/op 2.1140 s/op 1.04
BeaconState.balances vc 300000 - hashTreeRoot tree 31.392 ms/op 32.002 ms/op 0.98
BeaconState.previousEpochParticipation vc 300000 - hashTreeRoot tree 3.5051 ms/op 3.5477 ms/op 0.99
BeaconState.currentEpochParticipation vc 300000 - hashTreeRoot tree 3.4992 ms/op 3.5194 ms/op 0.99
BeaconState.inactivityScores vc 300000 - hashTreeRoot tree 29.278 ms/op 28.128 ms/op 1.04
hash64 x18 8.0570 us/op 7.6380 us/op 1.05
hashTwoObjects x18 6.6870 us/op 6.7350 us/op 0.99
hash64 x1740 711.61 us/op 659.74 us/op 1.08
hashTwoObjects x1740 590.43 us/op 604.87 us/op 0.98
hash64 x2700000 1.0878 s/op 1.0230 s/op 1.06
hashTwoObjects x2700000 935.79 ms/op 954.38 ms/op 0.98
get_exitEpoch - ContainerType 257.00 ns/op 249.00 ns/op 1.03
get_exitEpoch - ContainerNodeStructType 268.00 ns/op 250.00 ns/op 1.07
set_exitEpoch - ContainerType 291.00 ns/op 257.00 ns/op 1.13
set_exitEpoch - ContainerNodeStructType 245.00 ns/op 266.00 ns/op 0.92
get_pubkey - ContainerType 936.00 ns/op 1.3030 us/op 0.72
get_pubkey - ContainerNodeStructType 221.00 ns/op 237.00 ns/op 0.93
hashTreeRoot - ContainerType 427.00 ns/op 441.00 ns/op 0.97
hashTreeRoot - ContainerNodeStructType 430.00 ns/op 435.00 ns/op 0.99
createProof - ContainerType 3.7540 us/op 3.5710 us/op 1.05
createProof - ContainerNodeStructType 19.560 us/op 20.368 us/op 0.96
serialize - ContainerType 1.7500 us/op 1.6330 us/op 1.07
serialize - ContainerNodeStructType 1.2080 us/op 1.1370 us/op 1.06
set_exitEpoch_and_hashTreeRoot - ContainerType 2.7420 us/op 2.4870 us/op 1.10
set_exitEpoch_and_hashTreeRoot - ContainerNodeStructType 7.1470 us/op 7.0150 us/op 1.02
doBatchHashTreeRootValidators 3.7650 us/op 3.6520 us/op 1.03
ContainerNodeStructViewDU hashTreeRoot 22.883 us/op 23.801 us/op 0.96
Array - for of 5.6230 us/op 11.360 us/op 0.49
Array - for(;;) 5.4490 us/op 11.479 us/op 0.47
basicListValue.readonlyValuesArray() 3.7901 ms/op 4.6644 ms/op 0.81
basicListValue.readonlyValuesArray() + loop all 4.5030 ms/op 4.6391 ms/op 0.97
compositeListValue.readonlyValuesArray() 34.844 ms/op 31.174 ms/op 1.12
compositeListValue.readonlyValuesArray() + loop all 31.562 ms/op 31.416 ms/op 1.00
Number64UintType - get balances list 5.2732 ms/op 4.3725 ms/op 1.21
Number64UintType - set balances list 10.293 ms/op 10.355 ms/op 0.99
Number64UintType - get and increase 10 then set 41.897 ms/op 41.874 ms/op 1.00
Number64UintType - increase 10 using applyDelta 18.390 ms/op 15.633 ms/op 1.18
Number64UintType - increase 10 using applyDeltaInBatch 19.129 ms/op 16.449 ms/op 1.16
tree_newTreeFromUint64Deltas 22.673 ms/op 21.971 ms/op 1.03
unsafeUint8ArrayToTree 40.290 ms/op 37.530 ms/op 1.07
bitLength(50) 279.00 ns/op 264.00 ns/op 1.06
bitLengthStr(50) 284.00 ns/op 245.00 ns/op 1.16
bitLength(8000) 302.00 ns/op 257.00 ns/op 1.18
bitLengthStr(8000) 307.00 ns/op 295.00 ns/op 1.04
bitLength(250000) 266.00 ns/op 249.00 ns/op 1.07
bitLengthStr(250000) 316.00 ns/op 345.00 ns/op 0.92
merkleize 32 chunks 12.945 us/op 12.393 us/op 1.04
merkleizeBlocksBytes 32 chunks 3.2150 us/op 3.1700 us/op 1.01
merkleizeBlockArray 32 chunks 6.1810 us/op 5.8490 us/op 1.06
merkleize 128 chunks 51.171 us/op 48.217 us/op 1.06
merkleizeBlocksBytes 128 chunks 7.2600 us/op 7.2950 us/op 1.00
merkleizeBlockArray 128 chunks 17.470 us/op 16.837 us/op 1.04
merkleize 512 chunks 204.76 us/op 192.69 us/op 1.06
merkleizeBlocksBytes 512 chunks 22.758 us/op 22.441 us/op 1.01
merkleizeBlockArray 512 chunks 60.934 us/op 59.836 us/op 1.02
merkleize 1024 chunks 411.53 us/op 404.36 us/op 1.02
merkleizeBlocksBytes 1024 chunks 42.297 us/op 42.402 us/op 1.00
merkleizeBlockArray 1024 chunks 117.31 us/op 117.77 us/op 1.00
floor - Math.floor (53) 1.2456 ns/op 1.2624 ns/op 0.99
floor - << 0 (53) 1.2447 ns/op 1.2470 ns/op 1.00
floor - Math.floor (512) 1.2442 ns/op 1.2510 ns/op 0.99
floor - << 0 (512) 1.2462 ns/op 1.2452 ns/op 1.00
fnIf(0) 1.5581 ns/op 1.5663 ns/op 0.99
fnSwitch(0) 2.1785 ns/op 2.1768 ns/op 1.00
fnObj(0) 1.5567 ns/op 1.5660 ns/op 0.99
fnArr(0) 1.5580 ns/op 1.5565 ns/op 1.00
fnIf(4) 2.1831 ns/op 2.1766 ns/op 1.00
fnSwitch(4) 2.1796 ns/op 2.1780 ns/op 1.00
fnObj(4) 1.5595 ns/op 1.5627 ns/op 1.00
fnArr(4) 1.5570 ns/op 1.5552 ns/op 1.00
fnIf(9) 3.1152 ns/op 3.1219 ns/op 1.00
fnSwitch(9) 2.1796 ns/op 2.1782 ns/op 1.00
fnObj(9) 1.5582 ns/op 1.5620 ns/op 1.00
fnArr(9) 1.5583 ns/op 1.5588 ns/op 1.00
Container {a,b,vec} - as struct x100000 124.64 us/op 124.60 us/op 1.00
Container {a,b,vec} - as tree x100000 560.55 us/op 564.23 us/op 0.99
Container {a,vec,b} - as struct x100000 155.86 us/op 155.90 us/op 1.00
Container {a,vec,b} - as tree x100000 560.65 us/op 560.13 us/op 1.00
get 2 props x1000000 - rawObject 311.59 us/op 311.88 us/op 1.00
get 2 props x1000000 - proxy 73.188 ms/op 73.136 ms/op 1.00
get 2 props x1000000 - customObj 311.59 us/op 311.43 us/op 1.00
Simple object binary -> struct 606.00 ns/op 645.00 ns/op 0.94
Simple object binary -> tree_backed 1.7080 us/op 1.7810 us/op 0.96
Simple object struct -> tree_backed 2.4500 us/op 2.3550 us/op 1.04
Simple object tree_backed -> struct 1.6980 us/op 1.5890 us/op 1.07
Simple object struct -> binary 926.00 ns/op 926.00 ns/op 1.00
Simple object tree_backed -> binary 1.2680 us/op 1.2600 us/op 1.01
aggregationBits binary -> struct 482.00 ns/op 501.00 ns/op 0.96
aggregationBits binary -> tree_backed 2.1530 us/op 2.0330 us/op 1.06
aggregationBits struct -> tree_backed 2.4780 us/op 2.5160 us/op 0.98
aggregationBits tree_backed -> struct 977.00 ns/op 938.00 ns/op 1.04
aggregationBits struct -> binary 718.00 ns/op 697.00 ns/op 1.03
aggregationBits tree_backed -> binary 893.00 ns/op 838.00 ns/op 1.07
List(uint8) 100000 binary -> struct 1.0431 ms/op 1.0884 ms/op 0.96
List(uint8) 100000 binary -> tree_backed 307.13 us/op 271.26 us/op 1.13
List(uint8) 100000 struct -> tree_backed 1.3665 ms/op 1.3436 ms/op 1.02
List(uint8) 100000 tree_backed -> struct 1.0098 ms/op 1.0514 ms/op 0.96
List(uint8) 100000 struct -> binary 1.0768 ms/op 1.0686 ms/op 1.01
List(uint8) 100000 tree_backed -> binary 108.27 us/op 109.23 us/op 0.99
List(uint64Number) 100000 binary -> struct 1.3909 ms/op 1.3427 ms/op 1.04
List(uint64Number) 100000 binary -> tree_backed 4.9836 ms/op 4.4746 ms/op 1.11
List(uint64Number) 100000 struct -> tree_backed 6.8178 ms/op 6.3797 ms/op 1.07
List(uint64Number) 100000 tree_backed -> struct 2.5280 ms/op 2.4399 ms/op 1.04
List(uint64Number) 100000 struct -> binary 1.4221 ms/op 1.4222 ms/op 1.00
List(uint64Number) 100000 tree_backed -> binary 1.0188 ms/op 1.1355 ms/op 0.90
List(Uint64Bigint) 100000 binary -> struct 3.8219 ms/op 4.1023 ms/op 0.93
List(Uint64Bigint) 100000 binary -> tree_backed 4.9472 ms/op 4.9735 ms/op 0.99
List(Uint64Bigint) 100000 struct -> tree_backed 6.8524 ms/op 7.7813 ms/op 0.88
List(Uint64Bigint) 100000 tree_backed -> struct 5.6518 ms/op 5.1800 ms/op 1.09
List(Uint64Bigint) 100000 struct -> binary 2.1205 ms/op 2.1161 ms/op 1.00
List(Uint64Bigint) 100000 tree_backed -> binary 2.0682 ms/op 1.2637 ms/op 1.64
Vector(Root) 100000 binary -> struct 36.630 ms/op 35.711 ms/op 1.03
Vector(Root) 100000 binary -> tree_backed 40.264 ms/op 34.430 ms/op 1.17
Vector(Root) 100000 struct -> tree_backed 51.765 ms/op 52.176 ms/op 0.99
Vector(Root) 100000 tree_backed -> struct 51.123 ms/op 51.973 ms/op 0.98
Vector(Root) 100000 struct -> binary 3.1176 ms/op 3.1621 ms/op 0.99
Vector(Root) 100000 tree_backed -> binary 7.6378 ms/op 7.5896 ms/op 1.01
List(Validator) 100000 binary -> struct 112.22 ms/op 124.24 ms/op 0.90
List(Validator) 100000 binary -> tree_backed 347.08 ms/op 370.96 ms/op 0.94
List(Validator) 100000 struct -> tree_backed 376.53 ms/op 393.65 ms/op 0.96
List(Validator) 100000 tree_backed -> struct 215.22 ms/op 222.43 ms/op 0.97
List(Validator) 100000 struct -> binary 29.629 ms/op 30.252 ms/op 0.98
List(Validator) 100000 tree_backed -> binary 113.99 ms/op 112.13 ms/op 1.02
List(Validator-NS) 100000 binary -> struct 111.62 ms/op 117.25 ms/op 0.95
List(Validator-NS) 100000 binary -> tree_backed 164.38 ms/op 168.97 ms/op 0.97
List(Validator-NS) 100000 struct -> tree_backed 193.45 ms/op 191.88 ms/op 1.01
List(Validator-NS) 100000 tree_backed -> struct 156.50 ms/op 157.88 ms/op 0.99
List(Validator-NS) 100000 struct -> binary 7.6777 ms/op 7.6731 ms/op 1.00
List(Validator-NS) 100000 tree_backed -> binary 14.047 ms/op 14.236 ms/op 0.99
get epochStatuses - MutableVector 106.67 us/op 105.66 us/op 1.01
get epochStatuses - ViewDU 209.26 us/op 209.67 us/op 1.00
set epochStatuses - ListTreeView 2.2666 ms/op 2.2238 ms/op 1.02
set epochStatuses - ListTreeView - set() 449.46 us/op 445.78 us/op 1.01
set epochStatuses - ListTreeView - commit() 764.70 us/op 820.86 us/op 0.93
bitstring 518.05 ns/op 521.31 ns/op 0.99
bit mask 14.085 ns/op 13.603 ns/op 1.04
struct - increase slot to 1000000 936.44 us/op 939.65 us/op 1.00
UintNumberType - increase slot to 1000000 27.758 ms/op 27.763 ms/op 1.00
UintBigintType - increase slot to 1000000 183.53 ms/op 233.80 ms/op 0.79
UintBigint8 x 100000 tree_deserialize 6.0419 ms/op 6.8562 ms/op 0.88
UintBigint8 x 100000 tree_serialize 1.1361 ms/op 1.1374 ms/op 1.00
UintBigint16 x 100000 tree_deserialize 5.9650 ms/op 7.3118 ms/op 0.82
UintBigint16 x 100000 tree_serialize 1.6639 ms/op 1.6146 ms/op 1.03
UintBigint32 x 100000 tree_deserialize 5.9952 ms/op 7.4216 ms/op 0.81
UintBigint32 x 100000 tree_serialize 1.7699 ms/op 2.2711 ms/op 0.78
UintBigint64 x 100000 tree_deserialize 6.7626 ms/op 7.8863 ms/op 0.86
UintBigint64 x 100000 tree_serialize 1.7902 ms/op 3.2277 ms/op 0.55
UintBigint8 x 100000 value_deserialize 404.76 us/op 405.00 us/op 1.00
UintBigint8 x 100000 value_serialize 866.95 us/op 841.95 us/op 1.03
UintBigint16 x 100000 value_deserialize 467.17 us/op 466.86 us/op 1.00
UintBigint16 x 100000 value_serialize 869.41 us/op 932.87 us/op 0.93
UintBigint32 x 100000 value_deserialize 498.08 us/op 498.56 us/op 1.00
UintBigint32 x 100000 value_serialize 898.24 us/op 1.0693 ms/op 0.84
UintBigint64 x 100000 value_deserialize 531.59 us/op 531.22 us/op 1.00
UintBigint64 x 100000 value_serialize 1.0375 ms/op 1.2972 ms/op 0.80
UintBigint8 x 100000 deserialize 3.8144 ms/op 4.0200 ms/op 0.95
UintBigint8 x 100000 serialize 1.6142 ms/op 1.8354 ms/op 0.88
UintBigint16 x 100000 deserialize 3.7876 ms/op 4.0123 ms/op 0.94
UintBigint16 x 100000 serialize 1.5172 ms/op 1.5223 ms/op 1.00
UintBigint32 x 100000 deserialize 4.0345 ms/op 4.1954 ms/op 0.96
UintBigint32 x 100000 serialize 3.1253 ms/op 3.1189 ms/op 1.00
UintBigint64 x 100000 deserialize 4.6411 ms/op 4.6633 ms/op 1.00
UintBigint64 x 100000 serialize 1.6606 ms/op 1.6839 ms/op 0.99
UintBigint128 x 100000 deserialize 6.4830 ms/op 6.6897 ms/op 0.97
UintBigint128 x 100000 serialize 17.244 ms/op 16.875 ms/op 1.02
UintBigint256 x 100000 deserialize 9.6686 ms/op 10.096 ms/op 0.96
UintBigint256 x 100000 serialize 49.357 ms/op 47.998 ms/op 1.03
Slice from Uint8Array x25000 1.4510 ms/op 1.7919 ms/op 0.81
Slice from ArrayBuffer x25000 16.660 ms/op 16.774 ms/op 0.99
Slice from ArrayBuffer x25000 + new Uint8Array 19.034 ms/op 18.976 ms/op 1.00
Copy Uint8Array 100000 iterate 1.6795 ms/op 1.6932 ms/op 0.99
Copy Uint8Array 100000 slice 110.22 us/op 120.78 us/op 0.91
Copy Uint8Array 100000 Uint8Array.prototype.slice.call 110.16 us/op 121.34 us/op 0.91
Copy Buffer 100000 Uint8Array.prototype.slice.call 109.29 us/op 121.68 us/op 0.90
Copy Uint8Array 100000 slice + set 225.01 us/op 245.62 us/op 0.92
Copy Uint8Array 100000 subarray + set 111.93 us/op 121.47 us/op 0.92
Copy Uint8Array 100000 slice arrayBuffer 110.69 us/op 122.41 us/op 0.90
Uint64 deserialize 100000 - iterate Uint8Array 2.2278 ms/op 2.3029 ms/op 0.97
Uint64 deserialize 100000 - by Uint32A 2.3185 ms/op 2.3027 ms/op 1.01
Uint64 deserialize 100000 - by DataView.getUint32 x2 2.1738 ms/op 2.2612 ms/op 0.96
Uint64 deserialize 100000 - by DataView.getBigUint64 5.2946 ms/op 5.3596 ms/op 0.99
Uint64 deserialize 100000 - by byte 40.782 ms/op 40.784 ms/op 1.00

by benchmarkbot/action

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants