From 50eaa0d73003b82475853cf491b83e2ec39389c5 Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Thu, 11 Jun 2026 23:55:42 +1000 Subject: [PATCH] process: Check for pre-1.0 versions in complete/deployed bips --- scripts/buildtable.pl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/scripts/buildtable.pl b/scripts/buildtable.pl index aa1329fd..3f5ba6a5 100755 --- a/scripts/buildtable.pl +++ b/scripts/buildtable.pl @@ -136,7 +136,7 @@ while (++$bipnum <= $topbip) { } } my %found; - my ($title, $authors, $status, $type, $layer); + my ($title, $authors, $status, $version, $type, $layer); my ($field, $val, @field_order, $continuation); while (<$F>) { last if ($is_markdown && m[^```$]); @@ -208,6 +208,7 @@ while (++$bipnum <= $topbip) { $val =~ m/^(\S[^<@>]*\S) \<[^@>]*\@[\w.]+\.\w+\>$/ or die "Malformed $field line in $fn"; } elsif (exists $VersionField{$field}) { $val =~ m/^(\d+\.\d+\.\d+)$/ or die "Malformed $field line in $fn"; + $version = $val; } elsif (not exists $MiscField{$field}) { die "Unknown field $field in $fn"; } @@ -228,6 +229,11 @@ while (++$bipnum <= $topbip) { if (defined $ValidStatus{$status}) { print " style=\"" . $ValidStatus{$status} . "\""; } + if (defined $version and $version =~ m/^0+[.]/) { + if ($status eq "Complete" or $status eq "Deployed") { + die "$fn marked as $status despite pre-1.0 version ($version)"; + } + } print "\n"; print "| [[${fn}|${bipnum}]]\n"; if ($include_layer) {