Skip to content

Latest commit

 

History

History
64 lines (47 loc) · 2.76 KB

File metadata and controls

64 lines (47 loc) · 2.76 KB

Contributions

Contributing

  1. Fork the repository
  2. Clone your forked repository
  3. Navigate to the /packages folder
  4. Install dependencies using pnpm:
    pnpm install
  5. Build the project:
    pnpm build
  6. Make your changes
  7. Commit and push your changes
  8. Create a pull request

Please ensure that you have pnpm installed on your system before contributing.

Alpha releases

Alpha releases provide early access to new features and fixes for testing purposes. They are automatically published to NPM under the alpha dist-tag when specific conditions are met.

How to Trigger an Alpha Release:

  1. Create a feature branch with a name starting with alpha/ (e.g., alpha/my-new-feature).
  2. Make your code changes, commit them, and push the branch to your fork.
  3. Create a Pull Request (PR) from your alpha/* branch targeting the master branch of the main repository.

Once the PR is opened and the required tests pass, the Alpha Release workflow will automatically run.

The Workflow:

  • The workflow checks out your code.
  • It determines the base version from lerna.json.
  • It calculates the alpha version using the pattern: {base_version}-alpha.p{PR_NUMBER}.{SHORT_GIT_SHA}.
    • Example: If the base version is 1.2.3, the PR number is 456, and the short commit SHA is abcdef0, the alpha version will be 1.2.3-alpha.p456.abcdef0.
  • It modifies the lerna.json and package package.json files locally within the workflow runner to use this alpha version.
  • It builds all packages using these modified versions.
  • It publishes the packages to NPM with the --dist-tag alpha flag.
  • It adds or updates a comment on the PR with the published version number and a link to the NPM package page.

Important: The version bump happens only within the workflow run to facilitate the build and publish. The changes to lerna.json and package.json are not committed or pushed back to your PR branch.

How to Skip an Alpha Release for a Specific Commit:

If you need to push minor changes (like documentation updates or chore tasks) to your alpha/* branch without triggering a new NPM publish, include the exact string [skip alpha] anywhere in your commit message for the latest commit you push.

git commit -m "docs: update readme [skip alpha]"

The workflow will still run the tests, but the check-commit-message job will detect the skip string, and the publish-alpha job (which handles versioning, building, and publishing) will be skipped.

Accessing Alpha Versions:

To install an alpha version of a package, use the @alpha tag:

npm install @streamflow/common@alpha
# or specific version
npm install @streamflow/common@1.2.3-alpha.p456.abcdef0