Skip to content

Latest commit

 

History

History
60 lines (39 loc) · 3.56 KB

CONTRIBUTING.md

File metadata and controls

60 lines (39 loc) · 3.56 KB

Contributing

Welcome, and thanks for showing an interest in contributing 💜

This module is an npm workspace. You will need:

  • Node latest LTS
  • npm

See also the browser extension's CONTRIBUTING.md since the workflow there is different.

🧞 Commands

All commands are run from the root of the project, from a terminal:

Command Action
npm install --legacy-peer-deps Installs dependencies across the workspace
npm test Runs unit tests across the workspace
npm run lint Does a check with ESLint across the workspace
npm run types Generates type definitions from JSDoc and does a typecheck across the workspace

To only run the command for an individual package, either:

  • Run the command from the package folder
  • Append --workspace=<package name> to the command

🚚 Continuous deployment

This repo uses conventional commits to automate releases with Semantic Release.

Some example commits and their release type:

Commit message Release type
fix: update a non-development dependency Patch. Bugfix release, updates for runtime dependencies.
feat: added a new option Foo Minor. New feature release.
refactor: removed a deprecated option Bar

BREAKING CHANGE: The Bar option has been removed.
Major. Breaking release, like removing an option.
(Note that the BREAKING CHANGE: token must be in the footer of the commit)

Working with next releases

When making larger changes that needs thorough testing or modules widely used, you can create a next release. Here is how:

  1. Create a branch next if one does not exist
  2. Make changes (or push whatever changes you have on a different branch onto next)
  3. When you are done, commit your changes with semantic-release in mind
  4. The workflows will run and publish a new version on the format: major.minor.patch-next.<next version> Where next version` is incremented each time you push a feat, fix or patch to the branch.

GitHub Actions

GitHub Actions workflows:

You'll find the workflow logs and results in the Actions tab.