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

Prepare custom version on next release #3990

Merged
merged 7 commits into from
May 11, 2022

Conversation

dapplion
Copy link
Contributor

@dapplion dapplion commented May 9, 2022

Motivation

We used lerna publish --canary option. However, since we now publish must version on branches, i.e. v0.35.x branch, lerna fails to detect the latest version and publishes canary versions as 0.34.0-dev.173+28e2c74cf0 instead of 0.36.0-dev.4+28e2c74cf0, which creates confusion.

Description

  • Prepare custom version on next release

@codecov
Copy link

codecov bot commented May 9, 2022

Codecov Report

Merging #3990 (ce84170) into master (28e2c74) will increase coverage by 0.05%.
The diff coverage is n/a.

❗ Current head ce84170 differs from pull request most recent head 0e73a8c. Consider uploading reports for the commit 0e73a8c to get more accurate results

@@            Coverage Diff             @@
##           master    #3990      +/-   ##
==========================================
+ Coverage   36.78%   36.83%   +0.05%     
==========================================
  Files         325      324       -1     
  Lines        9224     9187      -37     
  Branches     1498     1494       -4     
==========================================
- Hits         3393     3384       -9     
+ Misses       5640     5612      -28     
  Partials      191      191              

@github-actions
Copy link
Contributor

github-actions bot commented May 9, 2022

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: ce84170 Previous: 15d8ae2 Ratio
BeaconState.hashTreeRoot - No change 487.00 ns/op 437.00 ns/op 1.11
BeaconState.hashTreeRoot - 1 full validator 54.587 us/op 56.037 us/op 0.97
BeaconState.hashTreeRoot - 32 full validator 556.77 us/op 539.89 us/op 1.03
BeaconState.hashTreeRoot - 512 full validator 5.9706 ms/op 5.9629 ms/op 1.00
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 68.642 us/op 68.818 us/op 1.00
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 939.78 us/op 949.62 us/op 0.99
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 12.918 ms/op 13.194 ms/op 0.98
BeaconState.hashTreeRoot - 1 balances 52.668 us/op 53.470 us/op 0.99
BeaconState.hashTreeRoot - 32 balances 471.39 us/op 463.95 us/op 1.02
BeaconState.hashTreeRoot - 512 balances 4.5178 ms/op 4.5841 ms/op 0.99
BeaconState.hashTreeRoot - 250000 balances 101.30 ms/op 98.137 ms/op 1.03
processSlot - 1 slots 9.4590 us/op 9.5830 us/op 0.99
processSlot - 32 slots 1.5372 ms/op 1.5497 ms/op 0.99
getCommitteeAssignments - req 1 vs - 250000 vc 5.3042 ms/op 5.2466 ms/op 1.01
getCommitteeAssignments - req 100 vs - 250000 vc 7.3817 ms/op 7.2654 ms/op 1.02
getCommitteeAssignments - req 1000 vs - 250000 vc 7.9450 ms/op 7.8132 ms/op 1.02
computeProposers - vc 250000 15.958 ms/op 16.155 ms/op 0.99
computeEpochShuffling - vc 250000 160.93 ms/op 157.72 ms/op 1.02
getNextSyncCommittee - vc 250000 266.68 ms/op 261.13 ms/op 1.02
altair processAttestation - 250000 vs - 7PWei normalcase 3.7733 ms/op 3.6023 ms/op 1.05
altair processAttestation - 250000 vs - 7PWei worstcase 5.3739 ms/op 5.2368 ms/op 1.03
altair processAttestation - setStatus - 1/6 committees join 190.24 us/op 190.57 us/op 1.00
altair processAttestation - setStatus - 1/3 committees join 374.74 us/op 364.58 us/op 1.03
altair processAttestation - setStatus - 1/2 committees join 530.79 us/op 513.54 us/op 1.03
altair processAttestation - setStatus - 2/3 committees join 683.51 us/op 663.39 us/op 1.03
altair processAttestation - setStatus - 4/5 committees join 935.06 us/op 900.78 us/op 1.04
altair processAttestation - setStatus - 100% committees join 1.1157 ms/op 1.0752 ms/op 1.04
altair processBlock - 250000 vs - 7PWei normalcase 24.417 ms/op 22.382 ms/op 1.09
altair processBlock - 250000 vs - 7PWei normalcase hashState 35.360 ms/op 35.238 ms/op 1.00
altair processBlock - 250000 vs - 7PWei worstcase 70.296 ms/op 79.556 ms/op 0.88
altair processBlock - 250000 vs - 7PWei worstcase hashState 95.688 ms/op 96.220 ms/op 0.99
altair processEth1Data - 250000 vs - 7PWei normalcase 745.46 us/op 754.30 us/op 0.99
altair processEpoch - mainnet_e81889 536.92 ms/op 482.04 ms/op 1.11
mainnet_e81889 - altair beforeProcessEpoch 94.971 ms/op 174.61 ms/op 0.54
mainnet_e81889 - altair processJustificationAndFinalization 27.278 us/op 32.890 us/op 0.83
mainnet_e81889 - altair processInactivityUpdates 10.641 ms/op 11.207 ms/op 0.95
mainnet_e81889 - altair processRewardsAndPenalties 146.23 ms/op 82.086 ms/op 1.78
mainnet_e81889 - altair processRegistryUpdates 4.7150 us/op 4.6420 us/op 1.02
mainnet_e81889 - altair processSlashings 1.6990 us/op 1.5760 us/op 1.08
mainnet_e81889 - altair processEth1DataReset 1.1550 us/op 1.7590 us/op 0.66
mainnet_e81889 - altair processEffectiveBalanceUpdates 6.4621 ms/op 6.9318 ms/op 0.93
mainnet_e81889 - altair processSlashingsReset 4.9520 us/op 6.9770 us/op 0.71
mainnet_e81889 - altair processRandaoMixesReset 5.4020 us/op 8.8330 us/op 0.61
mainnet_e81889 - altair processHistoricalRootsUpdate 1.2990 us/op 1.7700 us/op 0.73
mainnet_e81889 - altair processParticipationFlagUpdates 5.0300 us/op 5.0160 us/op 1.00
mainnet_e81889 - altair processSyncCommitteeUpdates 938.00 ns/op 2.2260 us/op 0.42
mainnet_e81889 - altair afterProcessEpoch 182.78 ms/op 207.52 ms/op 0.88
altair processInactivityUpdates - 250000 normalcase 37.733 ms/op 33.272 ms/op 1.13
altair processInactivityUpdates - 250000 worstcase 27.655 ms/op 27.859 ms/op 0.99
altair processRewardsAndPenalties - 250000 normalcase 79.199 ms/op 110.24 ms/op 0.72
altair processRewardsAndPenalties - 250000 worstcase 104.72 ms/op 77.935 ms/op 1.34
altair processSyncCommitteeUpdates - 250000 277.38 ms/op 274.82 ms/op 1.01
Tree 40 250000 create 628.79 ms/op 635.49 ms/op 0.99
Tree 40 250000 get(125000) 283.48 ns/op 280.10 ns/op 1.01
Tree 40 250000 set(125000) 2.1078 us/op 2.0657 us/op 1.02
Tree 40 250000 toArray() 31.046 ms/op 31.755 ms/op 0.98
Tree 40 250000 iterate all - toArray() + loop 30.788 ms/op 31.301 ms/op 0.98
Tree 40 250000 iterate all - get(i) 108.40 ms/op 107.59 ms/op 1.01
MutableVector 250000 create 14.051 ms/op 14.235 ms/op 0.99
MutableVector 250000 get(125000) 13.130 ns/op 14.961 ns/op 0.88
MutableVector 250000 set(125000) 552.61 ns/op 551.97 ns/op 1.00
MutableVector 250000 toArray() 6.3435 ms/op 5.7991 ms/op 1.09
MutableVector 250000 iterate all - toArray() + loop 6.5202 ms/op 6.0784 ms/op 1.07
MutableVector 250000 iterate all - get(i) 3.4413 ms/op 3.5290 ms/op 0.98
Array 250000 create 5.7521 ms/op 5.1409 ms/op 1.12
Array 250000 clone - spread 2.4749 ms/op 2.2999 ms/op 1.08
Array 250000 get(125000) 1.1800 ns/op 1.0800 ns/op 1.09
Array 250000 set(125000) 1.1810 ns/op 1.0700 ns/op 1.10
Array 250000 iterate all - loop 167.88 us/op 167.79 us/op 1.00
effectiveBalanceIncrements clone Uint8Array 300000 86.021 us/op 67.266 us/op 1.28
effectiveBalanceIncrements clone MutableVector 300000 769.00 ns/op 710.00 ns/op 1.08
effectiveBalanceIncrements rw all Uint8Array 300000 301.78 us/op 301.75 us/op 1.00
effectiveBalanceIncrements rw all MutableVector 300000 173.80 ms/op 176.03 ms/op 0.99
aggregationBits - 2048 els - zipIndexesInBitList 26.701 us/op 28.991 us/op 0.92
regular array get 100000 times 67.392 us/op 67.385 us/op 1.00
wrappedArray get 100000 times 67.404 us/op 67.384 us/op 1.00
arrayWithProxy get 100000 times 29.570 ms/op 29.762 ms/op 0.99
ssz.Root.equals 466.00 ns/op 470.00 ns/op 0.99
byteArrayEquals 447.00 ns/op 437.00 ns/op 1.02
phase0 processBlock - 250000 vs - 7PWei normalcase 3.4195 ms/op 3.3769 ms/op 1.01
phase0 processBlock - 250000 vs - 7PWei worstcase 46.223 ms/op 45.076 ms/op 1.03
phase0 afterProcessEpoch - 250000 vs - 7PWei 192.85 ms/op 175.08 ms/op 1.10
phase0 beforeProcessEpoch - 250000 vs - 7PWei 74.804 ms/op 74.309 ms/op 1.01
phase0 processEpoch - mainnet_e58758 568.10 ms/op 520.33 ms/op 1.09
mainnet_e58758 - phase0 beforeProcessEpoch 195.26 ms/op 229.29 ms/op 0.85
mainnet_e58758 - phase0 processJustificationAndFinalization 24.278 us/op 34.988 us/op 0.69
mainnet_e58758 - phase0 processRewardsAndPenalties 76.164 ms/op 114.62 ms/op 0.66
mainnet_e58758 - phase0 processRegistryUpdates 12.148 us/op 14.064 us/op 0.86
mainnet_e58758 - phase0 processSlashings 1.2120 us/op 1.5850 us/op 0.76
mainnet_e58758 - phase0 processEth1DataReset 1.2560 us/op 1.1320 us/op 1.11
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 5.5369 ms/op 5.8813 ms/op 0.94
mainnet_e58758 - phase0 processSlashingsReset 7.9200 us/op 6.2630 us/op 1.26
mainnet_e58758 - phase0 processRandaoMixesReset 6.8330 us/op 8.2060 us/op 0.83
mainnet_e58758 - phase0 processHistoricalRootsUpdate 1.0680 us/op 1.7090 us/op 0.62
mainnet_e58758 - phase0 processParticipationRecordUpdates 5.4350 us/op 8.2190 us/op 0.66
mainnet_e58758 - phase0 afterProcessEpoch 173.57 ms/op 151.47 ms/op 1.15
phase0 processEffectiveBalanceUpdates - 250000 normalcase 6.5973 ms/op 6.5040 ms/op 1.01
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 6.9669 ms/op 6.9319 ms/op 1.01
phase0 processRegistryUpdates - 250000 normalcase 9.9580 us/op 12.657 us/op 0.79
phase0 processRegistryUpdates - 250000 badcase_full_deposits 410.84 us/op 618.67 us/op 0.66
phase0 processRegistryUpdates - 250000 worstcase 0.5 207.53 ms/op 209.15 ms/op 0.99
phase0 getAttestationDeltas - 250000 normalcase 14.933 ms/op 14.350 ms/op 1.04
phase0 getAttestationDeltas - 250000 worstcase 14.436 ms/op 14.872 ms/op 0.97
phase0 processSlashings - 250000 worstcase 5.4725 ms/op 6.3263 ms/op 0.87
shuffle list - 16384 els 10.616 ms/op 10.669 ms/op 0.99
shuffle list - 250000 els 153.26 ms/op 154.28 ms/op 0.99
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 362.98 us/op 358.33 us/op 1.01
pass gossip attestations to forkchoice per slot 3.3868 ms/op 3.3867 ms/op 1.00
computeDeltas 3.7737 ms/op 3.9024 ms/op 0.97
computeProposerBoostScoreFromBalances 502.80 us/op 502.66 us/op 1.00
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 2.2042 ms/op 1.8676 ms/op 1.18
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 69.644 us/op 78.637 us/op 0.89
BLS verify - blst-native 1.8568 ms/op 1.8579 ms/op 1.00
BLS verifyMultipleSignatures 3 - blst-native 3.8030 ms/op 3.8037 ms/op 1.00
BLS verifyMultipleSignatures 8 - blst-native 8.1896 ms/op 8.1923 ms/op 1.00
BLS verifyMultipleSignatures 32 - blst-native 29.673 ms/op 29.931 ms/op 0.99
BLS aggregatePubkeys 32 - blst-native 39.397 us/op 39.404 us/op 1.00
BLS aggregatePubkeys 128 - blst-native 153.68 us/op 153.79 us/op 1.00
getAttestationsForBlock 59.966 ms/op 61.119 ms/op 0.98
CheckpointStateCache - add get delete 10.408 us/op 10.310 us/op 1.01
validate gossip signedAggregateAndProof - struct 4.2536 ms/op 4.2513 ms/op 1.00
validate gossip attestation - struct 2.0267 ms/op 2.0386 ms/op 0.99
pickEth1Vote - no votes 2.1871 ms/op 2.2643 ms/op 0.97
pickEth1Vote - max votes 17.632 ms/op 18.030 ms/op 0.98
pickEth1Vote - Eth1Data hashTreeRoot value x2048 10.737 ms/op 10.707 ms/op 1.00
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 19.985 ms/op 20.579 ms/op 0.97
pickEth1Vote - Eth1Data fastSerialize value x2048 1.6047 ms/op 1.7150 ms/op 0.94
pickEth1Vote - Eth1Data fastSerialize tree x2048 12.163 ms/op 12.120 ms/op 1.00
bytes32 toHexString 906.00 ns/op 947.00 ns/op 0.96
bytes32 Buffer.toString(hex) 665.00 ns/op 661.00 ns/op 1.01
bytes32 Buffer.toString(hex) from Uint8Array 862.00 ns/op 861.00 ns/op 1.00
bytes32 Buffer.toString(hex) + 0x 667.00 ns/op 650.00 ns/op 1.03
Object access 1 prop 0.31800 ns/op 0.31900 ns/op 1.00
Map access 1 prop 0.29400 ns/op 0.28500 ns/op 1.03
Object get x1000 18.410 ns/op 17.518 ns/op 1.05
Map get x1000 0.98800 ns/op 0.99400 ns/op 0.99
Object set x1000 102.78 ns/op 104.15 ns/op 0.99
Map set x1000 64.892 ns/op 63.982 ns/op 1.01
Return object 10000 times 0.37660 ns/op 0.37410 ns/op 1.01
Throw Error 10000 times 5.8243 us/op 5.9006 us/op 0.99
enrSubnets - fastDeserialize 64 bits 2.5940 us/op 2.5080 us/op 1.03
enrSubnets - ssz BitVector 64 bits 720.00 ns/op 708.00 ns/op 1.02
enrSubnets - fastDeserialize 4 bits 379.00 ns/op 375.00 ns/op 1.01
enrSubnets - ssz BitVector 4 bits 705.00 ns/op 727.00 ns/op 0.97
prioritizePeers score -10:0 att 32-0.1 sync 2-0 85.725 us/op 87.718 us/op 0.98
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 129.52 us/op 129.32 us/op 1.00
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 200.76 us/op 210.50 us/op 0.95
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 385.96 us/op 392.62 us/op 0.98
prioritizePeers score 0:0 att 64-1 sync 4-1 457.59 us/op 463.48 us/op 0.99
RateTracker 1000000 limit, 1 obj count per request 175.65 ns/op 177.58 ns/op 0.99
RateTracker 1000000 limit, 2 obj count per request 130.96 ns/op 129.59 ns/op 1.01
RateTracker 1000000 limit, 4 obj count per request 106.79 ns/op 107.78 ns/op 0.99
RateTracker 1000000 limit, 8 obj count per request 94.057 ns/op 103.06 ns/op 0.91
RateTracker with prune 3.6870 us/op 3.9130 us/op 0.94
array of 16000 items push then shift 3.0573 us/op 3.1550 us/op 0.97
LinkedList of 16000 items push then shift 16.884 ns/op 17.754 ns/op 0.95
array of 16000 items push then pop 201.69 ns/op 208.04 ns/op 0.97
LinkedList of 16000 items push then pop 15.250 ns/op 17.069 ns/op 0.89
array of 24000 items push then shift 4.5532 us/op 4.5564 us/op 1.00
LinkedList of 24000 items push then shift 18.789 ns/op 21.493 ns/op 0.87
array of 24000 items push then pop 177.78 ns/op 189.89 ns/op 0.94
LinkedList of 24000 items push then pop 16.582 ns/op 19.223 ns/op 0.86

by benchmarkbot/action

- name: Get version
id: version
run: |
PACKAGE_VERSION=$(node -p "require('./packages/lodestar/package.json').version")
Copy link
Contributor

Choose a reason for hiding this comment

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

looks like this command returns incorrect value as in https://github.com/ChainSafe/lodestar/runs/6338092886?check_suite_focus=true

Run VERSION=$(node -p "require('./packages/lodestar/package.json').version")
VERSION 0.34.0-dev.173+28e2c74cf0

so I'm afraid this time it'd get the wrong value too, can we test the output of this step in this branch?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Should be fine because we run this now before lerna canary

Copy link
Member

Choose a reason for hiding this comment

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

@dapplion dapplion force-pushed the dapplion/fix-next-release-version branch from b587488 to 1853d4d Compare May 9, 2022 16:09
g11tech
g11tech previously approved these changes May 10, 2022
Copy link
Contributor

@g11tech g11tech left a comment

Choose a reason for hiding this comment

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

🤞

@dapplion
Copy link
Contributor Author

Publishing worked fine, see GA logs https://github.com/ChainSafe/lodestar/runs/6367861214?check_suite_focus=true#step:10:18

Found 14 packages to publish:
lerna info publish Publishing packages to npm...
 - @chainsafe/lodestar-api => 0.36.0-dev.3e6ce7b69e
 - @chainsafe/lodestar-beacon-state-transition => 0.36.0-dev.3e6ce7b69e
 - @chainsafe/lodestar-cli => 0.36.0-dev.3e6ce7b69e
 - @chainsafe/lodestar-config => 0.36.0-dev.3e6ce7b69e
 - @chainsafe/lodestar-db => 0.36.0-dev.3e6ce7b69e
 - @chainsafe/lodestar-fork-choice => 0.36.0-dev.3e6ce7b69e
 - @chainsafe/lodestar-keymanager-server => 0.36.0-dev.3e6ce7b69e
 - @chainsafe/lodestar-light-client => 0.36.0-dev.3e6ce7b69e
 - @chainsafe/lodestar => 0.36.0-dev.3e6ce7b69e
 - @chainsafe/lodestar-params => 0.36.0-dev.3e6ce7b69e
 - @chainsafe/lodestar-spec-test-util => 0.36.0-dev.3e6ce7b69e
 - @chainsafe/lodestar-types => 0.36.0-dev.3e6ce7b69e
 - @chainsafe/lodestar-utils => 0.36.0-dev.3e6ce7b69e
 - @chainsafe/lodestar-validator => 0.36.0-dev.3e6ce7b69e

Proof in NPM https://www.npmjs.com/package/@chainsafe/lodestar-cli/v/0.36.0-dev.3e6ce7b69e

@dapplion dapplion marked this pull request as ready for review May 10, 2022 10:44
@dapplion dapplion requested a review from a team as a code owner May 10, 2022 10:44
Copy link
Member

@mpetrunic mpetrunic left a comment

Choose a reason for hiding this comment

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

LGTM, just left two comments to double check stuff

- name: Get version
id: version
run: |
PACKAGE_VERSION=$(node -p "require('./packages/lodestar/package.json').version")
Copy link
Member

Choose a reason for hiding this comment

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

--dist-tag next \
--no-git-reset \
--force-publish \
--exact
Copy link
Member

Choose a reason for hiding this comment

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

no more --preid dev ?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

preid flag is not necessary because the version is given, not computed by lerna in the canary logic. The dev word in used above when manually crafting the version string

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Can't comment above for some reason

Why not take version from https://github.com/ChainSafe/lodestar/blob/master/lerna.json#L7 ?

Should be equivalent indeed, I don't have any preference in grabbing it from there, but the package.json seems more generic long term if we ever switch away from lerna

@wemeetagain wemeetagain merged commit 5142ba3 into master May 11, 2022
@wemeetagain wemeetagain deleted the dapplion/fix-next-release-version branch May 11, 2022 14:43
dapplion added a commit that referenced this pull request May 30, 2022
* New metric filtering missed blocks (#3927)

* Log block delay second

* Add elappsedTimeTillBecomeHead metric

* Add 'till become head' metric to dashboard

* chore: correct the metric name to elapsedTimeTillBecomeHead

* Add and use secFromSlot to clock

* Track block source

* Revert "Track block source"

This reverts commit 5fe6220.

* Update bucket values

* Limit how old blocks are tracked in elapsedTimeTillBecomeHead

* Simplify secFromSlot

Co-authored-by: dapplion <35266934+dapplion@users.noreply.github.com>

* Fix the terminal validations of the merge block (#3984)

* Fix the terminal validations of the merge block

* activate merge transition block spec tests

* some comments to explain the merge block validations movement

* Extend error messages when voluntary exit errors because of present of lockfile (#3935)

* Extend error and Clean up

* Only showing the message to use --force to override in case of voluntary exit

* Simplify gitData and version guessing (#3992)

Don't print double slash in version string

Dont add git-data.json to NPM releases

Write git-data.json only in from source docker build

Remove numCommits

Test git-data.json generation from within the test

Move comment

Revert "Dont add git-data.json to NPM releases"

This reverts commit 5fe2d38.

Simplify gitData and version guessing

Run cmd

* Activate ex-ante fork-choice spec tests (#4003)

* Prepare custom version on next release (#3990)

* Prepare custom version on next release

* Test in branch

* Don't set version in advance

* Remove --canary flag

* Change and commit version

* Setup git config

* Revert temp changes

* Lightclient e2e: increase validator client (#4006)

* Bump to v0.37.0 nightly builds (#4013)

* Guarantee full spec tests coverage (#4012)

* Ensure all spec tests are run

* Fix general bls tests

* Improve docs of specTestIterator

* Fix fork_choice tests

* Remove Check spec tests step

* Add merge transition/finalization banners (#3963)

* Add merge transition/finalization banners

* fix signatures

* Benchmark initial sync (#3995)

* Basic range sync perf test

* Benchmark initial sync

* Add INFURA_ETH2_CREDENTIALS to benchmark GA

* Download test cache file from alternative source

* Re-org beforeValue and testCase helpers

* Break light-client - state-transition test dependency

* Revert adding downloadTestCacheFile

* Download files from a Github release

* Clarify #3977 with unbounded uint issue (#4018)

* Update mainnet-shadow-5 configs (#4021)

* Bump moment from 2.29.1 to 2.29.2 (#3901)

Bumps [moment](https://github.com/moment/moment) from 2.29.1 to 2.29.2.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](moment/moment@2.29.1...2.29.2)

---
updated-dependencies:
- dependency-name: moment
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Implement support for validator next-epoch proposer duties (#3782)

* Implementation to be able to get block proposer an epoch ahead - still need optimization

* revert changes made to waitForSlot

* caching the results of computing future proposers. Also extended test

* using effectiveBalanceIncrements from state instead of recomputing it

* fix lint errors

* revert check not needed in getBeaconProposer

* Update tests to include assertion messages

* Move caching of next proposer duties to BeaconChain class

* Delete the block proposer previously cached when next proposer was requested at current epoch

* moved next epoch proposers from the chain to the state

* Compute next proposer on demand and cache

* Fix lint errors

* update implementation to work with changes from master

* caching epoch seed in context so that getNextEpochBeaconProposer can be independent of state

* Revert "caching epoch seed in context so that getNextEpochBeaconProposer can be independent of state"

This reverts commit 02a722a.

* caching epoch seed in context so that getNextEpochBeaconProposer can be independent of state

* removing the need to delete from nextEpochProposers in call to getBeaconProposer

* no need to recompute currrentProposerSeed again

* Revert "no need to recompute currrentProposerSeed again"

This reverts commit b6b1b8c.

* removed empty file left after fixing merge conflicts

* remove some unnecessary variable from the epoch context.

* add some comments

* Fix lint

* import from the right location

* Review PR

* Merge imports

* Delete get proposers api impl test

* Remove duplicated comment

Co-authored-by: dapplion <35266934+dapplion@users.noreply.github.com>

* Extend timeout for gitData unit test (#4026)

* Fix readAndGetGitData (#4025)

* Ensure light client update is in a single period (#4029)

* Handle merge block fetch error (#4016)

* Handle merge block fetch error

* Log errors on fetch errors for terminal pow

* docs: Update nodeJS minimum requirement (#4037)

* Remove child_process call in gitData before step (#4033)

* Oppool aggregates use BitArray only for set logic (#4034)

* Use BitArrays for aggregate merging

* Test intersectUint8Arrays

* Review PR

* Update tests

* Remove un-used code

* Modify gossipsub params following consensus spec v1.1.10 (#4011)

* Modify gossipsub params following consensus spec v1.1.10

* Specify GOSSIPSUB_HEARTBEAT_INTERVAL as a constant

* Throw a more informative error on invalid keystore (#4022)

* Throw a more informative error on invalid keystore

* Make error more descriptive

* Use template string

* Update keys.ts

* Update keys.ts

Co-authored-by: Lion - dapplion <35266934+dapplion@users.noreply.github.com>

* Ignore gossip AggregateAndProof if aggregate is seen (#4019)

* Ignore gossip AggregateAndProof if aggregate is seen

* Check for non-strict superset of seen attestation data

* Fix validateGossipAggregateAndProof benchmark test

* Fix import

* Ultilize intersectUint8Arrays()

* Implement SeenContributionAndProof.participantsKnown

* Add metrics to seen cache

* Add perf tests

* Change method name to isSuperSetOrEqual()

* Refactor metric names

* Specify lerna exact version for release-nightly workflow (#4049)

* Add ropsten network (#4051)

* Force all packages to be versioned for exact (#4052)

* Update discv5 to v0.7.1 (#4044)

* Add ability to update the fee recipient for execution via beacon and/or validator defaults (#3958)

* Add and use a default fee recipient for a validator process

* transfer the proposer cache to beacon chain

* mock chain fixes

* test and perf fixes

* fee recipient validation change

* track and use free recipient as string instead of ExecutionAddress

* fix unit test

* fix merge test

* use dummy address

* refac and add proposer cache pruning

* tests for beacon proposer cache

* merge interop fee recipient check

* fix the optional

* feeRecipient confirmation and small refac

* add the missing map

* add flag to enable strict fee recipient check

* Small refactor to setup merge for ropsten using baked in configs (#4053)

* Issue advance fcU for builing the EL block (#3965)

rebaseing to the refactored prepare beacon proposer

refac payload id cache as separate class and add pruning

issue payload fcus if synced

rename issueNext.. to maybeIssueNext...

* Simplify release process (#4030)

* Simplify release process

* Remove old postrelease script

* Add lerna version check

* Tweak RELEASE.md

* Add force-publish to lerna version command

* Update the proposer boost percentage to 40% (#4055)

* ESM Support (#3978)

* ESM changes

* Fix root lodestar script

* Fix some linter errors

* trying directly re-exporting under an alias from networks module

* Fix types exports

* Fix more linter errors

* Fix spec test download

* Update bls to 7.1.0

* Fix spec tests

* temp reverting eslint parser option to 10 and disabling the check of .js file extenstion. Should fix lint errors

* temp commented out file-extension-in-import

* Disable readme checks

* Fix check-build

* Fix params e2e tests

* Bump @chainsafe/threads

* Bump bls to v7.1.1

* Add timeouts after node initialization but before sim test run

* Tweak timeouts

* Tweak timeout

* Tweak sim merge timeout

* Tweak sim merge timeout

* Tweak sim merge timeout

* Tweak sim merge timeout

* Add more timeouts

* Add another timeout

* Fix linter errors

* Fix some tests

* Fix some linter errors and spec tests

* Fix benchmarks

* Fix linter errors

* Update each bls dependency

* Tweak timeouts

* Add another timeout

* More timeouts

* Fix bls pool size

* Set root package.json to ESM

* Remove old linter comment

* Revert "Set root package.json to ESM"

This reverts commit 347b0fd.

* Remove stray file (probably old)

* Undo unnecessary diff

* Add comment on __dirname replacement

* Import type @chainsafe/bls/types

* Use lodestar path imports

* Revert multifork to lodestar package

* Format .mocharc.yaml

* Use same @chainsafe/as-sha256 version

* Fix lodash path imports

* Use src instead of lib

* Load db metrics

* Remove experimental-specifier-resolution

* Remove lodestat/chain export

* Add stray missing file extension

* Revert ValidatorDir changes

* Fix stray missing file extensions

* Fix check-types

Co-authored-by: Dadepo Aderemi <dadepo@gmail.com>
Co-authored-by: dapplion <35266934+dapplion@users.noreply.github.com>

* chore(release): v0.37.0-beta.0

* Bump to v0.37.0

Co-authored-by: tuyennhv <vutuyen2636@gmail.com>
Co-authored-by: g11tech <76567250+g11tech@users.noreply.github.com>
Co-authored-by: dadepo <dadepo@gmail.com>
Co-authored-by: Cayman <caymannava@gmail.com>
Co-authored-by: Phil Ngo <58080811+philknows@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: g11tech <gajinder@g11.in>
@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
Development

Successfully merging this pull request may close these issues.

None yet

5 participants