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

pre-release for Go 1.14 #962

Closed
pierrre opened this issue Feb 6, 2020 · 15 comments
Closed

pre-release for Go 1.14 #962

pierrre opened this issue Feb 6, 2020 · 15 comments
Labels

Comments

@pierrre
Copy link
Contributor

@pierrre pierrre commented Feb 6, 2020

Hello,
Is it possible to have a pre-release (maybe a beta) for Go 1.14 ?
It seems that the pre-compiled binaries are not compatible with Go 1.14rc1.

@ernado

This comment has been minimized.

Copy link
Collaborator

@ernado ernado commented Feb 6, 2020

Hey, I'm planning an alpha release compiled with go1.14rc1 until Friday.

@ernado

This comment has been minimized.

Copy link
Collaborator

@ernado ernado commented Feb 8, 2020

golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-darwin-386.tar.gz
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-darwin-amd64.tar.gz
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-freebsd-386.tar.gz
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-freebsd-amd64.tar.gz
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-freebsd-armv6.tar.gz
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-freebsd-armv7.tar.gz
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-linux-386.tar.gz
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-linux-amd64.tar.gz
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-linux-arm64.tar.gz
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-linux-armv6.tar.gz
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-linux-mips64.tar.gz
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-linux-mips64le.tar.gz
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-linux-ppc64le.tar.gz
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-linux-s390x.tar.gz
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-windows-386.zip
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-windows-amd64.zip
golangci-lint-SNAPSHOT-536a4f0e1234d8329d11cdd3c375a469fa920802-linux-armv7.tar.gz

Seems it is non-trivial to do it in automated way via our CI/CD so I've did it manually.

@tpounds

This comment has been minimized.

Copy link
Collaborator

@tpounds tpounds commented Feb 8, 2020

@ernado, @pierrre I've updated the .travis.yml to build against Go 1.14rc1 in #964. However, https://github.com/golangci/golangci-lint/blob/master/.travis.yml#L34 needs to be updated to to 1.14+ before new a release will be built that supports the version. @pierrre Have you tried installing via go get now that #930 has been merged?

@tpounds tpounds added the installation label Feb 8, 2020
@pierrre

This comment has been minimized.

Copy link
Contributor Author

@pierrre pierrre commented Feb 10, 2020

Thank you, but I have another very strange error:

ERRO Running error: failed to pre-run govet: failed to configure analyzers: settings key "printf" must be valid analyzer name, valid analyzers: [asmdecl assign atomic atomicalign bools buildtag cgocall composites copylocks deepequalerrors errorsas findcall httpresponse loopclosure lostcancel nilfunc nilness shadow shift sortslice stdmethods structtag tests unmarshal unreachable unsafeptr unusedresult]

My config:

run:
  timeout: "10m"
linters:
  disable-all: true
  enable:
    - "bodyclose"
    - "deadcode"
    - "depguard"
    - "errcheck"
    - "gocritic"
    - "gocyclo"
    - "gofmt"
    - "goimports"
    - "golint"
    - "govet"
    - "ineffassign"
    - "megacheck"
    - "misspell"
    - "nakedret"
    - "structcheck"
    - "unconvert"
    - "unparam"
    - "varcheck"
linters-settings:
  depguard:
    list-type: blacklist
    include-go-root: true
    packages:
      - errors
      - reflect
      - unsafe
      - github.com/pkg/errors
  gocyclo:
    min-complexity: 10
  govet:
    enable-all: true
    settings:
      printf:
        funcs:
          - "(github.com/xxx/golang-libraries/errors).Newf"
          - "(github.com/xxx/golang-libraries/errors).WithMessagef"
          - "(github.com/xxx/golang-libraries/errors).Wrapf"
issues:
  exclude-use-default: false
  max-issues-per-linter: 0
  max-same-issues: 0

I think I've already mentioned this issue somewhere.
It's due to a recent change in x/tools (the config of the govet linter)

EDIT: sorry, I never reported this issue actually, it was on the internal slack of my company

@ernado

This comment has been minimized.

Copy link
Collaborator

@ernado ernado commented Feb 10, 2020

@pierrre what version is causing that error?

@pierrre

This comment has been minimized.

Copy link
Contributor Author

@pierrre pierrre commented Feb 10, 2020

v1.23.3 installed with go get
cd /tmp && GO111MODULE=on GOBIN=/home/pierre/go/pkg/golangci-lint/v1.23.3-mod go get -v github.com/golangci/golangci-lint/cmd/golangci-lint@v1.23.3

But I'm dumb: I understand now that #930 has not yet been released in a tag, correct ?

@ernado

This comment has been minimized.

Copy link
Collaborator

@ernado ernado commented Feb 10, 2020

Oh, I forgot to mention that, sorry :(
You can try version from my comment or build it by yourself with goreleaser --snapshot command in project root.

@ernado

This comment has been minimized.

Copy link
Collaborator

@ernado ernado commented Feb 10, 2020

I've also issued v1.23.4 that will be available in ~20min.

@ernado

This comment has been minimized.

Copy link
Collaborator

@ernado ernado commented Feb 10, 2020

Meh, due to some issues with CI/CD the v1.23.6 is valid latest version.

@pierrre

This comment has been minimized.

Copy link
Contributor Author

@pierrre pierrre commented Feb 11, 2020

The install with go get and v1.23.6 works perfectly fine for me now !
Thank you very much!

Do you plan to make this installation method supported again ?

@ernado

This comment has been minimized.

Copy link
Collaborator

@ernado ernado commented Feb 11, 2020

The go get method should work until we have any critical replace directives and go tools are not updating in backwards incompatible manner (e.g. last our bug with x/tools).

Personally I will try to fix any go-get related bugs, so it is kinda supported, but binary releases are still recommended.

@pierrre

This comment has been minimized.

Copy link
Contributor Author

@pierrre pierrre commented Feb 11, 2020

OK.

I will close this issue now, because my problem is fixed: I can use golangci-lint with Go 1.14rc1.

FYI, I'm using this command to install it:

cd /tmp && GO111MODULE=on GOBIN=/home/pierre/go/pkg/golangci-lint/v1.23.6-mod go get -v github.com/golangci/golangci-lint/cmd/golangci-lint@v1.23.6
@pierrre pierrre closed this Feb 11, 2020
@pierrre

This comment has been minimized.

Copy link
Contributor Author

@pierrre pierrre commented Feb 12, 2020

It's very strange:

  • my local Go version is 1.14rc1
  • I'm running golangci-lint v1.23.6 from the pre-compiled binaries you provide
  • it works without any error

So, it seems I don't need to use go get 🤔
The v1.23.6 compiled with Go 1.13 works with my local Go 1.14rc1
Am I misunderstanding something ?

@ernado

This comment has been minimized.

Copy link
Collaborator

@ernado ernado commented Feb 12, 2020

Seems like there is no hard requirement to use go1.14 to support go1.14, that works for me too 👀

@ldez

This comment has been minimized.

Copy link
Contributor

@ldez ldez commented Feb 25, 2020

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
4 participants
You can’t perform that action at this time.