You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This assumes a `GITHUB_TOKEN` environment variable is exported in your environment. This needs
49
47
to be a GitHub personal access token with the `read:packages` scope set on it.
50
48
51
-
3. Install NPM dependencies, Core Tools and build the TypeScript
49
+
3. Install NPM dependencies and build the TypeScript
52
50
53
51
```sh
54
52
npm install
@@ -198,59 +196,32 @@ Before running a release, check the following:
198
196
199
197
4. [Release Assessment](https://armh.sharepoint.com/sites/pwa/PJ1000480/SitePages/Assessments.aspx) for `CMSIS Solution Extension` is approved.
200
198
201
-
### Release workflow
199
+
## Release versioning
202
200
203
-
Use GitHub Actions workflow dispatch to trigger a release:
201
+
This repository follows the VS Code Marketplace pre-release recommendation:
204
202
205
-
1. Navigate to <https://github.com/Arm-Debug/vscode-cmsis-csolution/actions/workflows/ci.yml>,
206
-
then click "Run workflow"
207
-
2. Select the main branch
208
-
3. Select type of new version, e.g. 'Minor'
209
-
4. Select "Skip public publishing jobs'if the version should be created on GitHub but NOT being
210
-
published to Marketplace
211
-
5. Click "Run workflow"
203
+
- **Odd** minor versions (`x.1.z`, `x.3.z`, ...) are pre-releases.
204
+
- **Even** minor versions (`x.0.z`, `x.2.z`, ...) are full releases.
212
205
213
-
Notes
206
+
To enforce this consistently, both packaging and publishing use `scripts/package.ts`, which:
214
207
215
-
- When 'Pre-release' is selected, the version is either:
216
-
- incremented according the latest published pre-release (patch +1), if it is greater than the current version
217
-
- incremented according the the current version, newMinorVersion is always an odd number (including 0), e.g. 0,1,3,...
218
-
- When 'Major', 'Minor' or 'Patch' is selected, the version will be increased and the new version
219
-
number will be committed to package.json. If a second release is triggered, it will also be
220
-
increased, regardless of being pushed to marketplace or not.
221
-
- 'Major' increments major version
222
-
- 'Minor' increments to an even number, e.g. 0,2,4,...
223
-
- 'Patch' increments patch version
224
-
- see [vscode-actions](https://github.com/Arm-Debug/vscode-actions/blob/main/calculate-new-version/src/bump-version.ts)
208
+
- checks the current `package.json` version minor value.
209
+
- automatically adds `--pre-release` to `vsce package` for odd minor versions.
225
210
226
-
Github actions will then
211
+
Use the following commands:
227
212
228
-
- Bump the versions in the package.json files
229
-
- Add the new version to the CHANGELOG.md, and move all changes listed under "Unreleased" to the new version.
230
-
- Commit and push the version and changelog updates
231
-
- Build the VSIX package
232
-
- Create a GitHub release with the VSIX package
233
-
- Publish the package on [Open VSX](https://open-vsx.org/extension/arm/cmsis-csolution) and [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=Arm.cmsis-csolution)
234
-
- Publish the API types to the Arm-Debug GitHub Packages npm registry
235
-
- Sync the docs to [ARM-software/vscode-cmsis-csolution](https://github.com/ARM-software/vscode-cmsis-csolution)
236
-
237
-
After publishing, check that the new version is installable in VSCode and docs for the new version
238
-
have been synced to Arm-Software.
239
-
240
-
### Publishing to VS Code Marketplace
241
-
242
-
The marketplace access token is controlled by the [DSG-OTG](https://dev.azure.com/DSG-OTG)
243
-
organization in Azure. It is available in CI as an Arm-Debug GitHub organization secret. This must
0 commit comments