add hw2
This commit is contained in:
		
							
								
								
									
										12
									
								
								node_modules/signal-exit/dist/cjs/browser.d.ts
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								node_modules/signal-exit/dist/cjs/browser.d.ts
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,12 @@ | ||||
| /** | ||||
|  * This is a browser shim that provides the same functional interface | ||||
|  * as the main node export, but it does nothing. | ||||
|  * @module | ||||
|  */ | ||||
| import type { Handler } from './index.js'; | ||||
| export declare const onExit: (cb: Handler, opts: { | ||||
|     alwaysLast?: boolean; | ||||
| }) => () => void; | ||||
| export declare const load: () => void; | ||||
| export declare const unload: () => void; | ||||
| //# sourceMappingURL=browser.d.ts.map | ||||
							
								
								
									
										1
									
								
								node_modules/signal-exit/dist/cjs/browser.d.ts.map
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								node_modules/signal-exit/dist/cjs/browser.d.ts.map
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../src/browser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACzC,eAAO,MAAM,MAAM,EAAE,CACnB,EAAE,EAAE,OAAO,EACX,IAAI,EAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,KAC3B,MAAM,IAAqB,CAAA;AAChC,eAAO,MAAM,IAAI,YAAW,CAAA;AAC5B,eAAO,MAAM,MAAM,YAAW,CAAA"} | ||||
							
								
								
									
										10
									
								
								node_modules/signal-exit/dist/cjs/browser.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								node_modules/signal-exit/dist/cjs/browser.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | ||||
| "use strict"; | ||||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||||
| exports.unload = exports.load = exports.onExit = void 0; | ||||
| const onExit = () => () => { }; | ||||
| exports.onExit = onExit; | ||||
| const load = () => { }; | ||||
| exports.load = load; | ||||
| const unload = () => { }; | ||||
| exports.unload = unload; | ||||
| //# sourceMappingURL=browser.js.map | ||||
							
								
								
									
										1
									
								
								node_modules/signal-exit/dist/cjs/browser.js.map
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								node_modules/signal-exit/dist/cjs/browser.js.map
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/browser.ts"],"names":[],"mappings":";;;AAMO,MAAM,MAAM,GAGD,GAAG,EAAE,CAAC,GAAG,EAAE,GAAE,CAAC,CAAA;AAHnB,QAAA,MAAM,UAGa;AACzB,MAAM,IAAI,GAAG,GAAG,EAAE,GAAE,CAAC,CAAA;AAAf,QAAA,IAAI,QAAW;AACrB,MAAM,MAAM,GAAG,GAAG,EAAE,GAAE,CAAC,CAAA;AAAjB,QAAA,MAAM,UAAW","sourcesContent":["/**\n * This is a browser shim that provides the same functional interface\n * as the main node export, but it does nothing.\n * @module\n */\nimport type { Handler } from './index.js'\nexport const onExit: (\n  cb: Handler,\n  opts: { alwaysLast?: boolean }\n) => () => void = () => () => {}\nexport const load = () => {}\nexport const unload = () => {}\n"]} | ||||
							
								
								
									
										48
									
								
								node_modules/signal-exit/dist/cjs/index.d.ts
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								node_modules/signal-exit/dist/cjs/index.d.ts
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,48 @@ | ||||
| /// <reference types="node" /> | ||||
| import { signals } from './signals.js'; | ||||
| export { signals }; | ||||
| /** | ||||
|  * A function that takes an exit code and signal as arguments | ||||
|  * | ||||
|  * In the case of signal exits *only*, a return value of true | ||||
|  * will indicate that the signal is being handled, and we should | ||||
|  * not synthetically exit with the signal we received. Regardless | ||||
|  * of the handler return value, the handler is unloaded when an | ||||
|  * otherwise fatal signal is received, so you get exactly 1 shot | ||||
|  * at it, unless you add another onExit handler at that point. | ||||
|  * | ||||
|  * In the case of numeric code exits, we may already have committed | ||||
|  * to exiting the process, for example via a fatal exception or | ||||
|  * unhandled promise rejection, so it is impossible to stop safely. | ||||
|  */ | ||||
| export type Handler = (code: number | null | undefined, signal: NodeJS.Signals | null) => true | void; | ||||
| export declare const  | ||||
| /** | ||||
|  * Called when the process is exiting, whether via signal, explicit | ||||
|  * exit, or running out of stuff to do. | ||||
|  * | ||||
|  * If the global process object is not suitable for instrumentation, | ||||
|  * then this will be a no-op. | ||||
|  * | ||||
|  * Returns a function that may be used to unload signal-exit. | ||||
|  */ | ||||
| onExit: (cb: Handler, opts?: { | ||||
|     alwaysLast?: boolean | undefined; | ||||
| } | undefined) => () => void,  | ||||
| /** | ||||
|  * Load the listeners.  Likely you never need to call this, unless | ||||
|  * doing a rather deep integration with signal-exit functionality. | ||||
|  * Mostly exposed for the benefit of testing. | ||||
|  * | ||||
|  * @internal | ||||
|  */ | ||||
| load: () => void,  | ||||
| /** | ||||
|  * Unload the listeners.  Likely you never need to call this, unless | ||||
|  * doing a rather deep integration with signal-exit functionality. | ||||
|  * Mostly exposed for the benefit of testing. | ||||
|  * | ||||
|  * @internal | ||||
|  */ | ||||
| unload: () => void; | ||||
| //# sourceMappingURL=index.d.ts.map | ||||
							
								
								
									
										1
									
								
								node_modules/signal-exit/dist/cjs/index.d.ts.map
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								node_modules/signal-exit/dist/cjs/index.d.ts.map
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,OAAO,EAAE,CAAA;AAuBlB;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,OAAO,GAAG,CACpB,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC/B,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,KAC1B,IAAI,GAAG,IAAI,CAAA;AA8QhB,eAAO;AACL;;;;;;;;GAQG;AACH,MAAM,OAzMO,OAAO;;wBAPiD,IAAI;AAkNzE;;;;;;GAMG;AACH,IAAI;AAEJ;;;;;;GAMG;AACH,MAAM,YAGP,CAAA"} | ||||
							
								
								
									
										279
									
								
								node_modules/signal-exit/dist/cjs/index.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										279
									
								
								node_modules/signal-exit/dist/cjs/index.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,279 @@ | ||||
| "use strict"; | ||||
| var _a; | ||||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||||
| exports.unload = exports.load = exports.onExit = exports.signals = void 0; | ||||
| // Note: since nyc uses this module to output coverage, any lines | ||||
| // that are in the direct sync flow of nyc's outputCoverage are | ||||
| // ignored, since we can never get coverage for them. | ||||
| // grab a reference to node's real process object right away | ||||
| const signals_js_1 = require("./signals.js"); | ||||
| Object.defineProperty(exports, "signals", { enumerable: true, get: function () { return signals_js_1.signals; } }); | ||||
| const processOk = (process) => !!process && | ||||
|     typeof process === 'object' && | ||||
|     typeof process.removeListener === 'function' && | ||||
|     typeof process.emit === 'function' && | ||||
|     typeof process.reallyExit === 'function' && | ||||
|     typeof process.listeners === 'function' && | ||||
|     typeof process.kill === 'function' && | ||||
|     typeof process.pid === 'number' && | ||||
|     typeof process.on === 'function'; | ||||
| const kExitEmitter = Symbol.for('signal-exit emitter'); | ||||
| const global = globalThis; | ||||
| const ObjectDefineProperty = Object.defineProperty.bind(Object); | ||||
| // teeny special purpose ee | ||||
| class Emitter { | ||||
|     emitted = { | ||||
|         afterExit: false, | ||||
|         exit: false, | ||||
|     }; | ||||
|     listeners = { | ||||
|         afterExit: [], | ||||
|         exit: [], | ||||
|     }; | ||||
|     count = 0; | ||||
|     id = Math.random(); | ||||
|     constructor() { | ||||
|         if (global[kExitEmitter]) { | ||||
|             return global[kExitEmitter]; | ||||
|         } | ||||
|         ObjectDefineProperty(global, kExitEmitter, { | ||||
|             value: this, | ||||
|             writable: false, | ||||
|             enumerable: false, | ||||
|             configurable: false, | ||||
|         }); | ||||
|     } | ||||
|     on(ev, fn) { | ||||
|         this.listeners[ev].push(fn); | ||||
|     } | ||||
|     removeListener(ev, fn) { | ||||
|         const list = this.listeners[ev]; | ||||
|         const i = list.indexOf(fn); | ||||
|         /* c8 ignore start */ | ||||
|         if (i === -1) { | ||||
|             return; | ||||
|         } | ||||
|         /* c8 ignore stop */ | ||||
|         if (i === 0 && list.length === 1) { | ||||
|             list.length = 0; | ||||
|         } | ||||
|         else { | ||||
|             list.splice(i, 1); | ||||
|         } | ||||
|     } | ||||
|     emit(ev, code, signal) { | ||||
|         if (this.emitted[ev]) { | ||||
|             return false; | ||||
|         } | ||||
|         this.emitted[ev] = true; | ||||
|         let ret = false; | ||||
|         for (const fn of this.listeners[ev]) { | ||||
|             ret = fn(code, signal) === true || ret; | ||||
|         } | ||||
|         if (ev === 'exit') { | ||||
|             ret = this.emit('afterExit', code, signal) || ret; | ||||
|         } | ||||
|         return ret; | ||||
|     } | ||||
| } | ||||
| class SignalExitBase { | ||||
| } | ||||
| const signalExitWrap = (handler) => { | ||||
|     return { | ||||
|         onExit(cb, opts) { | ||||
|             return handler.onExit(cb, opts); | ||||
|         }, | ||||
|         load() { | ||||
|             return handler.load(); | ||||
|         }, | ||||
|         unload() { | ||||
|             return handler.unload(); | ||||
|         }, | ||||
|     }; | ||||
| }; | ||||
| class SignalExitFallback extends SignalExitBase { | ||||
|     onExit() { | ||||
|         return () => { }; | ||||
|     } | ||||
|     load() { } | ||||
|     unload() { } | ||||
| } | ||||
| class SignalExit extends SignalExitBase { | ||||
|     // "SIGHUP" throws an `ENOSYS` error on Windows, | ||||
|     // so use a supported signal instead | ||||
|     /* c8 ignore start */ | ||||
|     #hupSig = process.platform === 'win32' ? 'SIGINT' : 'SIGHUP'; | ||||
|     /* c8 ignore stop */ | ||||
|     #emitter = new Emitter(); | ||||
|     #process; | ||||
|     #originalProcessEmit; | ||||
|     #originalProcessReallyExit; | ||||
|     #sigListeners = {}; | ||||
|     #loaded = false; | ||||
|     constructor(process) { | ||||
|         super(); | ||||
|         this.#process = process; | ||||
|         // { <signal>: <listener fn>, ... } | ||||
|         this.#sigListeners = {}; | ||||
|         for (const sig of signals_js_1.signals) { | ||||
|             this.#sigListeners[sig] = () => { | ||||
|                 // If there are no other listeners, an exit is coming! | ||||
|                 // Simplest way: remove us and then re-send the signal. | ||||
|                 // We know that this will kill the process, so we can | ||||
|                 // safely emit now. | ||||
|                 const listeners = this.#process.listeners(sig); | ||||
|                 let { count } = this.#emitter; | ||||
|                 // This is a workaround for the fact that signal-exit v3 and signal | ||||
|                 // exit v4 are not aware of each other, and each will attempt to let | ||||
|                 // the other handle it, so neither of them do. To correct this, we | ||||
|                 // detect if we're the only handler *except* for previous versions | ||||
|                 // of signal-exit, and increment by the count of listeners it has | ||||
|                 // created. | ||||
|                 /* c8 ignore start */ | ||||
|                 const p = process; | ||||
|                 if (typeof p.__signal_exit_emitter__ === 'object' && | ||||
|                     typeof p.__signal_exit_emitter__.count === 'number') { | ||||
|                     count += p.__signal_exit_emitter__.count; | ||||
|                 } | ||||
|                 /* c8 ignore stop */ | ||||
|                 if (listeners.length === count) { | ||||
|                     this.unload(); | ||||
|                     const ret = this.#emitter.emit('exit', null, sig); | ||||
|                     /* c8 ignore start */ | ||||
|                     const s = sig === 'SIGHUP' ? this.#hupSig : sig; | ||||
|                     if (!ret) | ||||
|                         process.kill(process.pid, s); | ||||
|                     /* c8 ignore stop */ | ||||
|                 } | ||||
|             }; | ||||
|         } | ||||
|         this.#originalProcessReallyExit = process.reallyExit; | ||||
|         this.#originalProcessEmit = process.emit; | ||||
|     } | ||||
|     onExit(cb, opts) { | ||||
|         /* c8 ignore start */ | ||||
|         if (!processOk(this.#process)) { | ||||
|             return () => { }; | ||||
|         } | ||||
|         /* c8 ignore stop */ | ||||
|         if (this.#loaded === false) { | ||||
|             this.load(); | ||||
|         } | ||||
|         const ev = opts?.alwaysLast ? 'afterExit' : 'exit'; | ||||
|         this.#emitter.on(ev, cb); | ||||
|         return () => { | ||||
|             this.#emitter.removeListener(ev, cb); | ||||
|             if (this.#emitter.listeners['exit'].length === 0 && | ||||
|                 this.#emitter.listeners['afterExit'].length === 0) { | ||||
|                 this.unload(); | ||||
|             } | ||||
|         }; | ||||
|     } | ||||
|     load() { | ||||
|         if (this.#loaded) { | ||||
|             return; | ||||
|         } | ||||
|         this.#loaded = true; | ||||
|         // This is the number of onSignalExit's that are in play. | ||||
|         // It's important so that we can count the correct number of | ||||
|         // listeners on signals, and don't wait for the other one to | ||||
|         // handle it instead of us. | ||||
|         this.#emitter.count += 1; | ||||
|         for (const sig of signals_js_1.signals) { | ||||
|             try { | ||||
|                 const fn = this.#sigListeners[sig]; | ||||
|                 if (fn) | ||||
|                     this.#process.on(sig, fn); | ||||
|             } | ||||
|             catch (_) { } | ||||
|         } | ||||
|         this.#process.emit = (ev, ...a) => { | ||||
|             return this.#processEmit(ev, ...a); | ||||
|         }; | ||||
|         this.#process.reallyExit = (code) => { | ||||
|             return this.#processReallyExit(code); | ||||
|         }; | ||||
|     } | ||||
|     unload() { | ||||
|         if (!this.#loaded) { | ||||
|             return; | ||||
|         } | ||||
|         this.#loaded = false; | ||||
|         signals_js_1.signals.forEach(sig => { | ||||
|             const listener = this.#sigListeners[sig]; | ||||
|             /* c8 ignore start */ | ||||
|             if (!listener) { | ||||
|                 throw new Error('Listener not defined for signal: ' + sig); | ||||
|             } | ||||
|             /* c8 ignore stop */ | ||||
|             try { | ||||
|                 this.#process.removeListener(sig, listener); | ||||
|                 /* c8 ignore start */ | ||||
|             } | ||||
|             catch (_) { } | ||||
|             /* c8 ignore stop */ | ||||
|         }); | ||||
|         this.#process.emit = this.#originalProcessEmit; | ||||
|         this.#process.reallyExit = this.#originalProcessReallyExit; | ||||
|         this.#emitter.count -= 1; | ||||
|     } | ||||
|     #processReallyExit(code) { | ||||
|         /* c8 ignore start */ | ||||
|         if (!processOk(this.#process)) { | ||||
|             return 0; | ||||
|         } | ||||
|         this.#process.exitCode = code || 0; | ||||
|         /* c8 ignore stop */ | ||||
|         this.#emitter.emit('exit', this.#process.exitCode, null); | ||||
|         return this.#originalProcessReallyExit.call(this.#process, this.#process.exitCode); | ||||
|     } | ||||
|     #processEmit(ev, ...args) { | ||||
|         const og = this.#originalProcessEmit; | ||||
|         if (ev === 'exit' && processOk(this.#process)) { | ||||
|             if (typeof args[0] === 'number') { | ||||
|                 this.#process.exitCode = args[0]; | ||||
|                 /* c8 ignore start */ | ||||
|             } | ||||
|             /* c8 ignore start */ | ||||
|             const ret = og.call(this.#process, ev, ...args); | ||||
|             /* c8 ignore start */ | ||||
|             this.#emitter.emit('exit', this.#process.exitCode, null); | ||||
|             /* c8 ignore stop */ | ||||
|             return ret; | ||||
|         } | ||||
|         else { | ||||
|             return og.call(this.#process, ev, ...args); | ||||
|         } | ||||
|     } | ||||
| } | ||||
| const process = globalThis.process; | ||||
| // wrap so that we call the method on the actual handler, without | ||||
| // exporting it directly. | ||||
| _a = signalExitWrap(processOk(process) ? new SignalExit(process) : new SignalExitFallback()),  | ||||
| /** | ||||
|  * Called when the process is exiting, whether via signal, explicit | ||||
|  * exit, or running out of stuff to do. | ||||
|  * | ||||
|  * If the global process object is not suitable for instrumentation, | ||||
|  * then this will be a no-op. | ||||
|  * | ||||
|  * Returns a function that may be used to unload signal-exit. | ||||
|  */ | ||||
| exports.onExit = _a.onExit,  | ||||
| /** | ||||
|  * Load the listeners.  Likely you never need to call this, unless | ||||
|  * doing a rather deep integration with signal-exit functionality. | ||||
|  * Mostly exposed for the benefit of testing. | ||||
|  * | ||||
|  * @internal | ||||
|  */ | ||||
| exports.load = _a.load,  | ||||
| /** | ||||
|  * Unload the listeners.  Likely you never need to call this, unless | ||||
|  * doing a rather deep integration with signal-exit functionality. | ||||
|  * Mostly exposed for the benefit of testing. | ||||
|  * | ||||
|  * @internal | ||||
|  */ | ||||
| exports.unload = _a.unload; | ||||
| //# sourceMappingURL=index.js.map | ||||
							
								
								
									
										1
									
								
								node_modules/signal-exit/dist/cjs/index.js.map
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								node_modules/signal-exit/dist/cjs/index.js.map
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										3
									
								
								node_modules/signal-exit/dist/cjs/package.json
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								node_modules/signal-exit/dist/cjs/package.json
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | ||||
| { | ||||
|   "type": "commonjs" | ||||
| } | ||||
							
								
								
									
										29
									
								
								node_modules/signal-exit/dist/cjs/signals.d.ts
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								node_modules/signal-exit/dist/cjs/signals.d.ts
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,29 @@ | ||||
| /// <reference types="node" /> | ||||
| /** | ||||
|  * This is not the set of all possible signals. | ||||
|  * | ||||
|  * It IS, however, the set of all signals that trigger | ||||
|  * an exit on either Linux or BSD systems.  Linux is a | ||||
|  * superset of the signal names supported on BSD, and | ||||
|  * the unknown signals just fail to register, so we can | ||||
|  * catch that easily enough. | ||||
|  * | ||||
|  * Windows signals are a different set, since there are | ||||
|  * signals that terminate Windows processes, but don't | ||||
|  * terminate (or don't even exist) on Posix systems. | ||||
|  * | ||||
|  * Don't bother with SIGKILL.  It's uncatchable, which | ||||
|  * means that we can't fire any callbacks anyway. | ||||
|  * | ||||
|  * If a user does happen to register a handler on a non- | ||||
|  * fatal signal like SIGWINCH or something, and then | ||||
|  * exit, it'll end up firing `process.emit('exit')`, so | ||||
|  * the handler will be fired anyway. | ||||
|  * | ||||
|  * SIGBUS, SIGFPE, SIGSEGV and SIGILL, when not raised | ||||
|  * artificially, inherently leave the process in a | ||||
|  * state from which it is not safe to try and enter JS | ||||
|  * listeners. | ||||
|  */ | ||||
| export declare const signals: NodeJS.Signals[]; | ||||
| //# sourceMappingURL=signals.d.ts.map | ||||
							
								
								
									
										1
									
								
								node_modules/signal-exit/dist/cjs/signals.d.ts.map
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								node_modules/signal-exit/dist/cjs/signals.d.ts.map
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| {"version":3,"file":"signals.d.ts","sourceRoot":"","sources":["../../src/signals.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,OAAO,EAAO,CAAA"} | ||||
							
								
								
									
										42
									
								
								node_modules/signal-exit/dist/cjs/signals.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								node_modules/signal-exit/dist/cjs/signals.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,42 @@ | ||||
| "use strict"; | ||||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||||
| exports.signals = void 0; | ||||
| /** | ||||
|  * This is not the set of all possible signals. | ||||
|  * | ||||
|  * It IS, however, the set of all signals that trigger | ||||
|  * an exit on either Linux or BSD systems.  Linux is a | ||||
|  * superset of the signal names supported on BSD, and | ||||
|  * the unknown signals just fail to register, so we can | ||||
|  * catch that easily enough. | ||||
|  * | ||||
|  * Windows signals are a different set, since there are | ||||
|  * signals that terminate Windows processes, but don't | ||||
|  * terminate (or don't even exist) on Posix systems. | ||||
|  * | ||||
|  * Don't bother with SIGKILL.  It's uncatchable, which | ||||
|  * means that we can't fire any callbacks anyway. | ||||
|  * | ||||
|  * If a user does happen to register a handler on a non- | ||||
|  * fatal signal like SIGWINCH or something, and then | ||||
|  * exit, it'll end up firing `process.emit('exit')`, so | ||||
|  * the handler will be fired anyway. | ||||
|  * | ||||
|  * SIGBUS, SIGFPE, SIGSEGV and SIGILL, when not raised | ||||
|  * artificially, inherently leave the process in a | ||||
|  * state from which it is not safe to try and enter JS | ||||
|  * listeners. | ||||
|  */ | ||||
| exports.signals = []; | ||||
| exports.signals.push('SIGHUP', 'SIGINT', 'SIGTERM'); | ||||
| if (process.platform !== 'win32') { | ||||
|     exports.signals.push('SIGALRM', 'SIGABRT', 'SIGVTALRM', 'SIGXCPU', 'SIGXFSZ', 'SIGUSR2', 'SIGTRAP', 'SIGSYS', 'SIGQUIT', 'SIGIOT' | ||||
|     // should detect profiler and enable/disable accordingly. | ||||
|     // see #21 | ||||
|     // 'SIGPROF' | ||||
|     ); | ||||
| } | ||||
| if (process.platform === 'linux') { | ||||
|     exports.signals.push('SIGIO', 'SIGPOLL', 'SIGPWR', 'SIGSTKFLT'); | ||||
| } | ||||
| //# sourceMappingURL=signals.js.map | ||||
							
								
								
									
										1
									
								
								node_modules/signal-exit/dist/cjs/signals.js.map
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								node_modules/signal-exit/dist/cjs/signals.js.map
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| {"version":3,"file":"signals.js","sourceRoot":"","sources":["../../src/signals.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACU,QAAA,OAAO,GAAqB,EAAE,CAAA;AAC3C,eAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAA;AAE3C,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE;IAChC,eAAO,CAAC,IAAI,CACV,SAAS,EACT,SAAS,EACT,WAAW,EACX,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,QAAQ,EACR,SAAS,EACT,QAAQ;IACR,yDAAyD;IACzD,UAAU;IACV,YAAY;KACb,CAAA;CACF;AAED,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE;IAChC,eAAO,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;CACxD","sourcesContent":["/**\n * This is not the set of all possible signals.\n *\n * It IS, however, the set of all signals that trigger\n * an exit on either Linux or BSD systems.  Linux is a\n * superset of the signal names supported on BSD, and\n * the unknown signals just fail to register, so we can\n * catch that easily enough.\n *\n * Windows signals are a different set, since there are\n * signals that terminate Windows processes, but don't\n * terminate (or don't even exist) on Posix systems.\n *\n * Don't bother with SIGKILL.  It's uncatchable, which\n * means that we can't fire any callbacks anyway.\n *\n * If a user does happen to register a handler on a non-\n * fatal signal like SIGWINCH or something, and then\n * exit, it'll end up firing `process.emit('exit')`, so\n * the handler will be fired anyway.\n *\n * SIGBUS, SIGFPE, SIGSEGV and SIGILL, when not raised\n * artificially, inherently leave the process in a\n * state from which it is not safe to try and enter JS\n * listeners.\n */\nexport const signals: NodeJS.Signals[] = []\nsignals.push('SIGHUP', 'SIGINT', 'SIGTERM')\n\nif (process.platform !== 'win32') {\n  signals.push(\n    'SIGALRM',\n    'SIGABRT',\n    'SIGVTALRM',\n    'SIGXCPU',\n    'SIGXFSZ',\n    'SIGUSR2',\n    'SIGTRAP',\n    'SIGSYS',\n    'SIGQUIT',\n    'SIGIOT'\n    // should detect profiler and enable/disable accordingly.\n    // see #21\n    // 'SIGPROF'\n  )\n}\n\nif (process.platform === 'linux') {\n  signals.push('SIGIO', 'SIGPOLL', 'SIGPWR', 'SIGSTKFLT')\n}\n"]} | ||||
		Reference in New Issue
	
	Block a user
	 nik
					nik