fix: remove entrypoint hack for Deno 2.0 (#25332)

This commit is contained in:
David Sherret 2024-09-02 17:33:07 +02:00 committed by GitHub
parent bc51eca700
commit 3015f16fbf
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 0 additions and 68 deletions

View File

@ -4521,53 +4521,6 @@ fn run_parse(
app: Command,
bare: bool,
) -> clap::error::Result<()> {
// todo(dsherret): remove this in Deno 2.0
// This is a hack to make https://github.com/netlify/build/pull/5767 work
// for old versions of @netlify/edge-bundler with new versions of Deno
// where Deno has gotten smarter at resolving config files.
//
// It's an unfortunate scenario, but Netlify has the version at least
// pinned to 1.x in old versions so we can remove this in Deno 2.0 in
// a few months.
fn temp_netlify_deno_1_hack(flags: &mut Flags, script_arg: &str) {
fn is_netlify_edge_bundler_entrypoint(
flags: &Flags,
script_arg: &str,
) -> bool {
// based on diff here: https://github.com/netlify/edge-bundler/blame/f1d33b74ca7aeec19a7c2149316d4547a94e43fb/node/config.ts#L85
if flags.permissions.allow_read.is_none()
|| flags.permissions.allow_write.is_none()
|| flags.config_flag != ConfigFlag::Discover
{
return false;
}
if !script_arg.contains("@netlify") {
return false;
}
let path = PathBuf::from(script_arg);
if !path.ends_with("deno/config.ts") {
return false;
}
let mut found_node_modules = false;
for component in path.components().filter_map(|c| c.as_os_str().to_str())
{
if !found_node_modules {
found_node_modules = component == "node_modules";
} else {
// make this work with pnpm and other package managers
if component.contains("@netlify") {
return true;
}
}
}
false
}
if is_netlify_edge_bundler_entrypoint(flags, script_arg) {
flags.config_flag = ConfigFlag::Disabled;
}
}
runtime_args_parse(flags, matches, true, true);
ext_arg_parse(flags, matches);
@ -4576,7 +4529,6 @@ fn run_parse(
if let Some(mut script_arg) = matches.remove_many::<String>("script_arg") {
let script = script_arg.next().unwrap();
flags.argv.extend(script_arg);
temp_netlify_deno_1_hack(flags, &script);
flags.subcommand = DenoSubcommand::Run(RunFlags {
script,
watch: watch_arg_parse_with_paths(matches),

View File

@ -1,9 +0,0 @@
{
"args": [
"run",
"--allow-read",
"--allow-write",
"node_modules/@netlify/edge-bundler/deno/config.ts"
],
"output": "main.out"
}

View File

@ -1 +0,0 @@
Success

View File

@ -1 +0,0 @@
console.log("Success");

View File

@ -1,5 +0,0 @@
{
"name": "@netlify/edge-bundler",
"version": "1.0.0",
"exports": "./index.js",
}

View File

@ -1,4 +0,0 @@
{
"name": "my-package",
"version": "1.0.0"
}