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

Remove NPM instructions and add disclaimer #4115

Merged
merged 2 commits into from
Jun 6, 2022

Conversation

philknows
Copy link
Member

@philknows philknows commented Jun 4, 2022

Motivation

Do not endorse NPM installation due to supply chain attacks addressed in #4113. We must resolve #3596 with #3470 before re-implementing instructions for using NPM.

Description

Redacts NPM installation instructions and adds a warning to docs for the reasoning.

@philknows philknows added the scope-documentation All issues related to the Lodestar documentation. label Jun 4, 2022
@philknows philknows requested a review from a team as a code owner June 4, 2022 20:09
@philknows philknows self-assigned this Jun 4, 2022
@github-actions
Copy link
Contributor

github-actions bot commented Jun 4, 2022

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 79cb658 Previous: b5e24f7 Ratio
BeaconState.hashTreeRoot - No change 527.00 ns/op 478.00 ns/op 1.10
BeaconState.hashTreeRoot - 1 full validator 67.559 us/op 55.303 us/op 1.22
BeaconState.hashTreeRoot - 32 full validator 723.61 us/op 546.52 us/op 1.32
BeaconState.hashTreeRoot - 512 full validator 7.4743 ms/op 6.0901 ms/op 1.23
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 84.502 us/op 71.242 us/op 1.19
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.1755 ms/op 957.54 us/op 1.23
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 17.152 ms/op 13.181 ms/op 1.30
BeaconState.hashTreeRoot - 1 balances 66.930 us/op 54.851 us/op 1.22
BeaconState.hashTreeRoot - 32 balances 595.62 us/op 479.73 us/op 1.24
BeaconState.hashTreeRoot - 512 balances 5.7155 ms/op 4.6394 ms/op 1.23
BeaconState.hashTreeRoot - 250000 balances 118.11 ms/op 102.29 ms/op 1.15
processSlot - 1 slots 13.242 us/op 10.627 us/op 1.25
processSlot - 32 slots 1.9155 ms/op 1.5780 ms/op 1.21
getCommitteeAssignments - req 1 vs - 250000 vc 6.4362 ms/op 5.3430 ms/op 1.20
getCommitteeAssignments - req 100 vs - 250000 vc 8.9962 ms/op 7.2947 ms/op 1.23
getCommitteeAssignments - req 1000 vs - 250000 vc 9.7118 ms/op 7.7371 ms/op 1.26
computeProposers - vc 250000 21.441 ms/op 16.016 ms/op 1.34
computeEpochShuffling - vc 250000 199.92 ms/op 169.76 ms/op 1.18
getNextSyncCommittee - vc 250000 347.61 ms/op 266.85 ms/op 1.30
altair processAttestation - 250000 vs - 7PWei normalcase 4.6108 ms/op 3.7418 ms/op 1.23
altair processAttestation - 250000 vs - 7PWei worstcase 6.6028 ms/op 5.5095 ms/op 1.20
altair processAttestation - setStatus - 1/6 committees join 241.05 us/op 188.08 us/op 1.28
altair processAttestation - setStatus - 1/3 committees join 443.85 us/op 373.65 us/op 1.19
altair processAttestation - setStatus - 1/2 committees join 616.03 us/op 516.81 us/op 1.19
altair processAttestation - setStatus - 2/3 committees join 793.61 us/op 665.70 us/op 1.19
altair processAttestation - setStatus - 4/5 committees join 1.1891 ms/op 923.09 us/op 1.29
altair processAttestation - setStatus - 100% committees join 1.3378 ms/op 1.0915 ms/op 1.23
altair processBlock - 250000 vs - 7PWei normalcase 34.844 ms/op 25.068 ms/op 1.39
altair processBlock - 250000 vs - 7PWei normalcase hashState 45.252 ms/op 38.067 ms/op 1.19
altair processBlock - 250000 vs - 7PWei worstcase 92.205 ms/op 80.935 ms/op 1.14
altair processBlock - 250000 vs - 7PWei worstcase hashState 123.62 ms/op 97.446 ms/op 1.27
altair processEth1Data - 250000 vs - 7PWei normalcase 1.1360 ms/op 849.22 us/op 1.34
altair processEpoch - mainnet_e81889 712.84 ms/op 488.44 ms/op 1.46
mainnet_e81889 - altair beforeProcessEpoch 109.34 ms/op 142.34 ms/op 0.77
mainnet_e81889 - altair processJustificationAndFinalization 38.247 us/op 21.378 us/op 1.79
mainnet_e81889 - altair processInactivityUpdates 13.593 ms/op 11.416 ms/op 1.19
mainnet_e81889 - altair processRewardsAndPenalties 184.12 ms/op 137.22 ms/op 1.34
mainnet_e81889 - altair processRegistryUpdates 7.7290 us/op 3.4690 us/op 2.23
mainnet_e81889 - altair processSlashings 2.5950 us/op 1.0940 us/op 2.37
mainnet_e81889 - altair processEth1DataReset 1.8550 us/op 1.0210 us/op 1.82
mainnet_e81889 - altair processEffectiveBalanceUpdates 2.7454 ms/op 2.5948 ms/op 1.06
mainnet_e81889 - altair processSlashingsReset 9.9090 us/op 4.9400 us/op 2.01
mainnet_e81889 - altair processRandaoMixesReset 13.890 us/op 6.0820 us/op 2.28
mainnet_e81889 - altair processHistoricalRootsUpdate 2.6650 us/op 1.1970 us/op 2.23
mainnet_e81889 - altair processParticipationFlagUpdates 6.9440 us/op 4.5860 us/op 1.51
mainnet_e81889 - altair processSyncCommitteeUpdates 1.9400 us/op 1.3680 us/op 1.42
mainnet_e81889 - altair afterProcessEpoch 237.03 ms/op 198.67 ms/op 1.19
altair processInactivityUpdates - 250000 normalcase 40.721 ms/op 33.918 ms/op 1.20
altair processInactivityUpdates - 250000 worstcase 33.181 ms/op 28.169 ms/op 1.18
altair processRewardsAndPenalties - 250000 normalcase 135.39 ms/op 119.38 ms/op 1.13
altair processRewardsAndPenalties - 250000 worstcase 124.70 ms/op 140.14 ms/op 0.89
altair processSyncCommitteeUpdates - 250000 356.71 ms/op 279.97 ms/op 1.27
Tree 40 250000 create 1.0029 s/op 816.28 ms/op 1.23
Tree 40 250000 get(125000) 354.88 ns/op 292.25 ns/op 1.21
Tree 40 250000 set(125000) 2.9470 us/op 2.2342 us/op 1.32
Tree 40 250000 toArray() 38.245 ms/op 31.465 ms/op 1.22
Tree 40 250000 iterate all - toArray() + loop 38.395 ms/op 31.754 ms/op 1.21
Tree 40 250000 iterate all - get(i) 134.88 ms/op 111.92 ms/op 1.21
MutableVector 250000 create 19.167 ms/op 14.515 ms/op 1.32
MutableVector 250000 get(125000) 16.028 ns/op 14.754 ns/op 1.09
MutableVector 250000 set(125000) 831.50 ns/op 599.35 ns/op 1.39
MutableVector 250000 toArray() 8.8639 ms/op 6.6056 ms/op 1.34
MutableVector 250000 iterate all - toArray() + loop 9.1174 ms/op 6.8241 ms/op 1.34
MutableVector 250000 iterate all - get(i) 4.2600 ms/op 3.4376 ms/op 1.24
Array 250000 create 8.2027 ms/op 5.8364 ms/op 1.41
Array 250000 clone - spread 4.7115 ms/op 3.1378 ms/op 1.50
Array 250000 get(125000) 1.9450 ns/op 1.4070 ns/op 1.38
Array 250000 set(125000) 1.9910 ns/op 1.3960 ns/op 1.43
Array 250000 iterate all - loop 209.67 us/op 167.79 us/op 1.25
effectiveBalanceIncrements clone Uint8Array 300000 109.84 us/op 83.337 us/op 1.32
effectiveBalanceIncrements clone MutableVector 300000 1.4910 us/op 1.0420 us/op 1.43
effectiveBalanceIncrements rw all Uint8Array 300000 317.03 us/op 252.50 us/op 1.26
effectiveBalanceIncrements rw all MutableVector 300000 267.76 ms/op 191.01 ms/op 1.40
aggregationBits - 2048 els - zipIndexesInBitList 41.801 us/op 30.121 us/op 1.39
regular array get 100000 times 84.682 us/op 67.419 us/op 1.26
wrappedArray get 100000 times 85.772 us/op 67.419 us/op 1.27
arrayWithProxy get 100000 times 38.769 ms/op 29.645 ms/op 1.31
ssz.Root.equals 671.00 ns/op 510.00 ns/op 1.32
byteArrayEquals 685.00 ns/op 496.00 ns/op 1.38
phase0 processBlock - 250000 vs - 7PWei normalcase 4.8374 ms/op 3.6216 ms/op 1.34
phase0 processBlock - 250000 vs - 7PWei worstcase 67.721 ms/op 46.376 ms/op 1.46
phase0 afterProcessEpoch - 250000 vs - 7PWei 221.35 ms/op 191.83 ms/op 1.15
phase0 beforeProcessEpoch - 250000 vs - 7PWei 82.548 ms/op 105.28 ms/op 0.78
phase0 processEpoch - mainnet_e58758 649.59 ms/op 606.58 ms/op 1.07
mainnet_e58758 - phase0 beforeProcessEpoch 262.45 ms/op 261.39 ms/op 1.00
mainnet_e58758 - phase0 processJustificationAndFinalization 39.020 us/op 22.646 us/op 1.72
mainnet_e58758 - phase0 processRewardsAndPenalties 168.76 ms/op 79.690 ms/op 2.12
mainnet_e58758 - phase0 processRegistryUpdates 20.954 us/op 14.985 us/op 1.40
mainnet_e58758 - phase0 processSlashings 2.2120 us/op 1.4540 us/op 1.52
mainnet_e58758 - phase0 processEth1DataReset 2.0560 us/op 1.1680 us/op 1.76
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 2.8029 ms/op 2.0013 ms/op 1.40
mainnet_e58758 - phase0 processSlashingsReset 9.4700 us/op 6.6590 us/op 1.42
mainnet_e58758 - phase0 processRandaoMixesReset 13.337 us/op 8.3820 us/op 1.59
mainnet_e58758 - phase0 processHistoricalRootsUpdate 2.1900 us/op 1.4430 us/op 1.52
mainnet_e58758 - phase0 processParticipationRecordUpdates 12.318 us/op 6.8850 us/op 1.79
mainnet_e58758 - phase0 afterProcessEpoch 197.49 ms/op 162.79 ms/op 1.21
phase0 processEffectiveBalanceUpdates - 250000 normalcase 3.6036 ms/op 2.8607 ms/op 1.26
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 4.1143 ms/op 3.0523 ms/op 1.35
phase0 processRegistryUpdates - 250000 normalcase 16.008 us/op 10.727 us/op 1.49
phase0 processRegistryUpdates - 250000 badcase_full_deposits 538.04 us/op 414.65 us/op 1.30
phase0 processRegistryUpdates - 250000 worstcase 0.5 263.18 ms/op 211.24 ms/op 1.25
phase0 getAttestationDeltas - 250000 normalcase 17.193 ms/op 13.483 ms/op 1.28
phase0 getAttestationDeltas - 250000 worstcase 17.947 ms/op 13.841 ms/op 1.30
phase0 processSlashings - 250000 worstcase 7.7346 ms/op 5.5833 ms/op 1.39
shuffle list - 16384 els 13.595 ms/op 11.271 ms/op 1.21
shuffle list - 250000 els 198.29 ms/op 165.36 ms/op 1.20
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 450.39 us/op 384.26 us/op 1.17
pass gossip attestations to forkchoice per slot 3.9953 ms/op 3.2272 ms/op 1.24
computeDeltas 3.6653 ms/op 3.5251 ms/op 1.04
computeProposerBoostScoreFromBalances 1.1309 ms/op 921.17 us/op 1.23
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 2.5912 ms/op 2.1981 ms/op 1.18
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 110.36 us/op 76.270 us/op 1.45
BLS verify - blst-native 2.2576 ms/op 1.8587 ms/op 1.21
BLS verifyMultipleSignatures 3 - blst-native 4.6601 ms/op 3.8040 ms/op 1.23
BLS verifyMultipleSignatures 8 - blst-native 10.053 ms/op 8.1949 ms/op 1.23
BLS verifyMultipleSignatures 32 - blst-native 36.122 ms/op 29.692 ms/op 1.22
BLS aggregatePubkeys 32 - blst-native 49.108 us/op 39.295 us/op 1.25
BLS aggregatePubkeys 128 - blst-native 185.75 us/op 153.57 us/op 1.21
getAttestationsForBlock 85.600 ms/op 57.965 ms/op 1.48
isKnown best case - 1 super set check 548.00 ns/op 442.00 ns/op 1.24
isKnown normal case - 2 super set checks 510.00 ns/op 428.00 ns/op 1.19
isKnown worse case - 16 super set checks 527.00 ns/op 427.00 ns/op 1.23
CheckpointStateCache - add get delete 13.687 us/op 11.726 us/op 1.17
validate gossip signedAggregateAndProof - struct 5.5348 ms/op 4.6165 ms/op 1.20
validate gossip attestation - struct 2.4785 ms/op 2.0533 ms/op 1.21
altair verifyImport mainnet_s3766816:31 7.6916 s/op 6.2488 s/op 1.23
pickEth1Vote - no votes 2.6425 ms/op 2.0238 ms/op 1.31
pickEth1Vote - max votes 31.053 ms/op 24.189 ms/op 1.28
pickEth1Vote - Eth1Data hashTreeRoot value x2048 14.574 ms/op 11.137 ms/op 1.31
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 28.501 ms/op 25.239 ms/op 1.13
pickEth1Vote - Eth1Data fastSerialize value x2048 2.0434 ms/op 1.4258 ms/op 1.43
pickEth1Vote - Eth1Data fastSerialize tree x2048 22.059 ms/op 12.974 ms/op 1.70
bytes32 toHexString 1.4650 us/op 958.00 ns/op 1.53
bytes32 Buffer.toString(hex) 973.00 ns/op 678.00 ns/op 1.44
bytes32 Buffer.toString(hex) from Uint8Array 1.1900 us/op 878.00 ns/op 1.36
bytes32 Buffer.toString(hex) + 0x 943.00 ns/op 673.00 ns/op 1.40
Object access 1 prop 0.49300 ns/op 0.32000 ns/op 1.54
Map access 1 prop 0.37600 ns/op 0.28100 ns/op 1.34
Object get x1000 22.342 ns/op 17.966 ns/op 1.24
Map get x1000 1.3000 ns/op 0.97600 ns/op 1.33
Object set x1000 153.67 ns/op 108.30 ns/op 1.42
Map set x1000 95.553 ns/op 68.465 ns/op 1.40
Return object 10000 times 0.46990 ns/op 0.37880 ns/op 1.24
Throw Error 10000 times 7.5700 us/op 6.0543 us/op 1.25
enrSubnets - fastDeserialize 64 bits 3.4870 us/op 2.3850 us/op 1.46
enrSubnets - ssz BitVector 64 bits 1.0710 us/op 683.00 ns/op 1.57
enrSubnets - fastDeserialize 4 bits 542.00 ns/op 361.00 ns/op 1.50
enrSubnets - ssz BitVector 4 bits 1.0010 us/op 692.00 ns/op 1.45
prioritizePeers score -10:0 att 32-0.1 sync 2-0 135.18 us/op 89.554 us/op 1.51
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 174.92 us/op 123.17 us/op 1.42
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 292.86 us/op 196.95 us/op 1.49
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 483.27 us/op 431.15 us/op 1.12
prioritizePeers score 0:0 att 64-1 sync 4-1 553.39 us/op 457.39 us/op 1.21
RateTracker 1000000 limit, 1 obj count per request 240.43 ns/op 195.90 ns/op 1.23
RateTracker 1000000 limit, 2 obj count per request 182.15 ns/op 146.92 ns/op 1.24
RateTracker 1000000 limit, 4 obj count per request 155.36 ns/op 123.71 ns/op 1.26
RateTracker 1000000 limit, 8 obj count per request 140.61 ns/op 117.91 ns/op 1.19
RateTracker with prune 6.1590 us/op 4.0890 us/op 1.51
array of 16000 items push then shift 3.8979 us/op 3.1576 us/op 1.23
LinkedList of 16000 items push then shift 31.773 ns/op 23.761 ns/op 1.34
array of 16000 items push then pop 308.48 ns/op 218.06 ns/op 1.41
LinkedList of 16000 items push then pop 24.049 ns/op 19.973 ns/op 1.20
array of 24000 items push then shift 5.6742 us/op 4.5534 us/op 1.25
LinkedList of 24000 items push then shift 29.839 ns/op 22.752 ns/op 1.31
array of 24000 items push then pop 252.37 ns/op 187.10 ns/op 1.35
LinkedList of 24000 items push then pop 24.834 ns/op 19.586 ns/op 1.27
intersect bitArray bitLen 8 14.957 ns/op 11.482 ns/op 1.30
intersect array and set length 8 223.84 ns/op 152.38 ns/op 1.47
intersect bitArray bitLen 128 77.581 ns/op 72.113 ns/op 1.08
intersect array and set length 128 3.0086 us/op 2.1252 us/op 1.42

by benchmarkbot/action

@wemeetagain wemeetagain merged commit ebf557d into unstable Jun 6, 2022
@wemeetagain wemeetagain deleted the philknows/docs-remove-npm branch June 6, 2022 19:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
scope-documentation All issues related to the Lodestar documentation.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Safer installation with npm of lodestar-cli
2 participants