Skip to content

Latest commit

 

History

History
56 lines (40 loc) · 2.25 KB

File metadata and controls

56 lines (40 loc) · 2.25 KB

Before you start

For any significant change, open the issue first (or comment on an existing one) to discuss with the maintainers on what to do and how. When the solution is agreed upon, you can proceed with implementation and open a pull request.

For small changes, such as few lines bugfixes or documentation improvements, feel free to open a pull request directly.

For easy first issues, check the good first issue tag.

Development

  1. Clone the repository.
  2. Install Go: https://go.dev/doc/install
  3. Install Task: https://taskfile.dev/docs/installation
  4. Do export TASK_X_REMOTE_TASKFILES=1.
  5. Make your changes.
  6. Run task with no arguments to run all essential checks (build, lint, format, quick tests, and others).
  7. Commit your changes. See Commit/branch/PR naming for the commit message format. The commit must be signed off (--signoff) as an acknowledgment of the DCO.
  8. Push and open a pull request.

You can also check out all available tasks with task -l.

Commit/branch/PR naming

The commit message format is <commit-type>: <description>. The branch name format is <commit-type>/<shortened-description>. The PR title format is <commit-type>: <description>.

The commit type is one of the following:

  • feat: a new feature or an improvement (will bump the minor version)
  • fix: a bug fix or a minor improvement (will bump the patch version)
  • refactor: any other code change
  • chore: anything else

Examples of commit messages and PR titles:

  • feat: add --timeout flag
  • fix: error cyclic dependency detected
  • refactor: simplify plan package
  • chore: add unit tests job on PR

Examples of branch names:

  • feat/timeout-flag
  • fix/cyclic-dependency-error

Code style

See CODESTYLE.md.