netlify-cli 23.11.0 → 23.12.0-rc.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.
@@ -1 +1 @@
1
- {"version":3,"file":"http-agent.d.ts","sourceRoot":"","sources":["../../src/lib/http-agent.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAQnD,cAAM,qBAAsB,SAAQ,eAAe;gBAErC,IAAI,KAAA;IAOhB,QAAQ,CAAC,GAAG,KAAA,EAAE,IAAI,KAAA;CAOnB;AAOD,eAAO,MAAM,WAAW,GAAU,iCAG/B;IACD,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACrC,KAAG,OAAO,CACP;IACE,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC7B,GACD;IACE,KAAK,EAAE,qBAAqB,CAAA;IAC5B,QAAQ,EAAE,OAAO,CAAA;CAClB,CA4DJ,CAAA;AAGD,eAAO,MAAM,QAAQ,GAAU;;;CAA8B,iBAW5D,CAAA"}
1
+ {"version":3,"file":"http-agent.d.ts","sourceRoot":"","sources":["../../src/lib/http-agent.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAQnD,cAAM,qBAAsB,SAAQ,eAAe;gBAErC,IAAI,KAAA;IAOhB,QAAQ,CAAC,GAAG,KAAA,EAAE,IAAI,KAAA;CAOnB;AAOD,eAAO,MAAM,WAAW,GAAU,iCAG/B;IACD,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACrC,KAAG,OAAO,CACP;IACE,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC7B,GACD;IACE,KAAK,EAAE,qBAAqB,CAAA;IAC5B,QAAQ,EAAE,OAAO,CAAA;CAClB,CA2DJ,CAAA;AAGD,eAAO,MAAM,QAAQ,GAAU;;;CAA8B,iBAW5D,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import { readFile } from 'fs/promises';
2
2
  import { HttpsProxyAgent } from 'https-proxy-agent';
3
- import waitPort from 'wait-port';
4
3
  import { NETLIFYDEVERR, NETLIFYDEVWARN, exit, log } from '../utils/command-helpers.js';
4
+ import { waitPort } from './wait-port.js';
5
5
  // https://github.com/TooTallNate/node-https-proxy-agent/issues/89
6
6
  // Maybe replace with https://github.com/delvedor/hpagent
7
7
  // @ts-expect-error TS(2507) FIXME: Type 'typeof createHttpsProxyAgent' is not a const... Remove this comment to see the full error message
@@ -24,7 +24,7 @@ class HttpsProxyAgentWithCA extends HttpsProxyAgent {
24
24
  const DEFAULT_HTTP_PORT = 80;
25
25
  const DEFAULT_HTTPS_PORT = 443;
26
26
  // 50 seconds
27
- const AGENT_PORT_TIMEOUT = 50;
27
+ const AGENT_PORT_TIMEOUT = 50_000;
28
28
  export const tryGetAgent = async ({ certificateFile, httpProxy, }) => {
29
29
  if (!httpProxy) {
30
30
  return {};
@@ -42,12 +42,7 @@ export const tryGetAgent = async ({ certificateFile, httpProxy, }) => {
42
42
  }
43
43
  let port;
44
44
  try {
45
- port = await waitPort({
46
- port: Number.parseInt(proxyUrl.port) || (scheme === 'http' ? DEFAULT_HTTP_PORT : DEFAULT_HTTPS_PORT),
47
- host: proxyUrl.hostname,
48
- timeout: AGENT_PORT_TIMEOUT,
49
- output: 'silent',
50
- });
45
+ port = await waitPort(Number.parseInt(proxyUrl.port) || (scheme === 'http' ? DEFAULT_HTTP_PORT : DEFAULT_HTTPS_PORT), proxyUrl.hostname, AGENT_PORT_TIMEOUT);
51
46
  }
52
47
  catch (error) {
53
48
  // unknown error
@@ -1 +1 @@
1
- {"version":3,"file":"http-agent.js","sourceRoot":"","sources":["../../src/lib/http-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-agent.js","sourceRoot":"","sources":["../../src/lib/http-agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare const waitPort: (port: number, host: string, timeout: number, maxRetries?: number) => Promise<{
2
+ open: boolean;
3
+ ipVersion?: 4 | 6;
4
+ }>;
5
+ //# sourceMappingURL=wait-port.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wait-port.d.ts","sourceRoot":"","sources":["../../src/lib/wait-port.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,GACnB,MAAM,MAAM,EACZ,MAAM,MAAM,EACZ,SAAS,MAAM,EACf,mBAAe,KACd,OAAO,CAAC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;CAAE,CAgD9C,CAAA"}
@@ -0,0 +1,44 @@
1
+ import net from 'net';
2
+ export const waitPort = async (port, host, timeout, maxRetries = 10) => {
3
+ const startTime = Date.now();
4
+ for (let attempt = 0; attempt < maxRetries; attempt++) {
5
+ if (Date.now() - startTime > timeout) {
6
+ return { open: false };
7
+ }
8
+ try {
9
+ const ipVersion = await new Promise((resolve, reject) => {
10
+ const socket = new net.Socket();
11
+ let isResolved = false;
12
+ socket.on('connect', () => {
13
+ isResolved = true;
14
+ // Detect actual IP version from the connection
15
+ const detectedVersion = socket.remoteFamily === 'IPv6' ? 6 : 4;
16
+ socket.end();
17
+ resolve(detectedVersion);
18
+ });
19
+ socket.on('error', (error) => {
20
+ if (!isResolved) {
21
+ isResolved = true;
22
+ socket.destroy();
23
+ reject(error);
24
+ }
25
+ });
26
+ socket.setTimeout(1000, () => {
27
+ if (!isResolved) {
28
+ isResolved = true;
29
+ socket.destroy();
30
+ reject(new Error('Socket timeout'));
31
+ }
32
+ });
33
+ socket.connect(port, host);
34
+ });
35
+ return { open: true, ipVersion };
36
+ }
37
+ catch {
38
+ await new Promise((resolve) => setTimeout(resolve, Math.min(100 * (attempt + 1), 1000)));
39
+ continue;
40
+ }
41
+ }
42
+ return { open: false };
43
+ };
44
+ //# sourceMappingURL=wait-port.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wait-port.js","sourceRoot":"","sources":["../../src/lib/wait-port.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAC3B,IAAY,EACZ,IAAY,EACZ,OAAe,EACf,UAAU,GAAG,EAAE,EACgC,EAAE;IACjD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IAE5B,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;QACtD,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,CAAC;YACrC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;QACxB,CAAC;QAED,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,IAAI,OAAO,CAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC7D,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAA;gBAC/B,IAAI,UAAU,GAAG,KAAK,CAAA;gBAEtB,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;oBACxB,UAAU,GAAG,IAAI,CAAA;oBACjB,+CAA+C;oBAC/C,MAAM,eAAe,GAAG,MAAM,CAAC,YAAY,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC9D,MAAM,CAAC,GAAG,EAAE,CAAA;oBACZ,OAAO,CAAC,eAAe,CAAC,CAAA;gBAC1B,CAAC,CAAC,CAAA;gBAEF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBAC3B,IAAI,CAAC,UAAU,EAAE,CAAC;wBAChB,UAAU,GAAG,IAAI,CAAA;wBACjB,MAAM,CAAC,OAAO,EAAE,CAAA;wBAChB,MAAM,CAAC,KAAK,CAAC,CAAA;oBACf,CAAC;gBACH,CAAC,CAAC,CAAA;gBAEF,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE;oBAC3B,IAAI,CAAC,UAAU,EAAE,CAAC;wBAChB,UAAU,GAAG,IAAI,CAAA;wBACjB,MAAM,CAAC,OAAO,EAAE,CAAA;wBAChB,MAAM,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAA;oBACrC,CAAC;gBACH,CAAC,CAAC,CAAA;gBAEF,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC5B,CAAC,CAAC,CAAA;YAEF,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;QAClC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;YACxF,SAAQ;QACV,CAAC;IACH,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;AACxB,CAAC,CAAA"}