Squid is an open-source project and contributions in the form of a PR are welcome. We use conventional-commits enforced by the commitizen and commitlint
A pull request adding a new feature or fixing an existing bug should include a test covering the changes. The contribution can be covered either by an end-to-end test or by a unit test. End-to-end tests are located in test/e2e-suite
and test/e2e-project
and can be run from the root with rush e2e
. Unit tests are package-specific. Both e2e and unit tests are run by CI once a PR is opened.
The monorepo is organized with rush, with a single version for all packages. Once a pull request is merged, the version is bumped to the new pre-release version following the conventional commits convention. When deemed mature, the release
action can be manuually triggered. It graduates the pre-release version and publishes to the npm registry and docker hub.
release
Github action is supposed to be run manually. It has the following inputs: