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

Publish exact dependencies for nighly release #3679

Merged
merged 1 commit into from
Jan 29, 2022
Merged

Conversation

g11tech
Copy link
Contributor

@g11tech g11tech commented Jan 29, 2022

Motivation
npm install is not able to resolve the dev versioned dependencies specified with ^ operator for e.g. @chainsafe/lodestar-config@^0.34.0-dev.4 resolves to => 0.34.0 when npm install @chainsafe/lodestar-cli@^0.34.0-dev.4 is done.

On a bit of digging through on internet, people have tried using --exact version in lerna publish to make npm resolve the exact package. Hopefully this fixes the dependency resolution in the install, and wll fix the nightly build

Closes #3676

@codecov
Copy link

codecov bot commented Jan 29, 2022

Codecov Report

Merging #3679 (a67ecac) into master (e86f50a) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #3679   +/-   ##
=======================================
  Coverage   37.20%   37.20%           
=======================================
  Files         322      322           
  Lines        8717     8717           
  Branches     1349     1349           
=======================================
  Hits         3243     3243           
  Misses       5332     5332           
  Partials      142      142           

@github-actions
Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 3ff4a5f Previous: e86f50a Ratio
BeaconState.hashTreeRoot - No change 646.00 ns/op 700.00 ns/op 0.92
BeaconState.hashTreeRoot - 1 full validator 125.55 us/op 184.17 us/op 0.68
BeaconState.hashTreeRoot - 32 full validator 1.8961 ms/op 2.6810 ms/op 0.71
BeaconState.hashTreeRoot - 512 full validator 25.135 ms/op 35.341 ms/op 0.71
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 125.70 us/op 173.49 us/op 0.72
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.0620 ms/op 2.7305 ms/op 0.76
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 28.004 ms/op 37.213 ms/op 0.75
BeaconState.hashTreeRoot - 1 balances 89.389 us/op 122.74 us/op 0.73
BeaconState.hashTreeRoot - 32 balances 725.93 us/op 1.1003 ms/op 0.66
BeaconState.hashTreeRoot - 512 balances 7.2717 ms/op 10.145 ms/op 0.72
BeaconState.hashTreeRoot - 250000 balances 146.78 ms/op 185.67 ms/op 0.79
processSlot - 1 slots 47.730 us/op 73.753 us/op 0.65
processSlot - 32 slots 2.9297 ms/op 4.2571 ms/op 0.69
getCommitteeAssignments - req 1 vs - 250000 vc 5.3584 ms/op 5.9979 ms/op 0.89
getCommitteeAssignments - req 100 vs - 250000 vc 7.4310 ms/op 8.3184 ms/op 0.89
getCommitteeAssignments - req 1000 vs - 250000 vc 7.9742 ms/op 8.8647 ms/op 0.90
computeProposers - vc 250000 20.927 ms/op 28.417 ms/op 0.74
computeEpochShuffling - vc 250000 190.50 ms/op 215.40 ms/op 0.88
getNextSyncCommittee - vc 250000 344.37 ms/op 446.49 ms/op 0.77
altair processAttestation - 250000 vs - 7PWei normalcase 46.533 ms/op 56.968 ms/op 0.82
altair processAttestation - 250000 vs - 7PWei worstcase 45.522 ms/op 56.619 ms/op 0.80
altair processAttestation - setStatus - 1/6 committees join 10.686 ms/op 17.582 ms/op 0.61
altair processAttestation - setStatus - 1/3 committees join 22.723 ms/op 30.958 ms/op 0.73
altair processAttestation - setStatus - 1/2 committees join 34.937 ms/op 47.442 ms/op 0.74
altair processAttestation - setStatus - 2/3 committees join 46.150 ms/op 63.896 ms/op 0.72
altair processAttestation - setStatus - 4/5 committees join 53.679 ms/op 75.026 ms/op 0.72
altair processAttestation - setStatus - 100% committees join 67.198 ms/op 101.86 ms/op 0.66
altair processAttestation - updateEpochParticipants - 1/6 committees join 11.107 ms/op 15.777 ms/op 0.70
altair processAttestation - updateEpochParticipants - 1/3 committees join 23.573 ms/op 31.722 ms/op 0.74
altair processAttestation - updateEpochParticipants - 1/2 committees join 32.134 ms/op 31.980 ms/op 1.00
altair processAttestation - updateEpochParticipants - 2/3 committees join 29.024 ms/op 39.805 ms/op 0.73
altair processAttestation - updateEpochParticipants - 4/5 committees join 30.459 ms/op 36.497 ms/op 0.83
altair processAttestation - updateEpochParticipants - 100% committees join 32.432 ms/op 38.417 ms/op 0.84
altair processAttestation - updateAllStatus 26.363 ms/op 26.887 ms/op 0.98
altair processBlock - 250000 vs - 7PWei normalcase 45.992 ms/op 57.327 ms/op 0.80
altair processBlock - 250000 vs - 7PWei worstcase 118.33 ms/op 158.51 ms/op 0.75
altair processEpoch - mainnet_e81889 1.1660 s/op 1.3942 s/op 0.84
mainnet_e81889 - altair beforeProcessEpoch 370.69 ms/op 353.91 ms/op 1.05
mainnet_e81889 - altair processJustificationAndFinalization 83.799 us/op 122.37 us/op 0.68
mainnet_e81889 - altair processInactivityUpdates 18.161 ms/op 20.117 ms/op 0.90
mainnet_e81889 - altair processRewardsAndPenalties 250.77 ms/op 331.40 ms/op 0.76
mainnet_e81889 - altair processRegistryUpdates 7.1780 us/op 20.996 us/op 0.34
mainnet_e81889 - altair processSlashings 2.1110 us/op 6.4820 us/op 0.33
mainnet_e81889 - altair processEth1DataReset 1.8480 us/op 6.2090 us/op 0.30
mainnet_e81889 - altair processEffectiveBalanceUpdates 12.163 ms/op 15.731 ms/op 0.77
mainnet_e81889 - altair processSlashingsReset 15.537 us/op 35.802 us/op 0.43
mainnet_e81889 - altair processRandaoMixesReset 20.980 us/op 43.238 us/op 0.49
mainnet_e81889 - altair processHistoricalRootsUpdate 2.7100 us/op 8.0460 us/op 0.34
mainnet_e81889 - altair processParticipationFlagUpdates 105.04 ms/op 189.35 ms/op 0.55
mainnet_e81889 - altair processSyncCommitteeUpdates 1.0510 us/op 5.3250 us/op 0.20
mainnet_e81889 - altair afterProcessEpoch 225.70 ms/op 257.04 ms/op 0.88
altair processInactivityUpdates - 250000 normalcase 71.980 ms/op 85.994 ms/op 0.84
altair processInactivityUpdates - 250000 worstcase 70.485 ms/op 85.187 ms/op 0.83
altair processParticipationFlagUpdates - 250000 anycase 98.500 ms/op 106.85 ms/op 0.92
altair processRewardsAndPenalties - 250000 normalcase 231.46 ms/op 274.42 ms/op 0.84
altair processRewardsAndPenalties - 250000 worstcase 229.61 ms/op 300.79 ms/op 0.76
altair processSyncCommitteeUpdates - 250000 352.41 ms/op 475.18 ms/op 0.74
Tree 40 250000 create 826.08 ms/op 1.1640 s/op 0.71
Tree 40 250000 get(125000) 323.61 ns/op 321.90 ns/op 1.01
Tree 40 250000 set(125000) 1.9524 us/op 2.6869 us/op 0.73
Tree 40 250000 toArray() 45.101 ms/op 53.796 ms/op 0.84
Tree 40 250000 iterate all - toArray() + loop 38.414 ms/op 45.603 ms/op 0.84
Tree 40 250000 iterate all - get(i) 119.77 ms/op 131.31 ms/op 0.91
MutableVector 250000 create 24.701 ms/op 27.887 ms/op 0.89
MutableVector 250000 get(125000) 13.706 ns/op 14.568 ns/op 0.94
MutableVector 250000 set(125000) 536.82 ns/op 793.67 ns/op 0.68
MutableVector 250000 toArray() 8.3383 ms/op 9.4255 ms/op 0.88
MutableVector 250000 iterate all - toArray() + loop 8.6392 ms/op 9.6775 ms/op 0.89
MutableVector 250000 iterate all - get(i) 3.4481 ms/op 3.4643 ms/op 1.00
Array 250000 create 5.2766 ms/op 6.1008 ms/op 0.86
Array 250000 clone - spread 2.3942 ms/op 2.7154 ms/op 0.88
Array 250000 get(125000) 1.0940 ns/op 1.3260 ns/op 0.83
Array 250000 set(125000) 1.0780 ns/op 1.3120 ns/op 0.82
Array 250000 iterate all - loop 167.83 us/op 136.03 us/op 1.23
aggregationBits - 2048 els - readonlyValues 249.59 us/op 290.84 us/op 0.86
aggregationBits - 2048 els - zipIndexesInBitList 38.383 us/op 52.335 us/op 0.73
regular array get 100000 times 67.389 us/op 55.445 us/op 1.22
wrappedArray get 100000 times 67.405 us/op 54.462 us/op 1.24
arrayWithProxy get 100000 times 28.355 ms/op 33.737 ms/op 0.84
ssz.Root.equals 1.1120 us/op 1.3050 us/op 0.85
ssz.Root.equals with valueOf() 1.3280 us/op 1.6070 us/op 0.83
byteArrayEquals with valueOf() 1.2750 us/op 1.7400 us/op 0.73
phase0 processBlock - 250000 vs - 7PWei normalcase 10.534 ms/op 12.562 ms/op 0.84
phase0 processBlock - 250000 vs - 7PWei worstcase 77.619 ms/op 100.05 ms/op 0.78
phase0 afterProcessEpoch - 250000 vs - 7PWei 209.20 ms/op 218.73 ms/op 0.96
phase0 beforeProcessEpoch - 250000 vs - 7PWei 590.36 ms/op 758.95 ms/op 0.78
phase0 processEpoch - mainnet_e58758 837.00 ms/op 1.1043 s/op 0.76
mainnet_e58758 - phase0 beforeProcessEpoch 432.58 ms/op 604.76 ms/op 0.72
mainnet_e58758 - phase0 processJustificationAndFinalization 115.49 us/op 120.14 us/op 0.96
mainnet_e58758 - phase0 processRewardsAndPenalties 141.91 ms/op 196.71 ms/op 0.72
mainnet_e58758 - phase0 processRegistryUpdates 68.765 us/op 82.061 us/op 0.84
mainnet_e58758 - phase0 processSlashings 2.2300 us/op 7.5260 us/op 0.30
mainnet_e58758 - phase0 processEth1DataReset 2.1840 us/op 6.6550 us/op 0.33
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 10.058 ms/op 12.462 ms/op 0.81
mainnet_e58758 - phase0 processSlashingsReset 11.854 us/op 31.038 us/op 0.38
mainnet_e58758 - phase0 processRandaoMixesReset 10.200 us/op 40.415 us/op 0.25
mainnet_e58758 - phase0 processHistoricalRootsUpdate 2.1090 us/op 7.5840 us/op 0.28
mainnet_e58758 - phase0 processParticipationRecordUpdates 17.170 us/op 28.266 us/op 0.61
mainnet_e58758 - phase0 afterProcessEpoch 182.74 ms/op 194.48 ms/op 0.94
phase0 processEffectiveBalanceUpdates - 250000 normalcase 10.960 ms/op 12.122 ms/op 0.90
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.2654 s/op 1.6252 s/op 0.78
phase0 processRegistryUpdates - 250000 normalcase 54.683 us/op 89.203 us/op 0.61
phase0 processRegistryUpdates - 250000 badcase_full_deposits 2.9562 ms/op 4.0750 ms/op 0.73
phase0 processRegistryUpdates - 250000 worstcase 0.5 1.4709 s/op 2.5792 s/op 0.57
phase0 getAttestationDeltas - 250000 normalcase 80.112 ms/op 91.247 ms/op 0.88
phase0 getAttestationDeltas - 250000 worstcase 80.615 ms/op 93.087 ms/op 0.87
phase0 processSlashings - 250000 worstcase 38.966 ms/op 43.682 ms/op 0.89
shuffle list - 16384 els 13.020 ms/op 16.754 ms/op 0.78
shuffle list - 250000 els 187.10 ms/op 193.18 ms/op 0.97
getEffectiveBalances - 250000 vs - 7PWei 10.520 ms/op 15.678 ms/op 0.67
pass gossip attestations to forkchoice per slot 15.555 ms/op 20.256 ms/op 0.77
computeDeltas 3.5231 ms/op 3.6730 ms/op 0.96
computeProposerBoostScoreFromBalances 337.22 us/op 297.54 us/op 1.13
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 2.2384 ms/op 2.5945 ms/op 0.86
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 694.92 us/op 818.76 us/op 0.85
BLS verify - blst-native 1.8620 ms/op 2.8519 ms/op 0.65
BLS verifyMultipleSignatures 3 - blst-native 3.8145 ms/op 5.8031 ms/op 0.66
BLS verifyMultipleSignatures 8 - blst-native 8.2241 ms/op 12.297 ms/op 0.67
BLS verifyMultipleSignatures 32 - blst-native 29.847 ms/op 46.177 ms/op 0.65
BLS aggregatePubkeys 32 - blst-native 39.947 us/op 60.937 us/op 0.66
BLS aggregatePubkeys 128 - blst-native 153.62 us/op 236.96 us/op 0.65
getAttestationsForBlock 92.700 ms/op 102.94 ms/op 0.90
CheckpointStateCache - add get delete 18.462 us/op 26.368 us/op 0.70
validate gossip signedAggregateAndProof - struct 4.4621 ms/op 7.0037 ms/op 0.64
validate gossip signedAggregateAndProof - treeBacked 4.4103 ms/op 6.7184 ms/op 0.66
validate gossip attestation - struct 2.0899 ms/op 3.1631 ms/op 0.66
validate gossip attestation - treeBacked 2.1092 ms/op 3.1856 ms/op 0.66
bytes32 toHexString 1.6120 us/op 2.3520 us/op 0.69
bytes32 Buffer.toString(hex) 675.00 ns/op 860.00 ns/op 0.78
bytes32 Buffer.toString(hex) from Uint8Array 923.00 ns/op 1.1180 us/op 0.83
bytes32 Buffer.toString(hex) + 0x 679.00 ns/op 866.00 ns/op 0.78
Object access 1 prop 0.30800 ns/op 0.43200 ns/op 0.71
Map access 1 prop 0.28200 ns/op 0.36300 ns/op 0.78
Object get x1000 17.733 ns/op 17.566 ns/op 1.01
Map get x1000 0.95800 ns/op 0.99600 ns/op 0.96
Object set x1000 103.13 ns/op 124.03 ns/op 0.83
Map set x1000 59.768 ns/op 86.858 ns/op 0.69
Return object 10000 times 0.36740 ns/op 0.44120 ns/op 0.83
Throw Error 10000 times 5.9942 us/op 7.3110 us/op 0.82
enrSubnets - fastDeserialize 64 bits 1.1570 us/op 1.6310 us/op 0.71
enrSubnets - ssz BitVector 64 bits 16.723 us/op 20.148 us/op 0.83
enrSubnets - fastDeserialize 4 bits 423.00 ns/op 579.00 ns/op 0.73
enrSubnets - ssz BitVector 4 bits 2.9360 us/op 3.7300 us/op 0.79
RateTracker 1000000 limit, 1 obj count per request 174.58 ns/op 215.53 ns/op 0.81
RateTracker 1000000 limit, 2 obj count per request 128.97 ns/op 164.20 ns/op 0.79
RateTracker 1000000 limit, 4 obj count per request 106.98 ns/op 137.23 ns/op 0.78
RateTracker 1000000 limit, 8 obj count per request 96.781 ns/op 123.52 ns/op 0.78
RateTracker with prune 3.7000 us/op 5.7520 us/op 0.64

by benchmarkbot/action

Copy link
Contributor

@dapplion dapplion left a comment

Choose a reason for hiding this comment

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

Thanks for looking into this! I agree it's a good approach, consumers of this versions are okay not getting semver PATCH updates since this should be used in testing environments

@dapplion dapplion merged commit aba0815 into master Jan 29, 2022
@dapplion dapplion deleted the publishdevexact branch January 29, 2022 16:38
@dapplion dapplion mentioned this pull request Jul 7, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants