Compare commits

...

5 commits

Author SHA1 Message Date
0171cfc1f1
zls now has 0.16.0 support
All checks were successful
AWS-Zig Build / build-zig-amd64-host (push) Successful in 8m16s
2026-04-17 09:06:15 -07:00
7e6b360610
address "failed command" on codegen from within zig build verbose mode 2026-04-17 09:05:33 -07:00
242d4b5f44
update example 2026-04-16 17:28:44 -07:00
d697df6fd6
zlint does not support async properly, skip the file 2026-04-16 17:10:59 -07:00
9ac1052e01
remove legacy Makefile 2026-04-16 17:10:17 -07:00
6 changed files with 40 additions and 49 deletions

View file

@ -2,4 +2,4 @@
prek = "0.3.1"
"ubi:DonIsaac/zlint" = "0.7.9"
zig = "0.16.0"
zls = "0.15.1"
zls = "0.16.0"

View file

@ -1,15 +0,0 @@
start-hand-test: src/main.zig src/aws.zig src/xml.zig
@zig build-exe -static -I/usr/local/include -Isrc/ -lc --strip \
--name start-hand-test src/main.zig src/bitfield-workaround.c \
/usr/local/lib64/libaws-c-*.a \
/usr/local/lib64/libs2n.a \
/usr/local/lib/libcrypto.a \
/usr/local/lib/libssl.a
elasticurl: curl.c
@zig build-exe -static -I/usr/local/include -Isrc/ -lc --strip \
--name elasticurl curl.c \
/usr/local/lib64/libaws-c-*.a \
/usr/local/lib64/libs2n.a \
/usr/local/lib/libcrypto.a \
/usr/local/lib/libssl.a

View file

@ -57,30 +57,32 @@ pub fn main(init: std.process.Init) anyerror!void {
models_dir = try std.Io.Dir.cwd().openDir(io, args[i + 1], .{ .iterate = true });
}
var manifest_file = try output_dir.createFile(io, "service_manifest.zig", .{});
defer manifest_file.close(io);
var manifest = manifest_file.writer(io, &manifest_buf).interface;
defer manifest.flush() catch @panic("Could not flush service manifest");
var files_processed: usize = 0;
var skip_next = true;
for (args) |arg| {
if (skip_next) {
skip_next = false;
continue;
}
if (std.mem.eql(u8, "--verbose", arg)) {
verbose = true;
continue;
}
{
var manifest_file = try output_dir.createFile(io, "service_manifest.zig", .{});
defer manifest_file.close(io);
var manifest = manifest_file.writer(io, &manifest_buf).interface;
defer manifest.flush() catch @panic("Could not flush service manifest");
var skip_next = true;
for (args) |arg| {
if (skip_next) {
skip_next = false;
continue;
}
if (std.mem.eql(u8, "--verbose", arg)) {
verbose = true;
continue;
}
if (std.mem.eql(u8, "--models", arg) or
std.mem.eql(u8, "--output", arg))
{
skip_next = true;
continue;
if (std.mem.eql(u8, "--models", arg) or
std.mem.eql(u8, "--output", arg))
{
skip_next = true;
continue;
}
try processFile(io, arg, output_dir, &manifest);
files_processed += 1;
}
try processFile(io, arg, output_dir, &manifest);
files_processed += 1;
}
if (files_processed == 0) {
// no files specified, look for json files in models directory or cwd
@ -102,7 +104,15 @@ pub fn main(init: std.process.Init) anyerror!void {
if (verbose) {
const output_path = try output_dir.realPathFileAlloc(io, ".", allocator);
// Build system suppresses stdout, we have to send this to stderr
std.debug.print("Output path: {s}\n", .{output_path});
std.debug.print(
\\Note: if this is run from within zig build, output from verbose mode will
\\ trigger zig to say 'failed command'. This program has succeeded,
\\ and the message from the build system will not effect actual processing
\\ of the build. It is simply indicative of the build runner detecting
\\ output
, .{});
}
}

View file

@ -6,8 +6,8 @@
.dependencies = .{
.aws = .{
.url = "https://git.lerch.org/api/packages/lobo/generic/aws-sdk-with-models/e41f98b389539c8bc6b1a231d25e2980318e5ef4/e41f98b389539c8bc6b1a231d25e2980318e5ef4-with-models.tar.gz",
.hash = "aws-0.0.1-SbsFcI0RCgBdf1nak95gi1kAtI6sv3Ntb7BPETH30fpS",
.url = "https://git.lerch.org/api/packages/lobo/generic/aws-sdk-with-models/2fddf4f122198ba64fbb2320e702b317b0b86837/2fddf4f122198ba64fbb2320e702b317b0b86837-with-models.tar.gz",
.hash = "aws-0.0.1-SbsFcLhoAwQ5TcclMwXhIljwW0Zz_Kcjd4yrIeQq5uHt",
},
},
}

View file

@ -11,12 +11,11 @@ pub const std_options: std.Options = .{
},
};
pub fn main() anyerror!void {
var gpa = std.heap.GeneralPurposeAllocator(.{}){};
defer _ = gpa.deinit();
const allocator = gpa.allocator();
pub fn main(init: std.process.Init) anyerror!void {
const allocator = init.gpa;
const io = init.io;
var stdout_buffer: [1024]u8 = undefined;
var stdout_raw = std.fs.File.stdout().writer(&stdout_buffer);
var stdout_raw = std.Io.File.stdout().writer(io, &stdout_buffer);
const stdout = &stdout_raw.interface;
defer stdout.flush() catch unreachable;
@ -28,10 +27,7 @@ pub fn main() anyerror!void {
// };
//
// var client = aws.Client.init(allocator, .{ .proxy = proxy });
var threaded: std.Io.Threaded = .init(allocator);
defer threaded.deinit();
const io = threaded.io();
var client = aws.Client.init(allocator, .{ .io = io });
var client = aws.Client.init(allocator, .{ .io = io, .map = init.environ_map });
defer client.deinit();
const options = aws.Options{

View file

@ -1,3 +1,3 @@
{
"ignore": ["lib/json/src/json.zig"]
"ignore": ["lib/json/src/json.zig", "codegen/src/Hasher.zig"]
}