Contributing to karma
Getting Started
To get started follow Building from source
section of the
README file.
Git tags and branches
Every release tag name will follow vX.Y.Z
naming scheme, example:
v0.1.0
. All releases are tagged against the main
branch.
Commit messages
Conventional Commits format is required for all commits.
Testing changes
To run included tests and linters run:
make test
Some backend tests are using snapshot files. To update those snapshots after a breaking change run tests using:
UPDATE_SNAPSHOTS=1 go test -count=1 ./cmd/karma
Vendoring dependencies
Go modules are used for managing dependecies. After adding new or removing exitsting depenencies please run
go mod tidy
to update go.mod
and go.sum
files.
Javascript & CSS assets
UI is written using React, follow user guide for create-react-app to make changes to the UI code.
Some UI tests are using snapshots. After making changes that affect how existing components are rendered please run:
cd ui && npm test -- -u
to update all snapshots. Remember to commit those changes when making a pull request.
Running
To build and start karma
from local branch see Running
section
of the README file.