From 5f77581986e6fc1ec90a4408f62950b9abda0e1c Mon Sep 17 00:00:00 2001 From: Cameron Yick Date: Thu, 29 Jul 2021 21:19:40 -0400 Subject: [PATCH 1/3] ci(github-actions): switch default branch from main to next sets up a 2-branch release process, as recommended by the auto docs --- .github/workflows/codeql-analysis.yml | 4 ++-- .github/workflows/node.js.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 1cffbe7..3fd3977 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -13,10 +13,10 @@ name: "CodeQL" on: push: - branches: [ main ] + branches: [ next ] pull_request: # The branches below must be a subset of the branches above - branches: [ main ] + branches: [ next ] schedule: - cron: '40 23 * * 1' diff --git a/.github/workflows/node.js.yml b/.github/workflows/node.js.yml index ea413c2..d66262c 100644 --- a/.github/workflows/node.js.yml +++ b/.github/workflows/node.js.yml @@ -5,9 +5,9 @@ name: Node.js CI on: push: - branches: [ main ] + branches: [ next ] pull_request: - branches: [ main ] + branches: [ next ] jobs: build: From e305329b298afd7878192b204f1313d5a714ab60 Mon Sep 17 00:00:00 2001 From: Cameron Yick Date: Thu, 29 Jul 2021 21:25:44 -0400 Subject: [PATCH 2/3] docs(publishing): describe how the release process works, based on similar content for vega tooltip --- CONTRIBUTING.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6b9965b..4e9349a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -25,3 +25,15 @@ yarn run commit ``` Consistent formatting allows us to keep the [changelog](./CHANGELOG.md) up to date automatically, and ensures future developers have a readable timeline of changes over time. For more information, see the [commitizen project page](https://github.com/commitizen/cz-cli). + +## How Publishing works + +## Publishing + +Publishing is handled by a 2-branch [pre-release process](https://intuit.github.io/auto/docs/generated/shipit#next-branch-default), configured in `release.yml`. All changes should be based off of the default `next` branch. Changes are published when a `release` tag is included on the PR. + +- To prevent a change from creating a release, use the `skip-release` label. +- PRs made into the default branch are deployed to the `next` pre-release tag on NPM. The result can be installed with `npm install @nteract/data-explorer@next`. + - When merging into `next`, please use the `create a merge commit` strategy. If `rebase` is used, auto won't be able to detect which PR introduced a particular set of commits.. +- To release a new stable version, open a PR from `next` into `stable` using this [compare link](https://github.com/nteract/data-explorer/compare/stable...next). + - When merging from `next` into `stable`, please use the `create a merge commit` strategy. From bd122e080b7df9ad5a52dad0a6349bf4fa0157c6 Mon Sep 17 00:00:00 2001 From: Cameron Yick Date: Thu, 29 Jul 2021 21:33:08 -0400 Subject: [PATCH 3/3] ci(publishing): set up separate channels for publishing to next vs release tags --- .autorc.json | 3 ++- CONTRIBUTING.md | 6 +++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.autorc.json b/.autorc.json index a31946b..a1a7f14 100644 --- a/.autorc.json +++ b/.autorc.json @@ -5,5 +5,6 @@ "first-time-contributor", "released" ], - "onlyPublishWithReleaseLabel": true + "baseBranch": "stable", + "prereleaseBranches": ["next"] } diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 4e9349a..2ebdedd 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -30,10 +30,10 @@ Consistent formatting allows us to keep the [changelog](./CHANGELOG.md) up to da ## Publishing -Publishing is handled by a 2-branch [pre-release process](https://intuit.github.io/auto/docs/generated/shipit#next-branch-default), configured in `release.yml`. All changes should be based off of the default `next` branch. Changes are published when a `release` tag is included on the PR. +Publishing is handled by a 2-branch [pre-release process](https://intuit.github.io/auto/docs/generated/shipit#next-branch-default), configured in `release.yml`. All changes should be based off of the default `next` branch. Changes are automatically published to the `next` channel on NPM unless set to ignore via a `skip-release` Github label. + -- To prevent a change from creating a release, use the `skip-release` label. - PRs made into the default branch are deployed to the `next` pre-release tag on NPM. The result can be installed with `npm install @nteract/data-explorer@next`. - When merging into `next`, please use the `create a merge commit` strategy. If `rebase` is used, auto won't be able to detect which PR introduced a particular set of commits.. -- To release a new stable version, open a PR from `next` into `stable` using this [compare link](https://github.com/nteract/data-explorer/compare/stable...next). +- To release a new `stable` on NPM (aka the `latest` tag), open a PR from `next` into `stable` using this [compare link](https://github.com/nteract/data-explorer/compare/stable...next). - When merging from `next` into `stable`, please use the `create a merge commit` strategy.