- 
                Notifications
    
You must be signed in to change notification settings  - Fork 125
 
Release
        Alex Rickabaugh edited this page Feb 23, 2021 
        ·
        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 themasterbranch. - Set a 
releaseVersionvariable so you can more easily copy-paste commands:releaseVersion=X.Y.Z
 - Update 
versioninpackage.jsontoreleaseVersion. - Update 
versionserver/package.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. - Update 
yarn.lockandnode_modulesto use the version of@angular/language-servicespecified in previous step.rm -rf node_modules server/node_modules yarn install
- If you see the error 
Error installing vscode.d.ts: TypeError: Cannot set property 'Authorization' of nulltry runningunset GITHUB_TOKEN, then installing again. TheGITHUB_TOKENwill conflict with the installation of vscode. 
 - If you see the error 
 - Build the NPM package and vscode extension
./scripts/build.sh
 - Do a quick check to make sure everything works as expected.
- Install the 
.vsixthrough either vscode or runcode --install-extension dist/npm/ng-template-${releaseVersion}.vsix - Open the test project in vscode
 - Execute a few operations such as go to definition, hover, check semantics, and auto-complete.
 - Remember to try both View Engine and Ivy mode
 
 - Install the 
 - Commit the changes, tag the release, and push to upstream:
git commit -am "release: v${releaseVersion}" git tag v${releaseVersion} git push upstream && 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
 - Release 
@angular/language-servernpm publish dist/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 dist/npm/ng-template-${releaseVersion}.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