@eggjs/core 7.0.0-beta.35 → 7.0.0-beta.36
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/dist/base_context_class.d.ts +19 -14
- package/dist/base_context_class.js +39 -36
- package/dist/egg.d.ts +279 -277
- package/dist/egg.js +394 -426
- package/dist/index.d.ts +12 -12
- package/dist/index.js +12 -12
- package/dist/lifecycle.d.ts +79 -75
- package/dist/lifecycle.js +280 -306
- package/dist/loader/context_loader.d.ts +34 -30
- package/dist/loader/context_loader.js +76 -99
- package/dist/loader/egg_loader.d.ts +370 -366
- package/dist/loader/egg_loader.js +1169 -1567
- package/dist/loader/file_loader.d.ts +99 -95
- package/dist/loader/file_loader.js +190 -241
- package/dist/singleton.d.ts +31 -27
- package/dist/singleton.js +107 -117
- package/dist/types.d.ts +54 -51
- package/dist/utils/index.d.ts +16 -14
- package/dist/utils/index.js +96 -105
- package/dist/utils/sequencify.d.ts +13 -10
- package/dist/utils/sequencify.js +44 -58
- package/dist/utils/timing.d.ts +22 -19
- package/dist/utils/timing.js +85 -92
- package/package.json +35 -40
- package/dist/types.js +0 -2
package/dist/utils/sequencify.js
CHANGED
|
@@ -1,60 +1,46 @@
|
|
|
1
|
-
import { debuglog } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
tasks, names, result, missing, recursive, nest, optional, parent) {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
sequence(tasks, node.optionalDependencies, result, missing, recursive, nest, true, name);
|
|
29
|
-
}
|
|
30
|
-
nest.pop();
|
|
31
|
-
}
|
|
32
|
-
if (!optional) {
|
|
33
|
-
result.requires[name] = true;
|
|
34
|
-
debug('task: %s is enabled by %s', name, parent);
|
|
35
|
-
}
|
|
36
|
-
if (!result.sequence.includes(name)) {
|
|
37
|
-
result.sequence.push(name);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
1
|
+
import { debuglog } from "node:util";
|
|
2
|
+
|
|
3
|
+
//#region src/utils/sequencify.ts
|
|
4
|
+
const debug = debuglog("egg/core/utils/sequencify");
|
|
5
|
+
function sequence(tasks, names, result, missing, recursive, nest, optional, parent) {
|
|
6
|
+
for (const name of names) {
|
|
7
|
+
if (result.requires[name]) continue;
|
|
8
|
+
const node = tasks[name];
|
|
9
|
+
if (!node) {
|
|
10
|
+
if (optional === true) continue;
|
|
11
|
+
missing.push(name);
|
|
12
|
+
} else if (nest.includes(name)) {
|
|
13
|
+
nest.push(name);
|
|
14
|
+
recursive.push(...nest.slice(0));
|
|
15
|
+
nest.pop();
|
|
16
|
+
} else if (node.dependencies.length > 0 || node.optionalDependencies.length > 0) {
|
|
17
|
+
nest.push(name);
|
|
18
|
+
if (node.dependencies.length > 0) sequence(tasks, node.dependencies, result, missing, recursive, nest, optional, name);
|
|
19
|
+
if (node.optionalDependencies.length > 0) sequence(tasks, node.optionalDependencies, result, missing, recursive, nest, true, name);
|
|
20
|
+
nest.pop();
|
|
21
|
+
}
|
|
22
|
+
if (!optional) {
|
|
23
|
+
result.requires[name] = true;
|
|
24
|
+
debug("task: %s is enabled by %s", name, parent);
|
|
25
|
+
}
|
|
26
|
+
if (!result.sequence.includes(name)) result.sequence.push(name);
|
|
27
|
+
}
|
|
40
28
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
sequence: result.sequence.filter((item) => result.requires[item]),
|
|
56
|
-
missingTasks: missing,
|
|
57
|
-
recursiveDependencies: recursive,
|
|
58
|
-
};
|
|
29
|
+
function sequencify(tasks, names) {
|
|
30
|
+
const result = {
|
|
31
|
+
sequence: [],
|
|
32
|
+
requires: {}
|
|
33
|
+
};
|
|
34
|
+
const missing = [];
|
|
35
|
+
const recursive = [];
|
|
36
|
+
sequence(tasks, names, result, missing, recursive, [], false, "app");
|
|
37
|
+
if (missing.length > 0 || recursive.length > 0) result.sequence = [];
|
|
38
|
+
return {
|
|
39
|
+
sequence: result.sequence.filter((item) => result.requires[item]),
|
|
40
|
+
missingTasks: missing,
|
|
41
|
+
recursiveDependencies: recursive
|
|
42
|
+
};
|
|
59
43
|
}
|
|
60
|
-
|
|
44
|
+
|
|
45
|
+
//#endregion
|
|
46
|
+
export { sequencify };
|
package/dist/utils/timing.d.ts
CHANGED
|
@@ -1,21 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
//#region src/utils/timing.d.ts
|
|
2
|
+
interface TimingItem {
|
|
3
|
+
name: string;
|
|
4
|
+
start: number;
|
|
5
|
+
end?: number;
|
|
6
|
+
duration?: number;
|
|
7
|
+
pid: number;
|
|
8
|
+
index: number;
|
|
8
9
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
10
|
+
declare class Timing {
|
|
11
|
+
#private;
|
|
12
|
+
constructor();
|
|
13
|
+
init(): void;
|
|
14
|
+
start(name?: string, start?: number): TimingItem | undefined;
|
|
15
|
+
end(name?: string): TimingItem | undefined;
|
|
16
|
+
enable(): void;
|
|
17
|
+
disable(): void;
|
|
18
|
+
clear(): void;
|
|
19
|
+
toJSON(): TimingItem[];
|
|
20
|
+
itemToString(timelineEnd: number, item: TimingItem, times: number): string;
|
|
21
|
+
toString(prefix?: string, width?: number): string;
|
|
21
22
|
}
|
|
23
|
+
//#endregion
|
|
24
|
+
export { Timing, TimingItem };
|
package/dist/utils/timing.js
CHANGED
|
@@ -1,92 +1,85 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
times = width / timelineDuration;
|
|
87
|
-
}
|
|
88
|
-
// follow https://github.com/node-modules/time-profile/blob/master/lib/profiler.js#L88
|
|
89
|
-
return prefix + EOL + this.#list.map((item) => this.itemToString(timelineEnd, item, times)).join(EOL);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL3RpbWluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLE1BQU0sTUFBTSxhQUFhLENBQUM7QUFDakMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM5QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXJDLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0FBV2hELE1BQU0sT0FBTyxNQUFNO0lBQ2pCLE9BQU8sQ0FBVTtJQUNqQixVQUFVLENBQVM7SUFDbkIsSUFBSSxDQUEwQjtJQUM5QixLQUFLLENBQWU7SUFDcEI7UUFDRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVELElBQUk7UUFDRixxQkFBcUI7UUFDckIsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDOUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUUxQixJQUFJLGlCQUFpQixJQUFJLE9BQU8sSUFBSSxPQUFPLE9BQU8sQ0FBQyxlQUFlLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDaEYsK0JBQStCO1lBQy9CLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUNwRCxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FB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
|
|
1
|
+
import { debuglog } from "node:util";
|
|
2
|
+
import assert from "node:assert";
|
|
3
|
+
import { EOL } from "node:os";
|
|
4
|
+
|
|
5
|
+
//#region src/utils/timing.ts
|
|
6
|
+
const debug = debuglog("egg/core/utils/timing");
|
|
7
|
+
var Timing = class {
|
|
8
|
+
#enable;
|
|
9
|
+
#startTime;
|
|
10
|
+
#map;
|
|
11
|
+
#list;
|
|
12
|
+
constructor() {
|
|
13
|
+
this.#enable = true;
|
|
14
|
+
this.#map = /* @__PURE__ */ new Map();
|
|
15
|
+
this.#list = [];
|
|
16
|
+
this.init();
|
|
17
|
+
}
|
|
18
|
+
init() {
|
|
19
|
+
this.start("Process Start", Date.now() - Math.floor(process.uptime() * 1e3));
|
|
20
|
+
this.end("Process Start");
|
|
21
|
+
if ("scriptStartTime" in process && typeof process.scriptStartTime === "number") {
|
|
22
|
+
this.start("Script Start", process.scriptStartTime);
|
|
23
|
+
this.end("Script Start");
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
start(name, start) {
|
|
27
|
+
if (!name || !this.#enable) return;
|
|
28
|
+
if (this.#map.has(name)) this.end(name);
|
|
29
|
+
start = start || Date.now();
|
|
30
|
+
if (!this.#startTime) this.#startTime = start;
|
|
31
|
+
const item = {
|
|
32
|
+
name,
|
|
33
|
+
start,
|
|
34
|
+
pid: process.pid,
|
|
35
|
+
index: this.#list.length
|
|
36
|
+
};
|
|
37
|
+
this.#map.set(name, item);
|
|
38
|
+
this.#list.push(item);
|
|
39
|
+
debug("start %j", item);
|
|
40
|
+
return item;
|
|
41
|
+
}
|
|
42
|
+
end(name) {
|
|
43
|
+
if (!name || !this.#enable) return;
|
|
44
|
+
const item = this.#map.get(name);
|
|
45
|
+
assert(item, `should run timing.start('${name}') first`);
|
|
46
|
+
item.end = Date.now();
|
|
47
|
+
item.duration = item.end - item.start;
|
|
48
|
+
debug("end %j", item);
|
|
49
|
+
return item;
|
|
50
|
+
}
|
|
51
|
+
enable() {
|
|
52
|
+
this.#enable = true;
|
|
53
|
+
}
|
|
54
|
+
disable() {
|
|
55
|
+
this.#enable = false;
|
|
56
|
+
}
|
|
57
|
+
clear() {
|
|
58
|
+
this.#map.clear();
|
|
59
|
+
this.#list = [];
|
|
60
|
+
}
|
|
61
|
+
toJSON() {
|
|
62
|
+
return this.#list;
|
|
63
|
+
}
|
|
64
|
+
itemToString(timelineEnd, item, times) {
|
|
65
|
+
const isEnd = typeof item.duration === "number";
|
|
66
|
+
const duration = isEnd ? item.duration : timelineEnd - item.start;
|
|
67
|
+
const offset = item.start - this.#startTime;
|
|
68
|
+
const status = `${duration}ms${isEnd ? "" : " NOT_END"}`;
|
|
69
|
+
const timespan = Math.floor(Number((offset * times).toFixed(6)));
|
|
70
|
+
let timeline = Math.floor(Number((duration * times).toFixed(6)));
|
|
71
|
+
timeline = timeline > 0 ? timeline : 1;
|
|
72
|
+
const message = `#${item.index} ${item.name}`;
|
|
73
|
+
return " ".repeat(timespan) + "▇".repeat(timeline) + ` [${status}] - ${message}`;
|
|
74
|
+
}
|
|
75
|
+
toString(prefix = "egg start timeline:", width = 50) {
|
|
76
|
+
const timelineEnd = Date.now();
|
|
77
|
+
const timelineDuration = timelineEnd - this.#startTime;
|
|
78
|
+
let times = 1;
|
|
79
|
+
if (timelineDuration > width) times = width / timelineDuration;
|
|
80
|
+
return prefix + EOL + this.#list.map((item) => this.itemToString(timelineEnd, item, times)).join(EOL);
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
//#endregion
|
|
85
|
+
export { Timing };
|
package/package.json
CHANGED
|
@@ -1,39 +1,36 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eggjs/core",
|
|
3
|
-
"version": "7.0.0-beta.
|
|
4
|
-
"
|
|
5
|
-
|
|
3
|
+
"version": "7.0.0-beta.36",
|
|
4
|
+
"description": "A core plugin framework based on @eggjs/koa",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"egg",
|
|
7
|
+
"loader"
|
|
8
|
+
],
|
|
9
|
+
"homepage": "https://github.com/eggjs/egg/tree/next/packages/core",
|
|
10
|
+
"bugs": {
|
|
11
|
+
"url": "https://github.com/eggjs/egg/issues"
|
|
12
|
+
},
|
|
13
|
+
"license": "MIT",
|
|
14
|
+
"author": "fengmk2 <fengmk2@gmail.com>",
|
|
15
|
+
"repository": {
|
|
16
|
+
"type": "git",
|
|
17
|
+
"url": "git+https://github.com/eggjs/egg.git",
|
|
18
|
+
"directory": "packages/core"
|
|
6
19
|
},
|
|
7
20
|
"files": [
|
|
8
21
|
"dist"
|
|
9
22
|
],
|
|
10
23
|
"type": "module",
|
|
11
|
-
"exports": {
|
|
12
|
-
".": "./dist/index.js",
|
|
13
|
-
"./package.json": "./package.json"
|
|
14
|
-
},
|
|
15
24
|
"main": "./dist/index.js",
|
|
16
25
|
"module": "./dist/index.js",
|
|
17
26
|
"types": "./dist/index.d.ts",
|
|
18
|
-
"
|
|
19
|
-
"
|
|
20
|
-
|
|
21
|
-
"description": "A core plugin framework based on @eggjs/koa",
|
|
22
|
-
"repository": {
|
|
23
|
-
"type": "git",
|
|
24
|
-
"url": "git+https://github.com/eggjs/egg.git",
|
|
25
|
-
"directory": "packages/core"
|
|
27
|
+
"exports": {
|
|
28
|
+
".": "./dist/index.js",
|
|
29
|
+
"./package.json": "./package.json"
|
|
26
30
|
},
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"loader"
|
|
30
|
-
],
|
|
31
|
-
"author": "fengmk2 <fengmk2@gmail.com>",
|
|
32
|
-
"license": "MIT",
|
|
33
|
-
"bugs": {
|
|
34
|
-
"url": "https://github.com/eggjs/egg/issues"
|
|
31
|
+
"publishConfig": {
|
|
32
|
+
"access": "public"
|
|
35
33
|
},
|
|
36
|
-
"homepage": "https://github.com/eggjs/egg/tree/next/packages/core",
|
|
37
34
|
"dependencies": {
|
|
38
35
|
"egg-logger": "^3.5.0",
|
|
39
36
|
"get-ready": "^3.1.0",
|
|
@@ -44,32 +41,30 @@
|
|
|
44
41
|
"ready-callback": "^4.0.0",
|
|
45
42
|
"tsconfig-paths": "^4.2.0",
|
|
46
43
|
"utility": "^2.5.0",
|
|
47
|
-
"@eggjs/
|
|
48
|
-
"@eggjs/
|
|
49
|
-
"@eggjs/
|
|
50
|
-
"@eggjs/
|
|
51
|
-
"@eggjs/
|
|
44
|
+
"@eggjs/extend2": "5.0.0-beta.36",
|
|
45
|
+
"@eggjs/path-matching": "3.0.0-beta.36",
|
|
46
|
+
"@eggjs/router": "4.0.0-beta.36",
|
|
47
|
+
"@eggjs/koa": "3.1.0-beta.36",
|
|
48
|
+
"@eggjs/utils": "5.0.0-beta.36"
|
|
52
49
|
},
|
|
53
50
|
"devDependencies": {
|
|
54
|
-
"@types/js-yaml": "4",
|
|
51
|
+
"@types/js-yaml": "^4.0.9",
|
|
55
52
|
"await-event": "2",
|
|
56
53
|
"coffee": "5",
|
|
57
|
-
"husky": "^9.1.7",
|
|
58
|
-
"prettier": "^3.7.4",
|
|
59
54
|
"gals": "1",
|
|
55
|
+
"husky": "^9.1.7",
|
|
60
56
|
"js-yaml": "^4.1.1",
|
|
61
57
|
"mm": "^4.0.2",
|
|
62
|
-
"tsdown": "^0.17.0",
|
|
63
58
|
"typescript": "^5.9.3",
|
|
64
59
|
"urllib": "^4.8.2",
|
|
65
|
-
"@eggjs/mock": "7.0.0-beta.
|
|
66
|
-
"@eggjs/
|
|
67
|
-
"@eggjs/
|
|
60
|
+
"@eggjs/mock": "7.0.0-beta.36",
|
|
61
|
+
"@eggjs/tsconfig": "3.1.0-beta.36",
|
|
62
|
+
"@eggjs/supertest": "9.0.0-beta.36"
|
|
63
|
+
},
|
|
64
|
+
"engines": {
|
|
65
|
+
"node": ">=22.18.0"
|
|
68
66
|
},
|
|
69
67
|
"scripts": {
|
|
70
|
-
"
|
|
71
|
-
"lint": "oxlint",
|
|
72
|
-
"typecheck": "tsc --noEmit",
|
|
73
|
-
"test": "vitest run"
|
|
68
|
+
"typecheck": "tsgo --noEmit"
|
|
74
69
|
}
|
|
75
70
|
}
|
package/dist/types.js
DELETED