Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

all: establish version support & release policy #388

Open
5 tasks
hyangah opened this issue Jul 21, 2020 · 0 comments
Open
5 tasks

all: establish version support & release policy #388

hyangah opened this issue Jul 21, 2020 · 0 comments
Labels
NeedsDecision Feedback is required from experts, contributors, and/or the community before a change can be made.

Comments

@hyangah
Copy link
Contributor

hyangah commented Jul 21, 2020

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

@hyangah hyangah added the NeedsDecision Feedback is required from experts, contributors, and/or the community before a change can be made. label Jul 21, 2020
@hyangah hyangah added this to the Backlog milestone Aug 7, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
NeedsDecision Feedback is required from experts, contributors, and/or the community before a change can be made.
Projects
None yet
Development

No branches or pull requests

1 participant