Match Angular Versions
ActionsThis GitHub Action (written in JavaScript) modifies the root package.json
of a project and replaces the version of all Angular related dependencies for given base version.
When necessary it updates the angular.json to use the correct builder.
Create a workflow .yml
file in your repositories .github/workflows
directory. An example workflow is available below. For more information, reference the GitHub Help Documentation for Creating a workflow file.
angular-version
: The base Angular version used to match the dependency version. Ex: 8.0.x, 10.0.x. To check the full list of supported versions, see supported versions.root-path
: The path to the root folder of the project where thepackage.json
andangular.json
files are located. Defaults to./
.
name: CI workflow
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
angular-version:
- 6.0.x
- 6.1.x
- 7.0.x
- 7.1.x
- 7.2.x
- 8.0.x
- 8.1.x
- 8.2.x
- 9.0.x
- 9.1.x
- 10.0.x
- 10.1.x
- 10.2.x
- 11.0.x
- 11.1.x
- 11.2.x
- 12.0.x
- 12.1.x
- 12.2.x
- 13.0.x
steps:
- uses: actions/checkout@v2
- name: Use Node.js 12.x
uses: actions/setup-node@v2
with:
node-version: 12.x
- name: Use Angular ${{ matrix.angular-version }}
uses: ngworker/angular-versions-action@v4
with:
angular-version: ${{ matrix.angular-version }}
- run: yarn install
- run: yarn lint
- run: yarn build
- run: yarn test
This example use the github matrix to build, lint and test your code against different versions of Angular
. This should be specially useful for library authors.
At the moment this actions supports a limited set of Angular versions listed below.
- 6.0.x
- 6.1.x
- 7.0.x
- 7.1.x
- 7.2.x
- 8.0.x
- 8.1.x
- 8.2.x
- 9.0.x
- 9.1.x
- 10.0.x
- 10.1.x
- 10.2.x
- 11.0.x
- 11.1.x
- 11.2.x
- 12.0.x
- 12.1.x
- 12.2.x
- 13.0.x
The following packages are managed by this action:
@angular/animations
@angular/cdk
@angular/cli
@angular/common
@angular/compiler
@angular/compiler-cli
@angular/core
@angular-builders/jest
@angular-devkit/build-angular
@angular-devkit/build-ng-packagr
@angular-devkit/schematics-cli
@angular/elements
@angular/forms
@angular/google-maps
@angular/material
@angular/platform-browser
@angular/platform-browser-dynamic
@angular/router
@angular/youtube-player
@types/node
codelyzer
ng-packagr
rxjs
tsickle
tslib
tslint
ts-node
typescript
zone.js
- Replace the
angular.json
library builder (ng-packagr) based on the angular version.- Use
@angular-devkit/build-ng-packagr:build
for version prior (<) Angular 10.1 - Use
@angular-devkit/build-angular:ng-packagr
for version post (>=) Angular 10.1
- Use
- Remove
allowedCommonJsDependencies
options on Angular versions under 10
We would love you to contribute to @ngworker/angular-versions-action
, pull requests are welcome! Please see the CONTRIBUTING.md for more information.
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
The scripts and documentation in this project are released under the MIT License
Match Angular Versions is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.
About
Match Angular Versions is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.