@netlify/edge-bundler
Advanced tools
| import { type WriteStream } from 'fs'; | ||
| import { ExecaChildProcess } from 'execa'; | ||
| import { Logger } from './logger.js'; | ||
| declare const DENO_VERSION_RANGE = "1.37.0 - 1.44.4"; | ||
| declare const DENO_VERSION_RANGE = "1.39.0 - 1.46.3"; | ||
| type OnBeforeDownloadHook = () => void | Promise<void>; | ||
@@ -6,0 +6,0 @@ type OnAfterDownloadHook = (error?: Error) => void | Promise<void>; |
@@ -12,7 +12,6 @@ import { promises as fs } from 'fs'; | ||
| const DENO_VERSION_FILE = 'version.txt'; | ||
| // When updating DENO_VERSION_RANGE, ensure that the deno version installed in the | ||
| // build-image/buildbot does satisfy this range! | ||
| // We're pinning the range because of an issue with v1.45.0 of the Deno CLI: | ||
| // https://linear.app/netlify/issue/FRP-775/deno-cli-v1450-causing-issues | ||
| const DENO_VERSION_RANGE = '1.37.0 - 1.44.4'; | ||
| // When updating DENO_VERSION_RANGE, ensure that the deno version | ||
| // on the netlify/buildbot build image satisfies this range! | ||
| // https://github.com/netlify/buildbot/blob/f9c03c9dcb091d6570e9d0778381560d469e78ad/build-image/noble/Dockerfile#L410 | ||
| const DENO_VERSION_RANGE = '1.39.0 - 1.46.3'; | ||
| class DenoBridge { | ||
@@ -19,0 +18,0 @@ constructor(options) { |
@@ -0,3 +1,5 @@ | ||
| import { platform } from 'os'; | ||
| import fetch from 'node-fetch'; | ||
| import waitFor from 'p-wait-for'; | ||
| import { satisfies } from 'semver'; | ||
| // 1 second | ||
@@ -32,5 +34,15 @@ const SERVER_KILL_TIMEOUT = 1e3; | ||
| ps.on('error', reject); | ||
| ps.kill('SIGTERM', { | ||
| forceKillAfterTimeout: SERVER_KILL_TIMEOUT, | ||
| }); | ||
| // On Windows with Node 21+, there's a bug where attempting to kill a child process | ||
| // results in an EPERM error. Ignore the error in that case. | ||
| // See: https://github.com/nodejs/node/issues/51766 | ||
| // We also disable execa's `forceKillAfterTimeout` in this case | ||
| // which can cause unhandled rejection. | ||
| try { | ||
| ps.kill('SIGTERM', { | ||
| forceKillAfterTimeout: platform() === 'win32' && satisfies(process.version, '>=21') ? false : SERVER_KILL_TIMEOUT, | ||
| }); | ||
| } | ||
| catch { | ||
| // no-op | ||
| } | ||
| }); | ||
@@ -37,0 +49,0 @@ }; |
+2
-2
| { | ||
| "name": "@netlify/edge-bundler", | ||
| "version": "12.2.3", | ||
| "version": "12.3.0", | ||
| "description": "Intelligently prepare Netlify Edge Functions for deployment", | ||
@@ -87,3 +87,3 @@ "type": "module", | ||
| }, | ||
| "gitHead": "507a010535ba4028153a755b397501109fa872c9" | ||
| "gitHead": "0b25c72f762393fa13a50e673a0fd48eb37f5120" | ||
| } |
Network access
Supply chain riskThis module accesses the network.
Found 14 instances in 1 package
Uses eval
Supply chain riskPackage uses dynamic code execution (e.g., eval()), which is a dangerous practice. This can prevent the code from running in certain environments and increases the risk that the code may contain exploits or malicious behavior.
Found 1 instance in 1 package
Debug access
Supply chain riskUses debug, reflection and dynamic code execution features.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 4 instances in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 2 instances in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
Network access
Supply chain riskThis module accesses the network.
Found 14 instances in 1 package
Uses eval
Supply chain riskPackage uses dynamic code execution (e.g., eval()), which is a dangerous practice. This can prevent the code from running in certain environments and increases the risk that the code may contain exploits or malicious behavior.
Found 1 instance in 1 package
Debug access
Supply chain riskUses debug, reflection and dynamic code execution features.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 4 instances in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 2 instances in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
3811321
0.01%9888
0.11%