aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Ai Hoshino <ambiguous404@gmail.com> 2023-08-05 19:48:22 +0800
committerGravatar GitHub <noreply@github.com> 2023-08-05 04:48:22 -0700
commitcf8650937aa03b7410c24675868eec36b7e2f390 (patch)
treea85f8efbf5e4ecadee7f427219bf1004435f6c93
parent3803d398408044b36e1f4cf0db37c490270113f0 (diff)
downloadbun-cf8650937aa03b7410c24675868eec36b7e2f390.tar.gz
bun-cf8650937aa03b7410c24675868eec36b7e2f390.tar.zst
bun-cf8650937aa03b7410c24675868eec36b7e2f390.zip
Fix(cli/init): support subpath entrypoint. (#4002)
-rw-r--r--src/cli/init_command.zig9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/cli/init_command.zig b/src/cli/init_command.zig
index 9b5ad7144..6f1fced54 100644
--- a/src/cli/init_command.zig
+++ b/src/cli/init_command.zig
@@ -337,7 +337,14 @@ pub const InitCommand = struct {
}
if (fields.entry_point.len > 0 and !exists(fields.entry_point)) {
- var entry = try std.fs.cwd().createFile(fields.entry_point, .{ .truncate = true });
+ const cwd = std.fs.cwd();
+ if (std.fs.path.dirname(fields.entry_point)) |dirname| {
+ if (!strings.eqlComptime(dirname, ".")) {
+ cwd.makePath(dirname) catch {};
+ }
+ }
+
+ var entry = try cwd.createFile(fields.entry_point, .{ .truncate = true });
entry.writeAll("console.log(\"Hello via Bun!\");") catch {};
entry.close();
Output.prettyln(" + <r><d>{s}<r>", .{fields.entry_point});