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

Golint is deprecated #378

Open
antichris opened this issue Feb 14, 2022 · 7 comments
Open

Golint is deprecated #378

antichris opened this issue Feb 14, 2022 · 7 comments

Comments

@antichris
Copy link

antichris commented Feb 14, 2022

NOTE: Golint is deprecated and frozen. There's no drop-in replacement for it, but tools such as Staticcheck and go vet should be used instead.
https://github.com/golang/lint#readme

This was already brought up in #318 and #349, but both issues were closed by the bot without anyone actually addressing it in any meaningful way (which is probably yet another issue: when nobody gives a shit about an issue for more than 60 days, it just magically "poof"s closed).

CC: @dvrkps, @andrew-field, @gucio321 and @hrmnjt would probably be interested in in the progress of this issue.

@antichris
Copy link
Author

Also CC: @cristaloleg, @thediveo, @BrenekH, @Denchick, @georgettica, @obalunenko, @antoineco, @benjaminbartels, @slyang-git, and @patrickhoefler, who thumbs-up'ed both previous issues and, I suspect, would appreciate this issue being finally addressed for real.

@cristaloleg
Copy link

Yes, golint is frozen but not deprecated, it still works and suggests what is better to fix. However, after Go 1.18 release golint (probably?) will not work with generics because it knows nothing about them.

AFAIR https://github.com/mgechev/revive is a drop-in replacement for golint and probably that's the tool that we should use.

@antichris
Copy link
Author

Yes, golint is frozen but not deprecated, it still works and suggests what is better to fix

If by "not deprecated" you mean "it can still be downloaded, installed and kind of more or less works", I would hesitantly agree.

But the fact is that the repo is archived, the package is officially unmaintained and frozen, and the tens of outstanding issues it had were all closed unresolved when the Go team agreed on and enacted the decision to, literally, deprecate (golang/go#38968 (comment)) it. The tool is now abandoned and the recommendation stands against using it. Precisely as I understand "deprecated".

Revive is good, though. 👍

@peczenyj
Copy link

Hello

the latest version of golangci-lint (v1.45.0) add some support to go1.18 via one flag that disable most of the problematic linters that does not work properly with generics.

I try to use goreportcard with one project using generics and the result was a big mess. Perhaps it is time to move forward?

https://github.com/golangci/golangci-lint/releases/tag/v1.45.0

@antichris
Copy link
Author

@shawnps

(...) the golint check has been removed.
#381 (comment)

Is that the final resolution for this issue or are there other plans (e.g. revive, as #378 (comment) suggested, or something else)?

@thediveo
Copy link

thediveo commented Jul 7, 2022

As revive stresses that out of the box it acts as a faster drop-in replacement for golint, please drop it finally into goreportcard! From reading and rereading this issue and revive's documentation that shouldn't be rocket science and get this issue quickly and reliably plugged?!

@gucio321
Copy link

gucio321 commented Jul 7, 2022

it seems that gometalinter needs to be replaced with golangci-lint in order to cpmolete this.

@shawnps @hermanschaaf any updates here???

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

No branches or pull requests

5 participants