@nrwl/workspace 13.4.5-beta.1 → 13.4.5-beta.2
Sign up to get free protection for your applications and to get access to all the features.
- package/package.json +5 -5
- package/src/command-line/affected.js +4 -4
- package/src/command-line/affected.js.map +1 -1
- package/src/command-line/dep-graph.js +1 -2
- package/src/command-line/dep-graph.js.map +1 -1
- package/src/command-line/run-many.js +2 -2
- package/src/command-line/run-many.js.map +1 -1
- package/src/command-line/run-one.js +2 -2
- package/src/command-line/run-one.js.map +1 -1
- package/src/core/file-map-utils.d.ts +10 -0
- package/src/core/file-map-utils.js +94 -0
- package/src/core/file-map-utils.js.map +1 -0
- package/src/core/file-utils.d.ts +2 -11
- package/src/core/file-utils.js +19 -181
- package/src/core/file-utils.js.map +1 -1
- package/src/core/hasher/file-hasher-base.d.ts +12 -0
- package/src/core/hasher/file-hasher-base.js +63 -0
- package/src/core/hasher/file-hasher-base.js.map +1 -0
- package/src/core/hasher/file-hasher.d.ts +2 -24
- package/src/core/hasher/file-hasher.js +12 -94
- package/src/core/hasher/file-hasher.js.map +1 -1
- package/src/core/hasher/git-based-file-hasher.d.ts +10 -0
- package/src/core/hasher/git-based-file-hasher.js +50 -0
- package/src/core/hasher/git-based-file-hasher.js.map +1 -0
- package/src/core/hasher/git-hasher.js +6 -7
- package/src/core/hasher/git-hasher.js.map +1 -1
- package/src/core/hasher/node-based-file-hasher.d.ts +7 -0
- package/src/core/hasher/node-based-file-hasher.js +78 -0
- package/src/core/hasher/node-based-file-hasher.js.map +1 -0
- package/src/core/project-graph/build-project-graph.js +2 -2
- package/src/core/project-graph/build-project-graph.js.map +1 -1
- package/src/core/project-graph/daemon/server/project-graph-incremental-recomputation.js +7 -6
- package/src/core/project-graph/daemon/server/project-graph-incremental-recomputation.js.map +1 -1
- package/src/core/project-graph/daemon/server/server.js +3 -1
- package/src/core/project-graph/daemon/server/server.js.map +1 -1
- package/src/core/project-graph/project-graph.js +2 -0
- package/src/core/project-graph/project-graph.js.map +1 -1
- package/src/generators/convert-to-nx-project/convert-to-nx-project.js +3 -1
- package/src/generators/convert-to-nx-project/convert-to-nx-project.js.map +1 -1
- package/src/generators/convert-to-nx-project/schema.d.ts +1 -0
- package/src/generators/convert-to-nx-project/schema.json +5 -0
- package/src/generators/workspace/files/package.json__tmpl__ +1 -1
- package/src/utilities/is_ci.js +1 -0
- package/src/utilities/is_ci.js.map +1 -1
- package/src/utilities/perf-logging.js +1 -1
- package/src/utilities/perf-logging.js.map +1 -1
- package/src/utils/perf-logging.js +1 -1
- package/src/utils/perf-logging.js.map +1 -1
- package/src/utils/versions.js +1 -1
@@ -0,0 +1,63 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.FileHasherBase = void 0;
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const app_root_1 = require("@nrwl/tao/src/utils/app-root");
|
6
|
+
const perf_hooks_1 = require("perf_hooks");
|
7
|
+
const hashing_impl_1 = require("./hashing-impl");
|
8
|
+
class FileHasherBase {
|
9
|
+
constructor() {
|
10
|
+
this.isInitialized = false;
|
11
|
+
}
|
12
|
+
clear() {
|
13
|
+
this.fileHashes = new Map();
|
14
|
+
this.isInitialized = false;
|
15
|
+
}
|
16
|
+
ensureInitialized() {
|
17
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
18
|
+
if (!this.isInitialized) {
|
19
|
+
yield this.init();
|
20
|
+
}
|
21
|
+
});
|
22
|
+
}
|
23
|
+
allFileData() {
|
24
|
+
const res = [];
|
25
|
+
this.fileHashes.forEach((hash, file) => {
|
26
|
+
res.push({
|
27
|
+
file,
|
28
|
+
hash,
|
29
|
+
});
|
30
|
+
});
|
31
|
+
res.sort((x, y) => x.file.localeCompare(y.file));
|
32
|
+
return res;
|
33
|
+
}
|
34
|
+
incrementalUpdate(updatedFiles, deletedFiles = []) {
|
35
|
+
perf_hooks_1.performance.mark('incremental hashing:start');
|
36
|
+
updatedFiles.forEach((hash, filename) => {
|
37
|
+
this.fileHashes.set(filename, hash);
|
38
|
+
});
|
39
|
+
for (const deletedFile of deletedFiles) {
|
40
|
+
this.fileHashes.delete(deletedFile);
|
41
|
+
}
|
42
|
+
perf_hooks_1.performance.mark('incremental hashing:end');
|
43
|
+
perf_hooks_1.performance.measure('incremental hashing', 'incremental hashing:start', 'incremental hashing:end');
|
44
|
+
}
|
45
|
+
hashFile(path) {
|
46
|
+
const relativePath = path.startsWith(app_root_1.appRootPath)
|
47
|
+
? path.substr(app_root_1.appRootPath.length + 1)
|
48
|
+
: path;
|
49
|
+
if (this.fileHashes[relativePath]) {
|
50
|
+
return this.fileHashes[relativePath];
|
51
|
+
}
|
52
|
+
else {
|
53
|
+
try {
|
54
|
+
return hashing_impl_1.defaultHashing.hashFile(path);
|
55
|
+
}
|
56
|
+
catch (_a) {
|
57
|
+
return '';
|
58
|
+
}
|
59
|
+
}
|
60
|
+
}
|
61
|
+
}
|
62
|
+
exports.FileHasherBase = FileHasherBase;
|
63
|
+
//# sourceMappingURL=file-hasher-base.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"file-hasher-base.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/core/hasher/file-hasher-base.ts"],"names":[],"mappings":";;;;AAAA,2DAA2D;AAC3D,2CAAyC;AAEzC,iDAAgD;AAIhD,MAAsB,cAAc;IAApC;QAEY,kBAAa,GAAG,KAAK,CAAC;IAiElC,CAAC;IA/DC,KAAK;QACH,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC5C,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;IAMK,iBAAiB;;YACrB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;gBACvB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;aACnB;QACH,CAAC;KAAA;IAED,WAAW;QACT,MAAM,GAAG,GAAG,EAAE,CAAC;QACf,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;YACrC,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI;gBACJ,IAAI;aACL,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACjD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,iBAAiB,CACf,YAAiC,EACjC,eAAyB,EAAE;QAE3B,wBAAW,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAE9C,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;YACtC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;YACtC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;SACrC;QAED,wBAAW,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QAC5C,wBAAW,CAAC,OAAO,CACjB,qBAAqB,EACrB,2BAA2B,EAC3B,yBAAyB,CAC1B,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,IAAY;QACnB,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,sBAAW,CAAC;YAC/C,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAW,CAAC,MAAM,GAAG,CAAC,CAAC;YACrC,CAAC,CAAC,IAAI,CAAC;QACT,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;YACjC,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;SACtC;aAAM;YACL,IAAI;gBACF,OAAO,6BAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aACtC;YAAC,WAAM;gBACN,OAAO,EAAE,CAAC;aACX;SACF;IACH,CAAC;CACF;AAnED,wCAmEC"}
|
@@ -1,24 +1,2 @@
|
|
1
|
-
import {
|
2
|
-
export declare
|
3
|
-
private readonly hashing;
|
4
|
-
fileHashes: {
|
5
|
-
[path: string]: string;
|
6
|
-
};
|
7
|
-
workspaceFiles: Set<string>;
|
8
|
-
usesGitForHashing: boolean;
|
9
|
-
private isInitialized;
|
10
|
-
constructor(hashing: HashingImpl);
|
11
|
-
clear(): void;
|
12
|
-
/**
|
13
|
-
* For the project graph daemon server use-case we can potentially skip expensive work
|
14
|
-
* by leveraging knowledge of the uncommitted and untracked files, so the init() method
|
15
|
-
* returns a Map containing this data.
|
16
|
-
*/
|
17
|
-
init(): Promise<void>;
|
18
|
-
incrementalUpdate(updatedFiles: Map<string, string>, deletedFiles?: string[]): void;
|
19
|
-
hashFile(path: string): string;
|
20
|
-
ensureInitialized(): Promise<void>;
|
21
|
-
private applyFileHashes;
|
22
|
-
private processPath;
|
23
|
-
}
|
24
|
-
export declare const defaultFileHasher: FileHasher;
|
1
|
+
import { FileHasherBase } from './file-hasher-base';
|
2
|
+
export declare const defaultFileHasher: FileHasherBase;
|
@@ -1,101 +1,19 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.defaultFileHasher =
|
4
|
-
const
|
3
|
+
exports.defaultFileHasher = void 0;
|
4
|
+
const git_based_file_hasher_1 = require("./git-based-file-hasher");
|
5
|
+
const devkit_1 = require("@nrwl/devkit");
|
5
6
|
const app_root_1 = require("@nrwl/tao/src/utils/app-root");
|
6
|
-
const
|
7
|
-
const
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
this.fileHashes = {};
|
13
|
-
this.workspaceFiles = new Set();
|
14
|
-
this.usesGitForHashing = false;
|
15
|
-
this.isInitialized = false;
|
7
|
+
const node_based_file_hasher_1 = require("./node-based-file-hasher");
|
8
|
+
const fs_1 = require("fs");
|
9
|
+
function createFileHasher() {
|
10
|
+
try {
|
11
|
+
(0, fs_1.statSync)((0, devkit_1.joinPathFragments)(app_root_1.appRootPath, '.git')).isDirectory();
|
12
|
+
return new git_based_file_hasher_1.GitBasedFileHasher();
|
16
13
|
}
|
17
|
-
|
18
|
-
|
19
|
-
this.workspaceFiles = new Set();
|
20
|
-
this.usesGitForHashing = false;
|
21
|
-
this.isInitialized = false;
|
22
|
-
}
|
23
|
-
/**
|
24
|
-
* For the project graph daemon server use-case we can potentially skip expensive work
|
25
|
-
* by leveraging knowledge of the uncommitted and untracked files, so the init() method
|
26
|
-
* returns a Map containing this data.
|
27
|
-
*/
|
28
|
-
init() {
|
29
|
-
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
30
|
-
perf_hooks_1.performance.mark('init hashing:start');
|
31
|
-
this.clear();
|
32
|
-
const getFileHashesResult = yield (0, git_hasher_1.getFileHashes)(app_root_1.appRootPath);
|
33
|
-
this.applyFileHashes(getFileHashesResult.allFiles);
|
34
|
-
this.usesGitForHashing = Object.keys(this.fileHashes).length > 0;
|
35
|
-
this.isInitialized = true;
|
36
|
-
perf_hooks_1.performance.mark('init hashing:end');
|
37
|
-
perf_hooks_1.performance.measure('init hashing', 'init hashing:start', 'init hashing:end');
|
38
|
-
});
|
39
|
-
}
|
40
|
-
incrementalUpdate(updatedFiles, deletedFiles = []) {
|
41
|
-
if (!this.isInitialized) {
|
42
|
-
throw new Error(`Unexpected error. Hasher isn't initialized.`);
|
43
|
-
}
|
44
|
-
perf_hooks_1.performance.mark('incremental hashing:start');
|
45
|
-
updatedFiles.forEach((hash, filename) => {
|
46
|
-
this.fileHashes[filename] = hash;
|
47
|
-
/**
|
48
|
-
* we have to store it separately because fileHashes can be modified
|
49
|
-
* later on and can contain files that do not exist in the workspace
|
50
|
-
*/
|
51
|
-
this.workspaceFiles.add(filename);
|
52
|
-
});
|
53
|
-
for (const deletedFile of deletedFiles) {
|
54
|
-
delete this.fileHashes[deletedFile];
|
55
|
-
this.workspaceFiles.delete(deletedFile);
|
56
|
-
}
|
57
|
-
perf_hooks_1.performance.mark('incremental hashing:end');
|
58
|
-
perf_hooks_1.performance.measure('incremental hashing', 'incremental hashing:start', 'incremental hashing:end');
|
59
|
-
}
|
60
|
-
hashFile(path) {
|
61
|
-
if (!this.isInitialized) {
|
62
|
-
throw new Error(`Unexpected error. Hasher isn't initialized.`);
|
63
|
-
}
|
64
|
-
const relativePath = path.startsWith(app_root_1.appRootPath)
|
65
|
-
? path.substr(app_root_1.appRootPath.length + 1)
|
66
|
-
: path;
|
67
|
-
if (!this.fileHashes[relativePath]) {
|
68
|
-
this.fileHashes[relativePath] = this.processPath(path);
|
69
|
-
}
|
70
|
-
return this.fileHashes[relativePath];
|
71
|
-
}
|
72
|
-
ensureInitialized() {
|
73
|
-
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
74
|
-
if (!this.isInitialized) {
|
75
|
-
yield this.init();
|
76
|
-
}
|
77
|
-
});
|
78
|
-
}
|
79
|
-
applyFileHashes(allFiles) {
|
80
|
-
const sliceIndex = app_root_1.appRootPath.length + 1;
|
81
|
-
allFiles.forEach((hash, filename) => {
|
82
|
-
this.fileHashes[filename.substr(sliceIndex)] = hash;
|
83
|
-
/**
|
84
|
-
* we have to store it separately because fileHashes can be modified
|
85
|
-
* later on and can contain files that do not exist in the workspace
|
86
|
-
*/
|
87
|
-
this.workspaceFiles.add(filename.substr(sliceIndex));
|
88
|
-
});
|
89
|
-
}
|
90
|
-
processPath(path) {
|
91
|
-
try {
|
92
|
-
return this.hashing.hashFile(path);
|
93
|
-
}
|
94
|
-
catch (_a) {
|
95
|
-
return '';
|
96
|
-
}
|
14
|
+
catch (err) {
|
15
|
+
return new node_based_file_hasher_1.NodeBasedFileHasher();
|
97
16
|
}
|
98
17
|
}
|
99
|
-
exports.
|
100
|
-
exports.defaultFileHasher = new FileHasher(hashing_impl_1.defaultHashing);
|
18
|
+
exports.defaultFileHasher = createFileHasher();
|
101
19
|
//# sourceMappingURL=file-hasher.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"file-hasher.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/core/hasher/file-hasher.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"file-hasher.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/core/hasher/file-hasher.ts"],"names":[],"mappings":";;;AAAA,mEAA6D;AAC7D,yCAAiD;AACjD,2DAA2D;AAC3D,qEAA+D;AAE/D,2BAA8B;AAE9B,SAAS,gBAAgB;IACvB,IAAI;QACF,IAAA,aAAQ,EAAC,IAAA,0BAAiB,EAAC,sBAAW,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAC/D,OAAO,IAAI,0CAAkB,EAAE,CAAC;KACjC;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO,IAAI,4CAAmB,EAAE,CAAC;KAClC;AACH,CAAC;AAEY,QAAA,iBAAiB,GAAG,gBAAgB,EAAE,CAAC"}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import { FileHasherBase } from './file-hasher-base';
|
2
|
+
export declare class GitBasedFileHasher extends FileHasherBase {
|
3
|
+
/**
|
4
|
+
* For the project graph daemon server use-case we can potentially skip expensive work
|
5
|
+
* by leveraging knowledge of the uncommitted and untracked files, so the init() method
|
6
|
+
* returns a Map containing this data.
|
7
|
+
*/
|
8
|
+
init(): Promise<void>;
|
9
|
+
hashFiles(files: string[]): Promise<Map<string, string>>;
|
10
|
+
}
|
@@ -0,0 +1,50 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.GitBasedFileHasher = void 0;
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const app_root_1 = require("@nrwl/tao/src/utils/app-root");
|
6
|
+
const perf_hooks_1 = require("perf_hooks");
|
7
|
+
const git_hasher_1 = require("./git-hasher");
|
8
|
+
const fs_1 = require("fs");
|
9
|
+
const file_hasher_base_1 = require("./file-hasher-base");
|
10
|
+
const ignore = require('ignore');
|
11
|
+
class GitBasedFileHasher extends file_hasher_base_1.FileHasherBase {
|
12
|
+
/**
|
13
|
+
* For the project graph daemon server use-case we can potentially skip expensive work
|
14
|
+
* by leveraging knowledge of the uncommitted and untracked files, so the init() method
|
15
|
+
* returns a Map containing this data.
|
16
|
+
*/
|
17
|
+
init() {
|
18
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
19
|
+
perf_hooks_1.performance.mark('init hashing:start');
|
20
|
+
this.clear();
|
21
|
+
const gitResult = yield (0, git_hasher_1.getFileHashes)(app_root_1.appRootPath);
|
22
|
+
const ignore = getIgnoredGlobs();
|
23
|
+
gitResult.allFiles.forEach((hash, filename) => {
|
24
|
+
if (!ignore.ignores(filename)) {
|
25
|
+
this.fileHashes.set(filename, hash);
|
26
|
+
}
|
27
|
+
});
|
28
|
+
this.isInitialized = true;
|
29
|
+
perf_hooks_1.performance.mark('init hashing:end');
|
30
|
+
perf_hooks_1.performance.measure('init hashing', 'init hashing:start', 'init hashing:end');
|
31
|
+
});
|
32
|
+
}
|
33
|
+
hashFiles(files) {
|
34
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
35
|
+
return (yield (0, git_hasher_1.getGitHashForFiles)(files, app_root_1.appRootPath)).hashes;
|
36
|
+
});
|
37
|
+
}
|
38
|
+
}
|
39
|
+
exports.GitBasedFileHasher = GitBasedFileHasher;
|
40
|
+
function getIgnoredGlobs() {
|
41
|
+
if ((0, fs_1.existsSync)(`${app_root_1.appRootPath}/.nxignore`)) {
|
42
|
+
const ig = ignore();
|
43
|
+
ig.add((0, fs_1.readFileSync)(`${app_root_1.appRootPath}/.nxignore`, 'utf-8'));
|
44
|
+
return ig;
|
45
|
+
}
|
46
|
+
else {
|
47
|
+
return { ignores: (file) => false };
|
48
|
+
}
|
49
|
+
}
|
50
|
+
//# sourceMappingURL=git-based-file-hasher.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"git-based-file-hasher.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/core/hasher/git-based-file-hasher.ts"],"names":[],"mappings":";;;;AAAA,2DAA2D;AAC3D,2CAAyC;AACzC,6CAAiE;AACjE,2BAA8C;AAC9C,yDAAoD;AAEpD,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAEjC,MAAa,kBAAmB,SAAQ,iCAAc;IACpD;;;;OAIG;IACG,IAAI;;YACR,wBAAW,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACvC,IAAI,CAAC,KAAK,EAAE,CAAC;YAEb,MAAM,SAAS,GAAG,MAAM,IAAA,0BAAa,EAAC,sBAAW,CAAC,CAAC;YACnD,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;YACjC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC5C,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;oBAC7B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;iBACrC;YACH,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC1B,wBAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACrC,wBAAW,CAAC,OAAO,CACjB,cAAc,EACd,oBAAoB,EACpB,kBAAkB,CACnB,CAAC;QACJ,CAAC;KAAA;IAEK,SAAS,CAAC,KAAe;;YAC7B,OAAO,CAAC,MAAM,IAAA,+BAAkB,EAAC,KAAK,EAAE,sBAAW,CAAC,CAAC,CAAC,MAAM,CAAC;QAC/D,CAAC;KAAA;CACF;AA7BD,gDA6BC;AAED,SAAS,eAAe;IACtB,IAAI,IAAA,eAAU,EAAC,GAAG,sBAAW,YAAY,CAAC,EAAE;QAC1C,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QACpB,EAAE,CAAC,GAAG,CAAC,IAAA,iBAAY,EAAC,GAAG,sBAAW,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;QAC1D,OAAO,EAAE,CAAC;KACX;SAAM;QACL,OAAO,EAAE,OAAO,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC;KAC7C;AACH,CAAC"}
|
@@ -7,11 +7,10 @@ const fileutils_1 = require("../../utilities/fileutils");
|
|
7
7
|
const devkit_1 = require("@nrwl/devkit");
|
8
8
|
function getGitHashForFiles(potentialFilesToHash, path) {
|
9
9
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
10
|
-
const fullPaths = potentialFilesToHash.map((f) => (0, devkit_1.joinPathFragments)(path, f));
|
11
10
|
const filesToHash = [];
|
12
11
|
const deleted = [];
|
13
|
-
for (let f of
|
14
|
-
if ((0, fileutils_1.fileExists)(f)) {
|
12
|
+
for (let f of potentialFilesToHash) {
|
13
|
+
if ((0, fileutils_1.fileExists)((0, devkit_1.joinPathFragments)(path, f))) {
|
15
14
|
filesToHash.push(f);
|
16
15
|
}
|
17
16
|
else {
|
@@ -21,7 +20,7 @@ function getGitHashForFiles(potentialFilesToHash, path) {
|
|
21
20
|
const res = new Map();
|
22
21
|
if (filesToHash.length) {
|
23
22
|
const hashStdout = yield spawnProcess('git', ['hash-object', ...filesToHash], path);
|
24
|
-
const hashes = hashStdout.split('\n').filter((s) =>
|
23
|
+
const hashes = hashStdout.split('\n').filter((s) => !!s);
|
25
24
|
if (hashes.length !== filesToHash.length) {
|
26
25
|
throw new Error(`Passed ${filesToHash.length} file paths to Git to hash, but received ${hashes.length} hashes.`);
|
27
26
|
}
|
@@ -69,7 +68,7 @@ function getStagedFiles(path) {
|
|
69
68
|
continue;
|
70
69
|
const [_, hash, __, ...fileParts] = line.split(/\s/);
|
71
70
|
const fileName = fileParts.join(' ');
|
72
|
-
res.set(
|
71
|
+
res.set(fileName, hash);
|
73
72
|
}
|
74
73
|
return res;
|
75
74
|
});
|
@@ -77,14 +76,14 @@ function getStagedFiles(path) {
|
|
77
76
|
function getUnstagedFiles(path) {
|
78
77
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
79
78
|
const unstaged = yield spawnProcess('git', ['ls-files', '-m', '-z', '--exclude-standard', '.'], path);
|
80
|
-
const lines = unstaged.split('\0');
|
79
|
+
const lines = unstaged.split('\0').filter((f) => !!f);
|
81
80
|
return getGitHashForFiles(lines, path);
|
82
81
|
});
|
83
82
|
}
|
84
83
|
function getUntrackedFiles(path) {
|
85
84
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
86
85
|
const untracked = yield spawnProcess('git', ['ls-files', '--other', '-z', '--exclude-standard', '.'], path);
|
87
|
-
const lines = untracked.split('\0');
|
86
|
+
const lines = untracked.split('\0').filter((f) => !!f);
|
88
87
|
return getGitHashForFiles(lines, path);
|
89
88
|
});
|
90
89
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"git-hasher.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/core/hasher/git-hasher.ts"],"names":[],"mappings":";;;;AAAA,iDAAsC;AACtC,yDAAuD;AACvD,yCAAiD;AAEjD,SAAsB,kBAAkB,CACtC,oBAA8B,EAC9B,IAAY;;QAEZ,MAAM,
|
1
|
+
{"version":3,"file":"git-hasher.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/core/hasher/git-hasher.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,78 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.NodeBasedFileHasher = void 0;
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const app_root_1 = require("@nrwl/tao/src/utils/app-root");
|
6
|
+
const perf_hooks_1 = require("perf_hooks");
|
7
|
+
const path_1 = require("path");
|
8
|
+
const fs_1 = require("fs");
|
9
|
+
const file_hasher_base_1 = require("./file-hasher-base");
|
10
|
+
const devkit_1 = require("@nrwl/devkit");
|
11
|
+
const ignore = require('ignore');
|
12
|
+
class NodeBasedFileHasher extends file_hasher_base_1.FileHasherBase {
|
13
|
+
constructor() {
|
14
|
+
super(...arguments);
|
15
|
+
this.ignoredGlobs = getIgnoredGlobs();
|
16
|
+
}
|
17
|
+
init() {
|
18
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
19
|
+
perf_hooks_1.performance.mark('init hashing:start');
|
20
|
+
this.clear();
|
21
|
+
this.allFilesInDir(app_root_1.appRootPath, true);
|
22
|
+
perf_hooks_1.performance.mark('init hashing:end');
|
23
|
+
perf_hooks_1.performance.measure('init hashing', 'init hashing:start', 'init hashing:end');
|
24
|
+
});
|
25
|
+
}
|
26
|
+
hashFiles(files) {
|
27
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
28
|
+
const r = new Map();
|
29
|
+
for (let f of files) {
|
30
|
+
r.set(f, this.hashFile(f));
|
31
|
+
}
|
32
|
+
return r;
|
33
|
+
});
|
34
|
+
}
|
35
|
+
allFilesInDir(absoluteDirName, recurse = true) {
|
36
|
+
const relDirName = (0, path_1.relative)(app_root_1.appRootPath, absoluteDirName);
|
37
|
+
if (relDirName && this.ignoredGlobs.ignores(relDirName)) {
|
38
|
+
return;
|
39
|
+
}
|
40
|
+
try {
|
41
|
+
(0, fs_1.readdirSync)(absoluteDirName).forEach((c) => {
|
42
|
+
const absoluteChild = (0, path_1.join)(absoluteDirName, c);
|
43
|
+
const relChild = (0, path_1.relative)(app_root_1.appRootPath, absoluteChild);
|
44
|
+
if (this.ignoredGlobs.ignores(relChild)) {
|
45
|
+
return;
|
46
|
+
}
|
47
|
+
try {
|
48
|
+
const s = (0, fs_1.statSync)(absoluteChild);
|
49
|
+
if (!s.isDirectory()) {
|
50
|
+
this.fileHashes.set(relChild, this.hashFile(relChild));
|
51
|
+
}
|
52
|
+
else if (s.isDirectory() && recurse) {
|
53
|
+
this.allFilesInDir(absoluteChild, true);
|
54
|
+
}
|
55
|
+
}
|
56
|
+
catch (e) { }
|
57
|
+
});
|
58
|
+
}
|
59
|
+
catch (e) { }
|
60
|
+
}
|
61
|
+
}
|
62
|
+
exports.NodeBasedFileHasher = NodeBasedFileHasher;
|
63
|
+
function getIgnoredGlobs() {
|
64
|
+
const ig = ignore();
|
65
|
+
ig.add(readFileIfExisting(`${app_root_1.appRootPath}/.gitignore`));
|
66
|
+
ig.add(readFileIfExisting(`${app_root_1.appRootPath}/.nxignore`));
|
67
|
+
ig.add((0, devkit_1.stripIndents) `
|
68
|
+
node_modules
|
69
|
+
tmp
|
70
|
+
dist
|
71
|
+
build
|
72
|
+
`);
|
73
|
+
return ig;
|
74
|
+
}
|
75
|
+
function readFileIfExisting(path) {
|
76
|
+
return (0, fs_1.existsSync)(path) ? (0, fs_1.readFileSync)(path, 'utf-8') : '';
|
77
|
+
}
|
78
|
+
//# sourceMappingURL=node-based-file-hasher.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"node-based-file-hasher.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/core/hasher/node-based-file-hasher.ts"],"names":[],"mappings":";;;;AAAA,2DAA2D;AAC3D,2CAAyC;AAEzC,+BAAsC;AACtC,2BAAqE;AACrE,yDAAoD;AACpD,yCAA4C;AAE5C,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAEjC,MAAa,mBAAoB,SAAQ,iCAAc;IAAvD;;QACE,iBAAY,GAAG,eAAe,EAAE,CAAC;IAkDnC,CAAC;IAhDO,IAAI;;YACR,wBAAW,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACvC,IAAI,CAAC,KAAK,EAAE,CAAC;YAEb,IAAI,CAAC,aAAa,CAAC,sBAAW,EAAE,IAAI,CAAC,CAAC;YAEtC,wBAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACrC,wBAAW,CAAC,OAAO,CACjB,cAAc,EACd,oBAAoB,EACpB,kBAAkB,CACnB,CAAC;QACJ,CAAC;KAAA;IAEK,SAAS,CAAC,KAAe;;YAC7B,MAAM,CAAC,GAAG,IAAI,GAAG,EAAkB,CAAC;YACpC,KAAK,IAAI,CAAC,IAAI,KAAK,EAAE;gBACnB,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;aAC5B;YACD,OAAO,CAAC,CAAC;QACX,CAAC;KAAA;IAEO,aAAa,CACnB,eAAuB,EACvB,UAAmB,IAAI;QAEvB,MAAM,UAAU,GAAG,IAAA,eAAQ,EAAC,sBAAW,EAAE,eAAe,CAAC,CAAC;QAC1D,IAAI,UAAU,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YACvD,OAAO;SACR;QACD,IAAI;YACF,IAAA,gBAAW,EAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBACzC,MAAM,aAAa,GAAG,IAAA,WAAI,EAAC,eAAe,EAAE,CAAC,CAAC,CAAC;gBAC/C,MAAM,QAAQ,GAAG,IAAA,eAAQ,EAAC,sBAAW,EAAE,aAAa,CAAC,CAAC;gBACtD,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;oBACvC,OAAO;iBACR;gBACD,IAAI;oBACF,MAAM,CAAC,GAAG,IAAA,aAAQ,EAAC,aAAa,CAAC,CAAC;oBAClC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE;wBACpB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;qBACxD;yBAAM,IAAI,CAAC,CAAC,WAAW,EAAE,IAAI,OAAO,EAAE;wBACrC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;qBACzC;iBACF;gBAAC,OAAO,CAAC,EAAE,GAAE;YAChB,CAAC,CAAC,CAAC;SACJ;QAAC,OAAO,CAAC,EAAE,GAAE;IAChB,CAAC;CACF;AAnDD,kDAmDC;AAED,SAAS,eAAe;IACtB,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,GAAG,sBAAW,aAAa,CAAC,CAAC,CAAC;IACxD,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,GAAG,sBAAW,YAAY,CAAC,CAAC,CAAC;IACvD,EAAE,CAAC,GAAG,CAAC,IAAA,qBAAY,EAAA;;;;;KAKhB,CAAC,CAAC;IACL,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY;IACtC,OAAO,IAAA,eAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAY,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC7D,CAAC"}
|
@@ -17,11 +17,11 @@ const os = require("os");
|
|
17
17
|
const build_explicit_typescript_and_package_json_dependencies_1 = require("./build-dependencies/build-explicit-typescript-and-package-json-dependencies");
|
18
18
|
const nx_plugin_1 = require("@nrwl/tao/src/shared/nx-plugin");
|
19
19
|
const file_hasher_1 = require("../hasher/file-hasher");
|
20
|
+
const file_map_utils_1 = require("../file-map-utils");
|
20
21
|
function buildProjectGraph() {
|
21
22
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
22
|
-
yield file_hasher_1.defaultFileHasher.ensureInitialized();
|
23
23
|
const workspaceJson = (0, file_utils_1.readWorkspaceJson)();
|
24
|
-
const { projectFileMap, allWorkspaceFiles } = (0,
|
24
|
+
const { projectFileMap, allWorkspaceFiles } = (0, file_map_utils_1.createProjectFileMap)(workspaceJson, file_hasher_1.defaultFileHasher.allFileData());
|
25
25
|
const cacheEnabled = process.env.NX_CACHE_PROJECT_GRAPH !== 'false';
|
26
26
|
let cache = cacheEnabled ? (0, nx_deps_cache_1.readCache)() : null;
|
27
27
|
return (yield buildProjectGraphUsingProjectFileMap(workspaceJson, projectFileMap, allWorkspaceFiles, cache, cacheEnabled)).projectGraph;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"build-project-graph.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/core/project-graph/build-project-graph.ts"],"names":[],"mappings":";;;;AAAA,yCAasB;AACtB,2DAA2D;AAC3D,+BAA4B;AAC5B,2CAAyC;AACzC,4EAAuE;AACvE,
|
1
|
+
{"version":3,"file":"build-project-graph.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/core/project-graph/build-project-graph.ts"],"names":[],"mappings":"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"}
|
@@ -2,16 +2,15 @@
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.resetInternalState = exports.addUpdatedAndDeletedFiles = exports.getCachedSerializedProjectGraphPromise = void 0;
|
4
4
|
const tslib_1 = require("tslib");
|
5
|
-
const app_root_1 = require("@nrwl/tao/src/utils/app-root");
|
6
5
|
const perf_hooks_1 = require("perf_hooks");
|
7
6
|
const file_utils_1 = require("../../../file-utils");
|
8
7
|
const file_hasher_1 = require("../../../hasher/file-hasher");
|
9
|
-
const git_hasher_1 = require("../../../hasher/git-hasher");
|
10
8
|
const logger_1 = require("./logger");
|
11
9
|
const build_project_graph_1 = require("../../build-project-graph");
|
12
10
|
const nx_deps_cache_1 = require("../../../nx-deps/nx-deps-cache");
|
13
11
|
const fileutils_1 = require("../../../../utilities/fileutils");
|
14
12
|
const hashing_impl_1 = require("../../../hasher/hashing-impl");
|
13
|
+
const file_map_utils_1 = require("../../../file-map-utils");
|
15
14
|
let cachedSerializedProjectGraphPromise;
|
16
15
|
let projectFileMapWithFiles;
|
17
16
|
let currentProjectGraphCache;
|
@@ -77,7 +76,9 @@ function processCollectedUpdatedAndDeletedFiles() {
|
|
77
76
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
78
77
|
try {
|
79
78
|
perf_hooks_1.performance.mark('hash-watched-changes-start');
|
80
|
-
const updatedFiles =
|
79
|
+
const updatedFiles = yield file_hasher_1.defaultFileHasher.hashFiles([
|
80
|
+
...collectedUpdatedFiles.values(),
|
81
|
+
]);
|
81
82
|
const deletedFiles = [...collectedDeletedFiles.values()];
|
82
83
|
perf_hooks_1.performance.mark('hash-watched-changes-end');
|
83
84
|
perf_hooks_1.performance.measure('hash changed files from watcher', 'hash-watched-changes-start', 'hash-watched-changes-end');
|
@@ -88,12 +89,12 @@ function processCollectedUpdatedAndDeletedFiles() {
|
|
88
89
|
// when workspace config changes we cannot incrementally update project file map
|
89
90
|
if (workspaceConfigHash !== storedWorkspaceConfigHash) {
|
90
91
|
storedWorkspaceConfigHash = workspaceConfigHash;
|
91
|
-
projectFileMapWithFiles = (0,
|
92
|
+
projectFileMapWithFiles = (0, file_map_utils_1.createProjectFileMap)(workspaceJson, file_hasher_1.defaultFileHasher.allFileData());
|
92
93
|
}
|
93
94
|
else {
|
94
95
|
projectFileMapWithFiles = projectFileMapWithFiles
|
95
|
-
? (0,
|
96
|
-
: (0,
|
96
|
+
? (0, file_map_utils_1.updateProjectFileMap)(workspaceJson, projectFileMapWithFiles.projectFileMap, projectFileMapWithFiles.allWorkspaceFiles, updatedFiles, deletedFiles)
|
97
|
+
: (0, file_map_utils_1.createProjectFileMap)(workspaceJson, file_hasher_1.defaultFileHasher.allFileData());
|
97
98
|
}
|
98
99
|
collectedUpdatedFiles.clear();
|
99
100
|
collectedDeletedFiles.clear();
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"project-graph-incremental-recomputation.js","sourceRoot":"","sources":["../../../../../../../../packages/workspace/src/core/project-graph/daemon/server/project-graph-incremental-recomputation.ts"],"names":[],"mappings":";;;;
|
1
|
+
{"version":3,"file":"project-graph-incremental-recomputation.js","sourceRoot":"","sources":["../../../../../../../../packages/workspace/src/core/project-graph/daemon/server/project-graph-incremental-recomputation.ts"],"names":[],"mappings":"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"}
|
@@ -13,6 +13,7 @@ const watcher_1 = require("./watcher");
|
|
13
13
|
const project_graph_incremental_recomputation_1 = require("./project-graph-incremental-recomputation");
|
14
14
|
const fs_1 = require("fs");
|
15
15
|
const hashing_impl_1 = require("../../../hasher/hashing-impl");
|
16
|
+
const file_hasher_1 = require("@nrwl/workspace/src/core/hasher/file-hasher");
|
16
17
|
function respondToClient(socket, message) {
|
17
18
|
return new Promise((res) => {
|
18
19
|
socket.write(message, () => {
|
@@ -43,7 +44,7 @@ const server = (0, net_1.createServer)((socket) => (0, tslib_1.__awaiter)(void 0
|
|
43
44
|
const entry = list.getEntries()[0];
|
44
45
|
logger_1.serverLogger.log(`Time taken for '${entry.name}'`, `${entry.duration}ms`);
|
45
46
|
});
|
46
|
-
performanceObserver.observe({ entryTypes: ['measure']
|
47
|
+
performanceObserver.observe({ entryTypes: ['measure'] });
|
47
48
|
}
|
48
49
|
socket.on('data', (data) => (0, tslib_1.__awaiter)(void 0, void 0, void 0, function* () {
|
49
50
|
if (watcherError) {
|
@@ -179,6 +180,7 @@ function startServer() {
|
|
179
180
|
if (!socket_utils_1.isWindows) {
|
180
181
|
(0, socket_utils_1.killSocketOrPath)();
|
181
182
|
}
|
183
|
+
yield file_hasher_1.defaultFileHasher.ensureInitialized();
|
182
184
|
return new Promise((resolve, reject) => {
|
183
185
|
try {
|
184
186
|
server.listen(socket_utils_1.FULL_OS_SOCKET_PATH, () => (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|