-
Notifications
You must be signed in to change notification settings - Fork 125
Release
Andrew Scott edited this page Nov 16, 2022
·
39 revisions
This repository contains two releasable items:
-
@angular/language-server NPM package
This is the LSP server integrated into other clients like vim, emacs, Eclipse, etc. -
Angular.ng-templatevscode extension
This is published to the Visual Studio Marketplace.
- Determine the next version (
X.Y.Z) and the appropriate git branch.
If publishing a patch version, checkout the patch branch, otherwise checkout themainbranch. - Set a
releaseVersionvariable so you can more easily copy-paste commands:releaseVersion=X.Y.Z
- Update
versioninpackage.jsontoreleaseVersion. - Manually update the version of @angular/language-service in
package.jsonandserver/package.jsonto the latest. The version in both files must be the same. - Look at the CHANGELOG in
@angular/angularfor commits related to language service, and copy them to this repo's CHANGELOG. - Append notable commits in this repository, particularly fixes and features, to the CHANGELOG
git log --pretty=format:'%s (%h)' vX.Y.Z-1..HEAD - Build the NPM package and vscode extension
./scripts/build.sh package.json
- Do a quick check to make sure everything works as expected.
- Install the
.vsixthrough either vscode or runcode --install-extension bazel-bin/npm/ng-template.vsix
- Open the test project in vscode
- Execute a few operations such as go to definition, hover, check semantics, and auto-complete.
- Install the
- Check out a release branch, commit the changes:
Create a PR, get approval, wait for CI to be green, then merge the PR into upstream.
git checkout -b ${releaseVersion}-release git commit -am "release: v${releaseVersion}" git push <your remote>
- Check out the release branch again, tag the release, and push to upstream
git checkout - git tag v${releaseVersion} git push upstream --tags - Make sure you're logged into Angular NPM account. If not, run the following command:
npm login --registry https://wombat-dressing-room.appspot.com --no-browser
- Release
@angular/language-servernpm publish bazel-bin/npm/server --access public
- Make sure you're logged into Azure DevOps account. If not, follow the instructions below.
- Release vscode extension from the root of the repository.
yarn vsce publish --packagePath bazel-bin/npm/ng-template.vsix
- Update release notes in github.
- Go to the Releases section
- Navigate to the release that was published in the previous step.
- Click
edit release - Copy the text added to the CHANGELOG
- Upload the
.vsixfile. - Click
Update Release
- [optional] Read the overall instructions in vscode's documentation
- To obtain the security token, go to go/valentine.
- Search for
Angular vscode marketplace - Copy the Personal Access Token (PAT)
- Run
yarn vsce login Angular - Paste the PAT