Revert "feat(core): update to next version of angular deps"
This reverts commit bd230e0530e690b2ae7896a876510f62002943c8.
This commit is contained in:
parent
5229529e03
commit
f816fc424d
@ -52,11 +52,11 @@ Test runner to use for end to end (e2e) tests
|
|||||||
|
|
||||||
### enableIvy
|
### enableIvy
|
||||||
|
|
||||||
Default: `true`
|
Default: `false`
|
||||||
|
|
||||||
Type: `boolean`
|
Type: `boolean`
|
||||||
|
|
||||||
Create a new app that uses the Ivy rendering engine.
|
**EXPERIMENTAL** True to create a new app that uses the Ivy rendering engine.
|
||||||
|
|
||||||
### inlineStyle
|
### inlineStyle
|
||||||
|
|
||||||
|
|||||||
@ -52,11 +52,11 @@ Test runner to use for end to end (e2e) tests
|
|||||||
|
|
||||||
### enableIvy
|
### enableIvy
|
||||||
|
|
||||||
Default: `true`
|
Default: `false`
|
||||||
|
|
||||||
Type: `boolean`
|
Type: `boolean`
|
||||||
|
|
||||||
Create a new app that uses the Ivy rendering engine.
|
**EXPERIMENTAL** True to create a new app that uses the Ivy rendering engine.
|
||||||
|
|
||||||
### inlineStyle
|
### inlineStyle
|
||||||
|
|
||||||
|
|||||||
@ -52,11 +52,11 @@ Test runner to use for end to end (e2e) tests
|
|||||||
|
|
||||||
### enableIvy
|
### enableIvy
|
||||||
|
|
||||||
Default: `true`
|
Default: `false`
|
||||||
|
|
||||||
Type: `boolean`
|
Type: `boolean`
|
||||||
|
|
||||||
Create a new app that uses the Ivy rendering engine.
|
**EXPERIMENTAL** True to create a new app that uses the Ivy rendering engine.
|
||||||
|
|
||||||
### inlineStyle
|
### inlineStyle
|
||||||
|
|
||||||
|
|||||||
@ -63,13 +63,13 @@ forEachCli(() => {
|
|||||||
console.log(
|
console.log(
|
||||||
`The current es2015 bundle size is ${es2015BundleSize / 1000} KB`
|
`The current es2015 bundle size is ${es2015BundleSize / 1000} KB`
|
||||||
);
|
);
|
||||||
expect(es2015BundleSize).toBeLessThanOrEqual(125000);
|
expect(es2015BundleSize).toBeLessThanOrEqual(160000);
|
||||||
|
|
||||||
const es5BundleSize = getSize(
|
const es5BundleSize = getSize(
|
||||||
tmpProjPath(`dist/apps/my-dir/${myapp}/main-es5.js`)
|
tmpProjPath(`dist/apps/my-dir/${myapp}/main-es5.js`)
|
||||||
);
|
);
|
||||||
console.log(`The current es5 bundle size is ${es5BundleSize / 1000} KB`);
|
console.log(`The current es5 bundle size is ${es5BundleSize / 1000} KB`);
|
||||||
expect(es5BundleSize).toBeLessThanOrEqual(150000);
|
expect(es5BundleSize).toBeLessThanOrEqual(175000);
|
||||||
|
|
||||||
// running tests for the app
|
// running tests for the app
|
||||||
expectTestsPass(await runCLIAsync(`test my-dir-${myapp} --no-watch`));
|
expectTestsPass(await runCLIAsync(`test my-dir-${myapp} --no-watch`));
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { stringUtils } from '@nrwl/workspace';
|
import { capitalize } from '@nrwl/workspace/src/utils/strings';
|
||||||
import * as http from 'http';
|
import * as http from 'http';
|
||||||
import {
|
import {
|
||||||
checkFilesExist,
|
checkFilesExist,
|
||||||
@ -61,9 +61,7 @@ module.exports = {
|
|||||||
`
|
`
|
||||||
import dynamic from 'next/dynamic';
|
import dynamic from 'next/dynamic';
|
||||||
const DynamicComponent = dynamic(
|
const DynamicComponent = dynamic(
|
||||||
() => import('@proj/${libName}').then(d => d.${stringUtils.capitalize(
|
() => import('@proj/${libName}').then(d => d.${capitalize(libName)})
|
||||||
libName
|
|
||||||
)})
|
|
||||||
);
|
);
|
||||||
` + readFile(mainPath)
|
` + readFile(mainPath)
|
||||||
);
|
);
|
||||||
|
|||||||
@ -132,7 +132,7 @@ forEachCli('angular', () => {
|
|||||||
expect(updatedAngularCLIJson.projects.proj.architect.build).toEqual({
|
expect(updatedAngularCLIJson.projects.proj.architect.build).toEqual({
|
||||||
builder: '@angular-devkit/build-angular:browser',
|
builder: '@angular-devkit/build-angular:browser',
|
||||||
options: {
|
options: {
|
||||||
aot: true,
|
aot: false,
|
||||||
outputPath: 'dist/apps/proj',
|
outputPath: 'dist/apps/proj',
|
||||||
index: 'apps/proj/src/index.html',
|
index: 'apps/proj/src/index.html',
|
||||||
main: 'apps/proj/src/main.ts',
|
main: 'apps/proj/src/main.ts',
|
||||||
@ -167,6 +167,7 @@ forEachCli('angular', () => {
|
|||||||
sourceMap: false,
|
sourceMap: false,
|
||||||
extractCss: true,
|
extractCss: true,
|
||||||
namedChunks: false,
|
namedChunks: false,
|
||||||
|
aot: true,
|
||||||
extractLicenses: true,
|
extractLicenses: true,
|
||||||
vendorChunk: false,
|
vendorChunk: false,
|
||||||
buildOptimizer: true
|
buildOptimizer: true
|
||||||
|
|||||||
@ -128,7 +128,7 @@ forEachCli(currentCLIName => {
|
|||||||
done();
|
done();
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}, 120000);
|
}, 60000);
|
||||||
|
|
||||||
it('should have correct ts options for nest application', async () => {
|
it('should have correct ts options for nest application', async () => {
|
||||||
if (currentCLIName === 'angular') {
|
if (currentCLIName === 'angular') {
|
||||||
@ -157,7 +157,7 @@ forEachCli(currentCLIName => {
|
|||||||
); // respects "extends" inside tsconfigs
|
); // respects "extends" inside tsconfigs
|
||||||
|
|
||||||
expect(config.options.emitDecoratorMetadata).toEqual(true); // required by nest to function properly
|
expect(config.options.emitDecoratorMetadata).toEqual(true); // required by nest to function properly
|
||||||
}, 120000);
|
}, 60000);
|
||||||
|
|
||||||
it('should be able to generate a nest application', async done => {
|
it('should be able to generate a nest application', async done => {
|
||||||
ensureProject();
|
ensureProject();
|
||||||
@ -221,7 +221,7 @@ forEachCli(currentCLIName => {
|
|||||||
done();
|
done();
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}, 120000);
|
}, 60000);
|
||||||
|
|
||||||
it('should be able to generate an empty application', async () => {
|
it('should be able to generate an empty application', async () => {
|
||||||
ensureProject();
|
ensureProject();
|
||||||
@ -242,6 +242,6 @@ forEachCli(currentCLIName => {
|
|||||||
cwd: tmpProjPath()
|
cwd: tmpProjPath()
|
||||||
}).toString();
|
}).toString();
|
||||||
expect(result).toContain('Hello World!');
|
expect(result).toContain('Hello World!');
|
||||||
}, 120000);
|
}, 60000);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import { packagesWeCareAbout } from '../packages/workspace/src/command-line/report';
|
import { packagesWeCareAbout } from '@nrwl/workspace/src/command-line/report';
|
||||||
import { ensureProject, forEachCli, runCommand } from './utils';
|
import { ensureProject, forEachCli, runCommand } from './utils';
|
||||||
|
|
||||||
const testTimeout = 120000;
|
const testTimeout = 120000;
|
||||||
|
|||||||
14
e2e/utils.ts
14
e2e/utils.ts
@ -83,17 +83,6 @@ export function runYarnInstall(silent: boolean = true) {
|
|||||||
return install ? install.toString() : '';
|
return install ? install.toString() : '';
|
||||||
}
|
}
|
||||||
|
|
||||||
export function runNgcc(silent: boolean = true) {
|
|
||||||
const install = execSync(
|
|
||||||
'node ./node_modules/@angular/compiler-cli/ngcc/main-ngcc.js',
|
|
||||||
{
|
|
||||||
cwd: tmpProjPath(),
|
|
||||||
...(silent ? { stdio: ['ignore', 'ignore', 'ignore'] } : {})
|
|
||||||
}
|
|
||||||
);
|
|
||||||
return install ? install.toString() : '';
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Run the `new` command for the currently selected CLI
|
* Run the `new` command for the currently selected CLI
|
||||||
*
|
*
|
||||||
@ -160,8 +149,6 @@ function default_1(factoryOptions = {}) {
|
|||||||
exports.default = default_1;`
|
exports.default = default_1;`
|
||||||
);
|
);
|
||||||
|
|
||||||
runNgcc();
|
|
||||||
|
|
||||||
execSync(`mv ${tmpProjPath()} ${tmpBackupProjPath()}`);
|
execSync(`mv ${tmpProjPath()} ${tmpBackupProjPath()}`);
|
||||||
}
|
}
|
||||||
execSync(`cp -a ${tmpBackupProjPath()} ${tmpProjPath()}`);
|
execSync(`cp -a ${tmpBackupProjPath()} ${tmpProjPath()}`);
|
||||||
@ -251,7 +238,6 @@ export function copyMissingPackages(): void {
|
|||||||
'document-register-element',
|
'document-register-element',
|
||||||
|
|
||||||
'@angular/forms',
|
'@angular/forms',
|
||||||
'@storybook',
|
|
||||||
|
|
||||||
// For web builder with inlined build-angular
|
// For web builder with inlined build-angular
|
||||||
'source-map',
|
'source-map',
|
||||||
|
|||||||
52
package.json
52
package.json
@ -27,25 +27,25 @@
|
|||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"axios": "^0.19.0",
|
"axios": "^0.19.0",
|
||||||
"@angular-devkit/architect": "0.900.0-rc.5",
|
"@angular-devkit/architect": "0.803.14",
|
||||||
"@angular-devkit/build-angular": "0.900.0-rc.5",
|
"@angular-devkit/build-angular": "0.803.14",
|
||||||
"@angular-devkit/build-ng-packagr": "0.900.0-rc.5",
|
"@angular-devkit/build-ng-packagr": "0.803.14",
|
||||||
"@angular-devkit/build-optimizer": "0.900.0-rc.5",
|
"@angular-devkit/build-optimizer": "0.803.14",
|
||||||
"@angular-devkit/build-webpack": "0.900.0-rc.5",
|
"@angular-devkit/build-webpack": "0.803.14",
|
||||||
"@angular-devkit/core": "9.0.0-rc.5",
|
"@angular-devkit/core": "8.3.14",
|
||||||
"@angular-devkit/schematics": "9.0.0-rc.5",
|
"@angular-devkit/schematics": "8.3.14",
|
||||||
"@angular-eslint/builder": "0.0.1-alpha.17",
|
"@angular-eslint/builder": "0.0.1-alpha.17",
|
||||||
"@angular/cli": "9.0.0-rc.5",
|
"@angular/cli": "8.3.14",
|
||||||
"@angular/common": "9.0.0-rc.5",
|
"@angular/common": "^8.2.12",
|
||||||
"@angular/compiler": "9.0.0-rc.5",
|
"@angular/compiler": "^8.2.12",
|
||||||
"@angular/compiler-cli": "9.0.0-rc.5",
|
"@angular/compiler-cli": "^8.2.12",
|
||||||
"@angular/core": "9.0.0-rc.5",
|
"@angular/core": "^8.2.12",
|
||||||
"@angular/forms": "9.0.0-rc.5",
|
"@angular/forms": "^8.2.12",
|
||||||
"@angular/platform-browser": "9.0.0-rc.5",
|
"@angular/platform-browser": "^8.2.12",
|
||||||
"@angular/platform-browser-dynamic": "9.0.0-rc.5",
|
"@angular/platform-browser-dynamic": "^8.2.12",
|
||||||
"@angular/router": "9.0.0-rc.5",
|
"@angular/router": "^8.2.12",
|
||||||
"@angular/service-worker": "9.0.0-rc.5",
|
"@angular/service-worker": "^8.2.12",
|
||||||
"@angular/upgrade": "9.0.0-rc.5",
|
"@angular/upgrade": "^8.2.12",
|
||||||
"@babel/core": "7.5.5",
|
"@babel/core": "7.5.5",
|
||||||
"@babel/plugin-proposal-class-properties": "7.5.5",
|
"@babel/plugin-proposal-class-properties": "7.5.5",
|
||||||
"@babel/plugin-proposal-decorators": "7.4.4",
|
"@babel/plugin-proposal-decorators": "7.4.4",
|
||||||
@ -65,13 +65,13 @@
|
|||||||
"@ngrx/schematics": "8.5.0",
|
"@ngrx/schematics": "8.5.0",
|
||||||
"@ngrx/store": "8.5.0",
|
"@ngrx/store": "8.5.0",
|
||||||
"@ngrx/store-devtools": "8.5.0",
|
"@ngrx/store-devtools": "8.5.0",
|
||||||
"@ngtools/webpack": "9.0.0-rc.5",
|
"@ngtools/webpack": "8.3.14",
|
||||||
"@schematics/angular": "9.0.0-rc.5",
|
"@schematics/angular": "8.3.14",
|
||||||
"@testing-library/react": "9.3.0",
|
"@testing-library/react": "9.3.0",
|
||||||
"@storybook/core": "5.3.0-beta.13",
|
"@storybook/core": "^5.2.5",
|
||||||
"@storybook/angular": "5.3.0-beta.13",
|
"@storybook/angular": "^5.2.5",
|
||||||
"@storybook/react": "5.3.0-beta.13",
|
"@storybook/react": "^5.2.5",
|
||||||
"@storybook/addon-knobs": "5.3.0-beta.13",
|
"@storybook/addon-knobs": "^5.2.5",
|
||||||
"@types/express": "4.17.0",
|
"@types/express": "4.17.0",
|
||||||
"@types/fast-levenshtein": "^0.0.1",
|
"@types/fast-levenshtein": "^0.0.1",
|
||||||
"@types/jasmine": "~2.8.6",
|
"@types/jasmine": "~2.8.6",
|
||||||
@ -181,7 +181,7 @@
|
|||||||
"rollup-plugin-peer-deps-external": "2.2.0",
|
"rollup-plugin-peer-deps-external": "2.2.0",
|
||||||
"rollup-plugin-postcss": "2.0.3",
|
"rollup-plugin-postcss": "2.0.3",
|
||||||
"rollup-plugin-typescript2": "0.24.3",
|
"rollup-plugin-typescript2": "0.24.3",
|
||||||
"rxjs": "~6.5.3",
|
"rxjs": "~6.4.0",
|
||||||
"sass": "1.22.9",
|
"sass": "1.22.9",
|
||||||
"sass-loader": "7.2.0",
|
"sass-loader": "7.2.0",
|
||||||
"semver": "6.3.0",
|
"semver": "6.3.0",
|
||||||
@ -205,7 +205,7 @@
|
|||||||
"tsickle": "^0.37.0",
|
"tsickle": "^0.37.0",
|
||||||
"tslib": "^1.9.3",
|
"tslib": "^1.9.3",
|
||||||
"tslint": "5.11.0",
|
"tslint": "5.11.0",
|
||||||
"typescript": "~3.6.3",
|
"typescript": "~3.5.3",
|
||||||
"webpack": "4.41.2",
|
"webpack": "4.41.2",
|
||||||
"webpack-dev-middleware": "3.7.0",
|
"webpack-dev-middleware": "3.7.0",
|
||||||
"webpack-dev-server": "3.9.0",
|
"webpack-dev-server": "3.9.0",
|
||||||
|
|||||||
@ -1,11 +1,5 @@
|
|||||||
{
|
{
|
||||||
"schematics": {
|
"schematics": {
|
||||||
"add-postinstall": {
|
|
||||||
"version": "0.0.0",
|
|
||||||
"description": "Adds postinstall to run ngcc",
|
|
||||||
"factory": "./src/migrations/update-9-0-0/add-postinstall",
|
|
||||||
"hidden": true
|
|
||||||
},
|
|
||||||
"upgrade-ngrx-8-0": {
|
"upgrade-ngrx-8-0": {
|
||||||
"version": "8.3.0-beta.1",
|
"version": "8.3.0-beta.1",
|
||||||
"description": "Upgrades NgRx dependencies to version 8, and runs migrations for breaking changes",
|
"description": "Upgrades NgRx dependencies to version 8, and runs migrations for breaking changes",
|
||||||
@ -15,11 +9,6 @@
|
|||||||
"version": "8.5.0-beta.1",
|
"version": "8.5.0-beta.1",
|
||||||
"description": "Upgrades Angular CLI to 8.3.0 and NgRx dependencies to version 8.2",
|
"description": "Upgrades Angular CLI to 8.3.0 and NgRx dependencies to version 8.2",
|
||||||
"factory": "./src/migrations/update-8-5-0/upgrade-cli-8-3"
|
"factory": "./src/migrations/update-8-5-0/upgrade-cli-8-3"
|
||||||
},
|
|
||||||
"update-9-0-0": {
|
|
||||||
"version": "9.0.0-beta.1",
|
|
||||||
"description": "Upgrades Angular and Angular CLI to 9.0.0",
|
|
||||||
"factory": "./src/migrations/update-9-0-0/update-9-0-0"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -37,8 +37,8 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nrwl/cypress": "*",
|
"@nrwl/cypress": "*",
|
||||||
"@nrwl/jest": "*",
|
"@nrwl/jest": "*",
|
||||||
"@angular-devkit/schematics": "9.0.0-rc.5",
|
"@angular-devkit/schematics": "8.3.14",
|
||||||
"@schematics/angular": "9.0.0-rc.5",
|
"@schematics/angular": "8.3.14",
|
||||||
"jasmine-marbles": "~0.6.0"
|
"jasmine-marbles": "~0.6.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -5,7 +5,7 @@ import {
|
|||||||
UnitTestTree
|
UnitTestTree
|
||||||
} from '@angular-devkit/schematics/testing';
|
} from '@angular-devkit/schematics/testing';
|
||||||
import { serializeJson } from '@nrwl/workspace';
|
import { serializeJson } from '@nrwl/workspace';
|
||||||
import { runMigration } from '../../utils/testing';
|
import { join } from 'path';
|
||||||
|
|
||||||
describe('Update 8.5.0', () => {
|
describe('Update 8.5.0', () => {
|
||||||
let tree: Tree;
|
let tree: Tree;
|
||||||
@ -13,6 +13,11 @@ describe('Update 8.5.0', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
tree = new UnitTestTree(Tree.empty());
|
tree = new UnitTestTree(Tree.empty());
|
||||||
|
|
||||||
|
schematicRunner = new SchematicTestRunner(
|
||||||
|
'@nrwl/workspace',
|
||||||
|
join(__dirname, '../../../migrations.json')
|
||||||
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('Update Angular CLI', () => {
|
describe('Update Angular CLI', () => {
|
||||||
@ -26,7 +31,9 @@ describe('Update 8.5.0', () => {
|
|||||||
})
|
})
|
||||||
);
|
);
|
||||||
|
|
||||||
const result = await runMigration('upgrade-cli-8-3', {}, tree);
|
const result = await schematicRunner
|
||||||
|
.runSchematicAsync('upgrade-cli-8-3', {}, tree)
|
||||||
|
.toPromise();
|
||||||
|
|
||||||
expect(
|
expect(
|
||||||
readJsonInTree(result, 'package.json').devDependencies['@angular/cli']
|
readJsonInTree(result, 'package.json').devDependencies['@angular/cli']
|
||||||
@ -43,7 +50,9 @@ describe('Update 8.5.0', () => {
|
|||||||
})
|
})
|
||||||
);
|
);
|
||||||
|
|
||||||
const result = await runMigration('upgrade-cli-8-3', {}, tree);
|
const result = await schematicRunner
|
||||||
|
.runSchematicAsync('upgrade-cli-8-3', {}, tree)
|
||||||
|
.toPromise();
|
||||||
|
|
||||||
expect(
|
expect(
|
||||||
readJsonInTree(result, 'package.json').devDependencies['@angular/cli']
|
readJsonInTree(result, 'package.json').devDependencies['@angular/cli']
|
||||||
@ -60,7 +69,9 @@ describe('Update 8.5.0', () => {
|
|||||||
})
|
})
|
||||||
);
|
);
|
||||||
|
|
||||||
const result = await runMigration('upgrade-cli-8-3', {}, tree);
|
const result = await schematicRunner
|
||||||
|
.runSchematicAsync('upgrade-cli-8-3', {}, tree)
|
||||||
|
.toPromise();
|
||||||
|
|
||||||
expect(
|
expect(
|
||||||
readJsonInTree(result, 'package.json').devDependencies['@angular/cli']
|
readJsonInTree(result, 'package.json').devDependencies['@angular/cli']
|
||||||
@ -80,7 +91,9 @@ describe('Update 8.5.0', () => {
|
|||||||
);
|
);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
await runMigration('upgrade-cli-8-3', {}, tree);
|
await schematicRunner
|
||||||
|
.runSchematicAsync('upgrade-cli-8-3', {}, tree)
|
||||||
|
.toPromise();
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
error = e;
|
error = e;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,37 +0,0 @@
|
|||||||
import { Tree } from '@angular-devkit/schematics';
|
|
||||||
import { readJsonInTree, updateJsonInTree } from '@nrwl/workspace';
|
|
||||||
import { callRule, runMigration } from '../../utils/testing';
|
|
||||||
|
|
||||||
describe('add-postinstall', () => {
|
|
||||||
let tree: Tree;
|
|
||||||
beforeEach(async () => {
|
|
||||||
tree = Tree.empty();
|
|
||||||
tree = await callRule(updateJsonInTree('package.json', () => ({})), tree);
|
|
||||||
});
|
|
||||||
it('should add a postinstall for "ngcc"', async () => {
|
|
||||||
const result = await runMigration('add-postinstall', {}, tree);
|
|
||||||
|
|
||||||
const packageJson = readJsonInTree(result, 'package.json');
|
|
||||||
|
|
||||||
expect(packageJson.scripts.postinstall).toEqual(
|
|
||||||
'ngcc --properties es2015 browser module main --first-only --create-ivy-entry-points'
|
|
||||||
);
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should not add a postinstall if one exists', async () => {
|
|
||||||
tree = await callRule(
|
|
||||||
updateJsonInTree('package.json', json => {
|
|
||||||
json.scripts = {
|
|
||||||
postinstall: './postinstall.sh'
|
|
||||||
};
|
|
||||||
return json;
|
|
||||||
}),
|
|
||||||
tree
|
|
||||||
);
|
|
||||||
const result = await runMigration('add-postinstall', {}, tree);
|
|
||||||
|
|
||||||
const packageJson = readJsonInTree(result, 'package.json');
|
|
||||||
|
|
||||||
expect(packageJson.scripts.postinstall).toEqual('./postinstall.sh');
|
|
||||||
});
|
|
||||||
});
|
|
||||||
@ -1,25 +0,0 @@
|
|||||||
import { updateJsonInTree } from '@nrwl/workspace';
|
|
||||||
import { stripIndents } from '@angular-devkit/core/src/utils/literals';
|
|
||||||
|
|
||||||
export default function() {
|
|
||||||
return updateJsonInTree('package.json', (json, context) => {
|
|
||||||
json.scripts = json.scripts || {};
|
|
||||||
if (json.scripts.postinstall) {
|
|
||||||
context.logger.warn(
|
|
||||||
stripIndents`
|
|
||||||
---------------------------------------------------------------------------------------
|
|
||||||
Angular Ivy requires you to run ngcc after every npm install.
|
|
||||||
The easiest way to accomplish this is to update your postinstall script to invoke ngcc.
|
|
||||||
---------------------------------------------------------------------------------------
|
|
||||||
`
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
context.logger.info(
|
|
||||||
stripIndents`A "postinstall" script has been added to package.json to run ngcc.`
|
|
||||||
);
|
|
||||||
json.scripts.postinstall =
|
|
||||||
'ngcc --properties es2015 browser module main --first-only --create-ivy-entry-points';
|
|
||||||
}
|
|
||||||
return json;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
@ -1,20 +0,0 @@
|
|||||||
import { chain, SchematicContext, Tree } from '@angular-devkit/schematics';
|
|
||||||
import { addUpdateTask } from '@nrwl/workspace';
|
|
||||||
import { RunSchematicTask } from '@angular-devkit/schematics/tasks';
|
|
||||||
import { join } from 'path';
|
|
||||||
|
|
||||||
export default function() {
|
|
||||||
return (_, context: SchematicContext) => {
|
|
||||||
const postInstallTask = context.addTask(
|
|
||||||
new RunSchematicTask(
|
|
||||||
join(__dirname, '../../../migrations.json'),
|
|
||||||
'add-postinstall',
|
|
||||||
{}
|
|
||||||
)
|
|
||||||
);
|
|
||||||
return chain([
|
|
||||||
addUpdateTask('@angular/core', '9.0.0-rc.4', [postInstallTask]),
|
|
||||||
addUpdateTask('@angular/cli', '9.0.0-rc.4', [postInstallTask])
|
|
||||||
]);
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -8,7 +8,7 @@ import { DataPersistence } from './data-persistence';
|
|||||||
*/
|
*/
|
||||||
@NgModule({})
|
@NgModule({})
|
||||||
export class NxModule {
|
export class NxModule {
|
||||||
static forRoot(): ModuleWithProviders<NxModule> {
|
static forRoot(): ModuleWithProviders {
|
||||||
return { ngModule: NxModule, providers: [DataPersistence] };
|
return { ngModule: NxModule, providers: [DataPersistence] };
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -372,6 +372,7 @@ describe('app', () => {
|
|||||||
tree,
|
tree,
|
||||||
'apps/my-app/tsconfig.app.json'
|
'apps/my-app/tsconfig.app.json'
|
||||||
);
|
);
|
||||||
|
expect(tsconfigAppJson.exclude).toEqual(['src/test.ts', '**/*.spec.ts']);
|
||||||
expect(tsconfigAppJson.compilerOptions.outDir).toEqual(
|
expect(tsconfigAppJson.compilerOptions.outDir).toEqual(
|
||||||
'../../dist/out-tsc'
|
'../../dist/out-tsc'
|
||||||
);
|
);
|
||||||
@ -526,5 +527,17 @@ describe('app', () => {
|
|||||||
'exclude'
|
'exclude'
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should only include dts files in the tsconfig.app.json', async () => {
|
||||||
|
const tree = await runSchematic(
|
||||||
|
'app',
|
||||||
|
{ name: 'my-app', enableIvy: true },
|
||||||
|
appTree
|
||||||
|
);
|
||||||
|
|
||||||
|
expect(tree.readContent('apps/my-app/tsconfig.app.json')).toContain(
|
||||||
|
`\"include\": [\"src/**/*.d.ts\"]`
|
||||||
|
);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@ -528,7 +528,7 @@ function updateProject(options: NormalizedSchema): Rule {
|
|||||||
: options.unitTestRunner === 'jest'
|
: options.unitTestRunner === 'jest'
|
||||||
? ['src/test-setup.ts', '**/*.spec.ts']
|
? ['src/test-setup.ts', '**/*.spec.ts']
|
||||||
: ['src/test.ts', '**/*.spec.ts'],
|
: ['src/test.ts', '**/*.spec.ts'],
|
||||||
include: options.enableIvy ? undefined : ['src/**/*.d.ts']
|
include: [options.enableIvy ? 'src/**/*.d.ts' : '**/*.ts']
|
||||||
};
|
};
|
||||||
}),
|
}),
|
||||||
host => {
|
host => {
|
||||||
|
|||||||
@ -2,5 +2,6 @@
|
|||||||
"extends": "<%= offsetFromRoot %>tsconfig.json",
|
"extends": "<%= offsetFromRoot %>tsconfig.json",
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"types": []
|
"types": []
|
||||||
}
|
},
|
||||||
|
"include": ["**/*.ts"]
|
||||||
}
|
}
|
||||||
|
|||||||
@ -68,9 +68,9 @@
|
|||||||
"type": "string"
|
"type": "string"
|
||||||
},
|
},
|
||||||
"enableIvy": {
|
"enableIvy": {
|
||||||
"description": "Create a new app that uses the Ivy rendering engine.",
|
"description": "**EXPERIMENTAL** True to create a new app that uses the Ivy rendering engine.",
|
||||||
"type": "boolean",
|
"type": "boolean",
|
||||||
"default": true
|
"default": false
|
||||||
},
|
},
|
||||||
"prefix": {
|
"prefix": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
|
|||||||
@ -32,22 +32,6 @@ describe('init', () => {
|
|||||||
expect(devDependencies['codelyzer']).toBeDefined();
|
expect(devDependencies['codelyzer']).toBeDefined();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should add a postinstall script for ngcc', async () => {
|
|
||||||
const tree = await runSchematic(
|
|
||||||
'init',
|
|
||||||
{
|
|
||||||
unitTestRunner: 'karma'
|
|
||||||
},
|
|
||||||
appTree
|
|
||||||
);
|
|
||||||
|
|
||||||
const packageJson = readJsonInTree(tree, 'package.json');
|
|
||||||
|
|
||||||
expect(packageJson.scripts.postinstall).toEqual(
|
|
||||||
'ngcc --properties es2015 browser module main --first-only --create-ivy-entry-points'
|
|
||||||
);
|
|
||||||
});
|
|
||||||
|
|
||||||
describe('--unit-test-runner', () => {
|
describe('--unit-test-runner', () => {
|
||||||
describe('karma', () => {
|
describe('karma', () => {
|
||||||
it('should add karma dependencies', async () => {
|
it('should add karma dependencies', async () => {
|
||||||
|
|||||||
@ -10,19 +10,17 @@ import {
|
|||||||
readJsonInTree,
|
readJsonInTree,
|
||||||
addDepsToPackageJson,
|
addDepsToPackageJson,
|
||||||
updateWorkspace,
|
updateWorkspace,
|
||||||
formatFiles,
|
formatFiles
|
||||||
updateJsonInTree
|
|
||||||
} from '@nrwl/workspace';
|
} from '@nrwl/workspace';
|
||||||
import {
|
import {
|
||||||
angularVersion,
|
angularVersion,
|
||||||
angularDevkitVersion,
|
angularDevkitVersion,
|
||||||
rxjsVersion,
|
rxjsVersion
|
||||||
jestPresetAngularVersion
|
|
||||||
} from '../../utils/versions';
|
} from '../../utils/versions';
|
||||||
import { Schema } from './schema';
|
import { Schema } from './schema';
|
||||||
import { UnitTestRunner, E2eTestRunner } from '../../utils/test-runners';
|
import { UnitTestRunner, E2eTestRunner } from '../../utils/test-runners';
|
||||||
|
import { jestPresetAngularVersion } from '../../utils/versions';
|
||||||
import { JsonObject } from '@angular-devkit/core';
|
import { JsonObject } from '@angular-devkit/core';
|
||||||
import { stripIndents } from '@angular-devkit/core/src/utils/literals';
|
|
||||||
|
|
||||||
function updateDependencies(): Rule {
|
function updateDependencies(): Rule {
|
||||||
const deps = {
|
const deps = {
|
||||||
@ -154,32 +152,9 @@ export function setDefaults(options: Schema): Rule {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function addPostinstall(): Rule {
|
|
||||||
return updateJsonInTree('package.json', (json, context) => {
|
|
||||||
json.scripts = json.scripts || {};
|
|
||||||
|
|
||||||
if (!json.scripts.postinstall) {
|
|
||||||
json.scripts.postinstall =
|
|
||||||
'ngcc --properties es2015 browser module main --first-only --create-ivy-entry-points';
|
|
||||||
} else {
|
|
||||||
context.logger.warn(
|
|
||||||
stripIndents`
|
|
||||||
---------------------------------------------------------------------------------------
|
|
||||||
Angular Ivy requires you to run ngcc after every npm install.
|
|
||||||
The easiest way to accomplish this is to update your postinstall script to invoke ngcc.
|
|
||||||
---------------------------------------------------------------------------------------
|
|
||||||
`
|
|
||||||
);
|
|
||||||
}
|
|
||||||
return json;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
export default function(options: Schema): Rule {
|
export default function(options: Schema): Rule {
|
||||||
return chain([
|
return chain([
|
||||||
setDefaults(options),
|
setDefaults(options),
|
||||||
// TODO: Remove this when ngcc can be run in parallel
|
|
||||||
addPostinstall(),
|
|
||||||
updateDependencies(),
|
updateDependencies(),
|
||||||
addUnitTestRunner(options),
|
addUnitTestRunner(options),
|
||||||
addE2eTestRunner(options),
|
addE2eTestRunner(options),
|
||||||
|
|||||||
@ -9,11 +9,6 @@ const testRunner = new SchematicTestRunner(
|
|||||||
join(__dirname, '../../collection.json')
|
join(__dirname, '../../collection.json')
|
||||||
);
|
);
|
||||||
|
|
||||||
const migrationTestRunner = new SchematicTestRunner(
|
|
||||||
'@nrwl/workspace',
|
|
||||||
join(__dirname, '../../migrations.json')
|
|
||||||
);
|
|
||||||
|
|
||||||
export function runSchematic<SchemaOptions = any>(
|
export function runSchematic<SchemaOptions = any>(
|
||||||
schematicName: string,
|
schematicName: string,
|
||||||
options: SchemaOptions,
|
options: SchemaOptions,
|
||||||
@ -22,16 +17,6 @@ export function runSchematic<SchemaOptions = any>(
|
|||||||
return testRunner.runSchematicAsync(schematicName, options, tree).toPromise();
|
return testRunner.runSchematicAsync(schematicName, options, tree).toPromise();
|
||||||
}
|
}
|
||||||
|
|
||||||
export function runMigration<SchemaOptions = any>(
|
|
||||||
schematicName: string,
|
|
||||||
options: SchemaOptions,
|
|
||||||
tree: Tree
|
|
||||||
) {
|
|
||||||
return migrationTestRunner
|
|
||||||
.runSchematicAsync(schematicName, options, tree)
|
|
||||||
.toPromise();
|
|
||||||
}
|
|
||||||
|
|
||||||
export function runExternalSchematic<SchemaOptions = any>(
|
export function runExternalSchematic<SchemaOptions = any>(
|
||||||
collectionName: string,
|
collectionName: string,
|
||||||
schematicName: string,
|
schematicName: string,
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
export const nxVersion = '*';
|
export const nxVersion = '*';
|
||||||
export const angularVersion = '9.0.0-rc.5';
|
export const angularVersion = '^8.2.0';
|
||||||
export const angularDevkitVersion = '0.900.0-rc.5';
|
export const angularDevkitVersion = '^0.803.14';
|
||||||
export const angularJsVersion = '1.6.6';
|
export const angularJsVersion = '1.6.6';
|
||||||
export const ngrxVersion = '8.5.0';
|
export const ngrxVersion = '8.5.0';
|
||||||
export const rxjsVersion = '~6.5.0';
|
export const rxjsVersion = '~6.4.0';
|
||||||
export const jestPresetAngularVersion = '7.0.0';
|
export const jestPresetAngularVersion = '7.0.0';
|
||||||
|
|||||||
@ -35,8 +35,8 @@
|
|||||||
"@nrwl/workspace": "*"
|
"@nrwl/workspace": "*"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@angular-devkit/architect": "0.900.0-rc.5",
|
"@angular-devkit/architect": "0.803.14",
|
||||||
"@angular-devkit/core": "9.0.0-rc.5",
|
"@angular-devkit/core": "8.3.14",
|
||||||
"@cypress/webpack-preprocessor": "~4.1.0",
|
"@cypress/webpack-preprocessor": "~4.1.0",
|
||||||
"tree-kill": "1.2.1",
|
"tree-kill": "1.2.1",
|
||||||
"ts-loader": "5.3.1",
|
"ts-loader": "5.3.1",
|
||||||
|
|||||||
@ -34,6 +34,6 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nrwl/node": "*",
|
"@nrwl/node": "*",
|
||||||
"@nrwl/jest": "*",
|
"@nrwl/jest": "*",
|
||||||
"@angular-devkit/schematics": "9.0.0-rc.5"
|
"@angular-devkit/schematics": "8.3.14"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -35,8 +35,8 @@
|
|||||||
"@nrwl/workspace": "*"
|
"@nrwl/workspace": "*"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@angular-devkit/architect": "0.900.0-rc.5",
|
"@angular-devkit/architect": "0.803.14",
|
||||||
"@angular-devkit/core": "9.0.0-rc.5",
|
"@angular-devkit/core": "8.3.14",
|
||||||
"@angular-devkit/schematics": "9.0.0-rc.5"
|
"@angular-devkit/schematics": "8.3.14"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -27,7 +27,7 @@
|
|||||||
"@nrwl/workspace": "*"
|
"@nrwl/workspace": "*"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@angular-devkit/architect": "0.900.0-rc.5",
|
"@angular-devkit/architect": "0.803.14",
|
||||||
"@angular-eslint/builder": "0.0.1-alpha.17"
|
"@angular-eslint/builder": "0.0.1-alpha.17"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -34,6 +34,6 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nrwl/node": "*",
|
"@nrwl/node": "*",
|
||||||
"@nrwl/jest": "*",
|
"@nrwl/jest": "*",
|
||||||
"@angular-devkit/schematics": "9.0.0-rc.5"
|
"@angular-devkit/schematics": "8.3.14"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -33,6 +33,6 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nrwl/react": "*",
|
"@nrwl/react": "*",
|
||||||
"@angular-devkit/schematics": "9.0.0-rc.5"
|
"@angular-devkit/schematics": "8.3.14"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -34,10 +34,10 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@nrwl/jest": "*",
|
"@nrwl/jest": "*",
|
||||||
"@nrwl/linter": "*",
|
"@nrwl/linter": "*",
|
||||||
"@angular-devkit/architect": "0.900.0-rc.5",
|
"@angular-devkit/architect": "0.803.14",
|
||||||
"@angular-devkit/core": "9.0.0-rc.5",
|
"@angular-devkit/core": "8.3.14",
|
||||||
"@angular-devkit/schematics": "9.0.0-rc.5",
|
"@angular-devkit/schematics": "8.3.14",
|
||||||
"@angular-devkit/build-webpack": "0.900.0-rc.5",
|
"@angular-devkit/build-webpack": "0.803.14",
|
||||||
"circular-dependency-plugin": "5.2.0",
|
"circular-dependency-plugin": "5.2.0",
|
||||||
"copy-webpack-plugin": "5.0.3",
|
"copy-webpack-plugin": "5.0.3",
|
||||||
"fork-ts-checker-webpack-plugin": "0.4.15",
|
"fork-ts-checker-webpack-plugin": "0.4.15",
|
||||||
|
|||||||
@ -3,6 +3,7 @@ import { JsonObject, workspaces } from '@angular-devkit/core';
|
|||||||
import { runWebpack, BuildResult } from '@angular-devkit/build-webpack';
|
import { runWebpack, BuildResult } from '@angular-devkit/build-webpack';
|
||||||
|
|
||||||
import { Observable, from } from 'rxjs';
|
import { Observable, from } from 'rxjs';
|
||||||
|
import { writeFileSync } from 'fs';
|
||||||
import { resolve } from 'path';
|
import { resolve } from 'path';
|
||||||
import { map, concatMap } from 'rxjs/operators';
|
import { map, concatMap } from 'rxjs/operators';
|
||||||
import { getNodeWebpackConfig } from '../../utils/node.config';
|
import { getNodeWebpackConfig } from '../../utils/node.config';
|
||||||
@ -49,8 +50,7 @@ function run(
|
|||||||
runWebpack(config, context, {
|
runWebpack(config, context, {
|
||||||
logging: stats => {
|
logging: stats => {
|
||||||
context.logger.info(stats.toString(config.stats));
|
context.logger.info(stats.toString(config.stats));
|
||||||
},
|
}
|
||||||
webpackFactory: require('webpack')
|
|
||||||
})
|
})
|
||||||
),
|
),
|
||||||
map((buildEvent: BuildResult) => {
|
map((buildEvent: BuildResult) => {
|
||||||
|
|||||||
@ -5,7 +5,7 @@ import {
|
|||||||
TestingArchitectHost,
|
TestingArchitectHost,
|
||||||
TestLogger
|
TestLogger
|
||||||
} from '@angular-devkit/architect/testing';
|
} from '@angular-devkit/architect/testing';
|
||||||
import { schema, JsonObject, json } from '@angular-devkit/core';
|
import { schema, JsonObject } from '@angular-devkit/core';
|
||||||
import { Architect, BuilderContext, Target } from '@angular-devkit/architect';
|
import { Architect, BuilderContext, Target } from '@angular-devkit/architect';
|
||||||
import { ScheduleOptions } from '@angular-devkit/architect/src/api';
|
import { ScheduleOptions } from '@angular-devkit/architect/src/api';
|
||||||
|
|
||||||
@ -111,13 +111,4 @@ export class MockBuilderContext implements BuilderContext {
|
|||||||
reportProgress(current: number, total?: number, status?: string) {}
|
reportProgress(current: number, total?: number, status?: string) {}
|
||||||
|
|
||||||
addTeardown(teardown: () => Promise<void> | void) {}
|
addTeardown(teardown: () => Promise<void> | void) {}
|
||||||
|
|
||||||
async getProjectMetadata(
|
|
||||||
target: Target | string
|
|
||||||
): Promise<json.JsonObject | null> {
|
|
||||||
return (
|
|
||||||
this.architectHost &&
|
|
||||||
this.architectHost.getProjectMetadata(target as string)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -34,7 +34,7 @@
|
|||||||
"@nrwl/cypress": "*",
|
"@nrwl/cypress": "*",
|
||||||
"@nrwl/jest": "*",
|
"@nrwl/jest": "*",
|
||||||
"@nrwl/web": "*",
|
"@nrwl/web": "*",
|
||||||
"@angular-devkit/schematics": "9.0.0-rc.5",
|
"@angular-devkit/schematics": "8.3.14",
|
||||||
"confusing-browser-globals": "^1.0.8",
|
"confusing-browser-globals": "^1.0.8",
|
||||||
"eslint-plugin-import": "^2.18.2",
|
"eslint-plugin-import": "^2.18.2",
|
||||||
"eslint-plugin-jsx-a11y": "^6.2.3",
|
"eslint-plugin-jsx-a11y": "^6.2.3",
|
||||||
|
|||||||
@ -40,7 +40,7 @@
|
|||||||
"ignore": "5.0.4",
|
"ignore": "5.0.4",
|
||||||
"npm-run-all": "4.1.5",
|
"npm-run-all": "4.1.5",
|
||||||
"opn": "^5.3.0",
|
"opn": "^5.3.0",
|
||||||
"rxjs": "~6.5.3",
|
"rxjs": "^6.4.0",
|
||||||
"semver": "5.4.1",
|
"semver": "5.4.1",
|
||||||
"strip-json-comments": "2.0.1",
|
"strip-json-comments": "2.0.1",
|
||||||
"tmp": "0.0.33",
|
"tmp": "0.0.33",
|
||||||
|
|||||||
@ -5,28 +5,5 @@
|
|||||||
"description": "Update storybook builder and tsconfig",
|
"description": "Update storybook builder and tsconfig",
|
||||||
"factory": "./src/migrations/update-8-8-2/update-builder-8-8-2"
|
"factory": "./src/migrations/update-8-8-2/update-builder-8-8-2"
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"packageJsonUpdates": {
|
|
||||||
"9.0.0": {
|
|
||||||
"version": "9.0.0-beta.1",
|
|
||||||
"packages": {
|
|
||||||
"@storybook/angular": {
|
|
||||||
"version": "5.3.0-beta.13",
|
|
||||||
"alwaysAddToPackageJson": false
|
|
||||||
},
|
|
||||||
"@storybook/react": {
|
|
||||||
"version": "5.3.0-beta.13",
|
|
||||||
"alwaysAddToPackageJson": false
|
|
||||||
},
|
|
||||||
"@storybook/web": {
|
|
||||||
"version": "5.3.0-beta.13",
|
|
||||||
"alwaysAddToPackageJson": false
|
|
||||||
},
|
|
||||||
"@storybook/addon-knobs": {
|
|
||||||
"version": "5.3.0-beta.13",
|
|
||||||
"alwaysAddToPackageJson": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -29,10 +29,10 @@
|
|||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@nrwl/workspace": "*",
|
"@nrwl/workspace": "*",
|
||||||
"@storybook/angular": "5.3.0-beta.13",
|
"@storybook/angular": "^5.2.5",
|
||||||
"@storybook/react": "5.3.0-beta.13",
|
"@storybook/react": "^5.2.5",
|
||||||
"@storybook/web": "5.3.0-beta.13",
|
"@storybook/web": "^5.2.5",
|
||||||
"@storybook/addon-knobs": "5.3.0-beta.13",
|
"@storybook/addon-knobs": "^5.2.5",
|
||||||
"babel-loader": "^8.0.6",
|
"babel-loader": "^8.0.6",
|
||||||
"@babel/core": "^7.5.4"
|
"@babel/core": "^7.5.4"
|
||||||
},
|
},
|
||||||
|
|||||||
@ -1,12 +0,0 @@
|
|||||||
import { chain } from '@angular-devkit/schematics';
|
|
||||||
import { updatePackagesInPackageJson } from '@nrwl/workspace';
|
|
||||||
import { join } from 'path';
|
|
||||||
|
|
||||||
const updatePackages = updatePackagesInPackageJson(
|
|
||||||
join(__dirname, '../../../', 'migrations.json'),
|
|
||||||
'9.0.0'
|
|
||||||
);
|
|
||||||
|
|
||||||
export default function() {
|
|
||||||
return chain([updatePackages]);
|
|
||||||
}
|
|
||||||
@ -1,3 +1,3 @@
|
|||||||
export const storybookVersion = '5.3.0-beta.13';
|
export const storybookVersion = '5.2.5';
|
||||||
export const babelCoreVersion = '7.5.4';
|
export const babelCoreVersion = '7.5.4';
|
||||||
export const babelLoaderVersion = '8.0.6';
|
export const babelLoaderVersion = '8.0.6';
|
||||||
|
|||||||
@ -29,9 +29,9 @@
|
|||||||
},
|
},
|
||||||
"homepage": "https://nx.dev",
|
"homepage": "https://nx.dev",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@angular-devkit/schematics": "9.0.0-rc.5",
|
"@angular-devkit/schematics": "8.3.14",
|
||||||
"@angular-devkit/core": "9.0.0-rc.5",
|
"@angular-devkit/core": "8.3.14",
|
||||||
"@angular-devkit/architect": "0.900.0-rc.5",
|
"@angular-devkit/architect": "0.803.14",
|
||||||
"inquirer": "^6.3.1",
|
"inquirer": "^6.3.1",
|
||||||
"minimist": "^1.2.0",
|
"minimist": "^1.2.0",
|
||||||
"strip-json-comments": "2.0.1",
|
"strip-json-comments": "2.0.1",
|
||||||
|
|||||||
@ -1,4 +1,5 @@
|
|||||||
import { logging, normalize, virtualFs } from '@angular-devkit/core';
|
import { logging, normalize, virtualFs } from '@angular-devkit/core';
|
||||||
|
import * as core from '@angular-devkit/core/node';
|
||||||
import { NodeJsSyncHost } from '@angular-devkit/core/node';
|
import { NodeJsSyncHost } from '@angular-devkit/core/node';
|
||||||
import { BaseWorkflow } from '@angular-devkit/schematics/src/workflow';
|
import { BaseWorkflow } from '@angular-devkit/schematics/src/workflow';
|
||||||
import { NodeModulesEngineHost } from '@angular-devkit/schematics/tools';
|
import { NodeModulesEngineHost } from '@angular-devkit/schematics/tools';
|
||||||
@ -12,7 +13,6 @@ import { getLogger } from '../shared/logger';
|
|||||||
import { convertToCamelCase, handleErrors } from '../shared/params';
|
import { convertToCamelCase, handleErrors } from '../shared/params';
|
||||||
import { commandName } from '../shared/print-help';
|
import { commandName } from '../shared/print-help';
|
||||||
import minimist = require('minimist');
|
import minimist = require('minimist');
|
||||||
import { dirname, extname, join, resolve } from 'path';
|
|
||||||
|
|
||||||
export type MigrationsJson = {
|
export type MigrationsJson = {
|
||||||
version: string;
|
version: string;
|
||||||
@ -473,22 +473,20 @@ class MigrationEngineHost extends NodeModulesEngineHost {
|
|||||||
protected _resolveCollectionPath(name: string): string {
|
protected _resolveCollectionPath(name: string): string {
|
||||||
let collectionPath: string | undefined = undefined;
|
let collectionPath: string | undefined = undefined;
|
||||||
|
|
||||||
|
if (name.replace(/\\/g, '/').split('/').length > (name[0] == '@' ? 2 : 1)) {
|
||||||
try {
|
try {
|
||||||
return super._resolveCollectionPath(name);
|
collectionPath = this._resolvePath(name, process.cwd());
|
||||||
} catch {}
|
} catch {}
|
||||||
|
|
||||||
if (name.startsWith('.') || name.startsWith('/')) {
|
|
||||||
name = resolve(name);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (extname(name)) {
|
if (!collectionPath) {
|
||||||
collectionPath = require.resolve(name);
|
let packageJsonPath = this._resolvePackageJson(name, process.cwd());
|
||||||
} else {
|
if (!core.fs.isFile(packageJsonPath)) {
|
||||||
const packageJsonPath = require.resolve(join(name, 'package.json'));
|
packageJsonPath = path.join(packageJsonPath, 'package.json');
|
||||||
const packageJson = require(packageJsonPath);
|
}
|
||||||
let pkgJsonSchematics = packageJson['nx-migrations'];
|
let pkgJsonSchematics = require(packageJsonPath)['nx-migrations'];
|
||||||
if (!pkgJsonSchematics) {
|
if (!pkgJsonSchematics) {
|
||||||
pkgJsonSchematics = packageJson['ng-update'];
|
pkgJsonSchematics = require(packageJsonPath)['ng-update'];
|
||||||
if (!pkgJsonSchematics) {
|
if (!pkgJsonSchematics) {
|
||||||
throw new Error(`Could find migrations in package: "${name}"`);
|
throw new Error(`Could find migrations in package: "${name}"`);
|
||||||
}
|
}
|
||||||
@ -496,7 +494,10 @@ class MigrationEngineHost extends NodeModulesEngineHost {
|
|||||||
if (typeof pkgJsonSchematics != 'string') {
|
if (typeof pkgJsonSchematics != 'string') {
|
||||||
pkgJsonSchematics = pkgJsonSchematics.migrations;
|
pkgJsonSchematics = pkgJsonSchematics.migrations;
|
||||||
}
|
}
|
||||||
collectionPath = resolve(dirname(packageJsonPath), pkgJsonSchematics);
|
collectionPath = this._resolvePath(
|
||||||
|
pkgJsonSchematics,
|
||||||
|
path.dirname(packageJsonPath)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|||||||
@ -6,8 +6,7 @@ import {
|
|||||||
logging,
|
logging,
|
||||||
normalize,
|
normalize,
|
||||||
schema,
|
schema,
|
||||||
terminal,
|
terminal
|
||||||
workspaces
|
|
||||||
} from '@angular-devkit/core';
|
} from '@angular-devkit/core';
|
||||||
import { NodeJsSyncHost } from '@angular-devkit/core/node';
|
import { NodeJsSyncHost } from '@angular-devkit/core/node';
|
||||||
import { getLogger } from '../shared/logger';
|
import { getLogger } from '../shared/logger';
|
||||||
@ -19,7 +18,6 @@ import {
|
|||||||
} from '../shared/params';
|
} from '../shared/params';
|
||||||
import { commandName, printHelp } from '../shared/print-help';
|
import { commandName, printHelp } from '../shared/print-help';
|
||||||
import minimist = require('minimist');
|
import minimist = require('minimist');
|
||||||
import { WorkspaceDefinition } from '@angular-devkit/core/src/workspace';
|
|
||||||
|
|
||||||
export interface RunOptions {
|
export interface RunOptions {
|
||||||
project: string;
|
project: string;
|
||||||
@ -94,12 +92,12 @@ function printRunHelp(
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function validateTargetAndConfiguration(
|
export function validateTargetAndConfiguration(
|
||||||
workspace: WorkspaceDefinition,
|
workspace: experimental.workspace.Workspace,
|
||||||
opts: RunOptions
|
opts: RunOptions
|
||||||
) {
|
) {
|
||||||
const targets = workspace.projects.get(opts.project).targets;
|
const targets = workspace.getProjectTargets(opts.project);
|
||||||
|
|
||||||
const target = targets.get(opts.target);
|
const target = targets[opts.target];
|
||||||
if (!target) {
|
if (!target) {
|
||||||
throw new Error(
|
throw new Error(
|
||||||
`Could not find target "${opts.target}" in the ${
|
`Could not find target "${opts.target}" in the ${
|
||||||
@ -137,16 +135,14 @@ export async function run(root: string, args: string[], isVerbose: boolean) {
|
|||||||
|
|
||||||
return handleErrors(logger, isVerbose, async () => {
|
return handleErrors(logger, isVerbose, async () => {
|
||||||
const fsHost = new NodeJsSyncHost();
|
const fsHost = new NodeJsSyncHost();
|
||||||
const { workspace } = await workspaces.readWorkspace(
|
const workspace = await new experimental.workspace.Workspace(
|
||||||
'workspace.json',
|
normalize(root) as any,
|
||||||
workspaces.createWorkspaceHost(fsHost)
|
fsHost
|
||||||
);
|
)
|
||||||
|
.loadWorkspaceFromHost('workspace.json' as any)
|
||||||
|
.toPromise();
|
||||||
|
|
||||||
const opts = parseRunOpts(
|
const opts = parseRunOpts(args, workspace.getDefaultProjectName(), logger);
|
||||||
args,
|
|
||||||
workspace.extensions['defaultProject'] as string,
|
|
||||||
logger
|
|
||||||
);
|
|
||||||
validateTargetAndConfiguration(workspace, opts);
|
validateTargetAndConfiguration(workspace, opts);
|
||||||
|
|
||||||
const registry = new json.schema.CoreSchemaRegistry();
|
const registry = new json.schema.CoreSchemaRegistry();
|
||||||
|
|||||||
@ -34,20 +34,20 @@
|
|||||||
"@nrwl/cypress": "*",
|
"@nrwl/cypress": "*",
|
||||||
"@nrwl/jest": "*",
|
"@nrwl/jest": "*",
|
||||||
"@nrwl/linter": "*",
|
"@nrwl/linter": "*",
|
||||||
"@angular/service-worker": "9.0.0-rc.5",
|
"@angular/service-worker": "8.2.12",
|
||||||
"@angular-devkit/architect": "0.900.0-rc.5",
|
"@angular-devkit/architect": "0.803.14",
|
||||||
"@angular-devkit/build-ng-packagr": "0.900.0-rc.5",
|
"@angular-devkit/build-ng-packagr": "0.803.14",
|
||||||
"@angular-devkit/build-optimizer": "0.900.0-rc.5",
|
"@angular-devkit/build-optimizer": "0.803.14",
|
||||||
"@angular-devkit/build-webpack": "0.900.0-rc.5",
|
"@angular-devkit/build-webpack": "0.803.14",
|
||||||
"@angular-devkit/core": "9.0.0-rc.5",
|
"@angular-devkit/core": "8.3.14",
|
||||||
"@angular-devkit/schematics": "9.0.0-rc.5",
|
"@angular-devkit/schematics": "8.3.14",
|
||||||
"@babel/core": "7.5.5",
|
"@babel/core": "7.5.5",
|
||||||
"@babel/preset-env": "7.5.5",
|
"@babel/preset-env": "7.5.5",
|
||||||
"@babel/preset-typescript": "7.3.3",
|
"@babel/preset-typescript": "7.3.3",
|
||||||
"@babel/plugin-proposal-class-properties": "7.5.5",
|
"@babel/plugin-proposal-class-properties": "7.5.5",
|
||||||
"@babel/plugin-proposal-decorators": "7.4.4",
|
"@babel/plugin-proposal-decorators": "7.4.4",
|
||||||
"@babel/plugin-transform-regenerator": "7.4.5",
|
"@babel/plugin-transform-regenerator": "7.4.5",
|
||||||
"@ngtools/webpack": "9.0.0-rc.5",
|
"@ngtools/webpack": "8.3.14",
|
||||||
"ajv": "6.10.2",
|
"ajv": "6.10.2",
|
||||||
"autoprefixer": "9.6.1",
|
"autoprefixer": "9.6.1",
|
||||||
"babel-loader": "8.0.6",
|
"babel-loader": "8.0.6",
|
||||||
|
|||||||
@ -111,8 +111,7 @@ export function run(options: WebBuildBuilderOptions, context: BuilderContext) {
|
|||||||
return runWebpack(config, context, {
|
return runWebpack(config, context, {
|
||||||
logging: stats => {
|
logging: stats => {
|
||||||
context.logger.info(stats.toString(config.stats));
|
context.logger.info(stats.toString(config.stats));
|
||||||
},
|
}
|
||||||
webpackFactory: require('webpack')
|
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
return of();
|
return of();
|
||||||
|
|||||||
@ -101,9 +101,7 @@ function run(
|
|||||||
return runWebpackDevServer(config, context, {
|
return runWebpackDevServer(config, context, {
|
||||||
logging: stats => {
|
logging: stats => {
|
||||||
context.logger.info(stats.toString(config.stats));
|
context.logger.info(stats.toString(config.stats));
|
||||||
},
|
}
|
||||||
webpackFactory: require('webpack'),
|
|
||||||
webpackDevServerFactory: require('webpack-dev-server')
|
|
||||||
}).pipe(
|
}).pipe(
|
||||||
map(output => {
|
map(output => {
|
||||||
output.baseUrl = serverUrl;
|
output.baseUrl = serverUrl;
|
||||||
|
|||||||
@ -11,7 +11,7 @@ import {
|
|||||||
TestingArchitectHost,
|
TestingArchitectHost,
|
||||||
TestLogger
|
TestLogger
|
||||||
} from '@angular-devkit/architect/testing';
|
} from '@angular-devkit/architect/testing';
|
||||||
import { schema, JsonObject, json } from '@angular-devkit/core';
|
import { schema, JsonObject } from '@angular-devkit/core';
|
||||||
|
|
||||||
const testRunner = new SchematicTestRunner(
|
const testRunner = new SchematicTestRunner(
|
||||||
'@nrwl/web',
|
'@nrwl/web',
|
||||||
@ -115,13 +115,4 @@ export class MockBuilderContext implements BuilderContext {
|
|||||||
reportProgress(current: number, total?: number, status?: string) {}
|
reportProgress(current: number, total?: number, status?: string) {}
|
||||||
|
|
||||||
addTeardown(teardown: () => Promise<void> | void) {}
|
addTeardown(teardown: () => Promise<void> | void) {}
|
||||||
|
|
||||||
async getProjectMetadata(
|
|
||||||
target: Target | string
|
|
||||||
): Promise<json.JsonObject | null> {
|
|
||||||
return (
|
|
||||||
this.architectHost &&
|
|
||||||
this.architectHost.getProjectMetadata(target as string)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -29,11 +29,6 @@
|
|||||||
"version": "8.5.0-beta.1",
|
"version": "8.5.0-beta.1",
|
||||||
"description": "Fix the exclude paths in tsconfig.lib.json files for Jest projects",
|
"description": "Fix the exclude paths in tsconfig.lib.json files for Jest projects",
|
||||||
"factory": "./src/migrations/update-8-5-0/fix-tsconfig-lib-json"
|
"factory": "./src/migrations/update-8-5-0/fix-tsconfig-lib-json"
|
||||||
},
|
|
||||||
"update-9-0-0": {
|
|
||||||
"version": "9.0.0-beta.1",
|
|
||||||
"description": "Update typescript to 3.6 and angular/cli to version 9",
|
|
||||||
"factory": "./src/migrations/update-9-0-0/update-9-0-0"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"packageJsonUpdates": {
|
"packageJsonUpdates": {
|
||||||
@ -288,19 +283,6 @@
|
|||||||
"alwaysAddToPackageJson": false
|
"alwaysAddToPackageJson": false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"9.0.0": {
|
|
||||||
"version": "9.0.0-beta.1",
|
|
||||||
"packages": {
|
|
||||||
"@angular/cli": {
|
|
||||||
"version": "9.0.0-rc.4",
|
|
||||||
"alwaysAddToPackageJson": false
|
|
||||||
},
|
|
||||||
"typescript": {
|
|
||||||
"version": "~3.6.4",
|
|
||||||
"alwaysAddToPackageJson": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -43,14 +43,14 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@angular-devkit/core": "9.0.0-rc.5",
|
"@angular-devkit/core": "8.3.14",
|
||||||
"@angular-devkit/schematics": "9.0.0-rc.5",
|
"@angular-devkit/schematics": "8.3.14",
|
||||||
"cosmiconfig": "4.0.0",
|
"cosmiconfig": "4.0.0",
|
||||||
"fs-extra": "6.0.0",
|
"fs-extra": "6.0.0",
|
||||||
"ignore": "5.0.4",
|
"ignore": "5.0.4",
|
||||||
"npm-run-all": "4.1.5",
|
"npm-run-all": "4.1.5",
|
||||||
"opn": "^5.3.0",
|
"opn": "^5.3.0",
|
||||||
"rxjs": "~6.5.3",
|
"rxjs": "^6.4.0",
|
||||||
"semver": "5.4.1",
|
"semver": "5.4.1",
|
||||||
"strip-json-comments": "2.0.1",
|
"strip-json-comments": "2.0.1",
|
||||||
"tmp": "0.0.33",
|
"tmp": "0.0.33",
|
||||||
|
|||||||
@ -1,12 +0,0 @@
|
|||||||
import { chain } from '@angular-devkit/schematics';
|
|
||||||
import { updatePackagesInPackageJson } from '@nrwl/workspace';
|
|
||||||
import { join } from 'path';
|
|
||||||
|
|
||||||
const updatePackages = updatePackagesInPackageJson(
|
|
||||||
join(__dirname, '../../../', 'migrations.json'),
|
|
||||||
'9.0.0'
|
|
||||||
);
|
|
||||||
|
|
||||||
export default function() {
|
|
||||||
return chain([updatePackages]);
|
|
||||||
}
|
|
||||||
@ -1,7 +1,7 @@
|
|||||||
export const nxVersion = '*';
|
export const nxVersion = '*';
|
||||||
|
|
||||||
export const angularCliVersion = '9.0.0-rc.5';
|
export const angularCliVersion = '8.3.14';
|
||||||
export const typescriptVersion = '~3.6.4';
|
export const typescriptVersion = '~3.5.3';
|
||||||
export const prettierVersion = '1.18.2';
|
export const prettierVersion = '1.18.2';
|
||||||
export const typescriptESLintVersion = '2.3.2';
|
export const typescriptESLintVersion = '2.3.2';
|
||||||
export const eslintVersion = '6.1.0';
|
export const eslintVersion = '6.1.0';
|
||||||
|
|||||||
@ -5,7 +5,7 @@ if [ "$1" = "fast" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$1" != "fast" ]; then
|
if [ "$1" != "fast" ]; then
|
||||||
./scripts/package.sh --local
|
./scripts/build.sh
|
||||||
fi
|
fi
|
||||||
|
|
||||||
rm -rf node_modules/@nrwl
|
rm -rf node_modules/@nrwl
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user