Skip to content

Latest commit

 

History

History
69 lines (47 loc) · 1.62 KB

File metadata and controls

69 lines (47 loc) · 1.62 KB

Contributing to mppx-go

Thanks for contributing to mppx-go.

Before You Start

  • Read README.md for architecture, examples, and package layout.
  • Review CODE_OF_CONDUCT.md.
  • Check existing issues and pull requests to avoid duplicate work.

Development Setup

Requirements:

  • Go 1.25+

Install dependencies and verify the project:

go mod download
go test ./...

Branches and Pull Requests

  1. Fork the repository and create a feature branch from main.
  2. Make focused changes with clear commit messages.
  3. Add or update tests for behavior changes.
  4. Run formatting, linting, and tests locally before opening a PR.
  5. Open a pull request with:
    • a short summary of what changed,
    • reasoning behind the change,
    • test evidence (command output or explanation),
    • any migration notes if relevant.

Code Style

  • Keep public APIs clear and documented.
  • Prefer small, composable functions and explicit errors.
  • Preserve backward compatibility unless the change is clearly breaking and documented.

Formatting and linting:

gofmt -w .
golangci-lint run

If golangci-lint is not installed, install it first:

go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest

Testing Guidelines

  • Add unit tests for all new logic.
  • Add regression tests for bug fixes.
  • Keep tests deterministic and isolated (no hidden network or external state dependencies unless explicitly needed).

Run:

go test ./...

License

By contributing, you agree that your contributions are licensed under the project license in LICENSE.