Skip to content

Latest commit

 

History

History
40 lines (31 loc) · 1.86 KB

File metadata and controls

40 lines (31 loc) · 1.86 KB

Contributing to gghstats

Thank you for your interest in contributing.

How to contribute

  • Bug reports and feature requests: Open an issue and use the template that fits best.
  • Code changes: Open a pull request from a branch (for example fix/description or feat/short-name).
  • Branch policy: Use develop as integration branch and main for stable releases.
  • PR base branch: Open normal feature/fix PRs against develop.
  • Scope: Keep PRs focused and small when possible.

Code style

  • Format Go code with gofmt -s.
  • Run checks locally before submitting:
    • make lint (includes check-x-net-pin for golang.org/x/net v0.57.0)
    • make test
    • make cover (statement coverage ≥ 80%; SPEC §6.1)
    • make security
  • After go mod tidy or Dependabot dependency PRs, re-pin if needed: go get golang.org/x/net@v0.57.0, then make check-x-net-pin.
  • For release-related changes, run:
    • make release-check (includes cover; do not tag below 80%)
  • Native OS packaging (.deb, .rpm, FreeBSD/OpenBSD): optional maintainer gate —
  • Docker / Helm manifests: validated in gghstats-selfhosted, not in this repo.

Release flow

  • Version is read from VERSION (semantic version without v, for example 0.1.2).
  • Release tag format is v<version> (for example v0.1.2).
  • Release PR flow: merge develop into main, then tag and release from main.
  • Useful commands:
    • make snapshot
    • make test-release
    • make release

Questions

If you are unsure, open an issue and describe your proposal before implementing large changes.