Skip to content

Commit 4ac1924

Browse files
authored
fix: do not error for bin entrypoint with existing shebang (#469)
1 parent abdf76a commit 4ac1924

File tree

18 files changed

+384
-985
lines changed

18 files changed

+384
-985
lines changed

Cargo.lock

Lines changed: 28 additions & 613 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,10 @@ members = [
1313

1414
[workspace.dependencies]
1515
async-trait = "0.1.88"
16+
deno_cache_dir = "0.23.0"
1617
deno_config = "0.61.0"
1718
deno_error = { version = "0.6.1", features = ["serde", "serde_json", "url"] }
19+
deno_graph = { version = "0.96.2", features = ["swc"], default-features = false }
1820
deno_path_util = "0.4.0"
1921
deno_resolver = { version = "0.42.0", features = ["graph"] }
2022
serde_json = { version = "1.0.140", features = ["preserve_order"] }

deno.jsonc

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,13 +53,12 @@
5353
"tests/web_socket_project/npm"
5454
],
5555
"imports": {
56-
"@deno/cache-dir": "jsr:@deno/cache-dir@^0.20",
5756
"@std/assert": "jsr:@std/assert@1",
5857
"@std/fmt": "jsr:@std/fmt@1",
5958
"@std/fs": "jsr:@std/fs@1",
6059
"@std/path": "jsr:@std/path@1",
61-
"@ts-morph/bootstrap": "jsr:@ts-morph/bootstrap@^0.25.0",
62-
"code-block-writer": "jsr:@david/code-block-writer@^13.0.2"
60+
"@ts-morph/bootstrap": "jsr:@ts-morph/bootstrap@^0.27.0",
61+
"code-block-writer": "jsr:@david/code-block-writer@^13.0.3"
6362
},
6463
"exports": {
6564
".": "./mod.ts",

deno.lock

Lines changed: 31 additions & 64 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

mod.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -332,7 +332,9 @@ export async function build(options: BuildOptions): Promise<void> {
332332
outputFile.filePath,
333333
);
334334
const outputFileText = binaryEntryPointPaths.has(outputFile.filePath)
335-
? `#!/usr/bin/env node\n${outputFile.fileText}`
335+
? `#!/usr/bin/env node\n${
336+
outputFile.fileText.replace(/^#![^\n\r]*\r?\n?/, "")
337+
}`
336338
: outputFile.fileText;
337339
const sourceFile = project.createSourceFile(
338340
outputFilePath,

rs-lib/Cargo.toml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,18 @@ repository = "https://github.com/denoland/dnt"
88
description = "Deno to Node/canonical TypeScript transform."
99

1010
[features]
11-
default = ["tokio-loader", "serialization"]
12-
tokio-loader = ["tokio", "reqwest"]
11+
default = ["serialization"]
1312
serialization = ["serde"]
1413

1514
[dependencies]
1615
anyhow = "1.0.70"
1716
async-trait.workspace = true
1817
base64 = "0.13.1"
1918
deno_ast = { version = "0.48.1", features = ["transforms", "view", "visit", "utils"] }
19+
deno_cache_dir.workspace = true
2020
deno_config.workspace = true
2121
deno_error.workspace = true
22-
deno_graph = { version = "0.96.2", features = ["swc"], default-features = false }
22+
deno_graph.workspace = true
2323
deno_path_util.workspace = true
2424
deno_resolver.workspace = true
2525
deno_semver = "0.7.1"
@@ -30,13 +30,12 @@ jsonc-parser = { version = "0.26.2", features = ["serde"] }
3030
once_cell = "1.17.1"
3131
pathdiff = "0.2.1"
3232
regex = "1.7"
33-
reqwest = { version = "0.11", features = ["rustls"], optional = true }
3433
serde = { version = "1.0.159", features = ["derive"], optional = true }
3534
serde_json.workspace = true
3635
sys_traits.workspace = true
37-
tokio = { version = "1", features = ["full"], optional = true }
3836
url.workspace = true
3937

4038
[dev-dependencies]
4139
pretty_assertions = "1.3.0"
4240
sys_traits = { workspace = true, features = ["memory"] }
41+
tokio = { version = "1", features = ["full"] }

rs-lib/src/graph.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ use std::fmt::Write;
66
use std::rc::Rc;
77

88
use crate::loader::get_all_specifier_mappers;
9-
use crate::loader::Loader;
109
use crate::loader::SourceLoader;
1110
use crate::parser::ScopeAnalysisParser;
1211
use crate::specifiers::get_specifiers;
@@ -35,7 +34,7 @@ use sys_traits::impls::RealSys;
3534
pub struct ModuleGraphOptions<'a, TSys: WorkspaceFactorySys> {
3635
pub entry_points: Vec<ModuleSpecifier>,
3736
pub test_entry_points: Vec<ModuleSpecifier>,
38-
pub loader: Rc<dyn Loader>,
37+
pub loader: Rc<dyn deno_graph::source::Loader>,
3938
pub resolver: DefaultDenoResolverRc<TSys>,
4039
pub specifier_mappings: &'a HashMap<ModuleSpecifier, MappedSpecifier>,
4140
pub compiler_options_resolver: Rc<CompilerOptionsResolver>,

0 commit comments

Comments
 (0)