Skip to content

Golang v1.16 Upgrade #3570

@gmalouf

Description

@gmalouf

Problem

We recently prepared a release for and then reverted support for Go 1.16 due to an observed performance regression along with concerns around this issue. Our current version, Go 1.14.7 is on a line that no longer receives maintenance updates and misses out on valuable language enhancements as well.

Solution

Review our software in:

  • go-algorand
  • go-algorand-ci
  • Indexer
  • Algonet
  • Sandbox

ensuring we can (and then removing) our usage of nanosecond level timing calls. Upon addressing this, run performance benchmarks against the latest stable Go 1.16 release to understand any potential performance regressions.

At this point, assuming minimal performance impact, we should move forward with the upgrade (working w/ Hyper Flow to update build pipelines, etc).

Dependencies

Carbon-11 resources are focused on critical efforts at the moment, but

Urgency

We'd like to address this by late Q1 or early Q2, as there additional platforms we'd like to support that require Go 1.16 as their minimal version.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions