exisjs 0.7.4 → 0.7.6
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/cli/commands/build.d.ts +4 -2
- package/dist/cli/commands/build.d.ts.map +1 -1
- package/dist/cli/commands/build.js +80 -22
- package/dist/cli/commands/build.js.map +1 -1
- package/dist/cli/commands/dev.d.ts.map +1 -1
- package/dist/cli/commands/dev.js +229 -64
- package/dist/cli/commands/dev.js.map +1 -1
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/doctor.js +5 -2
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/generate.d.ts +1 -0
- package/dist/cli/commands/generate.d.ts.map +1 -1
- package/dist/cli/commands/generate.js +25 -0
- package/dist/cli/commands/generate.js.map +1 -1
- package/dist/cli/commands/start.d.ts.map +1 -1
- package/dist/cli/commands/start.js +65 -15
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/index.js +20 -4
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/manifest.d.ts.map +1 -1
- package/dist/cli/manifest.js +118 -17
- package/dist/cli/manifest.js.map +1 -1
- package/dist/cli/resolve-aliases.d.ts +1 -1
- package/dist/cli/resolve-aliases.d.ts.map +1 -1
- package/dist/cli/resolve-aliases.js +30 -13
- package/dist/cli/resolve-aliases.js.map +1 -1
- package/dist/config/config.d.ts +3 -1
- package/dist/config/config.d.ts.map +1 -1
- package/dist/config/config.js.map +1 -1
- package/dist/config/env.d.ts.map +1 -1
- package/dist/config/env.js +8 -0
- package/dist/config/env.js.map +1 -1
- package/dist/config/types.d.ts +2 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/decorators/constants.d.ts +2 -0
- package/dist/decorators/constants.d.ts.map +1 -1
- package/dist/decorators/middleware.d.ts +65 -2
- package/dist/decorators/middleware.d.ts.map +1 -1
- package/dist/decorators/middleware.js +148 -62
- package/dist/decorators/middleware.js.map +1 -1
- package/dist/decorators/params.d.ts +5 -0
- package/dist/decorators/params.d.ts.map +1 -1
- package/dist/decorators/params.js +11 -1
- package/dist/decorators/params.js.map +1 -1
- package/dist/decorators/response.d.ts.map +1 -1
- package/dist/decorators/response.js +32 -22
- package/dist/decorators/response.js.map +1 -1
- package/dist/di/container.d.ts.map +1 -1
- package/dist/di/container.js +6 -1
- package/dist/di/container.js.map +1 -1
- package/dist/docs/content/boundaries.mdx +33 -3
- package/dist/docs/content/cli/commands.mdx +1 -1
- package/dist/docs/content/config.mdx +26 -0
- package/dist/docs/content/controllers.mdx +127 -10
- package/dist/docs/content/decorators.mdx +22 -4
- package/dist/docs/content/errors.mdx +38 -2
- package/dist/docs/content/introduction.mdx +7 -7
- package/dist/docs/content/middleware.mdx +269 -6
- package/dist/docs/content/requests.mdx +217 -10
- package/dist/docs/content/responses.mdx +323 -34
- package/dist/docs/content/routing.mdx +46 -0
- package/dist/docs/content/security.mdx +17 -4
- package/dist/docs/content/structure.mdx +91 -12
- package/dist/docs/content/validation.mdx +226 -11
- package/dist/docs/reference/context.mdx +11 -0
- package/dist/docs/reference/decorators.mdx +14 -4
- package/dist/docs/reference/error.mdx +44 -0
- package/dist/docs/reference/logger.mdx +175 -43
- package/dist/docs/reference/middleware.mdx +31 -0
- package/dist/docs/reference/router.mdx +22 -0
- package/dist/docs/reference/validator.mdx +83 -23
- package/dist/error/errors.d.ts.map +1 -1
- package/dist/error/errors.js +95 -43
- package/dist/error/errors.js.map +1 -1
- package/dist/error/index.d.ts +1 -0
- package/dist/error/index.d.ts.map +1 -1
- package/dist/error/index.js +11 -1
- package/dist/error/index.js.map +1 -1
- package/dist/error/overlay.d.ts +42 -0
- package/dist/error/overlay.d.ts.map +1 -0
- package/dist/error/overlay.js +306 -0
- package/dist/error/overlay.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +22 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/start-server.js +49 -7
- package/dist/lib/start-server.js.map +1 -1
- package/dist/logger/index.d.ts +1 -1
- package/dist/logger/index.d.ts.map +1 -1
- package/dist/logger/index.js +9 -1
- package/dist/logger/index.js.map +1 -1
- package/dist/middleware/guard.d.ts +2 -2
- package/dist/middleware/guard.d.ts.map +1 -1
- package/dist/middleware/guard.js.map +1 -1
- package/dist/middleware/ip-filter.d.ts +1 -0
- package/dist/middleware/ip-filter.d.ts.map +1 -1
- package/dist/middleware/ip-filter.js +2 -0
- package/dist/middleware/ip-filter.js.map +1 -1
- package/dist/middleware/middleware.d.ts +2 -2
- package/dist/middleware/middleware.d.ts.map +1 -1
- package/dist/middleware/middleware.js +20 -2
- package/dist/middleware/middleware.js.map +1 -1
- package/dist/middleware/rate-limit.d.ts.map +1 -1
- package/dist/middleware/rate-limit.js +9 -0
- package/dist/middleware/rate-limit.js.map +1 -1
- package/dist/middleware/security.d.ts +43 -1
- package/dist/middleware/security.d.ts.map +1 -1
- package/dist/middleware/security.js +101 -0
- package/dist/middleware/security.js.map +1 -1
- package/dist/response/index.d.ts +229 -6
- package/dist/response/index.d.ts.map +1 -1
- package/dist/response/index.js +272 -2
- package/dist/response/index.js.map +1 -1
- package/dist/router/boundary.d.ts +25 -5
- package/dist/router/boundary.d.ts.map +1 -1
- package/dist/router/boundary.js.map +1 -1
- package/dist/router/controller-registrar.d.ts.map +1 -1
- package/dist/router/controller-registrar.js +56 -1
- package/dist/router/controller-registrar.js.map +1 -1
- package/dist/router/index.d.ts +2 -2
- package/dist/router/index.d.ts.map +1 -1
- package/dist/router/index.js +2 -1
- package/dist/router/index.js.map +1 -1
- package/dist/router/route-builder.d.ts +70 -36
- package/dist/router/route-builder.d.ts.map +1 -1
- package/dist/router/route-builder.js +13 -15
- package/dist/router/route-builder.js.map +1 -1
- package/dist/router/route-scanner.d.ts +1 -0
- package/dist/router/route-scanner.d.ts.map +1 -1
- package/dist/router/route-scanner.js +217 -10
- package/dist/router/route-scanner.js.map +1 -1
- package/dist/router/router.d.ts.map +1 -1
- package/dist/router/router.js +35 -17
- package/dist/router/router.js.map +1 -1
- package/dist/router/types.d.ts +11 -1
- package/dist/router/types.d.ts.map +1 -1
- package/dist/sanitize/index.d.ts +6 -6
- package/dist/sanitize/index.d.ts.map +1 -1
- package/dist/sanitize/index.js +8 -8
- package/dist/sanitize/index.js.map +1 -1
- package/dist/server/app.d.ts +2 -0
- package/dist/server/app.d.ts.map +1 -1
- package/dist/server/app.js +14 -0
- package/dist/server/app.js.map +1 -1
- package/dist/server/bootstrapper.d.ts.map +1 -1
- package/dist/server/bootstrapper.js +91 -30
- package/dist/server/bootstrapper.js.map +1 -1
- package/dist/server/cluster.d.ts.map +1 -1
- package/dist/server/cluster.js +13 -2
- package/dist/server/cluster.js.map +1 -1
- package/dist/server/context.d.ts +8 -0
- package/dist/server/context.d.ts.map +1 -1
- package/dist/server/context.js +50 -6
- package/dist/server/context.js.map +1 -1
- package/dist/server/engines/node-engine.d.ts.map +1 -1
- package/dist/server/engines/node-engine.js +1 -0
- package/dist/server/engines/node-engine.js.map +1 -1
- package/dist/server/lifecycle.d.ts +22 -0
- package/dist/server/lifecycle.d.ts.map +1 -0
- package/dist/server/lifecycle.js +106 -0
- package/dist/server/lifecycle.js.map +1 -0
- package/dist/server/request-handler.d.ts +1 -0
- package/dist/server/request-handler.d.ts.map +1 -1
- package/dist/server/request-handler.js +42 -18
- package/dist/server/request-handler.js.map +1 -1
- package/dist/server/request.d.ts +6 -0
- package/dist/server/request.d.ts.map +1 -1
- package/dist/server/request.js +112 -33
- package/dist/server/request.js.map +1 -1
- package/dist/server/response.d.ts +13 -2
- package/dist/server/response.d.ts.map +1 -1
- package/dist/server/response.js +250 -10
- package/dist/server/response.js.map +1 -1
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +6 -1
- package/dist/testing/index.js.map +1 -1
- package/dist/testing/mocks.d.ts.map +1 -1
- package/dist/testing/mocks.js +15 -3
- package/dist/testing/mocks.js.map +1 -1
- package/dist/utils/logger.d.ts +8 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +184 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/validator/tex-types.d.ts +2 -1
- package/dist/validator/tex-types.d.ts.map +1 -1
- package/dist/validator/tex-types.js +2 -1
- package/dist/validator/tex-types.js.map +1 -1
- package/dist/validator/tex.d.ts +38 -22
- package/dist/validator/tex.d.ts.map +1 -1
- package/dist/validator/tex.js +490 -40
- package/dist/validator/tex.js.map +1 -1
- package/package.json +10 -10
- package/dist/dev/error-overlay.d.ts +0 -3
- package/dist/dev/error-overlay.d.ts.map +0 -1
- package/dist/dev/error-overlay.js +0 -118
- package/dist/dev/error-overlay.js.map +0 -1
|
@@ -193,15 +193,53 @@ class ServerBootstrapper {
|
|
|
193
193
|
return;
|
|
194
194
|
finishCalled = true;
|
|
195
195
|
try {
|
|
196
|
-
|
|
197
|
-
|
|
196
|
+
// Close engine listener
|
|
197
|
+
if (this.engine) {
|
|
198
|
+
try {
|
|
199
|
+
await this.engine.close();
|
|
200
|
+
}
|
|
201
|
+
catch {
|
|
202
|
+
// ignore engine close error
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
const runHookSafely = async (hook, hookName, hookTimeoutMs) => {
|
|
206
|
+
let timer;
|
|
207
|
+
const timeoutPromise = new Promise((_, rejectTimeout) => {
|
|
208
|
+
timer = setTimeout(() => {
|
|
209
|
+
rejectTimeout(new Error(`[exis] ${hookName} exceeded timeout of ${hookTimeoutMs}ms`));
|
|
210
|
+
}, hookTimeoutMs);
|
|
211
|
+
timer.unref?.();
|
|
212
|
+
});
|
|
213
|
+
try {
|
|
214
|
+
await Promise.race([Promise.resolve(hook()), timeoutPromise]);
|
|
215
|
+
}
|
|
216
|
+
catch (err) {
|
|
217
|
+
this.app.log.error({ err: err?.message || err }, `Error executing ${hookName}`);
|
|
218
|
+
}
|
|
219
|
+
finally {
|
|
220
|
+
if (timer)
|
|
221
|
+
clearTimeout(timer);
|
|
222
|
+
}
|
|
223
|
+
};
|
|
224
|
+
const perHookTimeout = Math.max(1000, Math.floor(timeout / 2));
|
|
225
|
+
// Execute shutdown hooks
|
|
226
|
+
for (let i = 0; i < this.shutdownHooks.length; i++) {
|
|
227
|
+
await runHookSafely(() => this.shutdownHooks[i](), `shutdownHook[${i}]`, perHookTimeout);
|
|
198
228
|
}
|
|
199
229
|
// Also execute onClose hooks
|
|
200
|
-
for (
|
|
201
|
-
await
|
|
230
|
+
for (let i = 0; i < this.app.hooks.close.length; i++) {
|
|
231
|
+
await runHookSafely(() => this.app.hooks.close[i](), `onClose hook[${i}]`, perHookTimeout);
|
|
202
232
|
}
|
|
203
233
|
if (this.app.onCloseHook) {
|
|
204
|
-
await this.app.onCloseHook(this.app);
|
|
234
|
+
await runHookSafely(() => this.app.onCloseHook(this.app), 'app.onClose', perHookTimeout);
|
|
235
|
+
}
|
|
236
|
+
// Automatically unregister process-level listeners registered during App lifetime
|
|
237
|
+
try {
|
|
238
|
+
const { ProcessLifecycle } = await Promise.resolve().then(() => __importStar(require('./lifecycle')));
|
|
239
|
+
ProcessLifecycle.cleanup();
|
|
240
|
+
}
|
|
241
|
+
catch {
|
|
242
|
+
// ignore
|
|
205
243
|
}
|
|
206
244
|
if (!isCLI)
|
|
207
245
|
this.app.log.info('Graceful shutdown completed');
|
|
@@ -216,39 +254,62 @@ class ServerBootstrapper {
|
|
|
216
254
|
finish();
|
|
217
255
|
return;
|
|
218
256
|
}
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
257
|
+
// Stop accepting new incoming requests immediately
|
|
258
|
+
try {
|
|
259
|
+
if ('server' in this.engine && this.engine.server) {
|
|
260
|
+
;
|
|
261
|
+
this.engine.server.close?.();
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
catch {
|
|
265
|
+
// ignore
|
|
266
|
+
}
|
|
223
267
|
// Close idle keep-alive connections immediately
|
|
224
268
|
if ('closeIdleConnections' in this.engine) {
|
|
225
|
-
|
|
226
|
-
|
|
269
|
+
try {
|
|
270
|
+
;
|
|
271
|
+
this.engine.closeIdleConnections?.();
|
|
272
|
+
}
|
|
273
|
+
catch {
|
|
274
|
+
// ignore
|
|
275
|
+
}
|
|
227
276
|
}
|
|
228
|
-
let
|
|
277
|
+
let timer = null;
|
|
278
|
+
let done = false;
|
|
279
|
+
const finishOnce = async () => {
|
|
280
|
+
if (done)
|
|
281
|
+
return;
|
|
282
|
+
done = true;
|
|
283
|
+
if (timer)
|
|
284
|
+
clearTimeout(timer);
|
|
285
|
+
clearInterval(checkIdle);
|
|
286
|
+
await finish();
|
|
287
|
+
};
|
|
288
|
+
const checkIdle = setInterval(() => {
|
|
289
|
+
if (request_handler_1.RequestHandler.activeRequests === 0) {
|
|
290
|
+
finishOnce();
|
|
291
|
+
}
|
|
292
|
+
}, 50);
|
|
293
|
+
checkIdle.unref();
|
|
229
294
|
// Set timeout to force close active connections
|
|
230
|
-
|
|
295
|
+
timer = setTimeout(() => {
|
|
231
296
|
this.app.log.warn(`Shutdown timeout of ${timeout}ms exceeded, forcefully terminating active connections`);
|
|
232
297
|
if ('closeAllConnections' in this.engine) {
|
|
233
|
-
|
|
234
|
-
|
|
298
|
+
try {
|
|
299
|
+
;
|
|
300
|
+
this.engine.closeAllConnections?.();
|
|
301
|
+
}
|
|
302
|
+
catch {
|
|
303
|
+
// ignore
|
|
304
|
+
}
|
|
235
305
|
}
|
|
236
|
-
|
|
237
|
-
clearInterval(checkIdle);
|
|
238
|
-
finish(); // Ensure finish is called on timeout
|
|
306
|
+
finishOnce();
|
|
239
307
|
}, timeout);
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
clearTimeout(timer);
|
|
246
|
-
await finish();
|
|
247
|
-
}
|
|
248
|
-
}, 100);
|
|
249
|
-
};
|
|
250
|
-
this.engine.close();
|
|
251
|
-
cleanupAndFinish();
|
|
308
|
+
timer.unref();
|
|
309
|
+
// Initial check in case activeRequests is already 0
|
|
310
|
+
if (request_handler_1.RequestHandler.activeRequests === 0) {
|
|
311
|
+
finishOnce();
|
|
312
|
+
}
|
|
252
313
|
});
|
|
253
314
|
}
|
|
254
315
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrapper.js","sourceRoot":"","sources":["../../src/server/bootstrapper.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"bootstrapper.js","sourceRoot":"","sources":["../../src/server/bootstrapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cluster.d.ts","sourceRoot":"","sources":["../../src/server/cluster.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,aAAa;IAC5B;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,CAAA;IAE3C;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;IAEjB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAmCD;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EACpC,MAAM,CAAC,EAAE,aAAa,QAgBvB;
|
|
1
|
+
{"version":3,"file":"cluster.d.ts","sourceRoot":"","sources":["../../src/server/cluster.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,aAAa;IAC5B;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,CAAA;IAE3C;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;IAEjB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAmCD;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EACpC,MAAM,CAAC,EAAE,aAAa,QAgBvB;AA4ID;;GAEG;AACH,eAAO,MAAM,WAAW;IACtB,2EAA2E;wBAC1D,OAAO;IAIxB,uDAAuD;uBACvC,OAAO;IAIvB,sDAAsD;uBACtC,MAAM,GAAG,SAAS;IAIlC,mEAAmE;0BAChD,MAAM;CAG1B,CAAA"}
|
package/dist/server/cluster.js
CHANGED
|
@@ -131,9 +131,20 @@ function primaryProcess(workerCount, config) {
|
|
|
131
131
|
return;
|
|
132
132
|
isShuttingDown = true;
|
|
133
133
|
console.log(`\n ${c.primary}[exis-cluster]${c.reset} Received ${c.yellow}${signal}${c.reset}, shutting down workers...`);
|
|
134
|
-
// Send SIGTERM to all workers and let them close gracefully
|
|
134
|
+
// Send IPC shutdown message and SIGTERM to all workers and let them close gracefully
|
|
135
135
|
for (const id in node_cluster_1.default.workers) {
|
|
136
|
-
|
|
136
|
+
try {
|
|
137
|
+
node_cluster_1.default.workers[id]?.send({ type: 'exis:shutdown' });
|
|
138
|
+
}
|
|
139
|
+
catch {
|
|
140
|
+
// ignore
|
|
141
|
+
}
|
|
142
|
+
try {
|
|
143
|
+
node_cluster_1.default.workers[id]?.process.kill('SIGTERM');
|
|
144
|
+
}
|
|
145
|
+
catch {
|
|
146
|
+
// ignore
|
|
147
|
+
}
|
|
137
148
|
}
|
|
138
149
|
// Give workers a grace period to shut down, then force kill
|
|
139
150
|
const forceTimeout = setTimeout(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cluster.js","sourceRoot":"","sources":["../../src/server/cluster.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cluster.js","sourceRoot":"","sources":["../../src/server/cluster.ts"],"names":[],"mappings":"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"}
|
package/dist/server/context.d.ts
CHANGED
|
@@ -9,8 +9,16 @@ export interface InternalContext {
|
|
|
9
9
|
res: Response;
|
|
10
10
|
app: App;
|
|
11
11
|
diCache: Map<any, any>;
|
|
12
|
+
cleanedUp?: boolean;
|
|
12
13
|
}
|
|
13
14
|
export declare const executionContext: AsyncLocalStorage<InternalContext>;
|
|
15
|
+
/**
|
|
16
|
+
* Safely executes remaining after() callbacks, clears request-scoped DI cache,
|
|
17
|
+
* purges state objects, and breaks circular references to ensure zero memory leaks.
|
|
18
|
+
*/
|
|
19
|
+
export declare function cleanupContext(store: InternalContext, logger?: {
|
|
20
|
+
error: (data: any, msg: string) => void;
|
|
21
|
+
}): void;
|
|
14
22
|
/**
|
|
15
23
|
* Retrieves the current request context state.
|
|
16
24
|
* Must be called during an active request lifecycle.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/server/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACjD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAEhC,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAE7C,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,WAAW,CAAA;IAClB,cAAc,EAAE,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAA;IAC9C,GAAG,EAAE,OAAO,CAAA;IACZ,GAAG,EAAE,QAAQ,CAAA;IACb,GAAG,EAAE,GAAG,CAAA;IACR,OAAO,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/server/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACjD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAEhC,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAE7C,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,WAAW,CAAA;IAClB,cAAc,EAAE,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAA;IAC9C,GAAG,EAAE,OAAO,CAAA;IACZ,GAAG,EAAE,QAAQ,CAAA;IACb,GAAG,EAAE,GAAG,CAAA;IACR,OAAO,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACtB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,eAAO,MAAM,gBAAgB,oCAA2C,CAAA;AAExE;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,eAAe,EACtB,MAAM,CAAC,EAAE;IAAE,KAAK,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,GACnD,IAAI,CAuCN;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,CAAC,GAAG,WAAW,KAAK,CAAC,CAQ/C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI,CAQxD;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,OAAO,CAQpC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,QAAQ,CAQtC;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAQhE;AAED;;GAEG;AACH,wBAAgB,MAAM,IAAI,GAAG,CAQ5B"}
|
package/dist/server/context.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.executionContext = void 0;
|
|
4
|
+
exports.cleanupContext = cleanupContext;
|
|
4
5
|
exports.getContext = getContext;
|
|
5
6
|
exports.setContext = setContext;
|
|
6
7
|
exports.getRequest = getRequest;
|
|
@@ -9,13 +10,56 @@ exports.after = after;
|
|
|
9
10
|
exports.getApp = getApp;
|
|
10
11
|
const node_async_hooks_1 = require("node:async_hooks");
|
|
11
12
|
exports.executionContext = new node_async_hooks_1.AsyncLocalStorage();
|
|
13
|
+
/**
|
|
14
|
+
* Safely executes remaining after() callbacks, clears request-scoped DI cache,
|
|
15
|
+
* purges state objects, and breaks circular references to ensure zero memory leaks.
|
|
16
|
+
*/
|
|
17
|
+
function cleanupContext(store, logger) {
|
|
18
|
+
if (!store || store.cleanedUp)
|
|
19
|
+
return;
|
|
20
|
+
store.cleanedUp = true;
|
|
21
|
+
// 1. Drain and execute after() callbacks safely
|
|
22
|
+
if (store.afterCallbacks && store.afterCallbacks.length > 0) {
|
|
23
|
+
while (store.afterCallbacks.length > 0) {
|
|
24
|
+
const cb = store.afterCallbacks.shift();
|
|
25
|
+
if (cb) {
|
|
26
|
+
try {
|
|
27
|
+
const r = cb();
|
|
28
|
+
if (r instanceof Promise) {
|
|
29
|
+
r.catch((e) => {
|
|
30
|
+
logger?.error({ err: e }, 'Error in after() callback');
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
catch (e) {
|
|
35
|
+
logger?.error({ err: e }, 'Error in after() callback');
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
// 2. Clear request-scoped DI cache
|
|
41
|
+
if (store.diCache) {
|
|
42
|
+
store.diCache.clear();
|
|
43
|
+
}
|
|
44
|
+
// 3. Purge request state
|
|
45
|
+
if (store.state) {
|
|
46
|
+
for (const key of Object.keys(store.state)) {
|
|
47
|
+
delete store.state[key];
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
// 4. Break circular references to allow V8 GC collection
|
|
51
|
+
;
|
|
52
|
+
store.req = null;
|
|
53
|
+
store.res = null;
|
|
54
|
+
store.app = null;
|
|
55
|
+
}
|
|
12
56
|
/**
|
|
13
57
|
* Retrieves the current request context state.
|
|
14
58
|
* Must be called during an active request lifecycle.
|
|
15
59
|
*/
|
|
16
60
|
function getContext() {
|
|
17
61
|
const store = exports.executionContext.getStore();
|
|
18
|
-
if (!store) {
|
|
62
|
+
if (!store || store.cleanedUp) {
|
|
19
63
|
throw new Error('getContext() must be called during an active request lifecycle. Ensure asyncContext: true is set in createApp() options.');
|
|
20
64
|
}
|
|
21
65
|
return store.state;
|
|
@@ -26,7 +70,7 @@ function getContext() {
|
|
|
26
70
|
*/
|
|
27
71
|
function setContext(key, value) {
|
|
28
72
|
const store = exports.executionContext.getStore();
|
|
29
|
-
if (!store) {
|
|
73
|
+
if (!store || store.cleanedUp) {
|
|
30
74
|
throw new Error('setContext() can only be called inside an active Exis request handler.');
|
|
31
75
|
}
|
|
32
76
|
store.state[key] = value;
|
|
@@ -36,7 +80,7 @@ function setContext(key, value) {
|
|
|
36
80
|
*/
|
|
37
81
|
function getRequest() {
|
|
38
82
|
const store = exports.executionContext.getStore();
|
|
39
|
-
if (!store) {
|
|
83
|
+
if (!store || store.cleanedUp || !store.req) {
|
|
40
84
|
throw new Error('getRequest() can only be called inside an active Exis request handler.');
|
|
41
85
|
}
|
|
42
86
|
return store.req;
|
|
@@ -46,7 +90,7 @@ function getRequest() {
|
|
|
46
90
|
*/
|
|
47
91
|
function getResponse() {
|
|
48
92
|
const store = exports.executionContext.getStore();
|
|
49
|
-
if (!store) {
|
|
93
|
+
if (!store || store.cleanedUp || !store.res) {
|
|
50
94
|
throw new Error('getResponse() can only be called inside an active Exis request handler.');
|
|
51
95
|
}
|
|
52
96
|
return store.res;
|
|
@@ -56,7 +100,7 @@ function getResponse() {
|
|
|
56
100
|
*/
|
|
57
101
|
function after(callback) {
|
|
58
102
|
const store = exports.executionContext.getStore();
|
|
59
|
-
if (!store) {
|
|
103
|
+
if (!store || store.cleanedUp) {
|
|
60
104
|
throw new Error('after() must be called during an active request lifecycle. Ensure asyncContext: true is set in createApp() options.');
|
|
61
105
|
}
|
|
62
106
|
store.afterCallbacks.push(callback);
|
|
@@ -66,7 +110,7 @@ function after(callback) {
|
|
|
66
110
|
*/
|
|
67
111
|
function getApp() {
|
|
68
112
|
const store = exports.executionContext.getStore();
|
|
69
|
-
if (!store) {
|
|
113
|
+
if (!store || store.cleanedUp || !store.app) {
|
|
70
114
|
throw new Error('getApp() can only be called inside an active Exis request handler.');
|
|
71
115
|
}
|
|
72
116
|
return store.app;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/server/context.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/server/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-engine.d.ts","sourceRoot":"","sources":["../../../src/server/engines/node-engine.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,WAAW,CAAA;AAErD,OAAO,KAAK,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,YAAY,CAAA;AAEvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEhD,qBAAa,UAAW,YAAW,UAAU;IAK/B,OAAO,CAAC,GAAG;IAJvB,SAAgB,IAAI,UAAS;IAC7B,OAAO,CAAC,MAAM,CAA+C;IACtD,cAAc,EAAE,UAAU,GAAG,IAAI,CAAO;gBAE3B,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC;IAEjC,OAAO,CAAC,WAAW;IA0CnB,MAAM,CACJ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,CAAC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAC1D,UAAU,GAAG,WAAW,GAAG,iBAAiB;IA4EzC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"node-engine.d.ts","sourceRoot":"","sources":["../../../src/server/engines/node-engine.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,WAAW,CAAA;AAErD,OAAO,KAAK,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,YAAY,CAAA;AAEvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEhD,qBAAa,UAAW,YAAW,UAAU;IAK/B,OAAO,CAAC,GAAG;IAJvB,SAAgB,IAAI,UAAS;IAC7B,OAAO,CAAC,MAAM,CAA+C;IACtD,cAAc,EAAE,UAAU,GAAG,IAAI,CAAO;gBAE3B,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC;IAEjC,OAAO,CAAC,WAAW;IA0CnB,MAAM,CACJ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,CAAC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAC1D,UAAU,GAAG,WAAW,GAAG,iBAAiB;IA4EzC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAe5B,oBAAoB;IAMpB,mBAAmB;CAKpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-engine.js","sourceRoot":"","sources":["../../../src/server/engines/node-engine.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"node-engine.js","sourceRoot":"","sources":["../../../src/server/engines/node-engine.ts"],"names":[],"mappings":";;;AAAA,yCAA4D;AAE5D,2CAA8D;AAE9D,2CAAoE;AAMpE,MAAa,UAAU;IAKrB,YAAoB,GAAa;QAAb,QAAG,GAAH,GAAG,CAAU;QAJjB,SAAI,GAAG,MAAM,CAAA;QAEtB,mBAAc,GAAsB,IAAI,CAAA;IAEX,CAAC;IAE7B,WAAW;QACjB,IAAI,MAAoD,CAAA;QAExD,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;gBACrC,MAAM,GAAG,IAAA,+BAAiB,EACxB,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,EAC7C,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAGpB,CACV,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,IAAA,yBAAiB,EACxB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EACpB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAC/B,CAAA;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,IAAA,wBAAgB,EAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;QAC3D,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAA;QAC5C,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,QAAQ,GAAG,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;YACpD,IAAI,kBAAkB,IAAI,MAAM;gBAC9B,MAAM,CAAC,gBAAgB,GAAG,QAAQ,CAAC,SAAS,IAAI,IAAI,CAAA;YACtD,IAAI,gBAAgB,IAAI,MAAM;gBAC5B,MAAM,CAAC,cAAc,GAAG,QAAQ,CAAC,gBAAgB,IAAI,KAAK,CAAA;YAC5D,IACE,QAAQ,CAAC,WAAW,KAAK,SAAS;gBAClC,sBAAsB,IAAI,MAAM,EAChC,CAAC;gBACD,CAAC;gBACC,MACD,CAAC,oBAAoB,GAAG,QAAQ,CAAC,WAAW,CAAA;YAC/C,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,CACJ,IAAY,EACZ,IAAY,EACZ,OAAsB,EACtB,QAA2D;QAE3D,sDAAsD;QACtD,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAA;QACpC,CAAC;QACD,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACvC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAA;QACtD,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAEhC,IACE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG;YACpB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,KAAK,SAAS;YAC3C,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,KAAK,KAAK,EACvC,CAAC;YACD,MAAM,YAAY,GAChB,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,KAAK,QAAQ;gBAC/C,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY;gBAC/B,CAAC,CAAC,EAAE,CAAA;YACR,IAAI,CAAC,cAAc,GAAG,IAAA,wBAAgB,EAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBAClD,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAA;gBAC1D,MAAM,UAAU,GACd,IAAI,KAAK,CAAC;oBACR,CAAC,CAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAqC,EAAE,IAAI;wBAC/D,IAAI;oBACN,CAAC,CAAC,IAAI,CAAA;gBACV,MAAM,UAAU,GAAG,UAAU,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,UAAU,EAAE,CAAA;gBAC7D,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;oBACjB,QAAQ,EAAE,WAAW,UAAU,GAAG,UAAU,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE;iBAChE,CAAC,CAAA;gBACF,GAAG,CAAC,GAAG,EAAE,CAAA;YACX,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,EAAE,GAAG,EAAE;gBAClD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CACf,qCAAqC,YAAY,kBAAkB,IAAI,EAAE,CAC1E,CAAA;YACH,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAQ,EAAE,EAAE;YACnC,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC9B,OAAO,CAAC,KAAK,CAAC,oBAAoB,IAAI,4BAA4B,CAAC,CAAA;gBACnE,OAAO,CAAC,KAAK,CACX,uEAAuE,CACxE,CAAA;gBACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACjB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,wBAAwB,CAAC,CAAA;gBACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACjB,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,EAAE;YACxC,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;YAE9B,uBAAuB;YACvB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;gBACxC,MAAM,IAAI,EAAE,CAAA;YACd,CAAC;YAED,IAAI,QAAQ,EAAE,CAAC;gBACb,QAAQ,CAAC,OAAO,CAAC,CAAA;YACnB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;oBAC9D,MAAM,GAAG,GAAG,UAAU,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,EAAE,CAAA;oBACvE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CACf,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,EAClC,qBAAqB,GAAG,EAAE,CAC3B,CAAA;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAA;QAC7B,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,oBAAoB,EAAE,CAAA;YAC3B,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC1C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE;oBAC7B,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,wBAAwB;wBAAE,MAAM,CAAC,GAAG,CAAC,CAAA;;wBACxD,OAAO,EAAE,CAAA;gBAChB,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,oBAAoB;QAClB,IAAI,IAAI,CAAC,MAAM,IAAI,sBAAsB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACzD,CAAC;YAAC,IAAI,CAAC,MAAc,CAAC,oBAAoB,EAAE,CAAA;QAC9C,CAAC;IACH,CAAC;IAED,mBAAmB;QACjB,IAAI,IAAI,CAAC,MAAM,IAAI,qBAAqB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACxD,CAAC;YAAC,IAAI,CAAC,MAAc,CAAC,mBAAmB,EAAE,CAAA;QAC7C,CAAC;IACH,CAAC;CACF;AA5JD,gCA4JC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ProcessLifecycle
|
|
3
|
+
*
|
|
4
|
+
* Tracks and unregisters process-level event listeners (e.g. unhandledRejection,
|
|
5
|
+
* uncaughtException, SIGINT, SIGTERM, custom process listeners) and background
|
|
6
|
+
* interval timers registered during an ExisJS App's lifetime to prevent memory leaks,
|
|
7
|
+
* zombie handles, and socket binding collisions across hot-reloads and restarts.
|
|
8
|
+
*/
|
|
9
|
+
export declare class ProcessLifecycle {
|
|
10
|
+
private static trackedListeners;
|
|
11
|
+
private static trackedIntervals;
|
|
12
|
+
private static originalOn;
|
|
13
|
+
private static originalAddListener;
|
|
14
|
+
private static originalOnce;
|
|
15
|
+
private static originalSetInterval;
|
|
16
|
+
private static originalClearInterval;
|
|
17
|
+
private static isIntercepting;
|
|
18
|
+
static startTracking(): void;
|
|
19
|
+
static cleanup(): void;
|
|
20
|
+
static restore(): void;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/server/lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAGvB;IACR,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAA4B;IAC3D,OAAO,CAAC,MAAM,CAAC,UAAU,CAAiC;IAC1D,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAA0C;IAC5E,OAAO,CAAC,MAAM,CAAC,YAAY,CAAmC;IAC9D,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAC5B;IACN,OAAO,CAAC,MAAM,CAAC,qBAAqB,CAC9B;IACN,OAAO,CAAC,MAAM,CAAC,cAAc,CAAQ;WAEvB,aAAa,IAAI,IAAI;WA0ErB,OAAO,IAAI,IAAI;WAwBf,OAAO,IAAI,IAAI;CAc9B"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProcessLifecycle = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* ProcessLifecycle
|
|
6
|
+
*
|
|
7
|
+
* Tracks and unregisters process-level event listeners (e.g. unhandledRejection,
|
|
8
|
+
* uncaughtException, SIGINT, SIGTERM, custom process listeners) and background
|
|
9
|
+
* interval timers registered during an ExisJS App's lifetime to prevent memory leaks,
|
|
10
|
+
* zombie handles, and socket binding collisions across hot-reloads and restarts.
|
|
11
|
+
*/
|
|
12
|
+
class ProcessLifecycle {
|
|
13
|
+
static startTracking() {
|
|
14
|
+
if (this.isIntercepting)
|
|
15
|
+
return;
|
|
16
|
+
this.isIntercepting = true;
|
|
17
|
+
this.originalOn = process.on;
|
|
18
|
+
this.originalAddListener = process.addListener;
|
|
19
|
+
this.originalOnce = process.once;
|
|
20
|
+
this.originalSetInterval = globalThis.setInterval;
|
|
21
|
+
this.originalClearInterval = globalThis.clearInterval;
|
|
22
|
+
process.on = function (event, listener) {
|
|
23
|
+
ProcessLifecycle.trackedListeners.push({ event, listener });
|
|
24
|
+
return ProcessLifecycle.originalOn.call(process, event, listener);
|
|
25
|
+
};
|
|
26
|
+
process.addListener = function (event, listener) {
|
|
27
|
+
ProcessLifecycle.trackedListeners.push({ event, listener });
|
|
28
|
+
return ProcessLifecycle.originalAddListener.call(process, event, listener);
|
|
29
|
+
};
|
|
30
|
+
process.once = function (event, listener) {
|
|
31
|
+
const wrappedListener = function (...args) {
|
|
32
|
+
const index = ProcessLifecycle.trackedListeners.findIndex((t) => t.listener === wrappedListener);
|
|
33
|
+
if (index !== -1)
|
|
34
|
+
ProcessLifecycle.trackedListeners.splice(index, 1);
|
|
35
|
+
return listener.apply(this, args);
|
|
36
|
+
};
|
|
37
|
+
ProcessLifecycle.trackedListeners.push({
|
|
38
|
+
event,
|
|
39
|
+
listener: wrappedListener,
|
|
40
|
+
});
|
|
41
|
+
return ProcessLifecycle.originalOnce.call(process, event, wrappedListener);
|
|
42
|
+
};
|
|
43
|
+
globalThis.setInterval = function (handler, timeout, ...args) {
|
|
44
|
+
const timer = ProcessLifecycle.originalSetInterval(handler, timeout, ...args);
|
|
45
|
+
ProcessLifecycle.trackedIntervals.add(timer);
|
|
46
|
+
return timer;
|
|
47
|
+
};
|
|
48
|
+
globalThis.clearInterval = function (timer) {
|
|
49
|
+
if (timer && typeof timer === 'object') {
|
|
50
|
+
ProcessLifecycle.trackedIntervals.delete(timer);
|
|
51
|
+
}
|
|
52
|
+
return ProcessLifecycle.originalClearInterval(timer);
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
static cleanup() {
|
|
56
|
+
for (const { event, listener } of this.trackedListeners) {
|
|
57
|
+
try {
|
|
58
|
+
process.removeListener(event, listener);
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
/* ignore */
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
this.trackedListeners = [];
|
|
65
|
+
for (const timer of this.trackedIntervals) {
|
|
66
|
+
try {
|
|
67
|
+
if (this.originalClearInterval) {
|
|
68
|
+
this.originalClearInterval(timer);
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
clearInterval(timer);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
catch {
|
|
75
|
+
/* ignore */
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
this.trackedIntervals.clear();
|
|
79
|
+
}
|
|
80
|
+
static restore() {
|
|
81
|
+
this.cleanup();
|
|
82
|
+
if (this.isIntercepting) {
|
|
83
|
+
if (this.originalOn)
|
|
84
|
+
process.on = this.originalOn;
|
|
85
|
+
if (this.originalAddListener)
|
|
86
|
+
process.addListener = this.originalAddListener;
|
|
87
|
+
if (this.originalOnce)
|
|
88
|
+
process.once = this.originalOnce;
|
|
89
|
+
if (this.originalSetInterval)
|
|
90
|
+
globalThis.setInterval = this.originalSetInterval;
|
|
91
|
+
if (this.originalClearInterval)
|
|
92
|
+
globalThis.clearInterval = this.originalClearInterval;
|
|
93
|
+
this.isIntercepting = false;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
exports.ProcessLifecycle = ProcessLifecycle;
|
|
98
|
+
ProcessLifecycle.trackedListeners = [];
|
|
99
|
+
ProcessLifecycle.trackedIntervals = new Set();
|
|
100
|
+
ProcessLifecycle.originalOn = null;
|
|
101
|
+
ProcessLifecycle.originalAddListener = null;
|
|
102
|
+
ProcessLifecycle.originalOnce = null;
|
|
103
|
+
ProcessLifecycle.originalSetInterval = null;
|
|
104
|
+
ProcessLifecycle.originalClearInterval = null;
|
|
105
|
+
ProcessLifecycle.isIntercepting = false;
|
|
106
|
+
//# sourceMappingURL=lifecycle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/server/lifecycle.ts"],"names":[],"mappings":";;;AAAA;;;;;;;GAOG;AACH,MAAa,gBAAgB;IAepB,MAAM,CAAC,aAAa;QACzB,IAAI,IAAI,CAAC,cAAc;YAAE,OAAM;QAC/B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAA;QAE1B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,EAAE,CAAA;QAC5B,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,WAAW,CAAA;QAC9C,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,IAAI,CAAA;QAChC,IAAI,CAAC,mBAAmB,GAAG,UAAU,CAAC,WAAW,CAAA;QACjD,IAAI,CAAC,qBAAqB,GAAG,UAAU,CAAC,aAAa,CAAA;QAErD,OAAO,CAAC,EAAE,GAAG,UACX,KAAsB,EACtB,QAAkC;YAElC,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;YAC3D,OAAO,gBAAgB,CAAC,UAAW,CAAC,IAAI,CAAC,OAAO,EAAE,KAAY,EAAE,QAAQ,CAAC,CAAA;QAC3E,CAAC,CAAA;QAED,OAAO,CAAC,WAAW,GAAG,UACpB,KAAsB,EACtB,QAAkC;YAElC,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;YAC3D,OAAO,gBAAgB,CAAC,mBAAoB,CAAC,IAAI,CAC/C,OAAO,EACP,KAAY,EACZ,QAAQ,CACT,CAAA;QACH,CAAC,CAAA;QAED,OAAO,CAAC,IAAI,GAAG,UACb,KAAsB,EACtB,QAAkC;YAElC,MAAM,eAAe,GAAG,UAAqB,GAAG,IAAW;gBACzD,MAAM,KAAK,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,SAAS,CACvD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,eAAe,CACtC,CAAA;gBACD,IAAI,KAAK,KAAK,CAAC,CAAC;oBAAE,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;gBACpE,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YACnC,CAAC,CAAA;YACD,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC;gBACrC,KAAK;gBACL,QAAQ,EAAE,eAAe;aAC1B,CAAC,CAAA;YACF,OAAO,gBAAgB,CAAC,YAAa,CAAC,IAAI,CACxC,OAAO,EACP,KAAY,EACZ,eAAe,CAChB,CAAA;QACH,CAAC,CAAA;QAED,UAAU,CAAC,WAAW,GAAG,UACvB,OAAiC,EACjC,OAAgB,EAChB,GAAG,IAAW;YAEd,MAAM,KAAK,GAAG,gBAAgB,CAAC,mBAAoB,CACjD,OAAO,EACP,OAAO,EACP,GAAG,IAAI,CACR,CAAA;YACD,gBAAgB,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAY,CAAC,CAAA;YACnD,OAAO,KAAK,CAAA;QACd,CAAQ,CAAA;QAER,UAAU,CAAC,aAAa,GAAG,UAAU,KAAW;YAC9C,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACvC,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACjD,CAAC;YACD,OAAO,gBAAgB,CAAC,qBAAsB,CAAC,KAAK,CAAC,CAAA;QACvD,CAAQ,CAAA;IACV,CAAC;IAEM,MAAM,CAAC,OAAO;QACnB,KAAK,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxD,IAAI,CAAC;gBACH,OAAO,CAAC,cAAc,CAAC,KAAY,EAAE,QAAQ,CAAC,CAAA;YAChD,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY;YACd,CAAC;QACH,CAAC;QACD,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAA;QAE1B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1C,IAAI,CAAC;gBACH,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;oBAC/B,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAA;gBACnC,CAAC;qBAAM,CAAC;oBACN,aAAa,CAAC,KAAK,CAAC,CAAA;gBACtB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY;YACd,CAAC;QACH,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAA;IAC/B,CAAC;IAEM,MAAM,CAAC,OAAO;QACnB,IAAI,CAAC,OAAO,EAAE,CAAA;QACd,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,IAAI,CAAC,UAAU;gBAAE,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,CAAA;YACjD,IAAI,IAAI,CAAC,mBAAmB;gBAC1B,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAA;YAChD,IAAI,IAAI,CAAC,YAAY;gBAAE,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAA;YACvD,IAAI,IAAI,CAAC,mBAAmB;gBAC1B,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAA;YACnD,IAAI,IAAI,CAAC,qBAAqB;gBAC5B,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAA;YACvD,IAAI,CAAC,cAAc,GAAG,KAAK,CAAA;QAC7B,CAAC;IACH,CAAC;;AA9HH,4CA+HC;AA9HgB,iCAAgB,GAGzB,EAAE,CAAA;AACO,iCAAgB,GAAG,IAAI,GAAG,EAAkB,CAAA;AAC5C,2BAAU,GAA6B,IAAI,CAAA;AAC3C,oCAAmB,GAAsC,IAAI,CAAA;AAC7D,6BAAY,GAA+B,IAAI,CAAA;AAC/C,oCAAmB,GAChC,IAAI,CAAA;AACS,sCAAqB,GAClC,IAAI,CAAA;AACS,+BAAc,GAAG,KAAK,CAAA"}
|
|
@@ -21,6 +21,7 @@ export declare class RequestHandler {
|
|
|
21
21
|
url: string;
|
|
22
22
|
headers?: Record<string, string>;
|
|
23
23
|
body?: any;
|
|
24
|
+
payload?: any;
|
|
24
25
|
}): Promise<import('../testing/client').TestResponse>;
|
|
25
26
|
_executeWithContext(req: ExisRequest, res: ExisResponse, execution: () => void): void;
|
|
26
27
|
handle(rawReq: IncomingMessage, rawRes: ServerResponse): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-handler.d.ts","sourceRoot":"","sources":["../../src/server/request-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAChC,OAAa,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAIzC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAEvC,qBAAa,cAAc;IAWb,OAAO,CAAC,GAAG;IAVvB,OAAO,CAAC,iBAAiB,CAAC,CAAW;IACrC,OAAc,cAAc,SAAI;IAKhC,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAO;gBAExB,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC;IAEjC,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,WAAW;
|
|
1
|
+
{"version":3,"file":"request-handler.d.ts","sourceRoot":"","sources":["../../src/server/request-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAChC,OAAa,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAIzC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAEvC,qBAAa,cAAc;IAWb,OAAO,CAAC,GAAG;IAVvB,OAAO,CAAC,iBAAiB,CAAC,CAAW;IACrC,OAAc,cAAc,SAAI;IAKhC,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAO;gBAExB,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC;IAEjC,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,WAAW;IAOZ,mBAAmB,IAAI,OAAO,EAAE;IAW1B,MAAM,CAAC,OAAO,EAAE;QAC3B,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,GAAG,EAAE,MAAM,CAAA;QACX,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAChC,IAAI,CAAC,EAAE,GAAG,CAAA;QACV,OAAO,CAAC,EAAE,GAAG,CAAA;KACd,GAAG,OAAO,CAAC,OAAO,mBAAmB,EAAE,YAAY,CAAC;IAwF9C,mBAAmB,CACxB,GAAG,EAAE,WAAW,EAChB,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,MAAM,IAAI,GACpB,IAAI;IA6BA,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI;YAsDtD,gBAAgB;YAuChB,iBAAiB;CAuChC"}
|