@appland/appmap 3.44.0 → 3.44.1
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/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
# [@appland/appmap-v3.44.1](https://github.com/getappmap/appmap-js/compare/@appland/appmap-v3.44.0...@appland/appmap-v3.44.1) (2022-10-10)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* More reliable polling in index --watch ([8b6d18d](https://github.com/getappmap/appmap-js/commit/8b6d18de00aa61c5f7308b00e902ec6a18e09a59))
|
|
7
|
+
|
|
1
8
|
# [@appland/appmap-v3.44.0](https://github.com/getappmap/appmap-js/compare/@appland/appmap-v3.43.2...@appland/appmap-v3.44.0) (2022-10-07)
|
|
2
9
|
|
|
3
10
|
|
|
@@ -12,6 +12,7 @@ const intersectMaps_1 = require("../lib/intersectMaps");
|
|
|
12
12
|
const telemetry_1 = __importDefault(require("../telemetry"));
|
|
13
13
|
const utils_1 = require("../utils");
|
|
14
14
|
const fingerprintQueue_1 = __importDefault(require("./fingerprintQueue"));
|
|
15
|
+
const globber_1 = __importDefault(require("./globber"));
|
|
15
16
|
class FingerprintWatchCommand {
|
|
16
17
|
constructor(directory) {
|
|
17
18
|
this.directory = directory;
|
|
@@ -38,30 +39,26 @@ class FingerprintWatchCommand {
|
|
|
38
39
|
}
|
|
39
40
|
}
|
|
40
41
|
async execute() {
|
|
41
|
-
// Index existing AppMap files
|
|
42
|
-
await (0, utils_1.listAppMapFiles)(this.directory, (file) => this.fpQueue.push(file));
|
|
43
42
|
this.fpQueue.process().then(() => {
|
|
44
43
|
this.fpQueue.handler.checkVersion = false;
|
|
45
44
|
});
|
|
46
45
|
const glob = `${this.directory}/**/*.appmap.json`;
|
|
46
|
+
this.poller = new globber_1.default(glob)
|
|
47
|
+
.on('add', this.added.bind(this))
|
|
48
|
+
.on('change', this.changed.bind(this))
|
|
49
|
+
.on('unlink', this.removed.bind(this));
|
|
50
|
+
const pollReady = new Promise((r) => { var _a; return (_a = this.poller) === null || _a === void 0 ? void 0 : _a.once('end', r); });
|
|
51
|
+
this.poller.start();
|
|
52
|
+
await pollReady;
|
|
47
53
|
this.watcher = (0, chokidar_1.watch)(glob, {
|
|
48
54
|
ignoreInitial: true,
|
|
49
55
|
ignored: ['**/node_modules/**', '**/.git/**'],
|
|
50
|
-
})
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
persistent: false,
|
|
57
|
-
});
|
|
58
|
-
// eslint-disable-next-line no-restricted-syntax
|
|
59
|
-
for (const ch of [this.watcher, this.poller]) {
|
|
60
|
-
ch.on('add', this.added.bind(this))
|
|
61
|
-
.on('change', this.changed.bind(this))
|
|
62
|
-
.on('unlink', this.removed.bind(this));
|
|
63
|
-
}
|
|
64
|
-
await Promise.all([this.watcher, this.poller].map((ch) => new Promise((resolve) => ch.on('ready', resolve))));
|
|
56
|
+
})
|
|
57
|
+
.on('add', this.added.bind(this))
|
|
58
|
+
.on('change', this.changed.bind(this))
|
|
59
|
+
.on('unlink', this.removed.bind(this));
|
|
60
|
+
const watchReady = new Promise((r) => { var _a; return (_a = this.watcher) === null || _a === void 0 ? void 0 : _a.once('ready', r); });
|
|
61
|
+
await Promise.all([pollReady, watchReady]);
|
|
65
62
|
this.ready();
|
|
66
63
|
}
|
|
67
64
|
async close() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fingerprintWatchCommand.js","sourceRoot":"","sources":["../../src/fingerprint/fingerprintWatchCommand.ts"],"names":[],"mappings":";;;;;AACA,uCAA4C;AAC5C,uCAAsD;AACtD,+BAAqC;AACrC,6EAAqD;AACrD,6EAAqD;AACrD,wDAAqD;AACrD,6DAAqC;AACrC,
|
|
1
|
+
{"version":3,"file":"fingerprintWatchCommand.js","sourceRoot":"","sources":["../../src/fingerprint/fingerprintWatchCommand.ts"],"names":[],"mappings":";;;;;AACA,uCAA4C;AAC5C,uCAAsD;AACtD,+BAAqC;AACrC,6EAAqD;AACrD,6EAAqD;AACrD,wDAAqD;AACrD,6DAAqC;AACrC,oCAAmC;AAEnC,0EAAkD;AAClD,wDAAgC;AAEhC,MAAqB,uBAAuB;IAe1C,YAAoB,SAAiB;QAAjB,cAAS,GAAT,SAAS,CAAQ;QAV7B,kBAAa,GAAG,CAAC,CAAC;QAWxB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,IAAA,WAAI,EAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QACzF,IAAI,CAAC,OAAO,GAAG,IAAI,0BAAgB,EAAE,CAAC;QAEtC,IAAI,yBAAe,CAAC,CAAC,MAAM,EAAE,EAAE;YAC7B,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAuB,CAAC;YACnF,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;YAChE,IAAI,CAAC,YAAY,IAAI,MAAM,CAAC,MAAM,CAAC;QACrC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAjBD,IAAW,YAAY;QACrB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,IAAY,YAAY,CAAC,KAAK;QAC5B,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;IAaD,aAAa;QACX,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YAC5C,IAAA,qBAAU,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC7B,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;SAC9B;IACH,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YAC/B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,SAAS,mBAAmB,CAAC;QAElD,IAAI,CAAC,MAAM,GAAG,IAAI,iBAAO,CAAC,IAAI,CAAC;aAC5B,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAChC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACrC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEzC,MAAM,SAAS,GAAG,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA,EAAA,CAAC,CAAC;QACxE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,MAAM,SAAS,CAAC;QAEhB,IAAI,CAAC,OAAO,GAAG,IAAA,gBAAK,EAAC,IAAI,EAAE;YACzB,aAAa,EAAE,IAAI;YACnB,OAAO,EAAE,CAAC,oBAAoB,EAAE,YAAY,CAAC;SAC9C,CAAC;aACC,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAChC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACrC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEzC,MAAM,UAAU,GAAG,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA,EAAA,CAAC,CAAC;QAE5E,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;QAE3C,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QACxE,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,IAAY;QAChB,IAAI,IAAA,eAAO,GAAE,EAAE;YACb,OAAO,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;SACvC;QACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,OAAO,CAAC,IAAY;QAClB,IAAI,IAAA,eAAO,GAAE,EAAE;YACb,OAAO,CAAC,IAAI,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;SACzC;QACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,OAAO,CAAC,IAAY;QAClB,OAAO,CAAC,IAAI,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAA,yBAAc,EAAC,IAAI,CAAC,WAAW,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YACnD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;SACnD;QACD,IAAI,IAAA,eAAO,GAAE,EAAE;YACb,OAAO,CAAC,IAAI,CAAC,uBAAuB,IAAA,cAAO,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;SAC/E;IACH,CAAC;IAED,OAAO,CAAC,IAAY;QAClB,8EAA8E;QAC9E,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE;YAClC,OAAO;SACR;QACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAEO,aAAa,CAAC,QAAoB;QACxC,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CACnC,IAAA,6BAAa,EAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,yBAAe,CAAC,CAAC,CAAC,OAAO,EAAE,CAC1D,CAAC;QACF,mBAAS,CAAC,SAAS,CAAC;YAClB,IAAI,EAAE,cAAc;YACpB,UAAU;YACV,OAAO,EAAE;gBACP,OAAO,EAAE,QAAQ,CAAC,MAAM;aACzB;SACF,CAAC,CAAC;IACL,CAAC;CACF;AAxHD,0CAwHC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const stream_1 = require("stream");
|
|
4
|
+
const glob_1 = require("glob");
|
|
5
|
+
const console_1 = require("console");
|
|
6
|
+
const promises_1 = require("fs/promises");
|
|
7
|
+
class Globber extends stream_1.EventEmitter {
|
|
8
|
+
constructor(pattern, interval = 1000) {
|
|
9
|
+
super();
|
|
10
|
+
this.pattern = pattern;
|
|
11
|
+
this.interval = interval;
|
|
12
|
+
this.running = false;
|
|
13
|
+
this.mtimes = new Map();
|
|
14
|
+
}
|
|
15
|
+
scanNow() {
|
|
16
|
+
(0, console_1.assert)(!this.currentGlob);
|
|
17
|
+
this.timeout = undefined;
|
|
18
|
+
this.currentGlob = new glob_1.Glob(this.pattern, { ignore: ['**/node_modules/**', '**/.git/**'] })
|
|
19
|
+
.on('end', this.scanEnd.bind(this))
|
|
20
|
+
.on('match', this.matchFound.bind(this));
|
|
21
|
+
}
|
|
22
|
+
start() {
|
|
23
|
+
this.running = true;
|
|
24
|
+
this.scanNow();
|
|
25
|
+
}
|
|
26
|
+
close() {
|
|
27
|
+
if (this.currentGlob)
|
|
28
|
+
this.currentGlob.abort();
|
|
29
|
+
if (this.timeout)
|
|
30
|
+
clearTimeout(this.timeout);
|
|
31
|
+
this.running = false;
|
|
32
|
+
this.currentGlob = undefined;
|
|
33
|
+
this.timeout = undefined;
|
|
34
|
+
}
|
|
35
|
+
scanEnd(found) {
|
|
36
|
+
this.currentGlob = undefined;
|
|
37
|
+
const files = new Set(found);
|
|
38
|
+
for (const f of this.mtimes.keys()) {
|
|
39
|
+
if (!files.has(f))
|
|
40
|
+
this.remove(f);
|
|
41
|
+
}
|
|
42
|
+
this.emit('end');
|
|
43
|
+
if (this.running)
|
|
44
|
+
this.timeout = setTimeout(this.scanNow.bind(this), this.interval);
|
|
45
|
+
}
|
|
46
|
+
matchFound(file) {
|
|
47
|
+
(0, promises_1.stat)(file).then((stat) => this.update(file, stat), () => this.remove(file));
|
|
48
|
+
}
|
|
49
|
+
update(file, { mtimeMs }) {
|
|
50
|
+
const oldTime = this.mtimes.get(file);
|
|
51
|
+
if (oldTime === mtimeMs)
|
|
52
|
+
return;
|
|
53
|
+
this.mtimes.set(file, mtimeMs);
|
|
54
|
+
const event = oldTime ? 'change' : 'add';
|
|
55
|
+
this.emit(event, file);
|
|
56
|
+
}
|
|
57
|
+
remove(file) {
|
|
58
|
+
{
|
|
59
|
+
this.mtimes.delete(file);
|
|
60
|
+
this.emit('unlink', file);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
exports.default = Globber;
|
|
65
|
+
//# sourceMappingURL=globber.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"globber.js","sourceRoot":"","sources":["../../src/fingerprint/globber.ts"],"names":[],"mappings":"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"}
|