| ... | @@ -9,6 +9,7 @@ const Package = @import("../Package.zig"); | ... | @@ -9,6 +9,7 @@ const Package = @import("../Package.zig"); |
| 9 | | 9 | |
| 10 | pub const max_bytes = 10 * 1024 * 1024; | 10 | pub const max_bytes = 10 * 1024 * 1024; |
| 11 | pub const basename = "build.zig.zon"; | 11 | pub const basename = "build.zig.zon"; |
| | 12 | pub const max_name_len = 32; |
| 12 | | 13 | |
| 13 | pub const Dependency = struct { | 14 | pub const Dependency = struct { |
| 14 | location: Location, | 15 | location: Location, |
| ... | @@ -365,6 +366,11 @@ const Parse = struct { | ... | @@ -365,6 +366,11 @@ const Parse = struct { |
| 365 | if (!std.zig.isValidId(name)) | 366 | if (!std.zig.isValidId(name)) |
| 366 | return fail(p, main_token, "name must be a valid bare zig identifier (hint: switch from string to enum literal)", .{}); | 367 | return fail(p, main_token, "name must be a valid bare zig identifier (hint: switch from string to enum literal)", .{}); |
| 367 | | 368 | |
| | 369 | if (name.len > max_name_len) |
| | 370 | return fail(p, main_token, "name '{s}' exceeds max length of {d}", .{ |
| | 371 | std.zig.fmtId(name), max_name_len, |
| | 372 | }); |
| | 373 | |
| 368 | return name; | 374 | return name; |
| 369 | } | 375 | } |
| 370 | | 376 | |
| ... | @@ -375,6 +381,11 @@ const Parse = struct { | ... | @@ -375,6 +381,11 @@ const Parse = struct { |
| 375 | if (mem.startsWith(u8, ident_name, "@")) | 381 | if (mem.startsWith(u8, ident_name, "@")) |
| 376 | return fail(p, main_token, "name must be a valid bare zig identifier", .{}); | 382 | return fail(p, main_token, "name must be a valid bare zig identifier", .{}); |
| 377 | | 383 | |
| | 384 | if (ident_name.len > max_name_len) |
| | 385 | return fail(p, main_token, "name '{s}' exceeds max length of {d}", .{ |
| | 386 | std.zig.fmtId(ident_name), max_name_len, |
| | 387 | }); |
| | 388 | |
| 378 | return ident_name; | 389 | return ident_name; |
| 379 | } | 390 | } |
| 380 | | 391 | |