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

Pre-commit hook: pin goimports and allow customized arguments #122

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

lubgr
Copy link

@lubgr lubgr commented Jan 29, 2024

Two minor propositions for the pre-commit configuration:

  1. Use the additional_dependencies option to install goimports into the isolated environments that pre-commit creates for each hook. This makes the hook independent on a system-wide or $GOBIN installation of goimports, and allows for a portable configuration of pre-commit checks. The hook then also works, if goimports is not already installed on the system where the hook runs.
  2. Split the hook's entry point from its args. This allows users to fully customise how golines is invoked in their local pre-commit configuration. Since entry can't be overridden, moving -w . into args gives users control the entire invocation. Arguably, this might make the hook harder to use, because args: [-m, 80] works well without this patch, and with the patch it has to be args: [-m, 80, -w, .]. I'm happy to remove this second change, if the control/simplicity tradeoff undesired. Example customisation:
  - repo: https://github.com/segmentio/golines
    rev: v0.12.2
    hooks:
      - id: golines
        args: [-m, 80, -t, 2, -w, .]

@lubgr lubgr marked this pull request as ready for review January 29, 2024 22:58
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.

2 participants