Overview
What's New
- Fix for excess warning logging related to fetching stateproof secrets
- REST API changes:
- Add GetBlockHash API to algod v2
- Return a 404 instead of a 500 when
/v2/blocks/{round}
fails due to a missing block
- Miscellaneous other small fixes
- Test improvements
Changelog
New Features
Enhancements
- Alphanet: merge build changes and consensus params (#4431)
- Batchverifier: Rename and unexport local functions in verify/txn (#4578)
- Build: Remove mac_amd64 from our default triggered builds. (#4397)
- Build: adding valid_nightly_branch var to upload_binaries step (#4459)
- Catchpoint: Optimize catchpoint (#4254)
- Ci: Ensure algod_expect_test.go tests run by avoiding double partitioning (#4421)
- Ci: Expose configuration to ignore parent E2E expect test runner invocations (#4422)
- Ci: Four missing partiontest calls. And minor doc update. (#4394)
- Ci: Increase parallelism without changing resource_class for faster builds (#4448)
- Ci: Re-introduce build_nightly workflow to persist artifacts for upload_binaries (#4457)
- Ci: Speed up CircleCI by folding build workflow downstream (#4426)
- Ci: make windows build faster (#4443)
- Ci: optimize caches used by CircleCI and GHA (#4461)
- Ci: use GHA for codegen_verification (#4412)
- Cicd: Macos11 support (#4399)
- Cicd: Reordering circleci config (#4564)
- Codec: new TxHandler byte decoder (#4266)
- E2e Tests: tag e2e test data with commit hash (#4481)
- Lint: Update linter version (#4434)
- Lint: fix linter errors and update CI to require passing (#4241)
- Lint: ioutil is deprecated, I have the power of search and replace (#4440)
- Metrics: network tag filtering test (#4526)
- Performance: Update two transaction verification benchmarks (#4552)
- Performance: block validation benchmark (#4522)
- Quality: Switch from golint to golangci-lint. (#4418)
- REST API: Return a 404 when a block is not found. (#4479)
- Stateproof: always set StateProofNextRound in metric (#4475)
- Telemetry: add BlockAcceptedEventDetails.ReceivedAt to complement ValidatedAt (#4583)
- Telemetry: add StartupEventDetails.Overrides (#4563)
- Telemetry: Count and report the number of duplicate proposals and MsgDigestSkipTag messages received (#4605)
- Tests: Bump py-algorand-sdk to v1.17.0 (#4530)
- Tests: Get rid of references and uses of
go lint
andgo vet
(#4444) - Tests: add debug output to e2e_basic_start_stop (#4396)
- Tests: add timestamps to some expect common operations (#4437)
- Tests: benchmark assemble / transaction pool's uses of recomputeBlockEvaluator (#3138)
- Tests: betanet-2 extended recipe (#4572)
- Tests: fix TestAttestorsChange (#4510)
- Tests: improve logging in expect tests (#4405)
- Tests: ledger reload accessing txtail history (#4473)
- Tests: script improvements for recent testing (#4474)
- Tests: skip db concurrent Read/Write tests if test.short is set (#4533)
- Tests: stop network before reading logs (#4429)
- Tools: netgoal generate add
-X, --non-participating-nodes int
(#4574) - Tools: pingpong improvements (#4294)
- Tools: tool to dump blocks to directory (#4595)
- Typo Fix: "Transcation" to "Transaction" (#4248)
Bugfixes
- AVM: Handle Teal programs with manual constant blocks better (#4442)
- Algod: changed state proof message to no longer be embedded (#4395)
- Algod: fix nil deref while fetching stateproof secrets (#4554)
- Bugfix: download more block to recover old state proofs (#4392)
- Catchpoint: fix peer ranking (#4535)
- Catchup: increase HTTPFetcher fetcherMaxBlockBytes for larger block size (#4569)
- Cicd: Fixing golangci-lint and github action (#4483)
- E2e Tests: remove unused e2e artifact (#4487)
- Ledger: Initialize the accountUpdatesLedgerEvaluator properly (#4456)
- Ledger: do not shadow db error in account lookup (#4425)
- Ledger: extend catchpoint blocks lookback (#4463)
- Ledger: fix TestCatchpointReadDatabaseOverflowSingleAccount (#4579)
- Ledger: fix accounts cache ordering (#4611)
- Ledger: fix catchpoint test (#4480)
- Ledger: fix txtail restoring from catchpoints (#4460)
- Ledger: fix typo in evalbench_test.go (#4450)
- Loadgenerator: correctly handle AccountMnemonicList (#4454)
- State Proofs: update state proof totals calculation (#4445)
- Stateproofs: Make SP e2e tests easier for arm. (#4402)
- Tech Debt: Remove unused/empty algod API spec (#4420)
- Tests: Acquire locks when logging start and stop. (#4408)
- Tests: Add logging to libgoal fixture on failure (#4384)
- Tests: Convert goal app info expect test to e2e (#4449)
- Tests: Fix restClientFixture test flaking (#4484)
- Tests: Fix voterTracker tests (#4441)
- Tests: TestSlowPeerDisconnect less flakey (#4453)
- Tests: deprecate TestAsyncRecord (#4407)
- Tests: deterministic rand seed for stable unit test (#4447)
- Tests: fix TestBasicCatchpointCatchup (#4390)
- Tests: fix logged panics in reproducible labels test (#4446)
- Tests: fix method name after typo correction (#4561)
- Tests: fix network metrics race condition in tests (#4529)
- Tests: fix top online warning in TestAcctUpdatesCachesInitialization (#4451)
- Tests: stabilize TestAssetCreateWaitRestartDelete (#4400)
- Tests: wait until new block is committed to
BlockQueue
(#4381) - Tools: pingpong nil fix (#4558)
- Updater: cleanup key.pub (#4513)
Protocol Upgrade
This release does not contain a protocol upgrade.
NOTE
vFuture changes are not yet available in MainNet or TestNet but can be used in private networks.