Skip to content

Commit 1f7d05d

Browse files
authored
🤖 Merge PR DefinitelyTyped#73925 node/process: narrow process message sendHandle to SendHandle and update tests by @y-hsgw
1 parent d123e87 commit 1f7d05d

File tree

6 files changed

+60
-27
lines changed

6 files changed

+60
-27
lines changed

‎types/node/process.d.ts‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
declare module "process" {
2-
import { Control, MessageOptions } from "node:child_process";
2+
import { Control, MessageOptions, SendHandle } from "node:child_process";
33
import { PathLike } from "node:fs";
44
import * as tty from "node:tty";
55
import { Worker } from "node:worker_threads";
@@ -332,7 +332,7 @@ declare module "process" {
332332
*/
333333
type UnhandledRejectionListener = (reason: unknown, promise: Promise<unknown>) => void;
334334
type WarningListener = (warning: Error) => void;
335-
type MessageListener = (message: unknown, sendHandle: unknown) => void;
335+
type MessageListener = (message: unknown, sendHandle: SendHandle) => void;
336336
type SignalsListener = (signal: Signals) => void;
337337
type MultipleResolveListener = (
338338
type: MultipleResolveType,
@@ -1776,7 +1776,7 @@ declare module "process" {
17761776
*/
17771777
send?(
17781778
message: any,
1779-
sendHandle?: any,
1779+
sendHandle?: SendHandle,
17801780
options?: MessageOptions,
17811781
callback?: (error: Error | null) => void,
17821782
): boolean;
@@ -1980,7 +1980,7 @@ declare module "process" {
19801980
emit(event: "uncaughtExceptionMonitor", error: Error): boolean;
19811981
emit(event: "unhandledRejection", reason: unknown, promise: Promise<unknown>): boolean;
19821982
emit(event: "warning", warning: Error): boolean;
1983-
emit(event: "message", message: unknown, sendHandle: unknown): this;
1983+
emit(event: "message", message: unknown, sendHandle: SendHandle): this;
19841984
emit(event: Signals, signal?: Signals): boolean;
19851985
emit(
19861986
event: "multipleResolves",

‎types/node/test/process.ts‎

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ import * as p from "node:process";
22
import { finalization } from "node:process";
33
import assert = require("node:assert");
44
import EventEmitter = require("node:events");
5+
import * as dgram from "node:dgram";
6+
import * as net from "node:net";
57
import { constants } from "node:os";
68
import { dlopen } from "node:process";
79
import { fileURLToPath } from "node:url";
@@ -17,7 +19,7 @@ import { fileURLToPath } from "node:url";
1719
assert.ok(process.argv[0] === process.argv0);
1820
}
1921
{
20-
process.on("message", (req: any) => {});
22+
process.on("message", (message: unknown, sendHandle: net.Server | net.Socket | dgram.Socket | undefined) => {});
2123
process.addListener("beforeExit", (code: number) => {});
2224
process.once("disconnect", () => {});
2325
process.prependListener("exit", (code: number) => {});
@@ -26,7 +28,10 @@ import { fileURLToPath } from "node:url";
2628
process.once("uncaughtExceptionMonitor", (error: Error) => {});
2729
process.addListener("unhandledRejection", (reason: unknown, promise: Promise<unknown>) => {});
2830
process.once("warning", (warning: Error) => {});
29-
process.prependListener("message", (message: any, sendHandle: any) => {});
31+
process.prependListener(
32+
"message",
33+
(message: any, sendHandle: net.Server | net.Socket | dgram.Socket | undefined) => {},
34+
);
3035
process.prependOnceListener("SIGBREAK", () => {});
3136
process.emit("SIGINT");
3237
process.on("newListener", (event: string | symbol, listener: Function) => {});
@@ -74,9 +79,15 @@ import { fileURLToPath } from "node:url";
7479
}
7580
if (process.send) {
7681
let r: boolean = process.send("aMessage");
77-
r = process.send({ msg: "foo" }, {});
78-
r = process.send({ msg: "foo" }, {}, { keepOpen: true });
79-
r = process.send({ msg: "foo" }, {}, { keepOpen: true }, (err: Error | null) => {});
82+
r = process.send({ msg: "foo" }, new net.Server());
83+
r = process.send({ msg: "foo" }, new net.Socket());
84+
r = process.send({ msg: "foo" }, new dgram.Socket());
85+
r = process.send({ msg: "foo" }, new net.Server(), { keepOpen: true });
86+
r = process.send({ msg: "foo" }, new net.Socket(), { keepOpen: true });
87+
r = process.send({ msg: "foo" }, new dgram.Socket(), { keepOpen: true });
88+
r = process.send({ msg: "foo" }, new net.Server(), { keepOpen: true }, (err: Error | null) => {});
89+
r = process.send({ msg: "foo" }, new net.Socket(), { keepOpen: true }, (err: Error | null) => {});
90+
r = process.send({ msg: "foo" }, new dgram.Socket(), { keepOpen: true }, (err: Error | null) => {});
8091
}
8192
}
8293

‎types/node/v20/process.d.ts‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
declare module "process" {
2-
import { Control, MessageOptions } from "node:child_process";
2+
import { Control, MessageOptions, SendHandle } from "node:child_process";
33
import { PathLike } from "node:fs";
44
import * as tty from "node:tty";
55
import { Worker } from "node:worker_threads";
@@ -309,7 +309,7 @@ declare module "process" {
309309
*/
310310
type UnhandledRejectionListener = (reason: unknown, promise: Promise<unknown>) => void;
311311
type WarningListener = (warning: Error) => void;
312-
type MessageListener = (message: unknown, sendHandle: unknown) => void;
312+
type MessageListener = (message: unknown, sendHandle: SendHandle) => void;
313313
type SignalsListener = (signal: Signals) => void;
314314
type MultipleResolveListener = (
315315
type: MultipleResolveType,
@@ -1709,7 +1709,7 @@ declare module "process" {
17091709
*/
17101710
send?(
17111711
message: any,
1712-
sendHandle?: any,
1712+
sendHandle?: SendHandle,
17131713
options?: MessageOptions,
17141714
callback?: (error: Error | null) => void,
17151715
): boolean;
@@ -1863,7 +1863,7 @@ declare module "process" {
18631863
emit(event: "uncaughtExceptionMonitor", error: Error): boolean;
18641864
emit(event: "unhandledRejection", reason: unknown, promise: Promise<unknown>): boolean;
18651865
emit(event: "warning", warning: Error): boolean;
1866-
emit(event: "message", message: unknown, sendHandle: unknown): this;
1866+
emit(event: "message", message: unknown, sendHandle: SendHandle): this;
18671867
emit(event: Signals, signal?: Signals): boolean;
18681868
emit(
18691869
event: "multipleResolves",

‎types/node/v20/test/process.ts‎

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import * as p from "node:process";
22
import assert = require("node:assert");
33
import EventEmitter = require("node:events");
4+
import * as dgram from "node:dgram";
5+
import * as net from "node:net";
46
import { constants } from "node:os";
57
import { dlopen } from "node:process";
68
import { fileURLToPath } from "node:url";
@@ -16,7 +18,7 @@ import { fileURLToPath } from "node:url";
1618
assert.ok(process.argv[0] === process.argv0);
1719
}
1820
{
19-
process.on("message", (req: any) => {});
21+
process.on("message", (message: unknown, sendHandle: net.Server | net.Socket | dgram.Socket | undefined) => {});
2022
process.addListener("beforeExit", (code: number) => {});
2123
process.once("disconnect", () => {});
2224
process.prependListener("exit", (code: number) => {});
@@ -25,7 +27,10 @@ import { fileURLToPath } from "node:url";
2527
process.once("uncaughtExceptionMonitor", (error: Error) => {});
2628
process.addListener("unhandledRejection", (reason: unknown, promise: Promise<unknown>) => {});
2729
process.once("warning", (warning: Error) => {});
28-
process.prependListener("message", (message: any, sendHandle: any) => {});
30+
process.prependListener(
31+
"message",
32+
(message: any, sendHandle: net.Server | net.Socket | dgram.Socket | undefined) => {},
33+
);
2934
process.prependOnceListener("SIGBREAK", () => {});
3035
process.emit("SIGINT");
3136
process.on("newListener", (event: string | symbol, listener: Function) => {});
@@ -73,9 +78,15 @@ import { fileURLToPath } from "node:url";
7378
}
7479
if (process.send) {
7580
let r: boolean = process.send("aMessage");
76-
r = process.send({ msg: "foo" }, {});
77-
r = process.send({ msg: "foo" }, {}, { keepOpen: true });
78-
r = process.send({ msg: "foo" }, {}, { keepOpen: true }, (err: Error | null) => {});
81+
r = process.send({ msg: "foo" }, new net.Server());
82+
r = process.send({ msg: "foo" }, new net.Socket());
83+
r = process.send({ msg: "foo" }, new dgram.Socket());
84+
r = process.send({ msg: "foo" }, new net.Server(), { keepOpen: true });
85+
r = process.send({ msg: "foo" }, new net.Socket(), { keepOpen: true });
86+
r = process.send({ msg: "foo" }, new dgram.Socket(), { keepOpen: true });
87+
r = process.send({ msg: "foo" }, new net.Server(), { keepOpen: true }, (err: Error | null) => {});
88+
r = process.send({ msg: "foo" }, new net.Socket(), { keepOpen: true }, (err: Error | null) => {});
89+
r = process.send({ msg: "foo" }, new dgram.Socket(), { keepOpen: true }, (err: Error | null) => {});
7990
}
8091
}
8192

‎types/node/v22/process.d.ts‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
declare module "process" {
2-
import { Control, MessageOptions } from "node:child_process";
2+
import { Control, MessageOptions, SendHandle } from "node:child_process";
33
import { PathLike } from "node:fs";
44
import * as tty from "node:tty";
55
import { Worker } from "node:worker_threads";
@@ -334,7 +334,7 @@ declare module "process" {
334334
*/
335335
type UnhandledRejectionListener = (reason: unknown, promise: Promise<unknown>) => void;
336336
type WarningListener = (warning: Error) => void;
337-
type MessageListener = (message: unknown, sendHandle: unknown) => void;
337+
type MessageListener = (message: unknown, sendHandle: SendHandle) => void;
338338
type SignalsListener = (signal: Signals) => void;
339339
type MultipleResolveListener = (
340340
type: MultipleResolveType,
@@ -1765,7 +1765,7 @@ declare module "process" {
17651765
*/
17661766
send?(
17671767
message: any,
1768-
sendHandle?: any,
1768+
sendHandle?: SendHandle,
17691769
options?: MessageOptions,
17701770
callback?: (error: Error | null) => void,
17711771
): boolean;
@@ -1969,7 +1969,7 @@ declare module "process" {
19691969
emit(event: "uncaughtExceptionMonitor", error: Error): boolean;
19701970
emit(event: "unhandledRejection", reason: unknown, promise: Promise<unknown>): boolean;
19711971
emit(event: "warning", warning: Error): boolean;
1972-
emit(event: "message", message: unknown, sendHandle: unknown): this;
1972+
emit(event: "message", message: unknown, sendHandle: SendHandle): this;
19731973
emit(event: Signals, signal?: Signals): boolean;
19741974
emit(
19751975
event: "multipleResolves",

‎types/node/v22/test/process.ts‎

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ import * as p from "node:process";
22
import { finalization } from "node:process";
33
import assert = require("node:assert");
44
import EventEmitter = require("node:events");
5+
import * as dgram from "node:dgram";
6+
import * as net from "node:net";
57
import { constants } from "node:os";
68
import { dlopen } from "node:process";
79
import { fileURLToPath } from "node:url";
@@ -17,7 +19,7 @@ import { fileURLToPath } from "node:url";
1719
assert.ok(process.argv[0] === process.argv0);
1820
}
1921
{
20-
process.on("message", (req: any) => {});
22+
process.on("message", (message: unknown, sendHandle: net.Server | net.Socket | dgram.Socket | undefined) => {});
2123
process.addListener("beforeExit", (code: number) => {});
2224
process.once("disconnect", () => {});
2325
process.prependListener("exit", (code: number) => {});
@@ -26,7 +28,10 @@ import { fileURLToPath } from "node:url";
2628
process.once("uncaughtExceptionMonitor", (error: Error) => {});
2729
process.addListener("unhandledRejection", (reason: unknown, promise: Promise<unknown>) => {});
2830
process.once("warning", (warning: Error) => {});
29-
process.prependListener("message", (message: any, sendHandle: any) => {});
31+
process.prependListener(
32+
"message",
33+
(message: any, sendHandle: net.Server | net.Socket | dgram.Socket | undefined) => {},
34+
);
3035
process.prependOnceListener("SIGBREAK", () => {});
3136
process.emit("SIGINT");
3237
process.on("newListener", (event: string | symbol, listener: Function) => {});
@@ -74,9 +79,15 @@ import { fileURLToPath } from "node:url";
7479
}
7580
if (process.send) {
7681
let r: boolean = process.send("aMessage");
77-
r = process.send({ msg: "foo" }, {});
78-
r = process.send({ msg: "foo" }, {}, { keepOpen: true });
79-
r = process.send({ msg: "foo" }, {}, { keepOpen: true }, (err: Error | null) => {});
82+
r = process.send({ msg: "foo" }, new net.Server());
83+
r = process.send({ msg: "foo" }, new net.Socket());
84+
r = process.send({ msg: "foo" }, new dgram.Socket());
85+
r = process.send({ msg: "foo" }, new net.Server(), { keepOpen: true });
86+
r = process.send({ msg: "foo" }, new net.Socket(), { keepOpen: true });
87+
r = process.send({ msg: "foo" }, new dgram.Socket(), { keepOpen: true });
88+
r = process.send({ msg: "foo" }, new net.Server(), { keepOpen: true }, (err: Error | null) => {});
89+
r = process.send({ msg: "foo" }, new net.Socket(), { keepOpen: true }, (err: Error | null) => {});
90+
r = process.send({ msg: "foo" }, new dgram.Socket(), { keepOpen: true }, (err: Error | null) => {});
8091
}
8192
}
8293

0 commit comments

Comments
 (0)