[MAINT] Create custom golangci-lint to integrate tfproviderlint#3254
[MAINT] Create custom golangci-lint to integrate tfproviderlint#3254deiga wants to merge 20 commits intointegrations:mainfrom
golangci-lint to integrate tfproviderlint#3254Conversation
|
👋 Hi! Thank you for this contribution! Just to let you know, our GitHub SDK team does a round of issue and PR reviews twice a week, every Monday and Friday! We have a process in place for prioritizing and responding to your input. Because you are a part of this community please feel free to comment, add to, or pick up any issues/PRs that are labeled with |
cec47f0 to
7f284d2
Compare
4e23dc1 to
82c95b3
Compare
stevehipwell
left a comment
There was a problem hiding this comment.
I'm sorry but I'm not currently onboard with this change as it stands. It's a long way away from the principle of least surprise and changes standard patterns I'd expect to see in a TF provider codebase. Is there a reason why we can't run tfproviderlint as a separate job so at least the complexity is kept away from the other more standard linting?
|
@stevehipwell I don't think I understand your objection. The PR forces no changes on existing code and provides a stable way, with oversight, to have all new changes linted with a stricter ruleset. It basically already does exactly what you're asking for: running the new linter rules in a separate job. While also providing seamless integration into the linting landscape I use. These changes would reduce a big part of review comments we currently have to type out manually. Could you elaborate what the problem with these changes is, so that I could understand better? |
|
@deiga you've changed how CI and the local default linting works, neither of which is desirable. I'm keen to have advanced checks but not at the cost of slowdown for local development or changing the fast feedback loop and understandability of the CI job. Why not run |
In some ways, yes. The linter is now fully dependent on
I haven't measured it, but there should not be any major slowdown locally. Only the first run after each of these forces a recompile: updated golangci-lint version or updated go (non-test) files in If there is an impact on the understandability of the CI job, that has not been intentional and needs to be addressed. Please point to this degradation |
a112dd5 to
97c8e01
Compare
To enable adding `tfproviderlint` as a plugin Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
a6d7d10 to
dc392ec
Compare
Signed-off-by: Timo Sand <timo.sand@f-secure.com>
Before the change?
tfproviderlintas part ofgolangci-lintAfter the change?
tfproviderlintas part ofgolangci-lintValidateDiagFuncinstead ofValidateFunctfproviderlintchecks, which seem sensible and don't require fixes right nowmake lint-newto run stricter linters on only code sincemainci.yamlworkflow, to run linters in parallel usinggolangci-lint-actionPull request checklist
Does this introduce a breaking change?
Please see our docs on breaking changes to help!