@lodestar/beacon-node 1.34.1 → 1.35.0-dev.092cc3954a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/impl/beacon/blocks/index.js +71 -53
- package/lib/api/impl/beacon/blocks/index.js.map +1 -1
- package/lib/api/impl/beacon/pool/index.js +3 -3
- package/lib/api/impl/beacon/pool/index.js.map +1 -1
- package/lib/api/impl/debug/index.js +20 -9
- package/lib/api/impl/debug/index.js.map +1 -1
- package/lib/api/impl/errors.js +2 -0
- package/lib/api/impl/errors.js.map +1 -1
- package/lib/api/impl/index.d.ts +3 -3
- package/lib/api/impl/index.js +3 -3
- package/lib/api/impl/index.js.map +1 -1
- package/lib/api/impl/lodestar/index.js +1 -1
- package/lib/api/impl/lodestar/index.js.map +1 -1
- package/lib/api/impl/validator/index.js +2 -1
- package/lib/api/impl/validator/index.js.map +1 -1
- package/lib/api/rest/activeSockets.js +3 -2
- package/lib/api/rest/activeSockets.js.map +1 -1
- package/lib/api/rest/base.d.ts +1 -1
- package/lib/api/rest/base.js +6 -2
- package/lib/api/rest/base.js.map +1 -1
- package/lib/api/rest/index.js +2 -0
- package/lib/api/rest/index.js.map +1 -1
- package/lib/api/rest/swaggerUI.js +4 -2
- package/lib/api/rest/swaggerUI.js.map +1 -1
- package/lib/bun-wrappers/prometheus-gc-stats.d.ts +2 -0
- package/lib/bun-wrappers/prometheus-gc-stats.js +8 -0
- package/lib/bun-wrappers/prometheus-gc-stats.js.map +1 -0
- package/lib/chain/ColumnReconstructionTracker.d.ts +32 -0
- package/lib/chain/ColumnReconstructionTracker.js +71 -0
- package/lib/chain/ColumnReconstructionTracker.js.map +1 -0
- package/lib/chain/GetBlobsTracker.d.ts +31 -0
- package/lib/chain/GetBlobsTracker.js +82 -0
- package/lib/chain/GetBlobsTracker.js.map +1 -0
- package/lib/chain/archiveStore/archiveStore.js +49 -38
- package/lib/chain/archiveStore/archiveStore.js.map +1 -1
- package/lib/chain/archiveStore/historicalState/historicalStateRegen.js +2 -0
- package/lib/chain/archiveStore/historicalState/historicalStateRegen.js.map +1 -1
- package/lib/chain/archiveStore/index.d.ts +1 -1
- package/lib/chain/archiveStore/index.js +1 -1
- package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js +5 -0
- package/lib/chain/archiveStore/strategies/frequencyStateArchiveStrategy.js.map +1 -1
- package/lib/chain/archiveStore/utils/archiveBlocks.js +14 -7
- package/lib/chain/archiveStore/utils/archiveBlocks.js.map +1 -1
- package/lib/chain/balancesCache.js +1 -3
- package/lib/chain/balancesCache.js.map +1 -1
- package/lib/chain/beaconProposerCache.js +1 -0
- package/lib/chain/beaconProposerCache.js.map +1 -1
- package/lib/chain/blocks/blockInput/blockInput.d.ts +19 -7
- package/lib/chain/blocks/blockInput/blockInput.js +132 -88
- package/lib/chain/blocks/blockInput/blockInput.js.map +1 -1
- package/lib/chain/blocks/blockInput/index.d.ts +1 -1
- package/lib/chain/blocks/blockInput/index.js +1 -1
- package/lib/chain/blocks/blockInput/types.d.ts +19 -10
- package/lib/chain/blocks/blockInput/types.js +1 -0
- package/lib/chain/blocks/blockInput/types.js.map +1 -1
- package/lib/chain/blocks/blockInput/utils.d.ts +0 -4
- package/lib/chain/blocks/blockInput/utils.js +6 -29
- package/lib/chain/blocks/blockInput/utils.js.map +1 -1
- package/lib/chain/blocks/importBlock.js +36 -32
- package/lib/chain/blocks/importBlock.js.map +1 -1
- package/lib/chain/blocks/index.d.ts +6 -5
- package/lib/chain/blocks/index.js +5 -4
- package/lib/chain/blocks/index.js.map +1 -1
- package/lib/chain/blocks/types.d.ts +3 -108
- package/lib/chain/blocks/types.js +0 -119
- package/lib/chain/blocks/types.js.map +1 -1
- package/lib/chain/blocks/utils/chainSegment.d.ts +2 -2
- package/lib/chain/blocks/utils/chainSegment.js +2 -2
- package/lib/chain/blocks/utils/chainSegment.js.map +1 -1
- package/lib/chain/blocks/verifyBlock.d.ts +3 -3
- package/lib/chain/blocks/verifyBlock.js +15 -14
- package/lib/chain/blocks/verifyBlock.js.map +1 -1
- package/lib/chain/blocks/verifyBlocksDataAvailability.d.ts +7 -22
- package/lib/chain/blocks/verifyBlocksDataAvailability.js +18 -110
- package/lib/chain/blocks/verifyBlocksDataAvailability.js.map +1 -1
- package/lib/chain/blocks/verifyBlocksExecutionPayloads.d.ts +4 -3
- package/lib/chain/blocks/verifyBlocksExecutionPayloads.js +24 -22
- package/lib/chain/blocks/verifyBlocksExecutionPayloads.js.map +1 -1
- package/lib/chain/blocks/verifyBlocksSanityChecks.d.ts +4 -3
- package/lib/chain/blocks/verifyBlocksSanityChecks.js +2 -2
- package/lib/chain/blocks/verifyBlocksSanityChecks.js.map +1 -1
- package/lib/chain/blocks/verifyBlocksStateTransitionOnly.d.ts +3 -2
- package/lib/chain/blocks/verifyBlocksStateTransitionOnly.js +2 -2
- package/lib/chain/blocks/verifyBlocksStateTransitionOnly.js.map +1 -1
- package/lib/chain/blocks/writeBlockInputToDb.d.ts +3 -3
- package/lib/chain/blocks/writeBlockInputToDb.js +61 -63
- package/lib/chain/blocks/writeBlockInputToDb.js.map +1 -1
- package/lib/chain/bls/multithread/index.js +167 -163
- package/lib/chain/bls/multithread/index.js.map +1 -1
- package/lib/chain/bls/singleThread.js +1 -0
- package/lib/chain/bls/singleThread.js.map +1 -1
- package/lib/chain/chain.d.ts +13 -11
- package/lib/chain/chain.js +79 -20
- package/lib/chain/chain.js.map +1 -1
- package/lib/chain/emitter.d.ts +43 -2
- package/lib/chain/emitter.js +18 -0
- package/lib/chain/emitter.js.map +1 -1
- package/lib/chain/errors/blobSidecarError.d.ts +24 -0
- package/lib/chain/errors/blobSidecarError.js +10 -0
- package/lib/chain/errors/blobSidecarError.js.map +1 -1
- package/lib/chain/errors/blockError.js +1 -0
- package/lib/chain/errors/blockError.js.map +1 -1
- package/lib/chain/errors/dataColumnSidecarError.d.ts +42 -0
- package/lib/chain/errors/dataColumnSidecarError.js +14 -0
- package/lib/chain/errors/dataColumnSidecarError.js.map +1 -1
- package/lib/chain/errors/gossipValidation.js +1 -0
- package/lib/chain/errors/gossipValidation.js.map +1 -1
- package/lib/chain/errors/index.d.ts +2 -2
- package/lib/chain/errors/index.js +2 -2
- package/lib/chain/errors/index.js.map +1 -1
- package/lib/chain/forkChoice/index.js.map +1 -1
- package/lib/chain/genesis/genesis.js +16 -5
- package/lib/chain/genesis/genesis.js.map +1 -1
- package/lib/chain/index.d.ts +2 -2
- package/lib/chain/index.js +2 -2
- package/lib/chain/index.js.map +1 -1
- package/lib/chain/interface.d.ts +13 -9
- package/lib/chain/interface.js.map +1 -1
- package/lib/chain/lightClient/index.js +16 -9
- package/lib/chain/lightClient/index.js.map +1 -1
- package/lib/chain/lightClient/proofs.js.map +1 -1
- package/lib/chain/opPools/aggregatedAttestationPool.js +14 -9
- package/lib/chain/opPools/aggregatedAttestationPool.js.map +1 -1
- package/lib/chain/opPools/attestationPool.js +8 -3
- package/lib/chain/opPools/attestationPool.js.map +1 -1
- package/lib/chain/opPools/index.d.ts +1 -1
- package/lib/chain/opPools/index.js +1 -1
- package/lib/chain/opPools/index.js.map +1 -1
- package/lib/chain/opPools/opPool.js +10 -12
- package/lib/chain/opPools/opPool.js.map +1 -1
- package/lib/chain/opPools/syncCommitteeMessagePool.js +9 -6
- package/lib/chain/opPools/syncCommitteeMessagePool.js.map +1 -1
- package/lib/chain/opPools/syncContributionAndProofPool.js +5 -2
- package/lib/chain/opPools/syncContributionAndProofPool.js.map +1 -1
- package/lib/chain/options.js +1 -1
- package/lib/chain/options.js.map +1 -1
- package/lib/chain/prepareNextSlot.js +141 -134
- package/lib/chain/prepareNextSlot.js.map +1 -1
- package/lib/chain/produceBlock/produceBlockBody.d.ts +1 -1
- package/lib/chain/produceBlock/produceBlockBody.js +3 -10
- package/lib/chain/produceBlock/produceBlockBody.js.map +1 -1
- package/lib/chain/regen/errors.js +1 -0
- package/lib/chain/regen/errors.js.map +1 -1
- package/lib/chain/regen/index.d.ts +1 -1
- package/lib/chain/regen/index.js +1 -1
- package/lib/chain/regen/index.js.map +1 -1
- package/lib/chain/regen/queued.js +35 -28
- package/lib/chain/regen/queued.js.map +1 -1
- package/lib/chain/regen/regen.js +1 -0
- package/lib/chain/regen/regen.js.map +1 -1
- package/lib/chain/reprocess.js +3 -1
- package/lib/chain/reprocess.js.map +1 -1
- package/lib/chain/seenCache/index.d.ts +1 -1
- package/lib/chain/seenCache/index.js +1 -1
- package/lib/chain/seenCache/index.js.map +1 -1
- package/lib/chain/seenCache/seenAggregateAndProof.js +7 -6
- package/lib/chain/seenCache/seenAggregateAndProof.js.map +1 -1
- package/lib/chain/seenCache/seenAttestationData.js +5 -2
- package/lib/chain/seenCache/seenAttestationData.js.map +1 -1
- package/lib/chain/seenCache/seenAttesters.js +2 -4
- package/lib/chain/seenCache/seenAttesters.js.map +1 -1
- package/lib/chain/seenCache/seenBlockProposers.js +2 -4
- package/lib/chain/seenCache/seenBlockProposers.js.map +1 -1
- package/lib/chain/seenCache/seenCommittee.js +1 -3
- package/lib/chain/seenCache/seenCommittee.js.map +1 -1
- package/lib/chain/seenCache/seenCommitteeContribution.js +3 -2
- package/lib/chain/seenCache/seenCommitteeContribution.js.map +1 -1
- package/lib/chain/seenCache/seenGossipBlockInput.d.ts +74 -78
- package/lib/chain/seenCache/seenGossipBlockInput.js +235 -369
- package/lib/chain/seenCache/seenGossipBlockInput.js.map +1 -1
- package/lib/chain/shufflingCache.js +5 -2
- package/lib/chain/shufflingCache.js.map +1 -1
- package/lib/chain/stateCache/blockStateCacheImpl.js +13 -7
- package/lib/chain/stateCache/blockStateCacheImpl.js.map +1 -1
- package/lib/chain/stateCache/datastore/db.js +1 -0
- package/lib/chain/stateCache/datastore/db.js.map +1 -1
- package/lib/chain/stateCache/datastore/file.js +1 -0
- package/lib/chain/stateCache/datastore/file.js.map +1 -1
- package/lib/chain/stateCache/datastore/index.d.ts +1 -1
- package/lib/chain/stateCache/datastore/index.js +1 -1
- package/lib/chain/stateCache/datastore/index.js.map +1 -1
- package/lib/chain/stateCache/fifoBlockStateCache.js +10 -0
- package/lib/chain/stateCache/fifoBlockStateCache.js.map +1 -1
- package/lib/chain/stateCache/inMemoryCheckpointsCache.js +10 -4
- package/lib/chain/stateCache/inMemoryCheckpointsCache.js.map +1 -1
- package/lib/chain/stateCache/index.d.ts +1 -1
- package/lib/chain/stateCache/index.js +1 -1
- package/lib/chain/stateCache/index.js.map +1 -1
- package/lib/chain/stateCache/mapMetrics.js +4 -4
- package/lib/chain/stateCache/mapMetrics.js.map +1 -1
- package/lib/chain/stateCache/persistentCheckpointsCache.js +14 -6
- package/lib/chain/stateCache/persistentCheckpointsCache.js.map +1 -1
- package/lib/chain/validation/blobSidecar.d.ts +8 -3
- package/lib/chain/validation/blobSidecar.js +73 -31
- package/lib/chain/validation/blobSidecar.js.map +1 -1
- package/lib/chain/validation/dataColumnSidecar.d.ts +7 -9
- package/lib/chain/validation/dataColumnSidecar.js +95 -57
- package/lib/chain/validation/dataColumnSidecar.js.map +1 -1
- package/lib/chain/validation/index.d.ts +1 -1
- package/lib/chain/validation/index.js +1 -1
- package/lib/chain/validation/index.js.map +1 -1
- package/lib/chain/validation/signatureSets/aggregateAndProof.d.ts +1 -2
- package/lib/chain/validation/signatureSets/aggregateAndProof.js.map +1 -1
- package/lib/chain/validatorMonitor.d.ts +1 -3
- package/lib/chain/validatorMonitor.js +2 -1
- package/lib/chain/validatorMonitor.js.map +1 -1
- package/lib/db/beacon.js +24 -0
- package/lib/db/beacon.js.map +1 -1
- package/lib/db/index.d.ts +1 -1
- package/lib/db/index.js.map +1 -1
- package/lib/db/repositories/blobSidecars.js.map +1 -1
- package/lib/db/repositories/blockArchive.js +4 -5
- package/lib/db/repositories/blockArchive.js.map +1 -1
- package/lib/db/repositories/blockArchiveIndex.d.ts +4 -0
- package/lib/db/repositories/blockArchiveIndex.js +13 -5
- package/lib/db/repositories/blockArchiveIndex.js.map +1 -1
- package/lib/db/repositories/dataColumnSidecar.js +8 -7
- package/lib/db/repositories/dataColumnSidecar.js.map +1 -1
- package/lib/db/repositories/dataColumnSidecarArchive.js +17 -7
- package/lib/db/repositories/dataColumnSidecarArchive.js.map +1 -1
- package/lib/db/repositories/depositDataRoot.js +1 -0
- package/lib/db/repositories/depositDataRoot.js.map +1 -1
- package/lib/db/repositories/index.d.ts +10 -10
- package/lib/db/repositories/index.js +9 -9
- package/lib/db/repositories/index.js.map +1 -1
- package/lib/db/repositories/stateArchive.js +3 -2
- package/lib/db/repositories/stateArchive.js.map +1 -1
- package/lib/db/repositories/stateArchiveIndex.d.ts +1 -0
- package/lib/db/repositories/stateArchiveIndex.js +6 -2
- package/lib/db/repositories/stateArchiveIndex.js.map +1 -1
- package/lib/db/single/preGenesisState.d.ts +1 -0
- package/lib/db/single/preGenesisState.js +11 -4
- package/lib/db/single/preGenesisState.js.map +1 -1
- package/lib/db/single/preGenesisStateLastProcessedBlock.d.ts +1 -0
- package/lib/db/single/preGenesisStateLastProcessedBlock.js +10 -4
- package/lib/db/single/preGenesisStateLastProcessedBlock.js.map +1 -1
- package/lib/eth1/eth1DataCache.js +2 -0
- package/lib/eth1/eth1DataCache.js.map +1 -1
- package/lib/eth1/eth1DepositDataTracker.js +18 -5
- package/lib/eth1/eth1DepositDataTracker.js.map +1 -1
- package/lib/eth1/eth1DepositsCache.js +3 -0
- package/lib/eth1/eth1DepositsCache.js.map +1 -1
- package/lib/eth1/eth1MergeBlockTracker.js +10 -4
- package/lib/eth1/eth1MergeBlockTracker.js.map +1 -1
- package/lib/eth1/index.js +2 -0
- package/lib/eth1/index.js.map +1 -1
- package/lib/eth1/provider/eth1Provider.d.ts +1 -2
- package/lib/eth1/provider/eth1Provider.js +6 -2
- package/lib/eth1/provider/eth1Provider.js.map +1 -1
- package/lib/eth1/provider/jsonRpcHttpClient.d.ts +1 -1
- package/lib/eth1/provider/jsonRpcHttpClient.js +16 -2
- package/lib/eth1/provider/jsonRpcHttpClient.js.map +1 -1
- package/lib/eth1/provider/jwt.js.map +1 -1
- package/lib/eth1/provider/utils.d.ts +5 -0
- package/lib/eth1/provider/utils.js +9 -1
- package/lib/eth1/provider/utils.js.map +1 -1
- package/lib/eth1/utils/deposits.js.map +1 -1
- package/lib/execution/builder/cache.js +6 -0
- package/lib/execution/builder/cache.js.map +1 -1
- package/lib/execution/builder/http.js +14 -8
- package/lib/execution/builder/http.js.map +1 -1
- package/lib/execution/builder/index.js.map +1 -1
- package/lib/execution/engine/disabled.js +2 -4
- package/lib/execution/engine/disabled.js.map +1 -1
- package/lib/execution/engine/http.d.ts +2 -2
- package/lib/execution/engine/http.js +43 -11
- package/lib/execution/engine/http.js.map +1 -1
- package/lib/execution/engine/interface.d.ts +2 -2
- package/lib/execution/engine/interface.js.map +1 -1
- package/lib/execution/engine/mock.d.ts +1 -0
- package/lib/execution/engine/mock.js +16 -12
- package/lib/execution/engine/mock.js.map +1 -1
- package/lib/execution/engine/payloadIdCache.js +1 -3
- package/lib/execution/engine/payloadIdCache.js.map +1 -1
- package/lib/execution/engine/types.d.ts +5 -1
- package/lib/execution/engine/types.js +37 -8
- package/lib/execution/engine/types.js.map +1 -1
- package/lib/execution/engine/utils.js +3 -3
- package/lib/execution/engine/utils.js.map +1 -1
- package/lib/execution/index.d.ts +2 -2
- package/lib/execution/index.js +2 -2
- package/lib/execution/index.js.map +1 -1
- package/lib/index.d.ts +6 -6
- package/lib/index.js +5 -5
- package/lib/index.js.map +1 -1
- package/lib/metrics/index.d.ts +1 -1
- package/lib/metrics/index.js +1 -1
- package/lib/metrics/index.js.map +1 -1
- package/lib/metrics/metrics/beacon.d.ts +11 -5
- package/lib/metrics/metrics/beacon.js +40 -20
- package/lib/metrics/metrics/beacon.js.map +1 -1
- package/lib/metrics/metrics/lodestar.d.ts +55 -13
- package/lib/metrics/metrics/lodestar.js +85 -8
- package/lib/metrics/metrics/lodestar.js.map +1 -1
- package/lib/metrics/metrics.d.ts +1 -1
- package/lib/metrics/metrics.js.map +1 -1
- package/lib/metrics/nodeJsMetrics.js +1 -1
- package/lib/metrics/nodeJsMetrics.js.map +1 -1
- package/lib/metrics/server/http.d.ts +1 -1
- package/lib/metrics/utils/avgMinMax.d.ts +1 -1
- package/lib/metrics/utils/avgMinMax.js +10 -6
- package/lib/metrics/utils/avgMinMax.js.map +1 -1
- package/lib/metrics/utils/gauge.d.ts +1 -1
- package/lib/metrics/utils/gauge.js +1 -4
- package/lib/metrics/utils/gauge.js.map +1 -1
- package/lib/metrics/utils/registryMetricCreator.d.ts +1 -1
- package/lib/metrics/utils/registryMetricCreator.js.map +1 -1
- package/lib/monitoring/properties.js +4 -0
- package/lib/monitoring/properties.js.map +1 -1
- package/lib/monitoring/service.js +13 -1
- package/lib/monitoring/service.js.map +1 -1
- package/lib/monitoring/system.js +25 -27
- package/lib/monitoring/system.js.map +1 -1
- package/lib/network/core/networkCore.d.ts +2 -2
- package/lib/network/core/networkCore.js +67 -50
- package/lib/network/core/networkCore.js.map +1 -1
- package/lib/network/core/networkCoreWorker.js +1 -1
- package/lib/network/core/networkCoreWorker.js.map +1 -1
- package/lib/network/core/networkCoreWorkerHandler.d.ts +2 -2
- package/lib/network/core/networkCoreWorkerHandler.js +5 -2
- package/lib/network/core/networkCoreWorkerHandler.js.map +1 -1
- package/lib/network/discv5/index.d.ts +2 -2
- package/lib/network/discv5/index.js +5 -2
- package/lib/network/discv5/index.js.map +1 -1
- package/lib/network/discv5/worker.js +3 -3
- package/lib/network/discv5/worker.js.map +1 -1
- package/lib/network/events.d.ts +2 -18
- package/lib/network/events.js +0 -7
- package/lib/network/events.js.map +1 -1
- package/lib/network/gossip/encoding.d.ts +1 -1
- package/lib/network/gossip/encoding.js +4 -2
- package/lib/network/gossip/encoding.js.map +1 -1
- package/lib/network/gossip/errors.js +1 -0
- package/lib/network/gossip/errors.js.map +1 -1
- package/lib/network/gossip/gossipsub.d.ts +1 -1
- package/lib/network/gossip/gossipsub.js +8 -1
- package/lib/network/gossip/gossipsub.js.map +1 -1
- package/lib/network/gossip/index.d.ts +2 -2
- package/lib/network/gossip/index.js +2 -2
- package/lib/network/gossip/index.js.map +1 -1
- package/lib/network/gossip/interface.d.ts +2 -2
- package/lib/network/gossip/topic.d.ts +125 -105
- package/lib/network/gossip/topic.js +2 -1
- package/lib/network/gossip/topic.js.map +1 -1
- package/lib/network/index.d.ts +3 -3
- package/lib/network/index.js +3 -3
- package/lib/network/index.js.map +1 -1
- package/lib/network/interface.d.ts +3 -2
- package/lib/network/libp2p/index.js +2 -2
- package/lib/network/libp2p/index.js.map +1 -1
- package/lib/network/metadata.js +4 -0
- package/lib/network/metadata.js.map +1 -1
- package/lib/network/network.d.ts +4 -2
- package/lib/network/network.js +89 -71
- package/lib/network/network.js.map +1 -1
- package/lib/network/options.js +1 -1
- package/lib/network/options.js.map +1 -1
- package/lib/network/peers/datastore.js +8 -2
- package/lib/network/peers/datastore.js.map +1 -1
- package/lib/network/peers/discover.js +75 -66
- package/lib/network/peers/discover.js.map +1 -1
- package/lib/network/peers/peerManager.js +154 -130
- package/lib/network/peers/peerManager.js.map +1 -1
- package/lib/network/peers/peersData.d.ts +1 -1
- package/lib/network/peers/peersData.js +1 -3
- package/lib/network/peers/peersData.js.map +1 -1
- package/lib/network/peers/score/index.d.ts +1 -1
- package/lib/network/peers/score/index.js +1 -1
- package/lib/network/peers/score/index.js.map +1 -1
- package/lib/network/peers/score/score.js +6 -0
- package/lib/network/peers/score/score.js.map +1 -1
- package/lib/network/peers/score/store.js +3 -0
- package/lib/network/peers/score/store.js.map +1 -1
- package/lib/network/peers/utils/prioritizePeers.js.map +1 -1
- package/lib/network/peers/utils/subnetMap.js +2 -4
- package/lib/network/peers/utils/subnetMap.js.map +1 -1
- package/lib/network/processor/aggregatorTracker.js +1 -3
- package/lib/network/processor/aggregatorTracker.js.map +1 -1
- package/lib/network/processor/gossipHandlers.js +145 -165
- package/lib/network/processor/gossipHandlers.js.map +1 -1
- package/lib/network/processor/gossipQueues/indexed.js +11 -9
- package/lib/network/processor/gossipQueues/indexed.js.map +1 -1
- package/lib/network/processor/gossipQueues/linear.js +9 -8
- package/lib/network/processor/gossipQueues/linear.js.map +1 -1
- package/lib/network/processor/index.d.ts +2 -1
- package/lib/network/processor/index.js +22 -8
- package/lib/network/processor/index.js.map +1 -1
- package/lib/network/reqresp/ReqRespBeaconNode.d.ts +1 -1
- package/lib/network/reqresp/ReqRespBeaconNode.js +11 -2
- package/lib/network/reqresp/ReqRespBeaconNode.js.map +1 -1
- package/lib/network/reqresp/handlers/beaconBlocksByRange.js +1 -2
- package/lib/network/reqresp/handlers/beaconBlocksByRange.js.map +1 -1
- package/lib/network/reqresp/handlers/dataColumnSidecarsByRoot.js.map +1 -1
- package/lib/network/reqresp/index.d.ts +1 -3
- package/lib/network/reqresp/index.js +1 -3
- package/lib/network/reqresp/index.js.map +1 -1
- package/lib/network/reqresp/rateLimit.js +11 -5
- package/lib/network/reqresp/rateLimit.js.map +1 -1
- package/lib/network/reqresp/utils/dataColumnResponseValidation.js +8 -4
- package/lib/network/reqresp/utils/dataColumnResponseValidation.js.map +1 -1
- package/lib/network/statusCache.js +1 -0
- package/lib/network/statusCache.js.map +1 -1
- package/lib/network/subnets/attnetsService.js +73 -65
- package/lib/network/subnets/attnetsService.js.map +1 -1
- package/lib/network/subnets/interface.js +1 -1
- package/lib/network/subnets/interface.js.map +1 -1
- package/lib/network/subnets/syncnetsService.js +29 -22
- package/lib/network/subnets/syncnetsService.js.map +1 -1
- package/lib/network/subnets/util.js +1 -2
- package/lib/network/subnets/util.js.map +1 -1
- package/lib/node/nodejs.d.ts +1 -1
- package/lib/node/nodejs.js +15 -0
- package/lib/node/nodejs.js.map +1 -1
- package/lib/node/notifier.js +1 -2
- package/lib/node/notifier.js.map +1 -1
- package/lib/node/options.js.map +1 -1
- package/lib/node/utils/interop/state.js +1 -2
- package/lib/node/utils/interop/state.js.map +1 -1
- package/lib/sync/backfill/backfill.d.ts +1 -1
- package/lib/sync/backfill/backfill.js +58 -16
- package/lib/sync/backfill/backfill.js.map +1 -1
- package/lib/sync/constants.d.ts +2 -1
- package/lib/sync/constants.js +2 -1
- package/lib/sync/constants.js.map +1 -1
- package/lib/sync/interface.d.ts +1 -59
- package/lib/sync/interface.js +0 -20
- package/lib/sync/interface.js.map +1 -1
- package/lib/sync/options.d.ts +1 -1
- package/lib/sync/range/batch.d.ts +48 -32
- package/lib/sync/range/batch.js +201 -55
- package/lib/sync/range/batch.js.map +1 -1
- package/lib/sync/range/chain.d.ts +15 -10
- package/lib/sync/range/chain.js +141 -70
- package/lib/sync/range/chain.js.map +1 -1
- package/lib/sync/range/range.d.ts +3 -3
- package/lib/sync/range/range.js +86 -54
- package/lib/sync/range/range.js.map +1 -1
- package/lib/sync/range/utils/hashBlocks.d.ts +2 -2
- package/lib/sync/range/utils/hashBlocks.js +6 -4
- package/lib/sync/range/utils/hashBlocks.js.map +1 -1
- package/lib/sync/range/utils/peerBalancer.js +18 -13
- package/lib/sync/range/utils/peerBalancer.js.map +1 -1
- package/lib/sync/sync.d.ts +1 -2
- package/lib/sync/sync.js +95 -87
- package/lib/sync/sync.js.map +1 -1
- package/lib/sync/types.d.ts +44 -0
- package/lib/sync/types.js +34 -0
- package/lib/sync/types.js.map +1 -0
- package/lib/sync/unknownBlock.d.ts +42 -28
- package/lib/sync/unknownBlock.js +404 -458
- package/lib/sync/unknownBlock.js.map +1 -1
- package/lib/sync/utils/downloadByRange.d.ts +186 -0
- package/lib/sync/utils/downloadByRange.js +457 -0
- package/lib/sync/utils/downloadByRange.js.map +1 -0
- package/lib/sync/utils/downloadByRoot.d.ts +119 -0
- package/lib/sync/utils/downloadByRoot.js +319 -0
- package/lib/sync/utils/downloadByRoot.js.map +1 -0
- package/lib/sync/utils/pendingBlocksTree.d.ts +14 -6
- package/lib/sync/utils/pendingBlocksTree.js +24 -18
- package/lib/sync/utils/pendingBlocksTree.js.map +1 -1
- package/lib/util/array.js +7 -3
- package/lib/util/array.js.map +1 -1
- package/lib/util/asyncIterableToEvents.js +6 -3
- package/lib/util/asyncIterableToEvents.js.map +1 -1
- package/lib/util/binarySearch.js +2 -0
- package/lib/util/binarySearch.js.map +1 -1
- package/lib/util/blobs.d.ts +2 -2
- package/lib/util/blobs.js +4 -4
- package/lib/util/blobs.js.map +1 -1
- package/lib/util/bufferPool.js +7 -2
- package/lib/util/bufferPool.js.map +1 -1
- package/lib/util/clock.d.ts +1 -1
- package/lib/util/clock.js +23 -18
- package/lib/util/clock.js.map +1 -1
- package/lib/util/dataColumns.d.ts +13 -10
- package/lib/util/dataColumns.js +92 -134
- package/lib/util/dataColumns.js.map +1 -1
- package/lib/util/execution.d.ts +20 -0
- package/lib/util/execution.js +148 -0
- package/lib/util/execution.js.map +1 -0
- package/lib/util/itTrigger.js +4 -4
- package/lib/util/itTrigger.js.map +1 -1
- package/lib/util/map.js +2 -0
- package/lib/util/map.js.map +1 -1
- package/lib/util/queue/index.d.ts +1 -1
- package/lib/util/queue/index.js +1 -1
- package/lib/util/queue/index.js.map +1 -1
- package/lib/util/queue/itemQueue.js +52 -49
- package/lib/util/queue/itemQueue.js.map +1 -1
- package/lib/util/serializedCache.js +1 -3
- package/lib/util/serializedCache.js.map +1 -1
- package/lib/util/set.js +2 -0
- package/lib/util/set.js.map +1 -1
- package/lib/util/sszBytes.d.ts +1 -0
- package/lib/util/sszBytes.js +1 -1
- package/lib/util/sszBytes.js.map +1 -1
- package/lib/util/timeSeries.js +3 -1
- package/lib/util/timeSeries.js.map +1 -1
- package/lib/util/types.d.ts +1 -1
- package/lib/util/types.js +2 -2
- package/lib/util/types.js.map +1 -1
- package/lib/util/wrapError.d.ts +7 -0
- package/package.json +22 -16
- package/lib/chain/seenCache/seenBlockInput.d.ts +0 -84
- package/lib/chain/seenCache/seenBlockInput.js +0 -225
- package/lib/chain/seenCache/seenBlockInput.js.map +0 -1
- package/lib/network/reqresp/beaconBlocksMaybeBlobsByRange.d.ts +0 -28
- package/lib/network/reqresp/beaconBlocksMaybeBlobsByRange.js +0 -328
- package/lib/network/reqresp/beaconBlocksMaybeBlobsByRange.js.map +0 -1
- package/lib/network/reqresp/beaconBlocksMaybeBlobsByRoot.d.ts +0 -49
- package/lib/network/reqresp/beaconBlocksMaybeBlobsByRoot.js +0 -499
- package/lib/network/reqresp/beaconBlocksMaybeBlobsByRoot.js.map +0 -1
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
import { routes } from "@lodestar/api";
|
|
2
|
+
import { signedBlockToSignedHeader } from "@lodestar/state-transition";
|
|
3
|
+
import { toHex } from "@lodestar/utils";
|
|
4
|
+
import { isBlockInputBlobs, isBlockInputColumns } from "../chain/blocks/blockInput/blockInput.js";
|
|
5
|
+
import { BlockInputSource } from "../chain/blocks/blockInput/types.js";
|
|
6
|
+
import { ChainEvent } from "../chain/emitter.js";
|
|
7
|
+
import { computePreFuluKzgCommitmentsInclusionProof } from "./blobs.js";
|
|
8
|
+
import { getCellsAndProofs, getDataColumnSidecarsFromBlock, getDataColumnSidecarsFromColumnSidecar, } from "./dataColumns.js";
|
|
9
|
+
export var DataColumnEngineResult;
|
|
10
|
+
(function (DataColumnEngineResult) {
|
|
11
|
+
DataColumnEngineResult["PreFulu"] = "pre_fulu";
|
|
12
|
+
// the recover is not attempted because it has full data columns
|
|
13
|
+
DataColumnEngineResult["NotAttemptedFull"] = "not_attempted_full";
|
|
14
|
+
// block has no blob so no need to call EL
|
|
15
|
+
DataColumnEngineResult["NotAttemptedNoBlobs"] = "not_attempted_no_blobs";
|
|
16
|
+
// EL call returned null, meaning it could not find the blobs
|
|
17
|
+
DataColumnEngineResult["NullResponse"] = "null_response";
|
|
18
|
+
// the recover is a success and it helps resolve availability
|
|
19
|
+
DataColumnEngineResult["SuccessResolved"] = "success_resolved";
|
|
20
|
+
// the recover is a success but it's late, availability is already resolved by either gossip or getBlobsV2
|
|
21
|
+
DataColumnEngineResult["SuccessLate"] = "success_late";
|
|
22
|
+
DataColumnEngineResult["Failed"] = "failed";
|
|
23
|
+
})(DataColumnEngineResult || (DataColumnEngineResult = {}));
|
|
24
|
+
export async function getBlobSidecarsFromExecution(config, executionEngine, metrics, emitter, blockInput) {
|
|
25
|
+
if (!isBlockInputBlobs(blockInput)) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
if (blockInput.hasAllData()) {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
const forkName = blockInput.forkName;
|
|
32
|
+
const blobMeta = blockInput.getMissingBlobMeta();
|
|
33
|
+
metrics?.blobs.getBlobsV1Requests.inc();
|
|
34
|
+
metrics?.blobs.getBlobsV1RequestedBlobCount.inc(blobMeta.length);
|
|
35
|
+
const enginedResponse = await executionEngine
|
|
36
|
+
.getBlobs(forkName, blobMeta.map(({ versionedHash }) => versionedHash))
|
|
37
|
+
.catch((_e) => {
|
|
38
|
+
// TODO(fulu): this should only count as a single error? need to update the promql to reflect this
|
|
39
|
+
metrics?.blobs.getBlobsV1Error.inc(blobMeta.length);
|
|
40
|
+
return null;
|
|
41
|
+
});
|
|
42
|
+
if (enginedResponse === null) {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
const block = blockInput.getBlock();
|
|
46
|
+
const blobSidecars = [];
|
|
47
|
+
// response.length should always match blobMeta.length and they should be in the same order
|
|
48
|
+
for (let i = 0; i < blobMeta.length; i++) {
|
|
49
|
+
const blobAndProof = enginedResponse[i];
|
|
50
|
+
if (!blobAndProof) {
|
|
51
|
+
metrics?.blobs.getBlobsV1Miss.inc();
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
metrics?.blobs.getBlobsV1Hit.inc();
|
|
55
|
+
if (blockInput.hasBlob(blobMeta[i].index)) {
|
|
56
|
+
// blob arrived and was cached while waiting for API response
|
|
57
|
+
metrics?.blobs.getBlobsV1HitButArrivedWhileWaiting.inc();
|
|
58
|
+
continue;
|
|
59
|
+
}
|
|
60
|
+
metrics?.blobs.getBlobsV1HitUseful.inc();
|
|
61
|
+
const { blob, proof } = blobAndProof;
|
|
62
|
+
const index = blobMeta[i].index;
|
|
63
|
+
const kzgCommitment = block.message.body.blobKzgCommitments[index];
|
|
64
|
+
const blobSidecar = {
|
|
65
|
+
index,
|
|
66
|
+
blob,
|
|
67
|
+
kzgProof: proof,
|
|
68
|
+
kzgCommitment,
|
|
69
|
+
// TODO(fulu): refactor this to only calculate the root inside these following two functions once
|
|
70
|
+
kzgCommitmentInclusionProof: computePreFuluKzgCommitmentsInclusionProof(forkName, block.message.body, index),
|
|
71
|
+
signedBlockHeader: signedBlockToSignedHeader(config, block),
|
|
72
|
+
};
|
|
73
|
+
blockInput.addBlob({
|
|
74
|
+
blobSidecar,
|
|
75
|
+
blockRootHex: blockInput.blockRootHex,
|
|
76
|
+
seenTimestampSec: Date.now() / 1000,
|
|
77
|
+
source: BlockInputSource.engine,
|
|
78
|
+
});
|
|
79
|
+
if (emitter.listenerCount(routes.events.EventType.blobSidecar)) {
|
|
80
|
+
emitter.emit(routes.events.EventType.blobSidecar, {
|
|
81
|
+
blockRoot: blockInput.blockRootHex,
|
|
82
|
+
slot: blockInput.slot,
|
|
83
|
+
index,
|
|
84
|
+
kzgCommitment: toHex(kzgCommitment),
|
|
85
|
+
versionedHash: toHex(blobMeta[i].versionedHash),
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
blobSidecars.push(blobSidecar);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
emitter.emit(ChainEvent.publishBlobSidecars, blobSidecars);
|
|
92
|
+
metrics?.gossipBlob.publishedFromEngine.inc(blobSidecars.length);
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Post fulu, call getBlobsV2 from execution engine once per slot whenever we see either beacon_block or data_column_sidecar gossip message
|
|
96
|
+
*/
|
|
97
|
+
export async function getDataColumnSidecarsFromExecution(config, executionEngine, emitter, blockInput, metrics, blobAndProofBuffers) {
|
|
98
|
+
// If its not a column block input, exit
|
|
99
|
+
if (!isBlockInputColumns(blockInput)) {
|
|
100
|
+
return DataColumnEngineResult.PreFulu;
|
|
101
|
+
}
|
|
102
|
+
// If already have all columns, exit
|
|
103
|
+
if (blockInput.hasAllData()) {
|
|
104
|
+
return DataColumnEngineResult.NotAttemptedFull;
|
|
105
|
+
}
|
|
106
|
+
const versionedHashes = blockInput.getVersionedHashes();
|
|
107
|
+
// If there are no blobs in this block, exit
|
|
108
|
+
if (versionedHashes.length === 0) {
|
|
109
|
+
return DataColumnEngineResult.NotAttemptedNoBlobs;
|
|
110
|
+
}
|
|
111
|
+
// Get blobs from execution engine
|
|
112
|
+
metrics?.peerDas.getBlobsV2Requests.inc();
|
|
113
|
+
const timer = metrics?.peerDas.getBlobsV2RequestDuration.startTimer();
|
|
114
|
+
const blobs = await executionEngine.getBlobs(blockInput.forkName, versionedHashes, blobAndProofBuffers);
|
|
115
|
+
timer?.();
|
|
116
|
+
// Execution engine was unable to find one or more blobs
|
|
117
|
+
if (blobs === null) {
|
|
118
|
+
return DataColumnEngineResult.NullResponse;
|
|
119
|
+
}
|
|
120
|
+
metrics?.peerDas.getBlobsV2Responses.inc();
|
|
121
|
+
// Return if we received all data columns while waiting for getBlobs
|
|
122
|
+
if (blockInput.hasAllData()) {
|
|
123
|
+
return DataColumnEngineResult.SuccessLate;
|
|
124
|
+
}
|
|
125
|
+
let dataColumnSidecars;
|
|
126
|
+
const cellsAndProofs = await getCellsAndProofs(blobs);
|
|
127
|
+
if (blockInput.hasBlock()) {
|
|
128
|
+
dataColumnSidecars = getDataColumnSidecarsFromBlock(config, blockInput.getBlock(), cellsAndProofs);
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
const firstSidecar = blockInput.getAllColumns()[0];
|
|
132
|
+
dataColumnSidecars = getDataColumnSidecarsFromColumnSidecar(firstSidecar, cellsAndProofs);
|
|
133
|
+
}
|
|
134
|
+
// Publish columns if and only if subscribed to them
|
|
135
|
+
const previouslyMissingColumns = blockInput.getMissingSampledColumnMeta().missing;
|
|
136
|
+
const sampledColumns = previouslyMissingColumns.map((columnIndex) => dataColumnSidecars[columnIndex]);
|
|
137
|
+
// for columns that we already seen, it will be ignored through `ignoreDuplicatePublishError` gossip option
|
|
138
|
+
emitter.emit(ChainEvent.publishDataColumns, sampledColumns);
|
|
139
|
+
// add all sampled columns to the block input, even if we didn't sample them
|
|
140
|
+
const seenTimestampSec = Date.now() / 1000;
|
|
141
|
+
for (const columnSidecar of sampledColumns) {
|
|
142
|
+
blockInput.addColumn({ columnSidecar, blockRootHex: blockInput.blockRootHex, source: BlockInputSource.engine, seenTimestampSec }, { throwOnDuplicateAdd: false } // columns may have been added while waiting
|
|
143
|
+
);
|
|
144
|
+
}
|
|
145
|
+
metrics?.dataColumns.bySource.inc({ source: BlockInputSource.engine }, previouslyMissingColumns.length);
|
|
146
|
+
return DataColumnEngineResult.SuccessResolved;
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=execution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execution.js","sourceRoot":"","sources":["../../src/util/execution.ts"],"names":[],"mappings":"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"}
|
package/lib/util/itTrigger.js
CHANGED
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
* but it does not buffer values, and this.end() stops the AsyncGenerator immediately
|
|
4
4
|
*/
|
|
5
5
|
export class ItTrigger {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
triggered = false;
|
|
7
|
+
ended = false;
|
|
8
|
+
error;
|
|
9
|
+
onNext;
|
|
10
10
|
trigger() {
|
|
11
11
|
this.triggered = true;
|
|
12
12
|
if (this.onNext)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"itTrigger.js","sourceRoot":"","sources":["../../src/util/itTrigger.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,SAAS;
|
|
1
|
+
{"version":3,"file":"itTrigger.js","sourceRoot":"","sources":["../../src/util/itTrigger.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,SAAS;IACZ,SAAS,GAAG,KAAK,CAAC;IAClB,KAAK,GAAG,KAAK,CAAC;IACd,KAAK,CAAS;IACd,MAAM,CAAc;IAE5B,OAAO;QACL,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,IAAI,CAAC,MAAM;YAAE,IAAI,CAAC,MAAM,EAAE,CAAC;IACjC,CAAC;IACD,GAAG,CAAC,GAAW;QACb,IAAI,GAAG;YAAE,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;;YACrB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QACvB,IAAI,IAAI,CAAC,MAAM;YAAE,IAAI,CAAC,MAAM,EAAE,CAAC;IACjC,CAAC;IAED,qBAAqB;IAErB,CAAC,MAAM,CAAC,aAAa,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,CAAC,KAAK,CAAC;QACjC,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO,EAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAC,CAAC;QACtD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,OAAO,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAC,CAAC;QACzC,CAAC;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE;gBACjB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;gBACxB,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACvB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IACD,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,OAAO,EAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAC,CAAC;IACxC,CAAC;IACD,KAAK,CAAC,KAAK,CAAC,GAAU;QACpB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,OAAO,EAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAC,CAAC;IACxC,CAAC;CACF"}
|
package/lib/util/map.js
CHANGED
package/lib/util/map.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map.js","sourceRoot":"","sources":["../../src/util/map.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AAEpC;;GAEG;AACH,MAAM,OAAO,UAAU;
|
|
1
|
+
{"version":3,"file":"map.js","sourceRoot":"","sources":["../../src/util/map.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AAEpC;;GAEG;AACH,MAAM,OAAO,UAAU;IACb,IAAI,CAAgB;IACpB,GAAG,CAAY;IAEvB;QACE,IAAI,CAAC,IAAI,GAAG,IAAI,UAAU,EAAK,CAAC;QAChC,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAQ,CAAC;IAC7B,CAAC;IAED,GAAG,CAAC,GAAM;QACR,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,GAAG,CAAC,GAAM,EAAE,KAAQ;QAClB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,GAAM,EAAE,cAAuB;QACpC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YACtC,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED,MAAM;QACJ,MAAM,KAAK,GAAG,IAAI,CAAC;QACnB,OAAO,CAAC,QAAQ,CAAC,CAAC,cAAc;YAC9B,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC/B,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAM,CAAC;YAC5B,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;IACP,CAAC;IAED,SAAS;QACP,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACjC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAM,CAAC;IAChC,CAAC;IAED,UAAU;QACR,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACnC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAM,CAAC;IACjC,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACxB,CAAC;IAED,GAAG,CAAC,GAAM;QACR,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;CACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
export { QueueError, QueueErrorCode, isQueueErrorAborted } from "./errors.js";
|
|
1
2
|
export * from "./fnQueue.js";
|
|
2
3
|
export * from "./itemQueue.js";
|
|
3
4
|
export * from "./options.js";
|
|
4
|
-
export { QueueError, QueueErrorCode, isQueueErrorAborted } from "./errors.js";
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/lib/util/queue/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
export { QueueError, QueueErrorCode, isQueueErrorAborted } from "./errors.js";
|
|
1
2
|
export * from "./fnQueue.js";
|
|
2
3
|
export * from "./itemQueue.js";
|
|
3
4
|
export * from "./options.js";
|
|
4
|
-
export { QueueError, QueueErrorCode, isQueueErrorAborted } from "./errors.js";
|
|
5
5
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/util/queue/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/util/queue/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,cAAc,EAAE,mBAAmB,EAAC,MAAM,aAAa,CAAC;AAC5E,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC"}
|
|
@@ -8,57 +8,18 @@ import { QueueType, defaultQueueOpts } from "./options.js";
|
|
|
8
8
|
*/
|
|
9
9
|
// biome-ignore lint/suspicious/noExplicitAny: We need to use `any` type here
|
|
10
10
|
export class JobItemQueue {
|
|
11
|
+
itemProcessor;
|
|
12
|
+
opts;
|
|
13
|
+
/**
|
|
14
|
+
* We choose to use LinkedList instead of regular array to improve shift() / push() / pop() performance.
|
|
15
|
+
* See the LinkedList benchmark for more details.
|
|
16
|
+
* */
|
|
17
|
+
jobs = new LinkedList();
|
|
18
|
+
metrics;
|
|
19
|
+
runningJobs = 0;
|
|
20
|
+
lastYield = 0;
|
|
11
21
|
constructor(itemProcessor, opts, metrics) {
|
|
12
22
|
this.itemProcessor = itemProcessor;
|
|
13
|
-
/**
|
|
14
|
-
* We choose to use LinkedList instead of regular array to improve shift() / push() / pop() performance.
|
|
15
|
-
* See the LinkedList benchmark for more details.
|
|
16
|
-
* */
|
|
17
|
-
this.jobs = new LinkedList();
|
|
18
|
-
this.runningJobs = 0;
|
|
19
|
-
this.lastYield = 0;
|
|
20
|
-
this.dropAllJobs = () => {
|
|
21
|
-
this.jobs.clear();
|
|
22
|
-
};
|
|
23
|
-
this.runJob = async () => {
|
|
24
|
-
if (this.opts.signal.aborted || this.runningJobs >= this.opts.maxConcurrency) {
|
|
25
|
-
return;
|
|
26
|
-
}
|
|
27
|
-
// Default to FIFO. LIFO -> pop() remove last item, FIFO -> shift() remove first item
|
|
28
|
-
const job = this.opts.type === QueueType.LIFO ? this.jobs.pop() : this.jobs.shift();
|
|
29
|
-
if (!job) {
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
this.runningJobs++;
|
|
33
|
-
// If the job, metrics or any code below throws: the job will reject never going stale.
|
|
34
|
-
// Only downside is the job promise may be resolved twice, but that's not an issue
|
|
35
|
-
try {
|
|
36
|
-
const timer = this.metrics?.jobTime.startTimer();
|
|
37
|
-
this.metrics?.jobWaitTime.observe((Date.now() - job.addedTimeMs) / 1000);
|
|
38
|
-
const result = await this.itemProcessor(...job.args);
|
|
39
|
-
job.resolve(result);
|
|
40
|
-
if (timer)
|
|
41
|
-
timer();
|
|
42
|
-
// Yield to the macro queue
|
|
43
|
-
if (Date.now() - this.lastYield > this.opts.yieldEveryMs) {
|
|
44
|
-
this.lastYield = Date.now();
|
|
45
|
-
await nextEventLoop();
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
catch (e) {
|
|
49
|
-
job.reject(e);
|
|
50
|
-
}
|
|
51
|
-
this.runningJobs = Math.max(0, this.runningJobs - 1);
|
|
52
|
-
// Potentially run a new job
|
|
53
|
-
void this.runJob();
|
|
54
|
-
};
|
|
55
|
-
this.abortAllJobs = () => {
|
|
56
|
-
while (this.jobs.length > 0) {
|
|
57
|
-
const job = this.jobs.pop();
|
|
58
|
-
if (job)
|
|
59
|
-
job.reject(new QueueError({ code: QueueErrorCode.QUEUE_ABORTED }));
|
|
60
|
-
}
|
|
61
|
-
};
|
|
62
23
|
this.opts = { ...defaultQueueOpts, ...opts };
|
|
63
24
|
this.opts.signal.addEventListener("abort", this.abortAllJobs, { once: true });
|
|
64
25
|
if (metrics) {
|
|
@@ -100,5 +61,47 @@ export class JobItemQueue {
|
|
|
100
61
|
getItems() {
|
|
101
62
|
return this.jobs.map((job) => ({ args: job.args, addedTimeMs: job.addedTimeMs }));
|
|
102
63
|
}
|
|
64
|
+
dropAllJobs = () => {
|
|
65
|
+
this.jobs.clear();
|
|
66
|
+
};
|
|
67
|
+
runJob = async () => {
|
|
68
|
+
if (this.opts.signal.aborted || this.runningJobs >= this.opts.maxConcurrency) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
// Default to FIFO. LIFO -> pop() remove last item, FIFO -> shift() remove first item
|
|
72
|
+
const job = this.opts.type === QueueType.LIFO ? this.jobs.pop() : this.jobs.shift();
|
|
73
|
+
if (!job) {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
this.runningJobs++;
|
|
77
|
+
// If the job, metrics or any code below throws: the job will reject never going stale.
|
|
78
|
+
// Only downside is the job promise may be resolved twice, but that's not an issue
|
|
79
|
+
try {
|
|
80
|
+
const timer = this.metrics?.jobTime.startTimer();
|
|
81
|
+
this.metrics?.jobWaitTime.observe((Date.now() - job.addedTimeMs) / 1000);
|
|
82
|
+
const result = await this.itemProcessor(...job.args);
|
|
83
|
+
job.resolve(result);
|
|
84
|
+
if (timer)
|
|
85
|
+
timer();
|
|
86
|
+
// Yield to the macro queue
|
|
87
|
+
if (Date.now() - this.lastYield > this.opts.yieldEveryMs) {
|
|
88
|
+
this.lastYield = Date.now();
|
|
89
|
+
await nextEventLoop();
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
catch (e) {
|
|
93
|
+
job.reject(e);
|
|
94
|
+
}
|
|
95
|
+
this.runningJobs = Math.max(0, this.runningJobs - 1);
|
|
96
|
+
// Potentially run a new job
|
|
97
|
+
void this.runJob();
|
|
98
|
+
};
|
|
99
|
+
abortAllJobs = () => {
|
|
100
|
+
while (this.jobs.length > 0) {
|
|
101
|
+
const job = this.jobs.pop();
|
|
102
|
+
if (job)
|
|
103
|
+
job.reject(new QueueError({ code: QueueErrorCode.QUEUE_ABORTED }));
|
|
104
|
+
}
|
|
105
|
+
};
|
|
103
106
|
}
|
|
104
107
|
//# sourceMappingURL=itemQueue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"itemQueue.js","sourceRoot":"","sources":["../../../src/util/queue/itemQueue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,mBAAmB,EAAE,aAAa,EAAC,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AACvC,OAAO,EAAC,UAAU,EAAE,cAAc,EAAC,MAAM,aAAa,CAAC;AACvD,OAAO,EAA6B,SAAS,EAAE,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAErF;;;GAGG;AAEH,6EAA6E;AAC7E,MAAM,OAAO,YAAY;
|
|
1
|
+
{"version":3,"file":"itemQueue.js","sourceRoot":"","sources":["../../../src/util/queue/itemQueue.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializedCache.js","sourceRoot":"","sources":["../../src/util/serializedCache.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,OAAO,eAAe;
|
|
1
|
+
{"version":3,"file":"serializedCache.js","sourceRoot":"","sources":["../../src/util/serializedCache.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,OAAO,eAAe;IAC1B,GAAG,GAAgC,IAAI,OAAO,EAAE,CAAC;IAEjD,GAAG,CAAC,GAAW;QACb,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,UAAsB;QACrC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAChC,CAAC;IAED,KAAK;QACH,IAAI,CAAC,GAAG,GAAG,IAAI,OAAO,EAAE,CAAC;IAC3B,CAAC;CACF"}
|
package/lib/util/set.js
CHANGED
package/lib/util/set.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set.js","sourceRoot":"","sources":["../../src/util/set.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,YAAY,CAAC;AAEtC;;GAEG;AACH,MAAM,OAAO,UAAU;
|
|
1
|
+
{"version":3,"file":"set.js","sourceRoot":"","sources":["../../src/util/set.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,YAAY,CAAC;AAEtC;;GAEG;AACH,MAAM,OAAO,UAAU;IACb,GAAG,CAAS;IACZ,KAAK,CAAgB;IAE7B;QACE,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAK,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,IAAI,UAAU,EAAK,CAAC;IACnC,CAAC;IAED,GAAG,CAAC,IAAO;QACT,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED,MAAM,CAAC,IAAO,EAAE,cAAuB;QACrC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACtB,IAAI,cAAc,EAAE,CAAC;gBACnB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED,IAAI;QACF,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC9B,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,GAAG,CAAC,IAAO;QACT,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IACvB,CAAC;CACF"}
|
package/lib/util/sszBytes.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { BLSSignature, CommitteeIndex, RootHex, Slot, ValidatorIndex } from "@lo
|
|
|
5
5
|
export type BlockRootHex = RootHex;
|
|
6
6
|
export type AttDataBase64 = string;
|
|
7
7
|
export type CommitteeBitsBase64 = string;
|
|
8
|
+
export declare const ROOT_SIZE = 32;
|
|
8
9
|
/**
|
|
9
10
|
* Extract slot from attestation serialized bytes.
|
|
10
11
|
* Return null if data is not long enough to extract slot.
|
package/lib/util/sszBytes.js
CHANGED
|
@@ -28,7 +28,7 @@ import { ssz } from "@lodestar/types";
|
|
|
28
28
|
// target: Checkpoint - data 40
|
|
29
29
|
const VARIABLE_FIELD_OFFSET = 4;
|
|
30
30
|
const ATTESTATION_BEACON_BLOCK_ROOT_OFFSET = VARIABLE_FIELD_OFFSET + 8 + 8;
|
|
31
|
-
const ROOT_SIZE = 32;
|
|
31
|
+
export const ROOT_SIZE = 32;
|
|
32
32
|
const SLOT_SIZE = 8;
|
|
33
33
|
const COMMITTEE_INDEX_SIZE = 8;
|
|
34
34
|
const ATTESTATION_DATA_SIZE = 128;
|
package/lib/util/sszBytes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sszBytes.js","sourceRoot":"","sources":["../../src/util/sszBytes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAE,qCAAqC,EAAC,MAAM,gBAAgB,CAAC;AAE/E,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EAGvB,OAAO,EACP,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAA8D,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAQjG,cAAc;AACd,gCAAgC;AAChC,uEAAuE;AACvE,8CAA8C;AAC9C,iCAAiC;AAEjC,UAAU;AACV,gCAAgC;AAChC,iGAAiG;AACjG,8CAA8C;AAC9C,iCAAiC;AACjC,uDAAuD;AACvD,UAAU;AACV,sCAAsC;AACtC,4CAA4C;AAC5C,2CAA2C;AAC3C,qCAAqC;AACrC,sCAAsC;AACtC,EAAE;AACF,gBAAgB;AAChB,yDAAyD;AACzD,uCAAuC;AACvC,uCAAuC;AACvC,wCAAwC;AACxC,wCAAwC;AACxC,wCAAwC;AAExC,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAChC,MAAM,oCAAoC,GAAG,qBAAqB,GAAG,CAAC,GAAG,CAAC,CAAC;AAC3E,MAAM,SAAS,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"sszBytes.js","sourceRoot":"","sources":["../../src/util/sszBytes.ts"],"names":[],"mappings":"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"}
|
package/lib/util/timeSeries.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeSeries.js","sourceRoot":"","sources":["../../src/util/timeSeries.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,UAAU;
|
|
1
|
+
{"version":3,"file":"timeSeries.js","sourceRoot":"","sources":["../../src/util/timeSeries.ts"],"names":[],"mappings":"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"}
|
package/lib/util/types.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ export declare const signedBLSToExecutionChangeVersionedType: ContainerType<{
|
|
|
7
7
|
message: ContainerType<{
|
|
8
8
|
validatorIndex: import("@chainsafe/ssz").UintNumberType;
|
|
9
9
|
fromBlsPubkey: import("@chainsafe/ssz").ByteVectorType;
|
|
10
|
-
toExecutionAddress: import("@lodestar/types
|
|
10
|
+
toExecutionAddress: import("@lodestar/types").ExecutionAddressType;
|
|
11
11
|
}>;
|
|
12
12
|
signature: import("@chainsafe/ssz").ByteVectorType;
|
|
13
13
|
}>;
|
package/lib/util/types.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ContainerType, ListCompositeType } from "@chainsafe/ssz";
|
|
2
|
-
import { isForkPostDeneb } from "@lodestar/params";
|
|
2
|
+
import { isForkPostDeneb, isForkPostElectra } from "@lodestar/params";
|
|
3
3
|
import { ssz } from "@lodestar/types";
|
|
4
4
|
// Misc SSZ types used only in the beacon-node package, no need to upstream to types
|
|
5
5
|
export const signedBLSToExecutionChangeVersionedType = new ContainerType({
|
|
@@ -8,6 +8,6 @@ export const signedBLSToExecutionChangeVersionedType = new ContainerType({
|
|
|
8
8
|
data: ssz.capella.SignedBLSToExecutionChange,
|
|
9
9
|
}, { jsonCase: "eth2", typeName: "SignedBLSToExecutionChangeVersionedType" });
|
|
10
10
|
export const BeaconBlocksByRootRequestType = (fork, config) => new ListCompositeType(ssz.Root, isForkPostDeneb(fork) ? config.MAX_REQUEST_BLOCKS_DENEB : config.MAX_REQUEST_BLOCKS);
|
|
11
|
-
export const BlobSidecarsByRootRequestType = (fork, config) => new ListCompositeType(ssz.deneb.BlobIdentifier,
|
|
11
|
+
export const BlobSidecarsByRootRequestType = (fork, config) => new ListCompositeType(ssz.deneb.BlobIdentifier, isForkPostElectra(fork) ? config.MAX_REQUEST_BLOB_SIDECARS_ELECTRA : config.MAX_REQUEST_BLOB_SIDECARS);
|
|
12
12
|
export const DataColumnSidecarsByRootRequestType = (config) => new ListCompositeType(ssz.fulu.DataColumnsByRootIdentifier, config.MAX_REQUEST_BLOCKS_DENEB);
|
|
13
13
|
//# sourceMappingURL=types.js.map
|
package/lib/util/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/util/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAE,iBAAiB,EAAU,MAAM,gBAAgB,CAAC;AAEzE,OAAO,EAAW,eAAe,EAAC,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/util/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAE,iBAAiB,EAAU,MAAM,gBAAgB,CAAC;AAEzE,OAAO,EAAW,eAAe,EAAE,iBAAiB,EAAC,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAEpC,oFAAoF;AAEpF,MAAM,CAAC,MAAM,uCAAuC,GAAG,IAAI,aAAa,CACtE;IACE,iEAAiE;IACjE,UAAU,EAAE,GAAG,CAAC,OAAO;IACvB,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,0BAA0B;CAC7C,EACD,EAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,yCAAyC,EAAC,CACxE,CAAC;AAGF,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,IAAc,EAAE,MAAoB,EAAE,EAAE,CACpF,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAGvH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,IAAc,EAAE,MAAoB,EAAE,EAAE,CACpF,IAAI,iBAAiB,CACnB,GAAG,CAAC,KAAK,CAAC,cAAc,EACxB,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,iCAAiC,CAAC,CAAC,CAAC,MAAM,CAAC,yBAAyB,CACtG,CAAC;AAGJ,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,MAAoB,EAAE,EAAE,CAC1E,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,2BAA2B,EAAE,MAAM,CAAC,wBAAwB,CAAC,CAAC"}
|
package/lib/util/wrapError.d.ts
CHANGED
|
@@ -18,4 +18,11 @@ export type Result<T> = {
|
|
|
18
18
|
* if A() throws, B() would be called.
|
|
19
19
|
*/
|
|
20
20
|
export declare function wrapError<T>(promise: Promise<T>): Promise<Result<T>>;
|
|
21
|
+
/**
|
|
22
|
+
* Some functions may want to return a result and some warning typed as Error
|
|
23
|
+
*/
|
|
24
|
+
export type WarnResult<T, E extends Error> = {
|
|
25
|
+
result: T;
|
|
26
|
+
warnings: E[] | null;
|
|
27
|
+
};
|
|
21
28
|
//# sourceMappingURL=wrapError.d.ts.map
|