Skip to content

Commit 44a9bac

Browse files
josephperrottalan-agius4
authored andcommitted
build: update release process to reflect including updates to package.json
Now included in the release process is updating the root package.json version.
1 parent ec387bf commit 44a9bac

File tree

3 files changed

+29
-5
lines changed

3 files changed

+29
-5
lines changed

docs/process/release.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,8 @@ As commits are cherry-picked when PRs are merged, creating the release should be
106106

107107
**Make sure you update the package versions in `packages/schematics/angular/utility/latest-versions.ts`.**
108108

109+
Update the version in the root package.json file to reflect the new release version.
110+
109111
```bash
110112
git commit -a -m 'release: vXX'
111113
git tag -a 'vXX' -m 'release: tag vXX'
@@ -116,7 +118,7 @@ we just created. Double check that the versions are correct by running the
116118
following command.
117119

118120
```bash
119-
yarn admin packages --version
121+
yarn admin packages --releaseCheck
120122
```
121123

122124
Now push the commit and the tag to the upstream repository. **Make sure to use

lib/packages.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,12 @@ export interface PackageInfo {
4141
export type PackageMap = { [name: string]: PackageInfo };
4242

4343

44+
export function loadRootPackageJson() {
45+
return require('../package.json');
46+
}
47+
4448
function loadPackageJson(p: string) {
45-
const root = require('../package.json');
49+
const root = loadRootPackageJson();
4650
const pkg = require(p);
4751

4852
for (const key of Object.keys(root)) {

scripts/packages.ts

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,31 @@
77
*/
88
// tslint:disable:no-implicit-dependencies
99
import { logging } from '@angular-devkit/core';
10+
import chalk from 'chalk';
1011

12+
const { packages, loadRootPackageJson, stableToExperimentalVersion } = require('../lib/packages');
1113

12-
const { packages } = require('../lib/packages');
1314

15+
export default function(args: { json: boolean, version: boolean, releaseCheck: boolean }, logger: logging.Logger) {
1416

15-
export default function(args: { json: boolean, version: boolean }, logger: logging.Logger) {
16-
if (args.json) {
17+
if (args.releaseCheck) {
18+
const {version: root} = loadRootPackageJson();
19+
const experimental = stableToExperimentalVersion(root);
20+
logger.info(`The expected version for the release is ${chalk.bold(root)} (${experimental})`);
21+
logger.info(
22+
Object.keys(packages)
23+
.filter(name => !packages[name].private)
24+
.map(name => {
25+
let result = chalk.red('✘');
26+
const version = packages[name].version;
27+
if ([root, experimental].includes(version)) {
28+
result = chalk.green('✓');
29+
}
30+
31+
return ` ${result} ${name}@${packages[name].version}`;
32+
})
33+
.join('\n'));
34+
} else if (args.json) {
1735
logger.info(JSON.stringify(packages, null, 2));
1836
} else {
1937
logger.info(

0 commit comments

Comments
 (0)