texlive[73590] trunk: doc,sync

commits+karl at tug.org commits+karl at tug.org
Sat Jan 25 18:45:44 CET 2025


Revision: 73590
          https://tug.org/svn/texlive?view=revision&revision=73590
Author:   karl
Date:     2025-01-25 18:45:44 +0100 (Sat, 25 Jan 2025)
Log Message:
-----------
doc,sync

Modified Paths:
--------------
    trunk/Build/source/texk/tests/TeXLive/TLUtils.pm
    trunk/Build/source/texk/web2c/pdftexdir/ChangeLog
    trunk/Build/source/texk/web2c/xetexdir/ChangeLog
    trunk/Master/tlpkg/bin/tl-hyph-test

Modified: trunk/Build/source/texk/tests/TeXLive/TLUtils.pm
===================================================================
--- trunk/Build/source/texk/tests/TeXLive/TLUtils.pm	2025-01-25 17:06:56 UTC (rev 73589)
+++ trunk/Build/source/texk/tests/TeXLive/TLUtils.pm	2025-01-25 17:45:44 UTC (rev 73590)
@@ -7,7 +7,7 @@
 
 package TeXLive::TLUtils;
 
-my $svnrev = '$Revision: 71593 $';
+my $svnrev = '$Revision: 73556 $';
 my $_modulerevision = ($svnrev =~ m/: ([0-9]+) /) ? $1 : "unknown";
 sub module_revision { return $_modulerevision; }
 
@@ -3676,20 +3676,19 @@
   close(OUTFILE) || warn "close(>$dest) failed: $!";
 }
 
+# 

 sub parse_AddHyphen_line {
   my $line = shift;
   my %ret;
   # default values
-  my $default_lefthyphenmin = 2;
-  my $default_righthyphenmin = 3;
-  $ret{"lefthyphenmin"} = $default_lefthyphenmin;
-  $ret{"righthyphenmin"} = $default_righthyphenmin;
+  my $default_lefthyphenmin = -1;
+  my $default_righthyphenmin = -1;
   $ret{"synonyms"} = [];
   for my $p (quotewords('\s+', 0, "$line")) {
     my ($a, $b) = split /=/, $p;
     if ($a eq "name") {
       if (!$b) {
-        $ret{"error"} = "AddHyphen line needs name=something";
+        $ret{"error"} = "AddHyphen line needs name=something: $line";
         return %ret;
       }
       $ret{"name"} = $b;
@@ -3696,16 +3695,24 @@
       next;
     }
     if ($a eq "lefthyphenmin") {
-      $ret{"lefthyphenmin"} = ( $b ? $b : $default_lefthyphenmin );
+      if (! defined $b) {
+        $ret{"error"} = "AddHyphen line needs lefthyphenmin=something: $line";
+        return %ret;
+      }
+      $ret{"lefthyphenmin"} = $b;
       next;
     }
     if ($a eq "righthyphenmin") {
-      $ret{"righthyphenmin"} = ( $b ? $b : $default_righthyphenmin );
+      if (! defined $b) {
+        $ret{"error"} = "AddHyphen line needs righthyphenmin=something: $line";
+        return %ret;
+      }
+      $ret{"righthyphenmin"} = $b;
       next;
     }
     if ($a eq "file") {
       if (!$b) {
-        $ret{"error"} = "AddHyphen line needs file=something";
+        $ret{"error"} = "AddHyphen line needs file=something: $line ";
         return %ret;
       }
       $ret{"file"} = $b;
@@ -3712,33 +3719,63 @@
       next;
     }
     if ($a eq "file_patterns") {
-        $ret{"file_patterns"} = $b;
-        next;
+      # many are blank in hyph-utf8, don't check.
+      $ret{"file_patterns"} = $b;
+      next;
     }
     if ($a eq "file_exceptions") {
-        $ret{"file_exceptions"} = $b;
-        next;
+      # many are blank in hyph-utf8, don't check.
+      $ret{"file_exceptions"} = $b;
+      next;
     }
     if ($a eq "luaspecial") {
-        $ret{"luaspecial"} = $b;
-        next;
+      if (!$b) {
+        $ret{"error"} = "AddHyphen line needs luaspecial=something: $line";
+        return %ret;
+      }
+      $ret{"luaspecial"} = $b;
+      next;
     }
     if ($a eq "databases") {
+      if (!$b) {
+        $ret{"error"} = "AddHyphen line needs databases=something: $line";
+        return %ret;
+      }
       @{$ret{"databases"}} = split /,/, $b;
       next;
     }
     if ($a eq "synonyms") {
+      if (!$b) {
+        $ret{"error"} = "AddHyphen line needs synonyms=something: $line";
+        return %ret;
+      }
       @{$ret{"synonyms"}} = split /,/, $b;
       next;
     }
     if ($a eq "comment") {
-        $ret{"comment"} = $b;
-        next;
+      $ret{"comment"} = $b;
+      next;
     }
     # should not be reached at all
-    $ret{"error"} = "Unknown language directive $a";
+    $ret{"error"} = "Unknown AddHyphen directive $a: $line";
     return %ret;
   }
+  if (! $ret{"name"}) {
+    $ret{"error"} = "AddHyphen is missing name setting: $line";
+    return %ret;    
+  }
+  if ($ret{"lefthyphenmin"} !~ /^[0-9]$/) {
+    $ret{"lefthyphenmin"} = "" if ! $ret{"lefthyphenmin"}; #undef warning
+    $ret{"error"} = "AddHyphen has missing or bad "
+                    . " lefthyphenmin ($ret{lefthyphenmin}): $line";
+    return %ret;    
+  }
+  if ($ret{"righthyphenmin"} !~ /^[0-9]$/) {
+    $ret{"righthyphenmin"} = "" if ! $ret{"righthyphenmin"}; #undef warning
+    $ret{"error"} = "AddHyphen has missing or bad "
+                    . " righthyphenmin ($ret{righthyphenmin}): $line";
+    return %ret;    
+  }
   # this default value couldn't be set earlier
   if (not defined($ret{"databases"})) {
     if (defined $ret{"file_patterns"} or defined $ret{"file_exceptions"}

Modified: trunk/Build/source/texk/web2c/pdftexdir/ChangeLog
===================================================================
--- trunk/Build/source/texk/web2c/pdftexdir/ChangeLog	2025-01-25 17:06:56 UTC (rev 73589)
+++ trunk/Build/source/texk/web2c/pdftexdir/ChangeLog	2025-01-25 17:45:44 UTC (rev 73590)
@@ -4,8 +4,8 @@
 	(ignore_primitive_error_code, ignore_primitive_error): new primitive
 	\ignoreprimitiveerror.
 	(is_bit_set): new fn.
-	(finite_shrink): if it's set, make "Infinite glue shrinkage"
-	error into warning.
+	(finite_shrink): if it's set, make "Infinite glue shrinkage
+	found in box being split" error into warning.
 	(Generate all \eTeX): define it.
 	(Cases for |print_param|): print it.
 	Request from Frank Mittelbach, 22 Jul 2024 22:37:26 (private mail).

Modified: trunk/Build/source/texk/web2c/xetexdir/ChangeLog
===================================================================
--- trunk/Build/source/texk/web2c/xetexdir/ChangeLog	2025-01-25 17:06:56 UTC (rev 73589)
+++ trunk/Build/source/texk/web2c/xetexdir/ChangeLog	2025-01-25 17:45:44 UTC (rev 73590)
@@ -4,8 +4,8 @@
 	(ignore_primitive_error_code, ignore_primitive_error): new primitive
 	\ignoreprimitiveerror.
 	(is_bit_set): new fn.
-	(finite_shrink): if it's set, make "Infinite glue shrinkage"
-	error into warning.
+	(finite_shrink): if it's set, make "Infinite glue shrinkage
+	found in box being split" error into warning.
 	(Generate all \eTeX): define it.
 	(Cases for |print_param|): print it.
 	Same code as for pdfTeX; merged into XeTeX by karl.

Modified: trunk/Master/tlpkg/bin/tl-hyph-test
===================================================================
--- trunk/Master/tlpkg/bin/tl-hyph-test	2025-01-25 17:06:56 UTC (rev 73589)
+++ trunk/Master/tlpkg/bin/tl-hyph-test	2025-01-25 17:45:44 UTC (rev 73590)
@@ -45,6 +45,7 @@
 # Back to top level of $tmpdir (the one with the ./Master subdir)
 # for cleanliness, and run this script.
 #popd
+#svn status Master # if new package/file has been added, set newpkg/file below
 #svn diff Master >/tmp/sdh # review changes
 #./Master/tlpkg/bin/tl-hyph-test
 #
@@ -66,8 +67,8 @@
 : ${do_lang_files=true}
 : ${do_install=true}
 : ${do_pkgs=true}
+: ${newpkg=hyphen-romansh}  # and the package it's in
 : ${newfile=hyph-rm.ec.tex} # some new file in the new release
-: ${newpkg=hyphen-romansh}  # and the package it's in
 
 real0=`realpath $0`
 mydir=`cd \`dirname "$real0"\` && pwd`  # tlpkg/bin
@@ -164,6 +165,12 @@
 fi
 
 # 

+printf "\n\f `date`\n"
+cmd="tlmgr check files runfiles"
+echo "$0: checking file consistency: $cmd"
+$cmd || exit $?
+
+# 

 # Install minimal, then install the packages with AddHyphen directives
 # (in practice: hyphen-* and dehyph-exptl), to avoid installing all the
 # non-language stuff, which is a ton.
@@ -210,7 +217,7 @@
 
 # also written into inst/ since we just changed PATH.
 printf "\n\f `date`\n"
-echo "$0: running one more fmtutil-sys for good measure"
+echo "$0: running fmtutil-sys separately from install for reproducibility:"
 set -x
 fmtutil-sys --all
 # and that's our exit status.



More information about the tex-live-commits mailing list.