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

Minimum supported Go version #18

Closed
acln0 opened this issue Jul 15, 2018 · 4 comments
Closed

Minimum supported Go version #18

acln0 opened this issue Jul 15, 2018 · 4 comments
Labels
Milestone

Comments

@acln0
Copy link
Member

acln0 commented Jul 15, 2018

This matter came to light with the submission of #17. In reworking the tests, I unfortunately omitted the fact that Go < 1.7 doesn't have subtests, so the Travis builds for < 1.7 are failing.

In the context of that PR, I think the relevant questions are whether or not testing for Go >= 1.3 && Go < 1.7 adds value for users who are stuck on those versions, and whether they'd be comfortable using the package if regular tests only run on Go >= 1.7.

If we assume that the package will have users in that category, and we believe the answer to the former question to be "yes" (and the answer to the latter to be "no"), then I can refactor the tests to work on < 1.7.

On the other hand, subtests are a nice modernization, and they fit the nature of the tests quite well.

If the subtests stay, the documentation w.r.t. supported versions could read "tested on >= 1.7, probably works on >= 1.2". If we remove subtests, the documentation will continue to say "tested on >= 1.3, probably works on >= 1.2".

Thoughts?

@theckman
Copy link
Member

We could follow the same policy as the Go authors themselves: https://golang.org/doc/devel/release.html#policy

If we deem that too aggressive, I think we should keep subtests and drop testing for < 1.7. We can change the README like you mentioned.

@niaow
Copy link
Member

niaow commented Jul 15, 2018

I believe we should be fine dropping any pre-context go versions, because many go packages do not work with those go versions. However we should also consider the usage of 1.6 as the default version in some distros (ubuntu. . .).

@niaow
Copy link
Member

niaow commented Jul 15, 2018

If we decide to support older go version, we will need to write a subtest helper that would provide similar functionality on older versions. This would however get extremely annoying for outside contributors.

@theckman
Copy link
Member

@jadr2ddude I think a piece of data we could dig in to, if we wanted to, is how many issues people have using Go 1.6 is and what the workarounds are. The ones I can recall from Slack ended up with needing a newer version of the toolchain installed, or they resulted to things like maintaining two copies of the files guarded by build tags.

The point I'm going after is that trying to use these older toolchains has been troublesome, so maybe we'd be good to drop testing for them.

theckman added a commit that referenced this issue Jul 16, 2018
In preparation for executing on #15 (already opened in #17) we need to disable
testing against older versions of the Go toolchain. There are a few reasons for
this, the largest being they don't support subtests. These versions, including
Go 1.7 and 1.8, are EOL by the Go authors so there's also lack of upstream
support for these toolchains.

This was discussed a bit in #18 and on
[Slack](https://gophers.slack.com/archives/CBP4N9BEU/p1531704009000014).

Fixes #18

Signed-off-by: Tim Heckman <t@heckman.io>
theckman added a commit that referenced this issue Jul 16, 2018
In preparation for executing on #15 (already opened in #17) we need to disable
testing against older versions of the Go toolchain. There are a few reasons for
this, the largest being they don't support subtests. These versions, including
Go 1.7 and 1.8, are EOL by the Go authors so there's also lack of upstream
support for these toolchains.

This was discussed a bit in #18 and on
[Slack](https://gophers.slack.com/archives/CBP4N9BEU/p1531704009000014).

Fixes #18

Signed-off-by: Tim Heckman <t@heckman.io>
theckman added a commit that referenced this issue Jul 16, 2018
In preparation for executing on #15 (already opened in #17) we need to disable
testing against older versions of the Go toolchain. There are a few reasons for
this, the largest being they don't support subtests. These versions, including
Go 1.7 and 1.8, are EOL by the Go authors so there's also lack of upstream
support for these toolchains.

This was discussed a bit in #18 and on
[Slack](https://gophers.slack.com/archives/CBP4N9BEU/p1531704009000014).

Fixes #18

Signed-off-by: Tim Heckman <t@heckman.io>
theckman added a commit that referenced this issue Jul 16, 2018
In preparation for executing on #15 (already opened in #17) we need to disable
testing against older versions of the Go toolchain. There are a few reasons for
this, the largest being they don't support subtests. These versions, including
Go 1.7 and 1.8, are EOL by the Go authors so there's also lack of upstream
support for these toolchains.

This was discussed a bit in #18 and on
[Slack](https://gophers.slack.com/archives/CBP4N9BEU/p1531704009000014).

Fixes #18

Signed-off-by: Tim Heckman <t@heckman.io>
theckman added a commit that referenced this issue Jul 16, 2018
In preparation for executing on #15 (already opened in #17) we need to disable
testing against older versions of the Go toolchain. There are a few reasons for
this, the largest being they don't support subtests. These versions, including
Go 1.7 and 1.8, are EOL by the Go authors so there's also lack of upstream
support for these toolchains.

This was discussed a bit in #18 and on [Slack](https://gophers.slack.com/archives/CBP4N9BEU/p1531704009000014).

Fixes #18

Signed-off-by: Tim Heckman <t@heckman.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

8 participants