BetaNet Update: Version 2.3.0

BetaNet will be upgraded to version 2.3.0 on Tuesday 12/1 at 12:30pm EST.

If you have your node set to automatic updates, you don’t need to do anything. It will automatically update to the newer version whenever that becomes available.

If this is not the case, you can update the binary, but aren’t required to do so.

Summary of Contained Changes in Upgrade:


  • TEAL return type check: this release addresses an inconsistency in the specification where operands pushing order is different from return values order. There are no changes in TEAL evaluation so that no protocol upgrade is required. Corresponding changes to the specification can be found here: algorandfoundation/specs@21adc34
  • Optimizations and improvements to fast catchup


  1. TEAL
    • Enhancement - consistently report line numbers in TEAL error messages.
    • Bug Fix - fix return type check in assembler
  2. Catchup
    • Enhancements
      • Extend catchpoint file download time and make configurable
      • Dynamically adjust catchpoint file serving timeouts based on file size
      • Ordered account insertion into merkle trie
      • Write the catchpoint file in parallel of reading from the database
      • Optimize fast catchup
  3. Ledger
    • Bug Fix - separate the error message for duplicate txn id and lease
  4. Network
    • New Feature - add network propagation tracing to algod. To enable, compile with make GOTAGSCUSTOM=msgtrace, and set NetworkMessageTraceServer in config.json, e.g. algocfg set -p NetworkMessageTraceServer -v server.addr:6225
    • Enhancement - clarify which algod endpoints require developer API
    • Bug Fix - implement opt-in in dryrun
  6. Goal
    • Enhancements
      • Update goal error message for unauthorized access
      • Improve ‘goal asset’ help documentation
      • Remove extra newline from goal version output
    • Bug Fix - avoid printing control characters for displaying assets
  7. Tests
    • Enhancements
      • Update mainnet-model for scale and distribution
      • Add e2e test for LedgerForLogic
      • Add app state read-write into pingpong
      • Add applications to min balance requirements calculation
    • Bug Fixes
      • Address intermittent failure of algohTimeoutTest.exp on ARM64
      • Fix opt-ins and timeouts in pingpong assets testing
  8. Other
    • Enhancements
      • Add package test to verify gpg signature
      • Improved pipeline task that updates deb repository
      • Static linking in Windows executables
      • Derive the swagger version from the go.mod file
    • Bug Fixes
      • Mount .docker dir to allow container to push to docker hub in pipeline
      • Env variables while make execution list is created
      • Specify swagger version v0.25.0 to fix build
      • Fix rpm upload in pipeline not working for rel/stable

Protocol Upgrade

This release does not contain a consensus protocol upgrade.

Additional Resources

To update your current version of BetaNet to 2.3.0, run the following goal command:

./ -c beta -i -d <betanet-data-directory> -n

If you haven’t already done so, we also advise setting up a CRON job to automatically update your algorand networks. If you haven’t done this for BetaNet, you can follow the instructions here:

Where can we find the algorandfoundation/specs@21adc34 resource?

You can find this change here:

The entire tree is available on this link: