Skip to content

Conversation

@kpurdon
Copy link

@kpurdon kpurdon commented Dec 6, 2025

Summary

Resolves #22935

  • Add multi-module support to the experimental golangci-lint plugin by partitioning targets by owning go.mod
  • Upgrade default golangci-lint version from 1.64.6 to 2.7.1
  • Keep v1 versions available for backward compatibility

Changes

  • rules.py: Add custom partitioner to group targets by owning go.mod, run golangci-lint once per module with correct working directory
  • subsystem.py: Upgrade default version to 2.7.1, add v2 checksums
  • rules_integration_test.py: Add multi-module test, add v1 backward compatibility test, update assertions for v1/v2 output format differences

Test plan

  • Existing tests pass with v2.7.1 (default)
  • New test_passing_v1 verifies backward compatibility with v1.64.6
  • New test_multiple_go_mods verifies multi-module linting works correctly

…e to v2

- Add custom partitioner to group targets by owning go.mod
- Run golangci-lint once per module with correct working directory
- Upgrade default version from 1.64.6 to 2.7.1
- Keep v1 versions for backward compatibility
- Add test for multi-module linting
- Add test for v1 backward compatibility
@kpurdon kpurdon changed the title feat(go): add multi-module support to golangci-lint plugin and upgrad… feat(go): add multi-module support to golangci-lint plugin and upgrade to v2 Dec 6, 2025
@kpurdon kpurdon marked this pull request as ready for review December 8, 2025 15:33
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

Successfully merging this pull request may close these issues.

golangci-lint does not support multi-module repositories

1 participant