@nrwl/workspace 13.4.5-beta.1 → 13.4.5-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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* () {
|