Skip to content

Releases: algorand/go-algorand

Algorand 3.24.0

20 May 14:30
5c2cf06
Compare
Choose a tag to compare

GitHub Logo

Overview

This release provides important enhancements and bug fixes to improve ease of use and stability.

Important Note

This release includes a migration, which may take a few minutes to complete. Due to the impact, we recommend applying this update progressively if running multiple nodes, to avoid large periods of concurrent inaccessibility.

What's New

  • Golang 1.21 support
  • Experimental full assets for account endpoint API support
  • Full logs for block support
  • Fix for log rotation when cold dirs are used

Changelog

Enhancements

  • API: Experimental full assets for account endpoint. (#5948)
  • API: blocks/{round}/logs endpoint (#5865)
  • Build: Go 1.21 Support (#5994)
  • Build: support SWAGGER_CONVERTER_API override (#5968)
  • Build: bump golang.org/x/crypto from 0.14.0 to 0.17.0 (#5877)
  • Crypto: convert BatchVerifier to interface (#5988)
  • Docker: Remove usage of gosu and replace with su (#5951)
  • Metrics: support labeled gauges (#5956)
  • Node: remove unused node GetTransaction and ListTxns methods (#5983)
  • Scripts: update buildnumber to use timezone-aware datetime (#5971)
  • Tests: Stabilize nightly tests. (#5992)
  • Tests: Fix flakey incentive e2e tests (#5986)
  • Tests: Allow go e2e tests to easily test multiple consensus versions (#5981)
  • Tests: Thread testing.T through so we panic less (#5938)
  • Tools: Revert "feat: add support to display mnemonic discreetly for algokey generate" (#5974)

Bugfixes

  • Catchpoint: fix data files deletion in hot/cold dirs scenario (#5963)
  • Tests: Fix AccountsUpdateSchemaTest ignoring error bug (#5985)
  • Utils: Renaming files across devices (#5977)

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.

  • Incentives: Suspend "absentee" accounts that don't propose. (#5757)

Additional Resources

Algorand BetaNet 3.24.0

13 May 15:47
5466548
Compare
Choose a tag to compare

GitHub Logo

Overview

This release provides important enhancements and bug fixes to improve ease of use and stability.

Important Note

This release includes a migration, which may take a few minutes to complete.

What's New

  • Golang 1.21 support
  • Experimental full assets for account endpoint API support
  • Full logs for block support
  • Fix for log rotation when cold dirs are used

Changelog

Enhancements

  • API: Experimental full assets for account endpoint. (#5948)
  • API: blocks/{round}/logs endpoint (#5865)
  • Build: Go 1.21 Support (#5994)
  • Build: support SWAGGER_CONVERTER_API override (#5968)
  • Build: bump golang.org/x/crypto from 0.14.0 to 0.17.0 (#5877)
  • Crypto: convert BatchVerifier to interface (#5988)
  • Docker: Remove usage of gosu and replace with su (#5951)
  • Metrics: support labeled gauges (#5956)
  • Node: remove unused node GetTransaction and ListTxns methods (#5983)
  • Scripts: update buildnumber to use timezone-aware datetime (#5971)
  • Tests: Stabilize nightly tests. (#5992)
  • Tests: Fix flakey incentive e2e tests (#5986)
  • Tests: Allow go e2e tests to easily test multiple consensus versions (#5981)
  • Tests: Thread testing.T through so we panic less (#5938)
  • Tools: Revert "feat: add support to display mnemonic discreetly for algokey generate" (#5974)

Bugfixes

  • Catchpoint: fix data files deletion in hot/cold dirs scenario (#5963)
  • Tests: Fix AccountsUpdateSchemaTest ignoring error bug (#5985)
  • Utils: Renaming files across devices (#5977)

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.

  • Incentives: Suspend "absentee" accounts that don't propose. (#5757)

Additional Resources

Algorand 3.23.1

20 Mar 14:31
34171a9
Compare
Choose a tag to compare

GitHub Logo

Overview

This release is focused on providing the necessary software functionality for non-archival relays on the network. It includes promoting archival nodes to first class citizens that can be resolved as their own class of nodes.

What's New

  • Full support for non-archival relay nodes
  • SRV record resolution of dedicated archival nodes

Changelog

New Features

  • Network: Class-based Peer Selector (#5937)

Enhancements

  • Archival Support: Remove configurable support for catching up from "archivers" (#5920)
  • Blocks: Bump min to save based on catchpoint support (#5927)
  • Build: upgrade to go 1.20.14 (#5949)
  • Docker: Bump debian version in algod container (#5955)
  • Feat: add support to display mnemonic discreetly for algokey generate (#5886)
  • Netgoal: Use --last-part-key-round when generating a goalnet template (#5912)
  • Network: Penalize peer/class rankings when peer does not have catchpoint (#5959)
  • Network: Support simple liveness check via http on gossip server port. (#5944)
  • Network: Archival node DNS Resolution (#5940)

Bugfixes

  • Cicd: fix package signing issues (#5934)
  • Network: use network context for DNS operations in readFromSRV (#5936)

Protocol Upgrade

This release does not contain a protocol upgrade.

Additional Resources

Algorand BetaNet 3.23.1

16 Mar 20:27
5604f7f
Compare
Choose a tag to compare

GitHub Logo

Overview

This release fixes an issue where peers were not ranked for performance serving catchpoints.

Changelog

Enhancements

  • Docker: Bump debian version in algod container (#5955)

Bugfixes

  • Network: Penalize peer/class rankings when peer does not have catchpoint (#5959)

Protocol Upgrade

This release does not contain a protocol upgrade.


Additional Resources

Algorand BetaNet 3.23.0

12 Mar 17:23
58fea01
Compare
Choose a tag to compare

GitHub Logo

Overview

This release is focused on providing the necessary software functionality for non-archival relays on the network. It includes promoting archival nodes to first class citizens that can be resolved as their own class of nodes.

What's New

  • Full support for non-archival relay nodes
  • SRV record resolution of dedicated archival nodes

Changelog

New Features

  • Network: Class-based Peer Selector (#5937)

Enhancements

  • Archival Support: Remove configurable support for catching up from "archivers" (#5920)
  • Blocks: Bump min to save based on catchpoint support (#5927)
  • Feat: add support to display mnemonic discreetly for algokey generate (#5886)
  • Netgoal: Use --last-part-key-round when generating a goalnet template (#5912)
  • Network: Support simple liveness check via http on gossip server port. (#5944)
  • Network: Archival node DNS Resolution (#5940)
  • Build: Upgrade to Go 1.20.14

Bugfixes

  • Cicd: fix package signing issues (#5934)
  • Network: use network context for DNS operations in readFromSRV (#5936)

Protocol Upgrade

This release does not contain a protocol upgrade.


Additional Resources

Algorand 3.22.1

05 Mar 06:17
08407ca
Compare
Choose a tag to compare

GitHub Logo

Overview

Please apply this upgrade at your earliest convenience.

Changelog

Bug Fix

  • AVM: Consider the current auth addr for each inner txn

Protocol Upgrade

This release does not contain a protocol upgrade.


Additional Resources

Algorand BetaNet 3.22.1

05 Mar 21:27
eb702d4
Compare
Choose a tag to compare

GitHub Logo

Overview

This is a backport of v3.22.1-stable to beta. Please apply this upgrade at your earliest convenience.

Changelog

Bug Fix

  • AVM: Consider the current auth addr for each inner txn

Protocol Upgrade

This release does not contain a protocol upgrade.


Additional Resources

Algorand 3.22.0

05 Feb 15:30
6b50897
Compare
Choose a tag to compare

GitHub Logo

Overview

This release includes networking optimization improvements, as well as starts laying the groundwork for non-archival relays.

Note: in this release, NetAddress will no longer automatically mark a node as archival, so if you were relying solely on NetAddress for this, you should also set Archival: true in your configuration before applying the upgrade. This is a rare configuration, but if you only had NetAddress set, this release will progressively delete blocks from your database until the node only has recent blocks (probably over multiple days while staying caught up to the chain). The sqlite database will not reclaim this disk automatically, so you may want to run a vacuum after it's complete by shutting down the node and running: sqlite3 data/mainnet-v1.0/ledger.block.sqlite "VACUUM"

If you intend to become non-archival (formerly as an archival node), your best path forward is a fresh install.

What's New

  • New archival node profile and changes to NetAddress defaults
  • Networking optimizations

Changelog

Enhancements

  • API: optimize /transactions/pending/{txid} endpoint (#5891)
  • API: Make maps the right size from the start (#5906)
  • AVM: Add a lot of type annotations to opcodes (#5902)
  • AVM: report structure txn failure info (#5875)
  • AVM: Require every global field to get tested (#5864)
  • Algocfg: Introduce new archival node algocfg profile. (#5893)
  • Blockdb: bound max deleted blocks per blockdb sync (#5910)
  • Chore: Update testing to use current python SDK. (#5861)
  • Config: Archival mode is no longer automatically enabled when netAddress is s… (#5904)
  • Docs: Updates to SECURITY.md (#5907)
  • Docs: Eliminate a unicode character that causes trouble in doc generation (#5866)
  • Network: Like #5906, but for messageFilter, optimize cache mem and speed (#5913)
  • Txhandler: kick in ARL at 1/2 of a base backlog capacity (#5873)

Bugfixes

  • AVM: Don't treat any as constant int in loads, stores (#5884)
  • Dryrun: Improve assembler error reporting (#5889)
  • Txhandler: fix ARL triggering without ERL (#5872)

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.

  • AVM: Adding sumhash and falcon_verify (#5599)

Additional Resources

Algorand BetaNet 3.22.0

29 Jan 15:53
7a0cd10
Compare
Choose a tag to compare

GitHub Logo

Overview

This release includes networking optimization improvements, as well as starts laying the groundwork for non-archival relays.

Note: in this release, NetAddress will no longer automatically mark a node as archival, so if you were relying solely on NetAddress for this, you should also set Archival: true in your configuration before applying the upgrade. This is a rare configuration, but if you only had NetAddress set, this release will progressively delete blocks from your database until the node only has recent blocks (probably over multiple days while staying caught up to the chain). The sqlite database will not reclaim this disk automatically, so you may want to run a vacuum after it's complete by shutting down the node and running: sqlite3 data/mainnet-v1.0/ledger.block.sqlite "VACUUM"

If you intend to become non-archival (formerly as an archival node), your best path forward is a fresh install.

What's New

  • New archival node profile and changes to NetAddress defaults
  • Networking optimizations

Changelog

Enhancements

  • API: optimize /transactions/pending/{txid} endpoint (#5891)
  • API: Make maps the right size from the start (#5906)
  • AVM: Add a lot of type annotations to opcodes (#5902)
  • AVM: report structure txn failure info (#5875)
  • AVM: Require every global field to get tested (#5864)
  • Algocfg: Introduce new archival node algocfg profile. (#5893)
  • Blockdb: bound max deleted blocks per blockdb sync (#5910)
  • Chore: Update testing to use current python SDK. (#5861)
  • Config: Archival mode is no longer automatically enabled when netAddress is s… (#5904)
  • Docs: Updates to SECURITY.md (#5907)
  • Docs: Eliminate a unicode character that causes trouble in doc generation (#5866)
  • Network: Like #5906, but for messageFilter, optimize cache mem and speed (#5913)
  • Txhandler: kick in ARL at 1/2 of a base backlog capacity (#5873)

Bugfixes

  • AVM: Don't treat any as constant int in loads, stores (#5884)
  • Dryrun: Improve assembler error reporting (#5889)
  • Txhandler: fix ARL triggering without ERL (#5872)

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.

  • AVM: Adding sumhash and falcon_verify (#5599)

Additional Resources

Algorand 3.21.0

09 Jan 15:30
2c32825
Compare
Choose a tag to compare

GitHub Logo

IMPORTANT
This release requires a protocol upgrade.
This release contains a consensus protocol upgrade, which implements the following spec: https://github.com/algorandfoundation/specs/tree/925a46433742afb0b51bb939354bd907fa88bf95

Overview

This release introduces dynamic round times, as well as additional AVM opcodes. This release contains a consensus upgrade, and will require upgrades of conduit/indexer as well.

What's New

  • Dynamic round times, which as configured will have the effect of shortening average round times
  • AVM: Elliptic curve opcodes on pairing friendly curves.
  • AVM: Opcode costs of LogicSigs is pooled across a transaction group.
  • AVM: Additional opcodes box_splice and box_resize

Changelog

Enhancements

  • AVM: Add global GenesisHash (#5858)
  • AVM: Add box_splice and box_resize opcodes (#5750)
  • Consensus: Enable dynamic round times in vfuture. (#5860)
  • Docs: participation key lifecycle. (#5847)
  • Network: fixes to public address support (#5851)
  • Round Times: Period 0 deadline timeout (#5850)
  • Round Times: Set minimum dynamic filter timeout to 2500ms. (#5853)
  • Tests: wait longer in TestTotalWeightChanges for larger nightly test network (#5841)

Bugfixes

  • Network: Use peer address after proxy fix for app rate limiter if available (#5848)
  • Simulate: Properly handle failing clear state programs (#5842)

Additional Resources