mirror of
https://github.com/ziglang/zig.git
synced 2025-12-06 14:23:09 +00:00
zig std: fix build failures
This commit is contained in:
parent
8c9dfcbd0f
commit
045bb14897
@ -93,9 +93,12 @@ pub fn main() !void {
|
|||||||
fn accept(context: *Context, connection: std.net.Server.Connection) void {
|
fn accept(context: *Context, connection: std.net.Server.Connection) void {
|
||||||
defer connection.stream.close();
|
defer connection.stream.close();
|
||||||
|
|
||||||
var read_buffer: [8000]u8 = undefined;
|
var recv_buffer: [4000]u8 = undefined;
|
||||||
var server = std.http.Server.init(connection, &read_buffer);
|
var send_buffer: [4000]u8 = undefined;
|
||||||
while (server.state == .ready) {
|
var conn_reader = connection.stream.reader(&recv_buffer);
|
||||||
|
var conn_writer = connection.stream.writer(&send_buffer);
|
||||||
|
var server = std.http.Server.init(conn_reader.interface(), &conn_writer.interface);
|
||||||
|
while (server.reader.state == .ready) {
|
||||||
var request = server.receiveHead() catch |err| switch (err) {
|
var request = server.receiveHead() catch |err| switch (err) {
|
||||||
error.HttpConnectionClosing => return,
|
error.HttpConnectionClosing => return,
|
||||||
else => {
|
else => {
|
||||||
@ -175,8 +178,7 @@ fn serveSourcesTar(request: *std.http.Server.Request, context: *Context) !void {
|
|||||||
const gpa = context.gpa;
|
const gpa = context.gpa;
|
||||||
|
|
||||||
var send_buffer: [0x4000]u8 = undefined;
|
var send_buffer: [0x4000]u8 = undefined;
|
||||||
var response = request.respondStreaming(.{
|
var response = try request.respondStreaming(&send_buffer, .{
|
||||||
.send_buffer = &send_buffer,
|
|
||||||
.respond_options = .{
|
.respond_options = .{
|
||||||
.extra_headers = &.{
|
.extra_headers = &.{
|
||||||
.{ .name = "content-type", .value = "application/x-tar" },
|
.{ .name = "content-type", .value = "application/x-tar" },
|
||||||
@ -191,11 +193,7 @@ fn serveSourcesTar(request: *std.http.Server.Request, context: *Context) !void {
|
|||||||
var walker = try std_dir.walk(gpa);
|
var walker = try std_dir.walk(gpa);
|
||||||
defer walker.deinit();
|
defer walker.deinit();
|
||||||
|
|
||||||
var adapter_buffer: [500]u8 = undefined;
|
var archiver: std.tar.Writer = .{ .underlying_writer = &response.writer };
|
||||||
var response_writer = response.writer().adaptToNewApi();
|
|
||||||
response_writer.new_interface.buffer = &adapter_buffer;
|
|
||||||
|
|
||||||
var archiver: std.tar.Writer = .{ .underlying_writer = &response_writer.new_interface };
|
|
||||||
archiver.prefix = "std";
|
archiver.prefix = "std";
|
||||||
|
|
||||||
while (try walker.next()) |entry| {
|
while (try walker.next()) |entry| {
|
||||||
@ -229,7 +227,6 @@ fn serveSourcesTar(request: *std.http.Server.Request, context: *Context) !void {
|
|||||||
|
|
||||||
// intentionally omitting the pointless trailer
|
// intentionally omitting the pointless trailer
|
||||||
//try archiver.finish();
|
//try archiver.finish();
|
||||||
try response_writer.new_interface.flush();
|
|
||||||
try response.end();
|
try response.end();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -387,11 +387,11 @@ pub fn GenericWriter(
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Helper for bridging to the new `Writer` API while upgrading.
|
/// Helper for bridging to the new `Writer` API while upgrading.
|
||||||
pub fn adaptToNewApi(self: *const Self) Adapter {
|
pub fn adaptToNewApi(self: *const Self, buffer: []u8) Adapter {
|
||||||
return .{
|
return .{
|
||||||
.derp_writer = self.*,
|
.derp_writer = self.*,
|
||||||
.new_interface = .{
|
.new_interface = .{
|
||||||
.buffer = &.{},
|
.buffer = buffer,
|
||||||
.vtable = &.{ .drain = Adapter.drain },
|
.vtable = &.{ .drain = Adapter.drain },
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@ -83,11 +83,11 @@ pub fn writeFile(self: Self, file: std.fs.File) anyerror!void {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Helper for bridging to the new `Writer` API while upgrading.
|
/// Helper for bridging to the new `Writer` API while upgrading.
|
||||||
pub fn adaptToNewApi(self: *const Self) Adapter {
|
pub fn adaptToNewApi(self: *const Self, buffer: []u8) Adapter {
|
||||||
return .{
|
return .{
|
||||||
.derp_writer = self.*,
|
.derp_writer = self.*,
|
||||||
.new_interface = .{
|
.new_interface = .{
|
||||||
.buffer = &.{},
|
.buffer = buffer,
|
||||||
.vtable = &.{ .drain = Adapter.drain },
|
.vtable = &.{ .drain = Adapter.drain },
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@ -80,7 +80,7 @@ pub const Number = struct {
|
|||||||
|
|
||||||
/// Deprecated in favor of `Writer.print`.
|
/// Deprecated in favor of `Writer.print`.
|
||||||
pub fn format(writer: anytype, comptime fmt: []const u8, args: anytype) !void {
|
pub fn format(writer: anytype, comptime fmt: []const u8, args: anytype) !void {
|
||||||
var adapter = writer.adaptToNewApi();
|
var adapter = writer.adaptToNewApi(&.{});
|
||||||
return adapter.new_interface.print(fmt, args) catch |err| switch (err) {
|
return adapter.new_interface.print(fmt, args) catch |err| switch (err) {
|
||||||
error.WriteFailed => return adapter.err.?,
|
error.WriteFailed => return adapter.err.?,
|
||||||
};
|
};
|
||||||
|
|||||||
@ -84,7 +84,7 @@ pub fn main() !void {
|
|||||||
|
|
||||||
const output_buf = try allocator.alloc(u8, 1024 * 1024);
|
const output_buf = try allocator.alloc(u8, 1024 * 1024);
|
||||||
var fbs = std.io.fixedBufferStream(output_buf);
|
var fbs = std.io.fixedBufferStream(output_buf);
|
||||||
var adapter = fbs.writer().adaptToNewApi();
|
var adapter = fbs.writer().adaptToNewApi(&.{});
|
||||||
const w = &adapter.new_interface;
|
const w = &adapter.new_interface;
|
||||||
try render(w, core_spec, exts.items);
|
try render(w, core_spec, exts.items);
|
||||||
var output: [:0]u8 = @ptrCast(fbs.getWritten());
|
var output: [:0]u8 = @ptrCast(fbs.getWritten());
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user