- PR everything. Commits made directly to
main
are prohibited, except under specific circumstances - Use feature branches. Create an issue for every single feature or bug and label it. If you are a core contributor, create a branch named feature/[issue #] to resolve the issue. If you are not a core contributor, fork and branch.
- Try to label issues and PRs as accurately as possible, especially in the case of PRs, where
semver-major
,semver-minor
andsemver-patch
labels are available. Labels on issues should be a subset of the labels on the corresponding pull request; the milestones should match. - Use github "Fixes #[issue]" syntax on your PRs to indicate which issues you are attempting to resolve
- Code coverage should strictly be enforced at 100%
- Please follow the JavaScript coding style exemplified by existing source files and enforced by Ravel's
.eslintrc.json
configuration.
To test (with code coverage):
$ docker run --rm -e MYSQL_ROOT_PASSWORD=password -p 13306:3306 mariadb:10.3.7
$ npm test
Due to a bug in istanbul, failing tests will report incorrect line numbers. For this situation, use test-no-cov
, which will omit code coverage reporting and give you accurate line numbers.
$ docker run --rm -e MYSQL_ROOT_PASSWORD=password -p 13306:3306 mariadb:10.3.7
$ npm run test-no-cov