╭ changed ────────╮ │src/serve_ssh.zig│ ╰─────────────────╯ ╭───────────╮ │← all files│ ╰───────────╯ ╭───────────────────────────────────────────────────────────────────────────────────╮ │10 const evt = @import("./event.zig"); │ │11 const serve_common = @import("./serve_common.zig"); │ │12 const fork = @import("./fork.zig"); │ │13 +const progress = @import("./progress.zig"); │ │14 │ │15 // listener resource limits. the watchdog gives peers a hard deadline to start │ │16 // a session, times out non-interactive sessions that stall while we're blocked│ ╰───────────────────────────────────────────────────────────────────────────────────╯ ╭───────────────────────────────────────────────────────────────────────────────────────────────────╮ │24 │ │25 var active_connections: std.atomic.Value(u32) = .init(0); │ │26 │ │26 -const any_repo_opts: rp.AnyRepoOpts(.xit) = .{ .ProgressCtx = *serve_common.SidebandProgress };│ │27 +const any_repo_opts: rp.AnyRepoOpts(.xit) = .{ .ProgressCtx = *progress.Sideband }; │ │28 │ │29 pub const SessionHandler = struct { │ │30 admin_repo_path: []const u8, │ ╰───────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │443 return writeError(sess, "patch draft not found"); │ │444 defer draft.deinit(io, allocator); │ │445 if (service == .upload_pack) { │ │445 - var progress = serve_common.SidebandProgress{ .writer = writer, .sess = sess }; │ │446 + var sideband = progress.Sideband{ .writer = writer, .sess = sess }; │ │447 switch (draft) { │ │447 - inline else => |*repo| try repo.uploadPack(io, allocator, reader, writer, .{ .protocol_version = protocol_version }, &progress), │ │448 + inline else => |*repo| try repo.uploadPack(io, allocator, reader, writer, .{ .protocol_version = protocol_version }, &sideband), │ │449 } │ │450 } else { │ │451 const target = (try evt.Repo.readByOwnerAndName(evt.AdminDB, evt.admin_repo_opts.hash, admin_moment, &admin_arena, owner_repo.owner, owner_repo.name)) orelse│ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ ╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │526 ) !void { │ │527 switch (service) { │ │528 .upload_pack => { │ │528 - var progress = serve_common.SidebandProgress{ .writer = writer, .sess = sess }; │ │529 - try repo.uploadPack(io, allocator, reader, writer, .{ .protocol_version = protocol_version }, &progress); │ │529 + var sideband = progress.Sideband{ .writer = writer, .sess = sess }; │ │530 + try repo.uploadPack(io, allocator, reader, writer, .{ .protocol_version = protocol_version }, &sideband); │ │531 }, │ │532 .receive_pack => try push.receivePackAndConsume(repo_opts, io, allocator, repo, reader, writer, .{ .protocol_version = protocol_version }, author, repo_root_path, error_writer, sess),│ │533 } │ ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯