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

Unified linter job #21

Closed
carpawell opened this issue Nov 7, 2023 · 1 comment
Closed

Unified linter job #21

carpawell opened this issue Nov 7, 2023 · 1 comment
Labels
enhancement Improving existing functionality go Go language related I2 Regular impact S1 Highly significant U4 Nothing urgent

Comments

@carpawell
Copy link
Member

Is your feature request related to a problem? Please describe.

One GO repo -- one linter job. Many repos -- many jobs. One change -- many PRs in every repo. Many repos -- one (almost) GO team with the same (almost) ways to write code.

Describe the solution you'd like

Find out if it is possible to unify the linter action (and its settings).

Describe alternatives you've considered

Do nothing.

Additional context

DCO work done once: #12, #15.

@carpawell carpawell added enhancement Improving existing functionality question Further information is requested labels Nov 7, 2023
@roman-khimov roman-khimov removed the question Further information is requested label Nov 7, 2023
@roman-khimov
Copy link
Member

Can be started with several closely aligned (wrt linter settings) repos and then expanded.

roman-khimov added a commit to nspcc-dev/neofs-sdk-go that referenced this issue Dec 14, 2023
@roman-khimov roman-khimov added U4 Nothing urgent S1 Highly significant I2 Regular impact go Go language related labels Dec 19, 2023
roman-khimov added a commit that referenced this issue Sep 7, 2024
This tries to unify golangci-lint settings we use across ~20 Go repositories
and simplify maintenance. In general, we have two sources of golangci.yml
files copied across different repositories: neofs-node and neo-go. They differ:
 * neofs-node doesn't care about tests, neo-go does
 * neofs-node has additional settings for gofmt/gomodguard/revive
 * neo-go has additional settings for issues with exclusions
 * neo-go doesn't use exhaustive
 * neofs-node doesn't use bodyclose/contextcheck/decorder/errorlint

The golangci.yml added here:
 * cares about tests
 * uses additional rules from neofs-node, they're useful
 * drops neo-go settings from the 'issues' section, they seem to be useless
 * enables all linters from both worlds

Which practically means that it causes some pain below the spine for just about
any repository. But likely those can be fixed.

Signed-off-by: Roman Khimov <[email protected]>
roman-khimov added a commit that referenced this issue Sep 7, 2024
This tries to unify golangci-lint settings we use across ~20 Go repositories
and simplify maintenance. In general, we have two sources of golangci.yml
files copied across different repositories: neofs-node and neo-go. They differ:
 * neofs-node doesn't care about tests, neo-go does
 * neofs-node has additional settings for gofmt/gomodguard/revive
 * neo-go has additional settings for issues with exclusions
 * neo-go doesn't use exhaustive
 * neofs-node doesn't use bodyclose/contextcheck/decorder/errorlint

The golangci.yml added here:
 * cares about tests
 * uses additional rules from neofs-node, they're useful
 * drops neo-go settings from the 'issues' section, they seem to be useless
 * enables all linters from both worlds

Which practically means that it causes some pain below the spine for just about
any repository. But likely those can be fixed.

Signed-off-by: Roman Khimov <[email protected]>
roman-khimov added a commit that referenced this issue Sep 9, 2024
workflows: add common Go linter, fix #21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Improving existing functionality go Go language related I2 Regular impact S1 Highly significant U4 Nothing urgent
Projects
None yet
Development

No branches or pull requests

2 participants