feat(core): drop support for Node.js 12 (#45286)

Node.js v12 will become EOL on 2022-04-30. As a result, Angular CLI v14 will no longer support Node.js v12.

BREAKING CHANGE:

Support for Node.js v12 has been removed as it will become EOL on 2022-04-30. Please use Node.js v14.15 or later.

PR Close #45286
This commit is contained in:
Alan Agius
2022-03-07 16:43:13 +01:00
committed by Andrew Kushnir
parent f58b8a94d4
commit 6eaaefd22e
29 changed files with 33 additions and 54 deletions
+1 -1
View File
@@ -5,7 +5,7 @@
"author": "angular",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"dependencies": {
"tslib": "^2.3.0"
+1 -1
View File
@@ -5,7 +5,7 @@
"author": "angular",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"bin": {
"api-extractor": "./src/api-extractor/index.js",
+1 -1
View File
@@ -5,7 +5,7 @@
"author": "angular",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"locales": "locales",
"dependencies": {
@@ -82,6 +82,6 @@ export const sendMessageToWorker = (workerId: number, msg: MessageToWorker): Pro
}
return new Promise((resolve, reject) => {
worker.send(msg, (err: Error|null) => (err === null) ? resolve() : reject(err));
worker.send(msg, undefined, (err: Error|null) => (err === null) ? resolve() : reject(err));
});
};
+1 -1
View File
@@ -79,7 +79,7 @@
],
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"bugs": {
"url": "https://github.com/angular/angular/issues"
+1 -1
View File
@@ -5,7 +5,7 @@
"author": "angular",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"dependencies": {
"tslib": "^2.3.0"
+1 -1
View File
@@ -5,7 +5,7 @@
"author": "angular",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"exports": {
"./schematics/*": {
@@ -11,9 +11,6 @@ import '@angular/compiler';
import * as fs from 'fs';
import * as path from 'path';
const UTF8 = {
encoding: 'utf-8'
};
const PACKAGE = 'angular/packages/core/test/bundling/animations';
describe('treeshaking with uglify', () => {
@@ -22,7 +19,7 @@ describe('treeshaking with uglify', () => {
// always pass)
const contentPath = require.resolve(path.join(PACKAGE, 'bundle.debug.min.js'));
beforeAll(() => {
content = fs.readFileSync(contentPath, UTF8);
content = fs.readFileSync(contentPath, {encoding: 'utf-8'});
});
it('should drop unused TypeScript helpers', () => {
@@ -12,16 +12,13 @@ import {withBody} from '@angular/private/testing';
import * as fs from 'fs';
import * as path from 'path';
const UTF8 = {
encoding: 'utf-8'
};
const PACKAGE = 'angular/packages/core/test/bundling/cyclic_import';
describe('treeshaking with uglify', () => {
let content: string;
const contentPath = require.resolve(path.join(PACKAGE, 'bundle.debug.min.js'));
beforeAll(() => {
content = fs.readFileSync(contentPath, UTF8);
content = fs.readFileSync(contentPath, {encoding: 'utf-8'});
});
describe('functional test in domino', () => {
@@ -11,9 +11,6 @@ import '@angular/compiler';
import * as fs from 'fs';
import * as path from 'path';
const UTF8 = {
encoding: 'utf-8'
};
const PACKAGE = 'angular/packages/core/test/bundling/forms_reactive';
describe('treeshaking with uglify', () => {
@@ -22,7 +19,7 @@ describe('treeshaking with uglify', () => {
// always pass)
const contentPath = require.resolve(path.join(PACKAGE, 'bundle.debug.min.js'));
beforeAll(() => {
content = fs.readFileSync(contentPath, UTF8);
content = fs.readFileSync(contentPath, {encoding: 'utf-8'});
});
it('should drop unused TypeScript helpers', () => {
@@ -11,9 +11,6 @@ import '@angular/compiler';
import * as fs from 'fs';
import * as path from 'path';
const UTF8 = {
encoding: 'utf-8'
};
const PACKAGE = 'angular/packages/core/test/bundling/forms_template_driven';
describe('treeshaking with uglify', () => {
@@ -22,7 +19,7 @@ describe('treeshaking with uglify', () => {
// always pass)
const contentPath = require.resolve(path.join(PACKAGE, 'bundle.debug.min.js'));
beforeAll(() => {
content = fs.readFileSync(contentPath, UTF8);
content = fs.readFileSync(contentPath, {encoding: 'utf-8'});
});
it('should drop unused TypeScript helpers', () => {
@@ -12,16 +12,13 @@ import {withBody} from '@angular/private/testing';
import * as fs from 'fs';
import * as path from 'path';
const UTF8 = {
encoding: 'utf-8'
};
const PACKAGE = 'angular/packages/core/test/bundling/hello_world';
describe('treeshaking with uglify', () => {
let content: string;
const contentPath = require.resolve(path.join(PACKAGE, 'bundle.debug.min.js'));
beforeAll(() => {
content = fs.readFileSync(contentPath, UTF8);
content = fs.readFileSync(contentPath, {encoding: 'utf-8'});
});
it('should drop unused TypeScript helpers', () => {
@@ -11,16 +11,13 @@ import '@angular/compiler';
import * as fs from 'fs';
import * as path from 'path';
const UTF8 = {
encoding: 'utf-8'
};
const PACKAGE = 'angular/packages/core/test/bundling/hello_world_r2';
describe('treeshaking with uglify', () => {
let content: string;
const contentPath = require.resolve(path.join(PACKAGE, 'bundle.debug.min.js'));
beforeAll(() => {
content = fs.readFileSync(contentPath, UTF8);
content = fs.readFileSync(contentPath, {encoding: 'utf-8'});
});
it('should drop unused TypeScript helpers', () => {
@@ -11,9 +11,6 @@ import '@angular/compiler';
import * as fs from 'fs';
import * as path from 'path';
const UTF8 = {
encoding: 'utf-8'
};
const PACKAGE = 'angular/packages/core/test/bundling/router';
describe('treeshaking with uglify', () => {
@@ -22,7 +19,7 @@ describe('treeshaking with uglify', () => {
// always pass)
const contentPath = require.resolve(path.join(PACKAGE, 'bundle.debug.min.js'));
beforeAll(() => {
content = fs.readFileSync(contentPath, UTF8);
content = fs.readFileSync(contentPath, {encoding: 'utf-8'});
});
it('should drop unused TypeScript helpers', () => {
+1 -1
View File
@@ -5,7 +5,7 @@
"author": "angular",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"dependencies": {
"tslib": "^2.3.0"
+1 -1
View File
@@ -5,7 +5,7 @@
"author": "angular",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"dependencies": {
"tslib": "^2.3.0"
+1 -1
View File
@@ -7,7 +7,7 @@
"author": "angular",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"repository": {
"type": "git",
+1 -1
View File
@@ -16,7 +16,7 @@
"author": "angular",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"repository": {
"type": "git",
@@ -5,7 +5,7 @@
"author": "angular",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"dependencies": {
"tslib": "^2.3.0"
+1 -1
View File
@@ -5,7 +5,7 @@
"author": "angular",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"dependencies": {
"tslib": "^2.3.0"
+1 -1
View File
@@ -5,7 +5,7 @@
"author": "angular",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"peerDependencies": {
"@angular/animations": "0.0.0-PLACEHOLDER",
+1 -1
View File
@@ -14,7 +14,7 @@
"author": "angular",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"bugs": {
"url": "https://github.com/angular/angular/issues"
+1 -1
View File
@@ -5,7 +5,7 @@
"author": "angular",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"exports": {
"./ngsw-worker.js": {
+1 -1
View File
@@ -5,7 +5,7 @@
"author": "angular",
"license": "MIT",
"engines": {
"node": "^12.20.0 || ^14.15.0 || >=16.10.0"
"node": "^14.15.0 || >=16.10.0"
},
"dependencies": {
"tslib": "^2.3.0"