| ... | ... | @@ -179,6 +179,7 @@ fn getPrefixSubpath(allocator: Allocator, prefix: []const u8, path: []u8) ![]u8 |
| 179 | 179 | pub const bin_digest_len = 16; |
| 180 | 180 | pub const hex_digest_len = bin_digest_len * 2; |
| 181 | 181 | pub const BinDigest = [bin_digest_len]u8; |
| 182 | pub const HexDigest = [hex_digest_len]u8; |
| 182 | 183 | |
| 183 | 184 | /// This is currently just an arbitrary non-empty string that can't match another manifest line. |
| 184 | 185 | const manifest_header = "0"; |
| ... | ... | @@ -300,11 +301,11 @@ pub const HashHelper = struct { |
| 300 | 301 | } |
| 301 | 302 | |
| 302 | 303 | /// Returns a hex encoded hash of the inputs, mutating the state of the hasher. |
| 303 | | pub fn final(hh: *HashHelper) [hex_digest_len]u8 { |
| 304 | pub fn final(hh: *HashHelper) HexDigest { |
| 304 | 305 | var bin_digest: BinDigest = undefined; |
| 305 | 306 | hh.hasher.final(&bin_digest); |
| 306 | 307 | |
| 307 | | var out_digest: [hex_digest_len]u8 = undefined; |
| 308 | var out_digest: HexDigest = undefined; |
| 308 | 309 | _ = fmt.bufPrint( |
| 309 | 310 | &out_digest, |
| 310 | 311 | "{s}", |
| ... | ... | @@ -346,7 +347,7 @@ pub const Manifest = struct { |
| 346 | 347 | // will then use the same timestamp, to avoid unnecessary filesystem writes. |
| 347 | 348 | want_refresh_timestamp: bool = true, |
| 348 | 349 | files: std.ArrayListUnmanaged(File) = .{}, |
| 349 | | hex_digest: [hex_digest_len]u8, |
| 350 | hex_digest: HexDigest, |
| 350 | 351 | /// Populated when hit() returns an error because of one |
| 351 | 352 | /// of the files listed in the manifest. |
| 352 | 353 | failed_file_index: ?usize = null, |
| ... | ... | @@ -829,7 +830,7 @@ pub const Manifest = struct { |
| 829 | 830 | } |
| 830 | 831 | |
| 831 | 832 | /// Returns a hex encoded hash of the inputs. |
| 832 | | pub fn final(self: *Manifest) [hex_digest_len]u8 { |
| 833 | pub fn final(self: *Manifest) HexDigest { |
| 833 | 834 | assert(self.manifest_file != null); |
| 834 | 835 | |
| 835 | 836 | // We don't close the manifest file yet, because we want to |
| ... | ... | @@ -841,7 +842,7 @@ pub const Manifest = struct { |
| 841 | 842 | var bin_digest: BinDigest = undefined; |
| 842 | 843 | self.hash.hasher.final(&bin_digest); |
| 843 | 844 | |
| 844 | | var out_digest: [hex_digest_len]u8 = undefined; |
| 845 | var out_digest: HexDigest = undefined; |
| 845 | 846 | _ = fmt.bufPrint( |
| 846 | 847 | &out_digest, |
| 847 | 848 | "{s}", |
| ... | ... | @@ -1021,8 +1022,8 @@ test "cache file and then recall it" { |
| 1021 | 1022 | std.time.sleep(1); |
| 1022 | 1023 | } |
| 1023 | 1024 | |
| 1024 | | var digest1: [hex_digest_len]u8 = undefined; |
| 1025 | | var digest2: [hex_digest_len]u8 = undefined; |
| 1025 | var digest1: HexDigest = undefined; |
| 1026 | var digest2: HexDigest = undefined; |
| 1026 | 1027 | |
| 1027 | 1028 | { |
| 1028 | 1029 | var cache = Cache{ |
| ... | ... | @@ -1089,8 +1090,8 @@ test "check that changing a file makes cache fail" { |
| 1089 | 1090 | std.time.sleep(1); |
| 1090 | 1091 | } |
| 1091 | 1092 | |
| 1092 | | var digest1: [hex_digest_len]u8 = undefined; |
| 1093 | | var digest2: [hex_digest_len]u8 = undefined; |
| 1093 | var digest1: HexDigest = undefined; |
| 1094 | var digest2: HexDigest = undefined; |
| 1094 | 1095 | |
| 1095 | 1096 | { |
| 1096 | 1097 | var cache = Cache{ |
| ... | ... | @@ -1152,8 +1153,8 @@ test "no file inputs" { |
| 1152 | 1153 | |
| 1153 | 1154 | const temp_manifest_dir = "no_file_inputs_manifest_dir"; |
| 1154 | 1155 | |
| 1155 | | var digest1: [hex_digest_len]u8 = undefined; |
| 1156 | | var digest2: [hex_digest_len]u8 = undefined; |
| 1156 | var digest1: HexDigest = undefined; |
| 1157 | var digest2: HexDigest = undefined; |
| 1157 | 1158 | |
| 1158 | 1159 | var cache = Cache{ |
| 1159 | 1160 | .gpa = testing.allocator, |
| ... | ... | @@ -1211,9 +1212,9 @@ test "Manifest with files added after initial hash work" { |
| 1211 | 1212 | std.time.sleep(1); |
| 1212 | 1213 | } |
| 1213 | 1214 | |
| 1214 | | var digest1: [hex_digest_len]u8 = undefined; |
| 1215 | | var digest2: [hex_digest_len]u8 = undefined; |
| 1216 | | var digest3: [hex_digest_len]u8 = undefined; |
| 1215 | var digest1: HexDigest = undefined; |
| 1216 | var digest2: HexDigest = undefined; |
| 1217 | var digest3: HexDigest = undefined; |
| 1217 | 1218 | |
| 1218 | 1219 | { |
| 1219 | 1220 | var cache = Cache{ |