Skip to content

Latest commit

 

History

History
100 lines (70 loc) · 3.33 KB

CONTRIBUTING.MD

File metadata and controls

100 lines (70 loc) · 3.33 KB

Liveblocks Liveblocks

X Discord YouTube License

Contributing

Welcome to our contributing guide! We're excited to have you as a contributor.

Releasing

Packages are published on the npm registry. Each release is associated to a github tag.

A version is composed of three numbers: X.Y.Z where X is the major version, Y is the minor version and Z is the patch version.

A tag is a label that is applied to a version. It can be used to identify a version as a beta, or other version.

Combined together, a version and a tag can be used to identify a package release.

Example:

  • v1.0.0 is the first release of the 1.0.0 version.
  • v1.0.0-beta1 is the first beta release of the 1.0.0 version.

We have some rules in place to make sure that the version numbers and tags are correct.

Publishing packages

Publishing packages is done by running the Publish packages workflow.

  1. Run the workflow with the appropriate git tag.
  2. Validate that the workflow published the packages to the npm registry.

To run a release in github (for main and beta branches):

  1. Create a new release on github using the URL provided at the end of the workflow.
  2. Add the release notes
  3. Update CHANGELOG.md

Latest releases

Latest releases are stable and production ready.

We release packages under the latest npm tag using the following format:

  • github tag: vX.Y.Z
  • version: X.Y.Z
  • npm tag: latest

Latest releases are only published from the main branch.

Beta releases

Beta releases are near-stable and close to production ready.

We release packages under the beta npm tag using the following format:

  • github tag: vX.Y.Z-betaN
  • version: X.Y.Z-betaN
  • npm tag: beta

Beta releases are only published from the beta branch.

Other releases

Other releases are not stable and not production ready.

We release packages under the desired npm tag using the following format:

  • github tag: vX.Y.Z-<tag>N
  • version: X.Y.Z-<tag>N
  • npm tag: <tag>

Other releases are published from any branch.