Contributing

June 15, 2025 ยท View on GitHub

All contributions are welcome! This guide will help you get started with the contribution process.

Find/Create Issue

Before you start contributing, you need to find an issue you'd like to resolve. Take a look at issues that are currently open and unassigned, and see which one you'd like to tackle. Every PR must have a corresponding being resolved.

If you want to report a bug or request a feature, you may also create an issue yourself.

Install Go

Install Go if you haven't already. You can check if you already have Go installed by running:

go version

Install Git

Install Git if you haven't already. You can check if you already have Git installed by running:

git --version

Install GNU Make

Install GNU Make if you haven't already. You can check if you already have GNU Make installed by running:

make --version

Install golangci-lint

Install golangci-lint if you haven't already. You can check if you already have golangci-lint install by running:

golangci-lint version

Fork this Repository

Create a fork of this repository on your own GitHub account.

Make Changes

Clone your forked repository:

git clone https://github.com/<your-username>/<your-fork>.git

Once you've cloned it locally, make your desired changes.

Update Documentation

If your changes include additions/updates to code, remember to:

  • Add/update the features section in README.md
  • Add/update an example of usage in example_test.go
  • Add a new entry describing the change in the unreleased section in CHANGELOG.md

Running Tests

To run all tests with coverage, run:

make test

For this library, 100% coverage is mandatory.

To run a specific test, set the TESTCASE variable:

make test TESTCASE=TestName

Running Linter

To run the linter, run:

make lint

Open Pull Request

Open a pull request between your fork and the main branch of this repository for your proposed changes. Remember to document the details of your proposal.