Skip to content

all: establish version support & release policy #388

@hyangah

Description

@hyangah

We need to explicitly state the supported Go versions.
We propose to align our policy with Go's. (two newer major releases)

  • Go currently supports two newer major releases - security patches or critical bug fixes for regression will be offered only for those supported major versions. [ Go's release policy] Actively supporting versions beyond those carries conflicting messages and leaves users with unsupported, less secure versions.

  • Many tools this extension depends on cannot be built with old versions of Go and may not work with old versions of Go.
    (gopls supports the last two major versions x/tools/gopls: support gopls for 1.12 (current - 4) go#39146, dlv supports the last three major versions Error when trying install delve in traditional way go-delve/delve#2067, etc)

  • The extension code base is cluttered with hacks to work around bugs or feature-lack of old versions of Go. This became a maintenance burden. Since the old versions are rarely used, the hacks are not tested any more and we are not sure if they still work.

For users who really have to use old versions of Go, we can offer the list of tools versions and the last extension version number, so users can set up the environment within a dev container.

  • Documentation (README.md, Release notes).
  • Suggest to upgrade Go if necessary (Users should be able to suppress the suggestion).
  • Clean up code that handles old versions.
  • Create a list of latest tools versions tested for each release.
  • Set up CI to test with supported Go versions.

cc @stamblerre @FiloSottile

Metadata

Metadata

Assignees

No one assigned

    Labels

    NeedsDecisionFeedback is required from experts, contributors, and/or the community before a change can be made.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions