https://github.com/tendermint/tendermint
Closes issue #4338 Uses a wrapper function around both the signedHeader and validatorSet calls to the primary provider which attempts to retrieve the information 5 times before deeming the provider unavailable and replacing the primary provider with the first alternative before trying recursively again (until all alternatives are depleted) Employs a mutex lock for any operations involving the providers of the light client to ensure no operations occurs whilst the new primary is chosen. Commits: * created swapProvider function * eliminates old primary provider after replacement. Uses a mutex when changing providers * renamed to replaceProvider * created wrapped functions for signed header and val set * created test for primary provider replacement * implemented suggested revisions * created Witnesses() and Primary() * modified backoffAndJitterTime * modified backoffAndJitterTime * changed backoff base and jitter to functional arguments * implemented suggested changes * removed backoff function * changed exp function to match go version * halved the backoff time * removed seeding and added comments * fixed incorrect test * extract backoff timeout calc into a function Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
- HEAD
- refs/heads/0.35x
- refs/heads/1394-mempool-overload-2
- refs/heads/2565-max-age-duration
- refs/heads/2926_don_panic_with_getaddr
- refs/heads/abci++
- refs/heads/abci++_rebased
- refs/heads/abci-responses-flag-merge
- refs/heads/abci_remove_setOption
- refs/heads/add_persistence
- refs/heads/adi/gldb_test
- refs/heads/alessio/go1.14
- refs/heads/alessio/new-setup-test-configuration
- refs/heads/anca/block_search_q
- refs/heads/anca/fix_TestReactorTerminationScenarios
- refs/heads/anca/fix_pbts_tests
- refs/heads/anca/pbts_metrics
- refs/heads/anca/prevote_nil_untimely
- refs/heads/anca/remove_median_time
- refs/heads/anton/4963-jepsen-tests
- refs/heads/anton/block-file-format-adr
- refs/heads/bez/check-deliver-tx-block-gas-used
- refs/heads/bez/consensus-reactor-internal
- refs/heads/bez/kafka-indexer-sink
- refs/heads/bez/nuke-libs
- refs/heads/bez/p2p-refactor-blockchain-v2-reactor
- refs/heads/bez/revert-16bbe8c
- refs/heads/bez/v0.34.x-prioritized-mempool
- refs/heads/bez/wal-update
- refs/heads/breaking
- refs/heads/bucky/2871-disconnect-bad-peers
- refs/heads/bucky/adr-038
- refs/heads/bucky/chunking
- refs/heads/bucky/fix-pb2tm-header
- refs/heads/bucky/node-info-substructs
- refs/heads/bucky/upgrades
- refs/heads/bucky/versions
- refs/heads/bucky/ws
- refs/heads/cal/abci-client-mutex
- refs/heads/cal/backport-grpc-deprecation
- refs/heads/cal/default-trust-level
- refs/heads/cal/e2e-evidence
- refs/heads/cal/local-sync-adr
- refs/heads/cal/node-constructor
- refs/heads/cal/port-confix
- refs/heads/cal/prepare-proposal
- refs/heads/cal/process_proposal
- refs/heads/cal/rfc-lib-main
- refs/heads/cal/val-tool
- refs/heads/cal/vote-extensions-1
- refs/heads/cal/vote-extensions-2
- refs/heads/callum/adr16-versioning
- refs/heads/callum/app-version
- refs/heads/callum/config
- refs/heads/callum/e2e-timeout
- refs/heads/callum/e2e-upgrade
- refs/heads/callum/event-bus
- refs/heads/callum/evidence-hashes
- refs/heads/callum/handshake
- refs/heads/callum/mempool-full-error
- refs/heads/callum/merge-spec
- refs/heads/callum/nuke-libs
- refs/heads/callum/p2p-logs
- refs/heads/callum/p2p-provider
- refs/heads/callum/rfc-lib
- refs/heads/callum/simplify-config
- refs/heads/callum/v035-spec
- refs/heads/cason/bls-dev
- refs/heads/cason/rfc-accountability
- refs/heads/checked_ints
- refs/heads/clist-waitgroup
- refs/heads/cmd-add-p2p-external-address
- refs/heads/conr2d/doc-go-built-in
- refs/heads/creachadair/psql-event-schema
- refs/heads/delete-proto-gen-script
- refs/heads/dependabot/go_modules/github.com/docker/docker-24.0.9incompatible
- refs/heads/dependabot/go_modules/master/github.com/bufbuild/buf-1.4.0
- refs/heads/dependabot/npm_and_yarn/docs/express-4.19.2
- refs/heads/dependabot/pip/scripts/qa/reporting/pillow-10.3.0
- refs/heads/dev/boiler_plate_val_distr_tets
- refs/heads/dev/simple_merkle_rfc
- refs/heads/do-not-delete/wiki
- refs/heads/docs-staging
- refs/heads/docs-tendermint-com
- refs/heads/dont_panic_fileperms
- refs/heads/e2e-avoid-random-node-selection
- refs/heads/e2e-extend-timeouts
- refs/heads/e2e-future-proof
- refs/heads/e2e-limit-experiment
- refs/heads/e2e-limited-no-catchup
- refs/heads/e2e-no-perterb
- refs/heads/e2e-perturb-timeouts
- refs/heads/e2e-small-suite
- refs/heads/erik/usi-kvstore-statesync
- refs/heads/feature/abci++vef
- refs/heads/feature/adr075-backport
- refs/heads/finalizeBlock
- refs/heads/fix-issue-8160
- refs/heads/igor/spec-annotations1.2-lightclient
- refs/heads/igor/tendermint-ind-inv
- refs/heads/indexer_return_early
- refs/heads/ismail/custom_types_revival_or_not
- refs/heads/jae/generalmerkle
- refs/heads/jae/literefactor6
- refs/heads/jae/verifyingcachineprovider
- refs/heads/jasmina-200-testnet
- refs/heads/jasmina/4457-blocksync-verification_part1
- refs/heads/jasmina/4457_block_sync_verification
- refs/heads/jasmina/8219-blocksync-spec
- refs/heads/jasmina/8219-blocksync-verification-rfc
- refs/heads/jasmina/e2efix-nightly-fails
- refs/heads/jasmina/kvindexer-eventq-0.37
- refs/heads/jasmina/kvindexer-fix-0.34
- refs/heads/jasmina/p2p-bad-peers
- refs/heads/jk/pbtsPOL
- refs/heads/jlandrews/removetimestamp
- refs/heads/jlandrews/trim_commit
- refs/heads/jmalicevic/4729-evidence-individual-processing
- refs/heads/josef/check-validators
- refs/heads/josef/i9573-josef-p2p
- refs/heads/lasarojc-patch-1
- refs/heads/lasarojc-patch-2
- refs/heads/lasarojc/spec/gossip
- refs/heads/main
- refs/heads/main-libp2p
- refs/heads/main-pbts
- refs/heads/main_backup
- refs/heads/manuel/abci++-spec-refactor-methodspage
- refs/heads/marko/4698grpc_priv
- refs/heads/marko/bringbackdocs
- refs/heads/marko/filter_logging
- refs/heads/marko/int64-
- refs/heads/marko/remove-apphash
- refs/heads/master
- refs/heads/mergify/bp/v0.34.x/pr-7266
- refs/heads/mergify/bp/v0.34.x/pr-7551
- refs/heads/mergify/bp/v0.34.x/pr-7625
- refs/heads/mergify/bp/v0.34.x/pr-9351
- refs/heads/mergify/bp/v0.34.x/pr-9367
- refs/heads/mergify/bp/v0.35.x/pr-7551
- refs/heads/mergify/bp/v0.35.x/pr-7625
- refs/heads/mergify/bp/v0.35.x/pr-7849
- refs/heads/mergify/bp/v0.35.x/pr-8694
- refs/heads/mergify/bp/v0.35.x/pr-9007
- refs/heads/mergify/bp/v0.36.x/pr-9007
- refs/heads/mergify/bp/v0.37.x/pr-9367
- refs/heads/mergify/bp/v0.37.x/pr-9473
- refs/heads/mergify/bp/v0.37.x/pr-9500
- refs/heads/mergify/bp/v0.37.x/pr-9505
- refs/heads/mergify/bp/v0.37.x/pr-9622
- refs/heads/mergify/bp/v0.37.x/pr-9650
- refs/heads/mergify/bp/v0.37.x/pr-9720
- refs/heads/mergify/bp/v0.37.x/pr-9933
- refs/heads/mjf/adr075-eventlog
- refs/heads/mjf/panic-tooling
- refs/heads/mjf/rpc-rfc-bbq
- refs/heads/mr/short-tests
- refs/heads/p2p-accept-not-abort
- refs/heads/proto-fixup
- refs/heads/proxy-move-internal
- refs/heads/proxy-remove-triforcated-client
- refs/heads/rc0/v0.33.8
- refs/heads/rc1/0.33.4
- refs/heads/rc1/v0.32.12
- refs/heads/rc1/v0.33.5
- refs/heads/rc1/v0.33.6
- refs/heads/rc2/v0.33.5
- refs/heads/rc5/v0.34.0
- refs/heads/rc6/v0.34.0
- refs/heads/rc7/v0.34.0
- refs/heads/release/0.32.12
- refs/heads/release/v0.28.0
- refs/heads/release/v0.28.1
- refs/heads/release/v0.29.0
- refs/heads/release/v0.29.1
- refs/heads/release/v0.29.2
- refs/heads/release/v0.30.0
- refs/heads/release/v0.30.1
- refs/heads/release/v0.30.2
- refs/heads/release/v0.30.3
- refs/heads/release/v0.31.0
- refs/heads/release/v0.31.0-dev0-fix
- refs/heads/release/v0.31.1
- refs/heads/release/v0.31.3
- refs/heads/release/v0.31.4
- refs/heads/release/v0.31.6
- refs/heads/release/v0.31.7
- refs/heads/release/v0.31.8
- refs/heads/release/v0.31.9
- refs/heads/release/v0.32.1
- refs/heads/release/v0.32.11
- refs/heads/release/v0.32.13
- refs/heads/release/v0.32.14
- refs/heads/release/v0.32.2
- refs/heads/release/v0.32.3
- refs/heads/release/v0.32.4
- refs/heads/release/v0.32.5
- refs/heads/release/v0.32.8
- refs/heads/release/v0.32.9
- refs/heads/release/v0.33.1
- refs/heads/release/v0.33.2
- refs/heads/release/v0.33.4
- refs/heads/release/v0.33.5
- refs/heads/release/v0.33.7
- refs/heads/release/v0.33.8
- refs/heads/release/v0.33.9
- refs/heads/release/v0.34.0
- refs/heads/release/v0.34.13
- refs/heads/release/v0.37.1
- refs/heads/removes-formatting
- refs/heads/removing-formatting
- refs/heads/revert-8754-thane/7832-generic-e2e-runner
- refs/heads/rfc-e2e-tests
- refs/heads/rpc-header
- refs/heads/sam/abci++-tutorial
- refs/heads/sam/abci-responses
- refs/heads/sam/test-lint-downgrade
- refs/heads/sergio/9954-fix-contexts
- refs/heads/sergio/chpi-finalize
- refs/heads/sergio/e2e-external-load-prototype
- refs/heads/sergio/for-william-timout-gc
- refs/heads/sergio/hide_header_beginblock
- refs/heads/sergio/vote-ext
- refs/heads/show_validator_experiments
- refs/heads/sign_bytes_amino
- refs/heads/split_validator_upgrade_test
- refs/heads/statesync-reactor-lifecycle
- refs/heads/stepper-default
- refs/heads/tau3/feature/2998/addressbooks-hash
- refs/heads/tessr/codeowner
- refs/heads/tessr/f
- refs/heads/tessr/speling
- refs/heads/tessr/tm-db
- refs/heads/thane/7655-vote-extensions
- refs/heads/thane/7832-generic-e2e-runner
- refs/heads/thane/8272-propagate-vote-extensions
- refs/heads/thane/9020-qa
- refs/heads/thane/adr-082-data-companion-api
- refs/heads/thane/adr-084-data-companion-pull-api
- refs/heads/thane/v0.34.x/ci-multiversion-e2e
- refs/heads/tmp
- refs/heads/tycho/mempool-prioritized-e2e-testing
- refs/heads/tycho/p2p-dialer-storage-change
- refs/heads/tycho/p2p-dialer-storage-change-35-backport
- refs/heads/tycho/p2p-dialer-store-change
- refs/heads/tychoish/adr-node-init
- refs/heads/tychoish/e2e-smaller-queues
- refs/heads/tychoish/rfc-databases
- refs/heads/tychoish/scratch-node-minimize
- refs/heads/update-to-consensus-params
- refs/heads/v0.19.1
- refs/heads/v0.19.2
- refs/heads/v0.25
- refs/heads/v0.30
- refs/heads/v0.31
- refs/heads/v0.31.6-changelog
- refs/heads/v0.31.9-changelog
- refs/heads/v0.32.5-backport
- refs/heads/v0.32.x
- refs/heads/v0.33.x
- refs/heads/v0.34.0-rc
- refs/heads/v0.34.x
- refs/heads/v0.35.x
- refs/heads/v0.36.x
- refs/heads/v0.37.x
- refs/heads/v035-mempool-test
- refs/heads/v035-testing
- refs/heads/wb/035-backport-ticker-startup
- refs/heads/wb/abc-cli-install
- refs/heads/wb/abci++-enum
- refs/heads/wb/abci++-metrics
- refs/heads/wb/abci++-protos-branch
- refs/heads/wb/abci-buffer-revert
- refs/heads/wb/abci-cli-install
- refs/heads/wb/abci-endblock-metric
- refs/heads/wb/abci-finalize-block-synchronize
- refs/heads/wb/abci-metrics
- refs/heads/wb/abci-metrics-backport
- refs/heads/wb/abci-prepare-proposal-synchronize
- refs/heads/wb/abci-process-proposal-synchronize
- refs/heads/wb/abcicli-test-fixup
- refs/heads/wb/adaptive-synchrony
- refs/heads/wb/add-consensus-param-internal
- refs/heads/wb/add-multiversion-script
- refs/heads/wb/add-nullable-false
- refs/heads/wb/add-timeout-params
- refs/heads/wb/adr-071
- refs/heads/wb/adr-74
- refs/heads/wb/apphash-fail
- refs/heads/wb/authors-script
- refs/heads/wb/backport-load-time
- refs/heads/wb/backport-load-time-v0.34
- refs/heads/wb/backport-metrics
- refs/heads/wb/backport-rpc-change
- refs/heads/wb/backport-ticker-startup
- refs/heads/wb/block-height-app-hash
- refs/heads/wb/block-time-metrics
- refs/heads/wb/blocksync-fastsync-rename
- refs/heads/wb/blocksync-shutdown-deadlock
- refs/heads/wb/builtin-tutorial-fixup
- refs/heads/wb/callbacks-invoked
- refs/heads/wb/callbacks-invoked-fp
- refs/heads/wb/celestia-fixes
- refs/heads/wb/chain-upgrade
- refs/heads/wb/change-con-startup-ordering
- refs/heads/wb/changelog-update
- refs/heads/wb/check-proposal-non-nil
- refs/heads/wb/clist-revert
- refs/heads/wb/clist-tests
- refs/heads/wb/config-queue-name
- refs/heads/wb/consensus-change
- refs/heads/wb/consensus-params-proto
- refs/heads/wb/consensus-timing-metrics
- refs/heads/wb/debug-db
- refs/heads/wb/default-synchrony
- refs/heads/wb/delete-gas
- refs/heads/wb/dialnext-error
- refs/heads/wb/dialwaker-change
- refs/heads/wb/dispatch-lightblock-race-cond
- refs/heads/wb/do-not-send-extensions-when-not-needed
- refs/heads/wb/dockerfile-fixup
- refs/heads/wb/e2e-cleanup-defer
- refs/heads/wb/e2e-do-disconnected
- refs/heads/wb/ensure-timeout-refactor
- refs/heads/wb/envelope-experiments
- refs/heads/wb/epoch-block-idea
- refs/heads/wb/epoch-block-idea-2
- refs/heads/wb/epoch-block-idea-3
- refs/heads/wb/epoch-fixes-forward-port
- refs/heads/wb/epoch-fixes-forward-port-master
- refs/heads/wb/even-faster-dial
- refs/heads/wb/evidence-nondeterminism
- refs/heads/wb/exec-tx-result
- refs/heads/wb/experiments
- refs/heads/wb/extensions-proto
- refs/heads/wb/fix-%w-error-format
- refs/heads/wb/fix-README-libs
- refs/heads/wb/fix-max-size-check
- refs/heads/wb/fix-new-node-dial
- refs/heads/wb/fix-pbts-params
- refs/heads/wb/fix-pqueue-metric
- refs/heads/wb/fix-proto-lints
- refs/heads/wb/fix-state-no-initialized
- refs/heads/wb/fix-test-errorf
- refs/heads/wb/fix-timeout-defaults
- refs/heads/wb/fuzz-testdata-cases
- refs/heads/wb/genesis-time-change
- refs/heads/wb/getfreeport-fix
- refs/heads/wb/handlemsg-error-handling
- refs/heads/wb/handshake-dial-timeout
- refs/heads/wb/handshake-dial-timeout-35
- refs/heads/wb/image-publish
- refs/heads/wb/implement-wrapper
- refs/heads/wb/increase-default-synchrony-params
- refs/heads/wb/ingest-consensus-params
- refs/heads/wb/ingest-params
- refs/heads/wb/initial-height
- refs/heads/wb/internal-consensus-param
- refs/heads/wb/internal-consensus-param-all
- refs/heads/wb/internal-consensus-param-commits
- refs/heads/wb/is-regression-testnet-peers-questionmark
- refs/heads/wb/is-timely
- refs/heads/wb/is-timely-metric
- refs/heads/wb/issue-3546
- refs/heads/wb/issue-5908
- refs/heads/wb/issue-6570
- refs/heads/wb/issue-6660
- refs/heads/wb/issue-6849
- refs/heads/wb/issue-6850
- refs/heads/wb/issue-7750
- refs/heads/wb/issue-7761
- refs/heads/wb/issue-7849
- refs/heads/wb/issue-7950
- refs/heads/wb/issue-8039
- refs/heads/wb/issue-8088
- refs/heads/wb/issue-8124
- refs/heads/wb/issue-8126
- refs/heads/wb/issue-8156
- refs/heads/wb/issue-8178
- refs/heads/wb/issue-8182
- refs/heads/wb/issue-8639
- refs/heads/wb/issue-9165
- refs/heads/wb/issue-9166
- refs/heads/wb/issue-9227
- refs/heads/wb/issue-9331
- refs/heads/wb/issue-9352
- refs/heads/wb/issue-9587
- refs/heads/wb/issue-9773
- refs/heads/wb/issue-9790
- refs/heads/wb/json-rpc-fuzz
- refs/heads/wb/light-client-sycnronization
- refs/heads/wb/light-client-test-fix
- refs/heads/wb/loadtime
- refs/heads/wb/lock-debug
- refs/heads/wb/lower-default-outgoing
- refs/heads/wb/mark-peer-unavailable-during-dispatch
- refs/heads/wb/master-2
- refs/heads/wb/max-connected
- refs/heads/wb/mconn-change
- refs/heads/wb/mconn-close-fix
- refs/heads/wb/merge-master
- refs/heads/wb/message-byte-measurement
- refs/heads/wb/message-delay-metrics
- refs/heads/wb/metrics-gen-transition
- refs/heads/wb/metrics-md-fixup
- refs/heads/wb/metrics-to-prom
- refs/heads/wb/metrics-wip
- refs/heads/wb/metricsdiff
- refs/heads/wb/mg
- refs/heads/wb/mg-issues
- refs/heads/wb/mockery-tools
- refs/heads/wb/mocks
- refs/heads/wb/more-dial-routines
- refs/heads/wb/msg-byte-tests
- refs/heads/wb/msg-byte-tests-22
- refs/heads/wb/msg-byte-tests-envelope
- refs/heads/wb/msg-byte-tests-no-envelope
- refs/heads/wb/multi-test-simultaneously
- refs/heads/wb/no-tx
- refs/heads/wb/no-update-until-start
- refs/heads/wb/option-3
- refs/heads/wb/p2p-accept-not-abort-v035
- refs/heads/wb/p2p-test
- refs/heads/wb/panic-on-serialize-fail
- refs/heads/wb/panic-remove
- refs/heads/wb/pbts-doc-fixup
- refs/heads/wb/pbts-metrics
- refs/heads/wb/pbts-overview
- refs/heads/wb/pbts-rebase
- refs/heads/wb/pbts-rebase-master
- refs/heads/wb/pbts-runbook
- refs/heads/wb/pbts-test-fixup
- refs/heads/wb/peer-manager-test-fix
- refs/heads/wb/peer-use-wait
- refs/heads/wb/peer-use-wait-backport
- refs/heads/wb/pqueue-close-test
- refs/heads/wb/pqueue-proposal
- refs/heads/wb/proposal-timeout
- refs/heads/wb/proposal-timestamp-difference
- refs/heads/wb/proposer-based-timestamps
- refs/heads/wb/proposer-based-timestamps-redux
- refs/heads/wb/proposer-brased-timestamps
- refs/heads/wb/proposer-sets-block-time
- refs/heads/wb/proposer-sets-own-time
- refs/heads/wb/proposer-waits-state
- refs/heads/wb/proposer-waits-until
- refs/heads/wb/proto-fixes
- refs/heads/wb/provider-mock
- refs/heads/wb/provider-mock-old
- refs/heads/wb/random-seed-testnet
- refs/heads/wb/rare-statesync-race-fix
- refs/heads/wb/rebuild-protos
- refs/heads/wb/rebuild-synchrony-params
- refs/heads/wb/refactor-ensure
- refs/heads/wb/reimpl
- refs/heads/wb/release-commit
- refs/heads/wb/release-document
- refs/heads/wb/remove-accuracy
- refs/heads/wb/remove-app-signed
- refs/heads/wb/remove-old-blockchain-reactors
- refs/heads/wb/remove-old-proto-lint
- refs/heads/wb/remove-privval-reseuse
- refs/heads/wb/remove-proposal-wait
- refs/heads/wb/remove-proto-lints
- refs/heads/wb/remove-rand-state-helpers
- refs/heads/wb/remove-rechecktx-panic
- refs/heads/wb/remove-vector-tests
- refs/heads/wb/remove-wake-more
- refs/heads/wb/remove-wake-more-v036
- refs/heads/wb/rename-timing-params
- refs/heads/wb/retry-blocksync-test
- refs/heads/wb/rfc-01-performance-questions
- refs/heads/wb/rfc-015
- refs/heads/wb/rfc-017-transition
- refs/heads/wb/rfc-block-structure
- refs/heads/wb/rfc-bls-project
- refs/heads/wb/rfc-broadcast-with-timeout
- refs/heads/wb/rfc-deterministic-proto-bytes
- refs/heads/wb/rfc-perf-taxonomy
- refs/heads/wb/rollback-test-fix
- refs/heads/wb/roundstate-test-fix
- refs/heads/wb/routes-combine
- refs/heads/wb/rw-bench
- refs/heads/wb/set-empty-timeouts
- refs/heads/wb/simple-property
- refs/heads/wb/simul-queue
- refs/heads/wb/state-add-vote-refactor
- refs/heads/wb/state-serialize
- refs/heads/wb/state-serialize-receive
- refs/heads/wb/state-sync-mock
- refs/heads/wb/statesync-init-deadlock
- refs/heads/wb/switch-to-cons-update-to-state
- refs/heads/wb/syncer-fix
- refs/heads/wb/synchronize-pbts-adr
- refs/heads/wb/synchrony-defaults
- refs/heads/wb/test
- refs/heads/wb/test-branch
- refs/heads/wb/test-fix
- refs/heads/wb/test-lint-upgrade
- refs/heads/wb/test-lint-upgrade-main
- refs/heads/wb/test-vote-extension-called
- refs/heads/wb/timely-metrics-fixup
- refs/heads/wb/tm-signer-harness
- refs/heads/wb/tools-fix
- refs/heads/wb/triggered-precommit-fix
- refs/heads/wb/txrset
- refs/heads/wb/undo-queue-buffer-limit
- refs/heads/wb/untimely-propose
- refs/heads/wb/update-changelog-6630
- refs/heads/wb/update-mockery
- refs/heads/wb/upgrade-p2p-v0.35
- refs/heads/wb/upgrade-test-prototype
- refs/heads/wb/use-buffered-channel-test-state-full-round
- refs/heads/wb/use-ctx-err
- refs/heads/wb/use-fifo-in-test
- refs/heads/wb/use-metricsgen
- refs/heads/wb/uuid-on-startup
- refs/heads/wb/v0.34.17-release-commit
- refs/heads/wb/v0.34.24-docker-release
- refs/heads/wb/v034-e2e
- refs/heads/wb/v035-testing
- refs/heads/wb/validator-set-changes-fail
- refs/heads/wb/validator-waits-for-proposal
- refs/heads/wb/vote-duplication
- refs/heads/wb/vote-extension-blocksync-test
- refs/heads/wb/vote-info-enum
- refs/heads/wb/vwfp-rebased
- refs/heads/wb/with-old-call
- refs/heads/zarko/1555-make-proposer-selection-functional
- refs/heads/zarko/add-experiments-code
- refs/heads/zm_light_client_spec
- refs/remotes/origin/config
- refs/remotes/tychoish/e2e-runner-load-generation
- refs/remotes/zmanian/zaki/HttpServerWithTimeouts
- refs/tags/0.1
- refs/tags/0.19.0-rc1
- refs/tags/0.19.0-rc2
- refs/tags/0.2
- refs/tags/v0.0.0
- refs/tags/v0.0.1
- refs/tags/v0.10.0
- refs/tags/v0.10.0-rc1
- refs/tags/v0.10.0-rc2
- refs/tags/v0.10.1
- refs/tags/v0.10.2
- refs/tags/v0.10.3
- refs/tags/v0.10.4
- refs/tags/v0.11.0
- refs/tags/v0.11.1
- refs/tags/v0.12.0
- refs/tags/v0.12.1
- refs/tags/v0.13.0
- refs/tags/v0.14.0
- refs/tags/v0.15.0
- refs/tags/v0.16.0
- refs/tags/v0.17.0
- refs/tags/v0.17.1
- refs/tags/v0.18.0
- refs/tags/v0.18.0-autodraft
- refs/tags/v0.18.0-rc1
- refs/tags/v0.19.0
- refs/tags/v0.19.0-rc3
- refs/tags/v0.19.0-rc4
- refs/tags/v0.19.1
- refs/tags/v0.19.2
- refs/tags/v0.19.2-rc0
- refs/tags/v0.19.3
- refs/tags/v0.19.3-rc0
- refs/tags/v0.19.4-rc0
- refs/tags/v0.19.5
- refs/tags/v0.19.5-rc0
- refs/tags/v0.19.5-rc1
- refs/tags/v0.19.6
- refs/tags/v0.19.6-rc0
- refs/tags/v0.19.6-rc1
- refs/tags/v0.19.6-rc2
- refs/tags/v0.19.7
- refs/tags/v0.19.7-rc0
- refs/tags/v0.19.8
- refs/tags/v0.19.9
- refs/tags/v0.19.9-rc0
- refs/tags/v0.20.0
- refs/tags/v0.20.0-rc0
- refs/tags/v0.20.0-rc1
- refs/tags/v0.20.0-rc2
- refs/tags/v0.20.0-rc3
- refs/tags/v0.20.1-rc0
- refs/tags/v0.21.0
- refs/tags/v0.21.0-rc0
- refs/tags/v0.21.1-rc0
- refs/tags/v0.21.1-rc1
- refs/tags/v0.22.0
- refs/tags/v0.22.0-autodraft
- refs/tags/v0.22.0-rc0
- refs/tags/v0.22.0-rc1
- refs/tags/v0.22.0-rc2
- refs/tags/v0.22.1
- refs/tags/v0.22.2
- refs/tags/v0.22.2-rc0
- refs/tags/v0.22.3
- refs/tags/v0.22.4
- refs/tags/v0.22.4-rc0
- refs/tags/v0.22.5
- refs/tags/v0.22.6
- refs/tags/v0.22.6-rc0
- refs/tags/v0.22.7
- refs/tags/v0.22.8
- refs/tags/v0.22.8-autodraft
- refs/tags/v0.22.8-rc0
- refs/tags/v0.23.0
- refs/tags/v0.23.1
- refs/tags/v0.23.1-rc0
- refs/tags/v0.24.0
- refs/tags/v0.24.0-rc0
- refs/tags/v0.25.0
- refs/tags/v0.25.1-rc0
- refs/tags/v0.26.0
- refs/tags/v0.26.0-dev0
- refs/tags/v0.26.0-rc0
- refs/tags/v0.26.0-rc1
- refs/tags/v0.26.1
- refs/tags/v0.26.1-rc0
- refs/tags/v0.26.1-rc1
- refs/tags/v0.26.1-rc2
- refs/tags/v0.26.1-rc3
- refs/tags/v0.26.2
- refs/tags/v0.26.2-rc0
- refs/tags/v0.26.3
- refs/tags/v0.26.4
- refs/tags/v0.27.0
- refs/tags/v0.27.0-dev0
- refs/tags/v0.27.0-dev1
- refs/tags/v0.27.0-rc0
- refs/tags/v0.27.0-rc1
- refs/tags/v0.27.1
- refs/tags/v0.27.2
- refs/tags/v0.27.3
- refs/tags/v0.27.4
- refs/tags/v0.28.0
- refs/tags/v0.28.0-beta1
- refs/tags/v0.28.0-beta2
- refs/tags/v0.28.0-dev0
- refs/tags/v0.28.1
- refs/tags/v0.29.0
- refs/tags/v0.29.0-beta0
- refs/tags/v0.29.0-beta1
- refs/tags/v0.29.0-rc0
- refs/tags/v0.29.1
- refs/tags/v0.29.1-rc0
- refs/tags/v0.29.2
- refs/tags/v0.29.2-rc0
- refs/tags/v0.29.2-rc1
- refs/tags/v0.29.2-rc2
- refs/tags/v0.30.0
- refs/tags/v0.30.0-rc0
- refs/tags/v0.30.1
- refs/tags/v0.30.2
- refs/tags/v0.30.3
- refs/tags/v0.30.4
- refs/tags/v0.31.0
- refs/tags/v0.31.0-dev0
- refs/tags/v0.31.0-dev0-fix0
- refs/tags/v0.31.0-rc0
- refs/tags/v0.31.1
- refs/tags/v0.31.10
- refs/tags/v0.31.11
- refs/tags/v0.31.12
- refs/tags/v0.31.2
- refs/tags/v0.31.2-rc0
- refs/tags/v0.31.3
- refs/tags/v0.31.4
- refs/tags/v0.31.5
- refs/tags/v0.31.6
- refs/tags/v0.31.7
- refs/tags/v0.31.8
- refs/tags/v0.31.9
- refs/tags/v0.32.0
- refs/tags/v0.32.1
- refs/tags/v0.32.10
- refs/tags/v0.32.11
- refs/tags/v0.32.12
- refs/tags/v0.32.13
- refs/tags/v0.32.14
- refs/tags/v0.32.2
- refs/tags/v0.32.3
- refs/tags/v0.32.4
- refs/tags/v0.32.5
- refs/tags/v0.32.6
- refs/tags/v0.32.7
- refs/tags/v0.32.8
- refs/tags/v0.32.9
- refs/tags/v0.33.0
- refs/tags/v0.33.1
- refs/tags/v0.33.2
- refs/tags/v0.33.3
- refs/tags/v0.33.4
- refs/tags/v0.33.5
- refs/tags/v0.33.6
- refs/tags/v0.33.7
- refs/tags/v0.33.8
- refs/tags/v0.33.9
- refs/tags/v0.34.0-rc3
- refs/tags/v0.34.11
- refs/tags/v0.34.13
- refs/tags/v0.35.0-rc1
- refs/tags/v0.35.0-rc2
- refs/tags/v0.7.0
- refs/tags/v0.7.1
- refs/tags/v0.7.2
- refs/tags/v0.7.3
- refs/tags/v0.7.4
- refs/tags/v0.8.0
- refs/tags/v0.9.0
- refs/tags/v0.9.1
- refs/tags/v0.9.2
- df3eee455c9d2a4a9698a35aa0dfe6d5d2efd53d
- v0.37.0-rc2
- v0.37.0-rc1
- v0.37.0-alpha.2
- v0.37.0-alpha.1
- v0.36.0-dev
- v0.35.9-rc0
- v0.35.9
- v0.35.8
- v0.35.7
- v0.35.6
- v0.35.5
- v0.35.4
- v0.35.3
- v0.35.2
- v0.35.1
- v0.35.0-rc4
- v0.35.0-rc3
- v0.35.0-dev
- v0.35.0
- v0.34.9
- v0.34.8
- v0.34.7
- v0.34.6
- v0.34.5
- v0.34.4
- v0.34.3
- v0.34.24
- v0.34.23
- v0.34.22
- v0.34.21
- v0.34.20-rc1
- v0.34.20-rc0
- v0.34.20
- v0.34.2
- v0.34.19
- v0.34.18
- v0.34.17
- v0.34.16
- v0.34.15
- v0.34.14
- v0.34.12
- v0.34.10
- v0.34.1-rc1
- v0.34.1-dev1
- v0.34.1
- v0.34.0-rc6
- v0.34.0-rc5
- v0.34.0-rc4
- v0.34.0-rc2
- v0.34.0-dev1
- v0.34.0
- v0.33.1-dev3
- v0.33.1-dev2
- v0.33.1-dev1
- v0.33.1-dev0
- v0.33.0-dev2
- v0.33.0-dev1
- v0.32.13-rc1
- v0.32.0-dev2
- v0.32.0-dev1
- v0.32.0-dev0
- v0.10.5
- dev-v0.38.0
Cook and download a directory from the Software Heritage Vault
You have requested the cooking of the directory with identifier swh:1:dir:0d7415dbe62811654ebb36bce83f27243ae60f64 into a standard tar.gz archive
.
Are you sure you want to continue ?
Download a directory from the Software Heritage Vault
You have requested the download of the directory with identifier swh:1:dir:0d7415dbe62811654ebb36bce83f27243ae60f64 as a standard tar.gz archive
.
Are you sure you want to continue ?
Cook and download a revision from the Software Heritage Vault
You have requested the cooking of the history heading to revision with identifier swh:1:rev:df3eee455c9d2a4a9698a35aa0dfe6d5d2efd53d into a bare git archive
.
Are you sure you want to continue ?
Download a revision from the Software Heritage Vault
You have requested the download of the history heading to revision with identifier swh:1:rev:df3eee455c9d2a4a9698a35aa0dfe6d5d2efd53d as a bare git archive
.
Are you sure you want to continue ?
Invalid Email !
The provided email is not well-formed.
Download link has expired
The requested archive is no longer available for download from the Software Heritage Vault.
Do you want to cook it again ?
Take a new snapshot of a software origin
If the archived software origin currently browsed is not synchronized with its upstream version (for instance when new commits have been issued), you can explicitly request Software Heritage to take a new snapshot of it.
Use the form below to proceed. Once a request has been submitted and accepted, it will be processed as soon as possible. You can then check its processing state by visiting this dedicated page.Processing "take a new snapshot" request ...
To reference or cite the objects present in the Software Heritage archive, permalinks based on SoftWare Hash IDentifiers (SWHIDs) must be used.
Select below a type of object currently browsed in order to display its associated SWHID and permalink.
lite2: replace primary provider with alternative when unavailable (#4354)
File | Mode | Size |
---|---|---|
peer_behaviour.go | -rw-r--r-- | 1.3 KB |
reporter.go | -rw-r--r-- | 2.2 KB |
reporter_test.go | -rw-r--r-- | 5.2 KB |
Computing file changes ...