urllib 3.22.4 → 3.23.0

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.
@@ -68,7 +68,7 @@ class BlobFromStream {
68
68
  return 'Blob';
69
69
  }
70
70
  }
71
- exports.HEADER_USER_AGENT = (0, default_user_agent_1.default)('node-urllib', '3.22.4');
71
+ exports.HEADER_USER_AGENT = (0, default_user_agent_1.default)('node-urllib', '3.23.0');
72
72
  function getFileName(stream) {
73
73
  const filePath = stream.path;
74
74
  if (filePath) {
@@ -233,6 +233,7 @@ class HttpClient extends node_events_1.EventEmitter {
233
233
  status: -1,
234
234
  statusCode: -1,
235
235
  statusText: '',
236
+ statusMessage: '',
236
237
  headers: resHeaders,
237
238
  size: 0,
238
239
  aborted: false,
@@ -307,6 +308,7 @@ class HttpClient extends node_events_1.EventEmitter {
307
308
  bodyTimeout,
308
309
  opaque: internalOpaque,
309
310
  dispatcher: args.dispatcher ?? this.#dispatcher,
311
+ signal: args.signal,
310
312
  };
311
313
  if (typeof args.highWaterMark === 'number') {
312
314
  requestOptions.highWaterMark = args.highWaterMark;
@@ -498,7 +500,7 @@ class HttpClient extends node_events_1.EventEmitter {
498
500
  const isCompressedContent = contentEncoding === 'gzip' || contentEncoding === 'br';
499
501
  res.headers = response.headers;
500
502
  res.status = res.statusCode = response.statusCode;
501
- res.statusText = node_http_1.STATUS_CODES[res.status] || '';
503
+ res.statusMessage = res.statusText = node_http_1.STATUS_CODES[res.status] || '';
502
504
  if (res.headers['content-length']) {
503
505
  res.size = parseInt(res.headers['content-length']);
504
506
  }
@@ -1,7 +1,9 @@
1
1
  /// <reference types="node" />
2
2
  /// <reference types="node" />
3
3
  /// <reference types="node" />
4
+ /// <reference types="node" />
4
5
  import type { Readable, Writable } from 'node:stream';
6
+ import type { EventEmitter } from 'node:events';
5
7
  import type { Dispatcher } from 'undici';
6
8
  import type { IncomingHttpHeaders } from './IncomingHttpHeaders.js';
7
9
  import type { HttpClientResponse } from './Response.js';
@@ -9,6 +11,7 @@ export type HttpMethod = Dispatcher.HttpMethod;
9
11
  export type RequestURL = string | URL;
10
12
  export type FixJSONCtlCharsHandler = (data: string) => string;
11
13
  export type FixJSONCtlChars = boolean | FixJSONCtlCharsHandler;
14
+ type AbortSignal = unknown;
12
15
  export type RequestOptions = {
13
16
  /** Request method, defaults to GET. Could be GET, POST, DELETE or PUT. Alias 'type'. */
14
17
  method?: HttpMethod | Lowercase<HttpMethod>;
@@ -147,6 +150,7 @@ export type RequestOptions = {
147
150
  reset?: boolean;
148
151
  /** Default: `64 KiB` */
149
152
  highWaterMark?: number;
153
+ signal?: AbortSignal | EventEmitter;
150
154
  };
151
155
  export type RequestMeta = {
152
156
  requestId: number;
@@ -155,3 +159,4 @@ export type RequestMeta = {
155
159
  ctx?: unknown;
156
160
  retries: number;
157
161
  };
162
+ export {};
@@ -35,6 +35,11 @@ export type RawResponseWithMeta = Readable & {
35
35
  status: number;
36
36
  statusCode: number;
37
37
  statusText: string;
38
+ /**
39
+ * @alias statusText
40
+ * @deprecated use `statusText` instead
41
+ **/
42
+ statusMessage: string;
38
43
  headers: IncomingHttpHeaders;
39
44
  timing: Timing;
40
45
  socket: SocketInfo;
@@ -62,7 +62,7 @@ class BlobFromStream {
62
62
  return 'Blob';
63
63
  }
64
64
  }
65
- export const HEADER_USER_AGENT = createUserAgent('node-urllib', '3.22.4');
65
+ export const HEADER_USER_AGENT = createUserAgent('node-urllib', '3.23.0');
66
66
  function getFileName(stream) {
67
67
  const filePath = stream.path;
68
68
  if (filePath) {
@@ -227,6 +227,7 @@ export class HttpClient extends EventEmitter {
227
227
  status: -1,
228
228
  statusCode: -1,
229
229
  statusText: '',
230
+ statusMessage: '',
230
231
  headers: resHeaders,
231
232
  size: 0,
232
233
  aborted: false,
@@ -301,6 +302,7 @@ export class HttpClient extends EventEmitter {
301
302
  bodyTimeout,
302
303
  opaque: internalOpaque,
303
304
  dispatcher: args.dispatcher ?? this.#dispatcher,
305
+ signal: args.signal,
304
306
  };
305
307
  if (typeof args.highWaterMark === 'number') {
306
308
  requestOptions.highWaterMark = args.highWaterMark;
@@ -492,7 +494,7 @@ export class HttpClient extends EventEmitter {
492
494
  const isCompressedContent = contentEncoding === 'gzip' || contentEncoding === 'br';
493
495
  res.headers = response.headers;
494
496
  res.status = res.statusCode = response.statusCode;
495
- res.statusText = STATUS_CODES[res.status] || '';
497
+ res.statusMessage = res.statusText = STATUS_CODES[res.status] || '';
496
498
  if (res.headers['content-length']) {
497
499
  res.size = parseInt(res.headers['content-length']);
498
500
  }
@@ -1,7 +1,9 @@
1
1
  /// <reference types="node" resolution-mode="require"/>
2
2
  /// <reference types="node" resolution-mode="require"/>
3
3
  /// <reference types="node" resolution-mode="require"/>
4
+ /// <reference types="node" resolution-mode="require"/>
4
5
  import type { Readable, Writable } from 'node:stream';
6
+ import type { EventEmitter } from 'node:events';
5
7
  import type { Dispatcher } from 'undici';
6
8
  import type { IncomingHttpHeaders } from './IncomingHttpHeaders.js';
7
9
  import type { HttpClientResponse } from './Response.js';
@@ -9,6 +11,7 @@ export type HttpMethod = Dispatcher.HttpMethod;
9
11
  export type RequestURL = string | URL;
10
12
  export type FixJSONCtlCharsHandler = (data: string) => string;
11
13
  export type FixJSONCtlChars = boolean | FixJSONCtlCharsHandler;
14
+ type AbortSignal = unknown;
12
15
  export type RequestOptions = {
13
16
  /** Request method, defaults to GET. Could be GET, POST, DELETE or PUT. Alias 'type'. */
14
17
  method?: HttpMethod | Lowercase<HttpMethod>;
@@ -147,6 +150,7 @@ export type RequestOptions = {
147
150
  reset?: boolean;
148
151
  /** Default: `64 KiB` */
149
152
  highWaterMark?: number;
153
+ signal?: AbortSignal | EventEmitter;
150
154
  };
151
155
  export type RequestMeta = {
152
156
  requestId: number;
@@ -155,3 +159,4 @@ export type RequestMeta = {
155
159
  ctx?: unknown;
156
160
  retries: number;
157
161
  };
162
+ export {};
@@ -35,6 +35,11 @@ export type RawResponseWithMeta = Readable & {
35
35
  status: number;
36
36
  statusCode: number;
37
37
  statusText: string;
38
+ /**
39
+ * @alias statusText
40
+ * @deprecated use `statusText` instead
41
+ **/
42
+ statusMessage: string;
38
43
  headers: IncomingHttpHeaders;
39
44
  timing: Timing;
40
45
  socket: SocketInfo;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "urllib",
3
- "version": "3.22.4",
3
+ "version": "3.23.0",
4
4
  "publishConfig": {
5
5
  "tag": "latest"
6
6
  },
@@ -69,7 +69,7 @@
69
69
  "@types/qs": "^6.9.7",
70
70
  "@types/selfsigned": "^2.0.1",
71
71
  "@types/tar-stream": "^2.2.2",
72
- "@vitest/coverage-v8": "^1.0.1",
72
+ "@vitest/coverage-v8": "^1.3.1",
73
73
  "busboy": "^1.6.0",
74
74
  "cross-env": "^7.0.3",
75
75
  "eslint": "^8.25.0",
@@ -82,7 +82,7 @@
82
82
  "tshy": "^1.0.0",
83
83
  "tshy-after": "^1.0.0",
84
84
  "typescript": "^5.0.4",
85
- "vitest": "^1.0.1"
85
+ "vitest": "^1.3.1"
86
86
  },
87
87
  "engines": {
88
88
  "node": ">= 14.19.3"
package/src/HttpClient.ts CHANGED
@@ -330,6 +330,7 @@ export class HttpClient extends EventEmitter {
330
330
  status: -1,
331
331
  statusCode: -1,
332
332
  statusText: '',
333
+ statusMessage: '',
333
334
  headers: resHeaders,
334
335
  size: 0,
335
336
  aborted: false,
@@ -405,6 +406,7 @@ export class HttpClient extends EventEmitter {
405
406
  bodyTimeout,
406
407
  opaque: internalOpaque,
407
408
  dispatcher: args.dispatcher ?? this.#dispatcher,
409
+ signal: args.signal,
408
410
  };
409
411
  if (typeof args.highWaterMark === 'number') {
410
412
  requestOptions.highWaterMark = args.highWaterMark;
@@ -589,7 +591,7 @@ export class HttpClient extends EventEmitter {
589
591
 
590
592
  res.headers = response.headers;
591
593
  res.status = res.statusCode = response.statusCode;
592
- res.statusText = STATUS_CODES[res.status] || '';
594
+ res.statusMessage = res.statusText = STATUS_CODES[res.status] || '';
593
595
  if (res.headers['content-length']) {
594
596
  res.size = parseInt(res.headers['content-length']);
595
597
  }
package/src/Request.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import type { Readable, Writable } from 'node:stream';
2
+ import type { EventEmitter } from 'node:events';
2
3
  import type { Dispatcher } from 'undici';
3
4
  import type { IncomingHttpHeaders } from './IncomingHttpHeaders.js';
4
5
  import type { HttpClientResponse } from './Response.js';
@@ -10,6 +11,8 @@ export type RequestURL = string | URL;
10
11
  export type FixJSONCtlCharsHandler = (data: string) => string;
11
12
  export type FixJSONCtlChars = boolean | FixJSONCtlCharsHandler;
12
13
 
14
+ type AbortSignal = unknown;
15
+
13
16
  export type RequestOptions = {
14
17
  /** Request method, defaults to GET. Could be GET, POST, DELETE or PUT. Alias 'type'. */
15
18
  method?: HttpMethod | Lowercase<HttpMethod>;
@@ -148,6 +151,7 @@ export type RequestOptions = {
148
151
  reset?: boolean;
149
152
  /** Default: `64 KiB` */
150
153
  highWaterMark?: number;
154
+ signal?: AbortSignal | EventEmitter;
151
155
  };
152
156
 
153
157
  export type RequestMeta = {
package/src/Response.ts CHANGED
@@ -45,6 +45,11 @@ export type RawResponseWithMeta = Readable & {
45
45
  status: number;
46
46
  statusCode: number;
47
47
  statusText: string;
48
+ /**
49
+ * @alias statusText
50
+ * @deprecated use `statusText` instead
51
+ **/
52
+ statusMessage: string;
48
53
  headers: IncomingHttpHeaders;
49
54
  timing: Timing;
50
55
  // SocketInfo