From a962e05d827fbb54fbc64689304b2c0683877c2c Mon Sep 17 00:00:00 2001 From: Emil Lerch Date: Mon, 6 May 2024 12:15:29 -0700 Subject: [PATCH] zig 0.12.0: remove all files that should come from dependent packages --- src/CloudflareDeployStep.zig | 100 ------- src/cloudflare_build.zig | 26 -- src/cloudflaredeploy.zig | 377 ------------------------- src/dist/memfs.wasm | Bin 140170 -> 0 bytes src/index.js | 31 --- src/lambda.zig | 516 ----------------------------------- src/lambda_build.zig | 198 -------------- 7 files changed, 1248 deletions(-) delete mode 100644 src/CloudflareDeployStep.zig delete mode 100644 src/cloudflare_build.zig delete mode 100644 src/cloudflaredeploy.zig delete mode 100755 src/dist/memfs.wasm delete mode 100644 src/index.js delete mode 100644 src/lambda.zig delete mode 100644 src/lambda_build.zig diff --git a/src/CloudflareDeployStep.zig b/src/CloudflareDeployStep.zig deleted file mode 100644 index 445454d..0000000 --- a/src/CloudflareDeployStep.zig +++ /dev/null @@ -1,100 +0,0 @@ -const std = @import("std"); -const cloudflare = @import("cloudflaredeploy.zig"); -const CloudflareDeployStep = @This(); - -pub const base_id: std.Build.Step.Id = .custom; - -step: std.Build.Step, -primary_javascript_file: std.Build.LazyPath, -worker_name: []const u8, -options: Options, - -pub const Options = struct { - /// if set, the primary file will not be read (and may not exist). This data - /// will be used instead - primary_file_data: ?[]const u8 = null, - - /// When set, the Javascript file will be searched/replaced with the target - /// file name for import - wasm_name: ?struct { - search: []const u8, - replace: []const u8, - } = null, - - /// When set, the directory specified will be used rather than the current directory - wasm_dir: ?[]const u8 = null, -}; - -pub fn create( - owner: *std.Build, - worker_name: []const u8, - primary_javascript_file: std.Build.LazyPath, - options: Options, -) *CloudflareDeployStep { - const self = owner.allocator.create(CloudflareDeployStep) catch @panic("OOM"); - self.* = CloudflareDeployStep{ - .step = std.Build.Step.init(.{ - .id = base_id, - .name = owner.fmt("cloudflare deploy {s}", .{primary_javascript_file.getDisplayName()}), - .owner = owner, - .makeFn = make, - }), - .primary_javascript_file = primary_javascript_file, - .worker_name = worker_name, - .options = options, - }; - if (options.primary_file_data == null) - primary_javascript_file.addStepDependencies(&self.step); - return self; -} - -fn make(step: *std.Build.Step, prog_node: *std.Progress.Node) !void { - _ = prog_node; - const b = step.owner; - const self = @fieldParentPtr(CloudflareDeployStep, "step", step); - - var client = std.http.Client{ .allocator = b.allocator }; - defer client.deinit(); - var proxy_text = std.os.getenv("https_proxy") orelse std.os.getenv("HTTPS_PROXY"); - if (proxy_text) |p| { - client.deinit(); - const proxy = try std.Uri.parse(p); - client = std.http.Client{ - .allocator = b.allocator, - .proxy = .{ - .protocol = if (std.ascii.eqlIgnoreCase(proxy.scheme, "http")) .plain else .tls, - .host = proxy.host.?, - .port = proxy.port, - }, - }; - } - - const script = self.options.primary_file_data orelse - try std.fs.cwd().readFileAlloc(b.allocator, self.primary_javascript_file.path, std.math.maxInt(usize)); - defer if (self.options.primary_file_data == null) b.allocator.free(script); - - var final_script = script; - if (self.options.wasm_name) |n| { - final_script = try std.mem.replaceOwned(u8, b.allocator, script, n.search, n.replace); - if (self.options.primary_file_data == null) b.allocator.free(script); - } - defer if (self.options.wasm_name) |_| b.allocator.free(final_script); - - var al = std.ArrayList(u8).init(b.allocator); - defer al.deinit(); - try cloudflare.pushWorker( - b.allocator, - &client, - self.worker_name, - self.options.wasm_dir orelse ".", - final_script, - al.writer(), - std.io.getStdErr().writer(), - ); - const start = std.mem.lastIndexOf(u8, al.items, "http").?; - step.name = try std.fmt.allocPrint( - b.allocator, - "cloudflare deploy {s} to {s}", - .{ self.primary_javascript_file.getDisplayName(), al.items[start .. al.items.len - 1] }, - ); -} diff --git a/src/cloudflare_build.zig b/src/cloudflare_build.zig deleted file mode 100644 index fc4d9b1..0000000 --- a/src/cloudflare_build.zig +++ /dev/null @@ -1,26 +0,0 @@ -const std = @import("std"); -const builtin = @import("builtin"); -const CloudflareDeployStep = @import("CloudflareDeployStep.zig"); - -const script = @embedFile("index.js"); - -pub fn configureBuild(b: *std.build.Builder, cs: *std.Build.Step.Compile, function_name: []const u8) !void { - const wasm_name = try std.fmt.allocPrint(b.allocator, "{s}.wasm", .{cs.name}); - const deploy_cmd = CloudflareDeployStep.create( - b, - function_name, - .{ .path = "index.js" }, - .{ - .primary_file_data = script, - .wasm_name = .{ - .search = "custom.wasm", - .replace = wasm_name, - }, - .wasm_dir = b.getInstallPath(.bin, "."), - }, - ); - deploy_cmd.step.dependOn(b.getInstallStep()); - - const deploy_step = b.step("cloudflare", "Deploy as Cloudflare worker (must be compiled with -Dtarget=wasm32-wasi)"); - deploy_step.dependOn(&deploy_cmd.step); -} diff --git a/src/cloudflaredeploy.zig b/src/cloudflaredeploy.zig deleted file mode 100644 index fa791ab..0000000 --- a/src/cloudflaredeploy.zig +++ /dev/null @@ -1,377 +0,0 @@ -const std = @import("std"); - -var x_auth_token: ?[:0]const u8 = undefined; -var x_auth_email: ?[:0]const u8 = undefined; -var x_auth_key: ?[:0]const u8 = undefined; -var initialized = false; - -const cf_api_base = "https://api.cloudflare.com/client/v4"; - -pub fn main() !u8 { - var arena = std.heap.ArenaAllocator.init(std.heap.page_allocator); - defer arena.deinit(); - const allocator = arena.allocator(); - var client = std.http.Client{ .allocator = allocator }; - defer client.deinit(); - var proxy_text = std.os.getenv("https_proxy") orelse std.os.getenv("HTTPS_PROXY"); - if (proxy_text) |p| { - client.deinit(); - const proxy = try std.Uri.parse(p); - client = std.http.Client{ - .allocator = allocator, - .proxy = .{ - .protocol = if (std.ascii.eqlIgnoreCase(proxy.scheme, "http")) .plain else .tls, - .host = proxy.host.?, - .port = proxy.port, - }, - }; - } - - const stdout_file = std.io.getStdOut().writer(); - var bw = std.io.bufferedWriter(stdout_file); - const stdout = bw.writer(); - - var argIterator = try std.process.argsWithAllocator(allocator); - defer argIterator.deinit(); - const exe_name = argIterator.next().?; - var maybe_name = argIterator.next(); - if (maybe_name == null) { - try usage(std.io.getStdErr().writer(), exe_name); - return 1; - } - const worker_name = maybe_name.?; - if (std.mem.eql(u8, worker_name, "-h")) { - try usage(stdout, exe_name); - return 0; - } - var maybe_script_name = argIterator.next(); - if (maybe_script_name == null) { - try usage(std.io.getStdErr().writer(), exe_name); - return 1; - } - const script = std.fs.cwd().readFileAlloc(allocator, maybe_script_name.?, std.math.maxInt(usize)) catch |err| { - try usage(std.io.getStdErr().writer(), exe_name); - return err; - }; - - pushWorker(allocator, &client, worker_name, script, ".", stdout, std.io.getStdErr().writer()) catch return 1; - try bw.flush(); // don't forget to flush! - return 0; -} - -fn usage(writer: anytype, this: []const u8) !void { - try writer.print("usage: {s}