| ... | ... | @@ -13,33 +13,14 @@ pub fn execute(args: [][]u8) !void { |
| 13 | 13 | const url = try std.mem.join(gpa, "/", &.{ aq.server_root, pkg_id }); |
| 14 | 14 | const val = try aq.server_fetch(url); |
| 15 | 15 | |
| 16 | | const name = val.get(.{ "pkg", "name" }).?.String; |
| 17 | | |
| 18 | | const versions = val.get("versions").?.Array; |
| 19 | | const to_add = versions[versions.len - 1]; |
| 20 | | |
| 21 | | const self_module = try u.ModFile.init(gpa, "zig.mod"); |
| 22 | | for (self_module.deps) |dep| { |
| 23 | | if (std.mem.eql(u8, dep.name, name)) { |
| 24 | | std.log.warn("dependency with name '{s}' already exists in your dependencies", .{name}); |
| 25 | | } |
| 26 | | } |
| 27 | | for (self_module.devdeps) |dep| { |
| 28 | | if (std.mem.eql(u8, dep.name, name)) { |
| 29 | | std.log.warn("dependency with name '{s}' already exists in your dependencies", .{name}); |
| 30 | | } |
| 31 | | } |
| 32 | | |
| 33 | 16 | const file = try std.fs.cwd().openFile("zig.mod", .{ .read = true, .write = true }); |
| 34 | 17 | try file.seekTo(try file.getEndPos()); |
| 35 | 18 | |
| 36 | | const v_hash = to_add.get("tar_hash").?.String; |
| 37 | | const v_maj = to_add.get("real_major").?.Int; |
| 38 | | const v_min = to_add.get("real_minor").?.Int; |
| 39 | | |
| 40 | 19 | const file_w = file.writer(); |
| 41 | | try file_w.print("\n", .{}); |
| 42 | | try file_w.print(" - src: http {s}/v{d}.{d}.tar.gz {s} {d} {d}\n", .{ url, v_maj, v_min, v_hash[0..20], v_maj, v_min }); |
| 20 | try file_w.print(" - src: git https://{s}/{s}\n", .{ |
| 21 | val.get(.{ "repo", "domain" }).?.String, |
| 22 | val.get(.{ "pkg", "remote_name" }).?.String, |
| 23 | }); |
| 43 | 24 | |
| 44 | 25 | std.log.info("Successfully added package {s}", .{pkg_id}); |
| 45 | 26 | } |