# TestNet and MainNet Update: 2.8.0

**URL:** <https://forum.algorand.co/t/testnet-and-mainnet-update-2-8-0/3882>\
**Category:** Announcements\
**Tags:** testnet, mainnet\
**Created:** [July 28, 2021, 6:23pm UTC](https://forum.algorand.co/t/testnet-and-mainnet-update-2-8-0/3882 "2021-07-28T18:23:05Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![devops-service](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.algorand.co/devops-service/32/2205_2.png) [@devops-service](https://forum.algorand.co/u/devops-service)\
**Post date:** [July 28, 2021, 6:23pm UTC](https://forum.algorand.co/t/testnet-and-mainnet-update-2-8-0/3882/1 "2021-07-28T18:23:05Z")

</div>

MainNet and TestNet have been updated to 2.8.0 today, Wed July 28, 2021 10:30 AM EDT (14:30 UTC)

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.

 ![GitHub Logo](https://us1.discourse-cdn.com/flex016/uploads/algorand/original/1X/fcd756bba61094f9e8774e43ec402e311aeea50e.jpeg)

# Highlights

This is a maintenance release focused around many test improvements and other optimizations. Additionally there are some added improvements, such as:

- Local private network devMode for rapid transaction testing
- Improved support for non-utf-8 data in asset parameter name, unit name, and url fields, through the addition of base64 fields
- Support for CentOS 8 Stream in RPM
- Changes to support future AVM 1.0

# Changes

1. REST API
  - New Feature - add handling for non-utf 8 asset names
  - Enhancements
    - Use byte format for asset b64 fields
    - Use dashes in v2 API.

  - Bug Fix - initialize past side effects with correct length during dryrun requests

2. TEAL
  - New Features
    - Selector pseudo-op in support of ABI
    - vFuture: creator access and app\_params\_get

  - Enhancements
    - Infrastructure to check AVM stack manipulation opcodes better
    - Specs and unit test to avoid forgetting in the future

  - Bug Fixes
    - Addressing panic in assembler
    - Minor change to rename helper function in Extract ops

3. Catchup
  - Enhancement - avoid requesting unsupported blocks by the ensure digest catchup path
  - Bug Fixes
    - Fixes to peer selector and TestBasicCatchpointCatchup
    - Fix potential nil dereferencing

4. Ledger
  - Enhancements
    - Lruaccts write speedup
    - optimize txtail memory consumption

5. Network
  - Enhancement - reduce unneeded contention around checking the peers connectivity

6. Node
  - New Feature - add initial devMode support
  - Bug Fixes
    - Allow to parse ipv6 localhost “[::]:4601”
    - Fix regex for matching charset of valid DNS hosts, add test

7. Logging
  - Enhancement - re-use host ID if present

8. Tests
  - Enhancements
    - Add enums to player permutation tests
    - Add ledger coverage for onlineacct roundlru txtail
    - Implement hello circleci yaml
    - Improve TestMetricSegment test reliability
    - Restore TestPeriodicSync and TestBasicCatchpointCatchup tests.
    - Added benchmark to lruAccounts write function
    - Enable TestPartkeyOnlyRewards on macos
    - Add unit tests for ledger BlockQueue
    - Enable previously disabled TestConfigMigrate unit test
    - Enable unit tests on travis mac build
    - Improve lruaccts benchmark
    - Improve msgp codec testing
    - Improve testing of alloc bounded slices
    - Make TestPeersDownloadFailed and TestHistoricData predictable
    - Move extra page test to e2e\_subs
    - Move travis\_retry to skip rebuilding
    - Remove deprecated transaction pool e2e tests
    - Use periodicSyncLogger for cleaner test runs

  - Bug Fixes
    - Avoid division by zero during TestBasicCatchpointWriter
    - Fix 10 minute timeout in travis
    - Fix and enable TestNewAccountCanGoOnlineAndParticipate
    - Build: fix travis nightly build failure
    - Fix random failure in TestWebsocketNetworkPrioLimit
    - Fix random failures in TestPeriodicSync
    - Avoid running TestAgreementSynchronous10 on nightly build
    - Ensure deploy\_linux\_version generates a linux/amd64 binaries for algonet usage
    - Fix gotestsum install
    - Fix telemetry unit tests
    - Lookup in no-GOPATH locations for packages in gocodec testing

9. Other
  - New Features
    - Add Fedora support into install\_linux\_deps.sh
    - Test conditional slack alert for build status
    - Use golangci-lint

  - Enhancements
    - Update Github engineering template
    - Replace yum-cron with dnf-automatic to support centos 8
    - Run misspell linter with -w flag
    - Specify truncated division is used in TEAL in documentation
    - Typos, grammar, inconsistencies

  - Bug Fixes
    - Add missing txna allowed args to doc and langspec
    - Fix darwin-arm64 builds
    - Fix docker repo update

## Protocol Upgrade

This release does not contain a protocol upgrade.

## Additional Resources

- [Algorand Forum](https://forum.algorand.co)
- [Developer Documentation](https://developer.algorand.org)

To update your current version, run the following goal command:

`./update.sh -c stable -i -d <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 yet,  
you can follow the instructions here:

> **[Install a node - Algorand Developer Portal](https://developer.algorand.org/docs/run-a-node/setup/install/#updating-node)**
>
> Algorand Developer Docs, SDKs, REST APIs, CLI tools, ecosystem projects, metrics dashboard and sample code, how-tos, and news from the Algorand developer community
