Add golangci-lint version 1.51
What does this MR do and why?
This MR adds golangci-lint version 1.51 and opens up a can of worms
More versions, more problems
In !643 (merged) the golangci-lint package started using version numbers after a previous update broke things downstream.
Adding a new version introduces the some problems, which might be resolved in various ways, depending on how we want to proceed:
- Before the changes in !643 (merged), the tag for this tool was
golangci-lint-alpine
(no version). The tag contains golangci-lint 1.50. - Currently the tag includes the version number
golangci-lint-1.50-alpine
. - This MR adds a new tag,
golangci-lint-1.51-alpine
without changing anything else. This means that the originalgolangci-lint-alpine
will be stuck in version 1.50. - Going forward, one would expect to see new tags for each subsequent release of golangci-lint, which leads to version-specific golangci-lint dockerfiles littering the repository.
Options so far
- Accept this MR and deal with the multiple versions issue later if it becomes unmanageable.
- Drop the previous version when a new one is published. This may cause the previous version tag to expire and break things downstream.
- Switch back to using a non-versioned tag and hope that golangci-lint remains backwards compatible as it should, given that it seems to be using semantic versioning. This may also break things downstream. I would say that this is unlikely but not impossible, given that is has already happened before.
Checklist
-
(If applicable) Add patches if required for upgrading Ruby version in https://gitlab.com/gitlab-org/gitlab-build-images/-/tree/master/patches/ruby.
Edited by Mirko Grönroos