github algorand/go-algorand v2.6.0-stable
Algorand 2.6.0

3 years ago

GitHub Logo

Highlights

  • Increased Test Coverage: including adding NFT support for pingpong
  • Logging: reduced verbosity
  • TEAL: TEAL 3 Refactoring and new features in tealdbg
  • Catchup and Catchpoint enhancements
  • BugFixes: Update.sh script, GOPROXY, REST API, Nil Check, KMD for Windows, netgoal

Changelog

  1. General/Other
    • New Feature
      • Add support for Arch Linux
    • Enhancement
      • Expand /metrics to show per-message-tag stats on number of messages and amount of bytes moved.
      • Cache docker images in Travis and re-load them
      • Copy database files generation in create_and_deploy_recipe.sh to nodes
      • Improve handling of ledger falling behind agreement
      • Report algod panic in algoh
      • BlockService will redirect when it does not have the round
      • Efficiency Improvement: Avoid compact cert validation on non-validate/non-generate path
    • BugFix
      • Fix bug with updater not restarting services with systemctl
      • Update GOPROXY: Deal with deprecated gocenter.io GOPROXY
      • Pipeline - don't reset CHANNEL if defined
      • skip printing the logs when program is in terminated state.
      • nil check fix
      • Push docker tag to betanet
      • Fix requestNonce alignment on arm32
      • rollback config v17 into v16
      • Fixes for KMD on Windows
  2. Teal
    • Enhancement
      • Cleanup and re-factor of TEAL 3 code
      • adding extra docs for pushbytes and pushint
    • Tealdbg:
      • Check compile and dryrun programs against consensus limits
      • Better support for TEAL 3 in tealdbg
      • Allow tealdbg to listen on specified address
      • Removes program version assumption
  3. REST API
    • Bug Fix
      • Add swagger response annotations so a valid swagger doc gets generated
      • Fix parameter check in abort procedure
      • Fixes for pending transaction endpoint
      • Return an empty string instead of null when making a proof for transaction with no siblings.
  4. Tests
    • Enhancement
      • algofix - Allow struct field to be sync.Mutex if tagged algofix:"allow sync.Mutex"
      • Add DisableLocalhostConnectionRateLimit configuration option
      • Fix/improve kmd speed in test
      • Add pingpong mode to create NFTs for testing
      • script to watch algod heap
      • Improve TestCompactCerts error testing
      • Bandwidth watch
      • Unit test demonstrating high memory consumption
      • Catchup: Add deep block validation support
      • Add performance metrics for account updates
      • Add tests for ledger/compactcert.go
      • test coverage for ledger/eval.go funcs
      • Filter out verbosed output from automated testing
    • Bug Fix
      • Fix parameter check in abort procedure
      • Fix testing bug : avoid datarace on a node crash during e2e test
      • logfilter: exit with non-zero when test fails
      • Node Controller: delete pid file on killing process
      • Fix node shutdown on the wrong node directory
  5. Catchup and Catchpoint
    • Enhancement
      • Support for catching up from http or ws fetchers
      • Reduce memory utilization during accounts update init by reconstructing balances db from blocks
      • Extend catchpointdump utility to verify merkle trie
      • Fine tune catchup peer selection logic
      • Add cross-verify for genesis.json hash
    • Bug Fix
      • catchpoint: truncate output file
  6. Ledger
    • Enhancement
      • Preload account data in parallel on the evaluator
      • Improve ConsensusVersion error messages
      • Disable minimum balance check when not validating or generating
      • Split committed round range by consensus protocol version
    • Bug Fix
      • Fix consensus version to flush correctly
  7. Network
    • Enhancement
      • Improve ConsensusVersion error messages
      • Add peer functions to network interface to associate data with a peer to be garbage collected when peer goes away
      • Add networking infrastructure for cancelling sends
  8. Goal
    • Enhancement
      • Add comments to disassembly of constant load lines to show constant
      • add support for a single node private network
      • Improve waitForCommit logic
      • Refactor waitForCommit
    • Bug Fix
      • Fix goal node restart message when node already started
  9. Transactions
    • Enhancement
      • Transaction Sync: Optimize bloom filter memory allocations
    • Bug Fix
      • txpool: Fix incorrect datatype checking in recomputeBlockEvaluator
  10. Logger
    • Enhancement
      • Make deadlockLogger thread-safe
      • Reduce verbosity of logged messages
      • Print out intermediate decoding errors
      • logfilter: provide proper handling for panicking unit tests
    • Bug Fix
      • logfilter bug when running test without -v
  11. netgoal
    • Enhancement
      • Add pre-generated network support
    • Bug Fix
      • Fix insufficient account with preloaded db files
      • Resolve netgoal errors when bootstrap files are missing
      • Fixup small amounts of float64 roundoff
  12. Participation Keys
    • Enhancement
      • Refactor participation keys management
      • Add support for overlapping participation keys
      • Ensure the participation key database is being correctly closed after being installed
      • Add ParticipationKeysRefreshInterval to the node config

Protocol Upgrade

This release does not contain a protocol upgrade.

Additional Resources

Don't miss a new go-algorand release

NewReleases is sending notifications on new releases.