texlive[69495] trunk: l3build (19jan24)

commits+karl at tug.org commits+karl at tug.org
Fri Jan 19 23:45:06 CET 2024


Revision: 69495
          https://tug.org/svn/texlive?view=revision&revision=69495
Author:   karl
Date:     2024-01-19 23:45:06 +0100 (Fri, 19 Jan 2024)
Log Message:
-----------
l3build (19jan24)

Modified Paths:
--------------
    trunk/Build/source/texk/texlive/linked_scripts/l3build/l3build.lua
    trunk/Master/texmf-dist/doc/latex/l3build/CHANGELOG.md
    trunk/Master/texmf-dist/doc/latex/l3build/README.md
    trunk/Master/texmf-dist/doc/latex/l3build/l3build.pdf
    trunk/Master/texmf-dist/doc/man/man1/l3build.1
    trunk/Master/texmf-dist/doc/man/man1/l3build.man1.pdf
    trunk/Master/texmf-dist/scripts/l3build/l3build-arguments.lua
    trunk/Master/texmf-dist/scripts/l3build/l3build-check.lua
    trunk/Master/texmf-dist/scripts/l3build/l3build-stdmain.lua
    trunk/Master/texmf-dist/scripts/l3build/l3build.lua
    trunk/Master/texmf-dist/source/latex/l3build/l3build.dtx

Modified: trunk/Build/source/texk/texlive/linked_scripts/l3build/l3build.lua
===================================================================
--- trunk/Build/source/texk/texlive/linked_scripts/l3build/l3build.lua	2024-01-19 22:44:49 UTC (rev 69494)
+++ trunk/Build/source/texk/texlive/linked_scripts/l3build/l3build.lua	2024-01-19 22:45:06 UTC (rev 69495)
@@ -25,7 +25,7 @@
 --]]
 
 -- Version information
-release_date = "2024-01-09"
+release_date = "2024-01-18"
 
 -- File operations are aided by the LuaFileSystem module
 local lfs = require("lfs")

Modified: trunk/Master/texmf-dist/doc/latex/l3build/CHANGELOG.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3build/CHANGELOG.md	2024-01-19 22:44:49 UTC (rev 69494)
+++ trunk/Master/texmf-dist/doc/latex/l3build/CHANGELOG.md	2024-01-19 22:45:06 UTC (rev 69495)
@@ -7,6 +7,15 @@
 
 ## [Unreleased]
 
+## [2024-01-18]
+
+### Added
+- Switch `-s|--stdengine` to run a set of tests only with the standard engine
+  even where this varies between configs (issue \#343)
+
+### Removed
+- Switch `--force|-f`
+
 ## [2024-01-09]
 
 ### Fixed
@@ -760,7 +769,8 @@
 - Rationalise short option names: removed `-d`, `-E`, `-r`
 - Target `cmdcheck`: specific to LaTeX kernel work
 
-[Unreleased]: https://github.com/latex3/l3build/compare/2024-01-09...HEAD
+[Unreleased]: https://github.com/latex3/l3build/compare/2024-01-18...HEAD
+[2024-01-18]: https://github.com/latex3/l3build/compare/2024-01-09...2024-01-18
 [2024-01-09]: https://github.com/latex3/l3build/compare/2024-01-04...2024-01-09
 [2024-01-04]: https://github.com/latex3/l3build/compare/2023-12-15...2024-01-04
 [2023-12-15]: https://github.com/latex3/l3build/compare/2023-12-13-2...2023-12-15

Modified: trunk/Master/texmf-dist/doc/latex/l3build/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/l3build/README.md	2024-01-19 22:44:49 UTC (rev 69494)
+++ trunk/Master/texmf-dist/doc/latex/l3build/README.md	2024-01-19 22:45:06 UTC (rev 69495)
@@ -1,7 +1,7 @@
 l3build: a testing and building system for LaTeX
 =================================================
 
-Release 2024-01-09
+Release 2024-01-18
 
 Overview
 --------

Modified: trunk/Master/texmf-dist/doc/latex/l3build/l3build.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/l3build.1
===================================================================
--- trunk/Master/texmf-dist/doc/man/man1/l3build.1	2024-01-19 22:44:49 UTC (rev 69494)
+++ trunk/Master/texmf-dist/doc/man/man1/l3build.1	2024-01-19 22:45:06 UTC (rev 69495)
@@ -1,4 +1,4 @@
-.TH l3build 1 "2024-01-09"
+.TH l3build 1 "2024-01-18"
 .SH NAME
 l3build \- Checking and building packages
 .SH SYNOPSIS
@@ -12,11 +12,11 @@
 .PP
 The standard l3build targets are:
 .IP check
-Run all automated tests
+Runs all automated tests
 .IP clean
-Clean out directory tree
+Cleans out directory tree
 .IP ctan
-Create CTAN-ready archive
+Creates CTAN-ready archive
 .IP doc
 Typesets all documentation files
 .IP install
@@ -32,7 +32,7 @@
 .IP unpack
 Unpacks the source files into the build tree
 .IP upload
-Send archive to CTAN for public release
+Sends archive to CTAN for public release
 .SH OPTIONS
 Various options apply
 .IP --config|-c
@@ -42,7 +42,7 @@
 .IP --debug
 Runs target in debug mode
 .IP --dirty
-Skip cleaning up the test area
+Skips cleaning up the test area
 .IP --dry-run
 Dry run for install or upload
 .IP --email
@@ -52,17 +52,15 @@
 .IP --epoch
 Sets the epoch for tests and typesetting
 .IP --file|-F
-Take the upload announcement from the given file
+Takes the upload announcement from the given file
 .IP --first
 Name of first test to run
-.IP --force|-f
-Force tests to run if engine is not set up
 .IP --full
-Install all files
+Installs all files
 .IP --halt-on-error|-H
 Stops running tests after the first failure
 .IP --help|-h
-Print help message and exit
+Prints help message and exits
 .IP --last
 Name of last test to run
 .IP --message|-m
@@ -70,17 +68,19 @@
 .IP --quiet|-q
 Suppresses TeX output when unpacking
 .IP --rerun
-Skip setup: simply rerun tests
+Skips setup: simply reruns tests
 .IP --show-log-on-error
-Show the full log of the failure with 'halt-on-error'
+Shows the full log of the failure with 'halt-on-error'
 .IP --show-saves|-S
-Show the invocation to update failing .tlg files
+Shows the invocation to update failing .tlg files
 .IP --shuffle
-Shuffle order of tests
+Shuffles order of tests
+.IP --stdengine|-s
+Run tests only with the standard engine (which may vary between configs)
 .IP --texmfhome
 Location of user texmf tree
 .IP --version
-Print version information and exit
+Prints version information and exits
 .SH BUGS
 .SH AUTHOR
 The LaTeX Project (latex-team at latex-project.org)

Modified: trunk/Master/texmf-dist/doc/man/man1/l3build.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/scripts/l3build/l3build-arguments.lua
===================================================================
--- trunk/Master/texmf-dist/scripts/l3build/l3build-arguments.lua	2024-01-19 22:44:49 UTC (rev 69494)
+++ trunk/Master/texmf-dist/scripts/l3build/l3build-arguments.lua	2024-01-19 22:45:06 UTC (rev 69495)
@@ -54,7 +54,7 @@
       },
     dirty =
       {
-        desc = "Skip cleaning up the test area",
+        desc = "Skips cleaning up the test area",
         type = "boolean"
       },
     ["dry-run"] =
@@ -80,7 +80,7 @@
       },
     file =
       {
-        desc  = "Take the upload announcement from the given file",
+        desc  = "Takes the upload announcement from the given file",
         short = "F",
         type  = "string"
       },
@@ -89,15 +89,9 @@
         desc  = "Name of first test to run",
         type  = "string"
       },
-    force =
-      {
-        desc  = "Force tests to run if engine is not set up",
-        short = "f",
-        type  = "boolean"
-      },
     full =
       {
-        desc = "Install all files",
+        desc = "Installs all files",
         type = "boolean"
       },
     ["halt-on-error"] =
@@ -108,7 +102,7 @@
       },
     help =
       {
-        desc  = "Print this message and exit",
+        desc  = "Prints this message and exits",
         short = "h",
         type  = "boolean"
       },
@@ -131,25 +125,31 @@
       },
     rerun =
       {
-        desc  = "Skip setup: simply rerun tests",
+        desc  = "Skips setup: simply reruns tests",
         type  = "boolean"
       },
     ["show-log-on-error"] =
       {
-        desc  = "Show the full log of the failure with 'halt-on-error'",
+        desc  = "Shows the full log of the failure with 'halt-on-error'",
         type  = "boolean"
       },
     ["show-saves"] =
       {
-        desc  = "Show the invocation to update failing .tlg files",
+        desc  = "Shows the invocation to update failing .tlg files",
         short = "S",
         type  = "boolean"
       },
     shuffle =
       {
-        desc  = "Shuffle order of tests",
+        desc  = "Shuffles order of tests",
         type  = "boolean"
       },
+    stdengine =
+      {
+        desc  = "Run tests only with the standard engine (which may vary between configs)",
+        short = "s",
+        type  = "boolean"
+      },
     texmfhome =
       {
         desc = "Location of user texmf tree",
@@ -157,7 +157,7 @@
       },
     version =
       {
-        desc = "Print version information and exit",
+        desc = "Prints version information and exits",
         type = "boolean"
       }
   }
@@ -292,22 +292,23 @@
 
 -- Sanity check
 function check_engines(config)
-  if options["engine"] and not options["force"] then
+  if options["engine"] then
     -- Make a lookup table
     local t = { }
     for _, engine in pairs(checkengines) do
       t[engine] = true
     end
-    for _, engine in pairs(options["engine"]) do
-      if not t[engine] then
-        print("\n! Error: Engine \"" .. engine .. "\" not set up for testing with configuration \"" .. config .. "\"!")
-        print("\n  Valid values are:")
-        for _, engine in ipairs(checkengines) do
-          print("  - " .. engine)
-        end
-        print("")
-        exit(1)
+    checkengines = {}
+    for _,engine in ipairs(options["engine"]) do
+      if t[engine] then
+          insert(checkengines,engine)
+      else
+        print("Skipping unknown engine " .. engine)
       end
     end
   end
+  if not next(checkengines) then
+    print("No applicable engine requested, config ignored")
+    exit(0)
+  end
 end

Modified: trunk/Master/texmf-dist/scripts/l3build/l3build-check.lua
===================================================================
--- trunk/Master/texmf-dist/scripts/l3build/l3build-check.lua	2024-01-19 22:44:49 UTC (rev 69494)
+++ trunk/Master/texmf-dist/scripts/l3build/l3build-check.lua	2024-01-19 22:45:06 UTC (rev 69495)
@@ -595,8 +595,8 @@
     return 1
   end
   local checkengines = checkengines
-  if options["engine"] then
-    checkengines = options["engine"]
+  if options["stdengine"] then
+    checkengines = {stdengine}
   end
   local failedengines = {}
   -- Used for both .lvt and .pvt tests
@@ -1065,10 +1065,6 @@
   if next(diff_files) then
     if config then
       print("Failed tests for configuration \"" .. config .. "\":")
-      local testdir = testdir
-      if config ~= "build" then
-        testdir = testdir .. "-" .. config
-      end
     end
     print("\n  Check failed with difference files")
     for _,i in ipairs(diff_files) do

Modified: trunk/Master/texmf-dist/scripts/l3build/l3build-stdmain.lua
===================================================================
--- trunk/Master/texmf-dist/scripts/l3build/l3build-stdmain.lua	2024-01-19 22:44:49 UTC (rev 69494)
+++ trunk/Master/texmf-dist/scripts/l3build/l3build-stdmain.lua	2024-01-19 22:45:06 UTC (rev 69495)
@@ -73,19 +73,19 @@
     check =
       {
         bundle_target = true,
-        desc = "Run all automated tests",
+        desc = "Runs all automated tests",
         func = check,
       },
     clean =
       {
         bundle_func = bundleclean,
-        desc = "Clean out directory tree",
+        desc = "Cleans out directory tree",
         func = clean
       },
     ctan =
       {
         bundle_func = ctan,
-        desc = "Create CTAN-ready archive",
+        desc = "Creates CTAN-ready archive",
         func = ctan
       },
     doc =
@@ -142,7 +142,7 @@
       },
     upload =
       {
-        desc = "Send archive to CTAN for public release",
+        desc = "Sends archive to CTAN for public release",
         func = upload
       },
   }

Modified: trunk/Master/texmf-dist/scripts/l3build/l3build.lua
===================================================================
--- trunk/Master/texmf-dist/scripts/l3build/l3build.lua	2024-01-19 22:44:49 UTC (rev 69494)
+++ trunk/Master/texmf-dist/scripts/l3build/l3build.lua	2024-01-19 22:45:06 UTC (rev 69495)
@@ -25,7 +25,7 @@
 --]]
 
 -- Version information
-release_date = "2024-01-09"
+release_date = "2024-01-18"
 
 -- File operations are aided by the LuaFileSystem module
 local lfs = require("lfs")

Modified: trunk/Master/texmf-dist/source/latex/l3build/l3build.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/l3build/l3build.dtx	2024-01-19 22:44:49 UTC (rev 69494)
+++ trunk/Master/texmf-dist/source/latex/l3build/l3build.dtx	2024-01-19 22:45:06 UTC (rev 69495)
@@ -251,7 +251,7 @@
 %    }^^A
 % }
 %
-% \date{Released 2024-01-09}
+% \date{Released 2024-01-18}
 %
 % \maketitle
 % \tableofcontents
@@ -371,17 +371,14 @@
 % \item |--config| (|-c|) Configuration(s) to use for testing
 % \item |--date| Date to use when tagging data
 % \item |--debug| Runs the target in debug mode (not supported by all targets)
-% \item |--dirty| Skip cleaning up of the test area
+% \item |--dirty| Skips cleaning up of the test area
 % \item |--dry-run| Runs the \texttt{install} target but does not copy
 %   any files: simply lists those that would be installed
 % \item |--email| Sets the email address for CTAN upload
 % \item |--engine| (|-e|) Sets the engine to use for testing
 % \item |--epoch| Sets the epoch for typesetting and testing
-% \item |--file| (|-F|) Take the upload announcement from the given file
+% \item |--file| (|-F|) Takes the upload announcement from the given file
 % \item |--first| Name of the first test to run
-% \item |--force| (|-f|) Force checks to run even if sanity
-%   checks fail, \emph{e.g.}~when |--engine| is not given in
-%   \var{checkengines}
 % \item |--full| Instructs the \texttt{install} target to include the
 %   \texttt{doc} and \texttt{source} trees
 % \item |--halt-on-error| (|-H|) Specifies that checks
@@ -390,12 +387,14 @@
 % \item |--last| Name of the last test to run
 % \item |--message| (|-m|) Text for upload announcement
 % \item |--quiet| (|-q|) Suppresses output from unpacking
-% \item |--rerun| Run tests without unpacking/set up
+% \item |--rerun| Runs tests without unpacking/set up
 % \item |--show-log-on-error| To be used in addition to \texttt{--halt-on-error} and results
 %   in the full \texttt{.log} file of a failed test to be shown on the console
-% \item |--show-saves| (|-S|) When tests fail, print the \texttt{l3build save} commands needed
+% \item |--show-saves| (|-S|) When tests fail, prints the \texttt{l3build save} commands needed
 %   to regenerate the tests assuming that the failures were false negatives.
-% \item |--shuffle| Shuffle the order in which tests run
+% \item |--shuffle| Shuffles the order in which tests run
+% \item |--stdengine| (|-s|) Run tests only with the standard engine (which can vary between
+%   configurations)
 % \item |--texmfhome| Sets the location of the user tree for installing
 % \end{itemize}
 %
@@ -457,7 +456,7 @@
 % line option |--engine| (or |-e|) has been given to limit
 % testing to a single engine. Normally testing is preceded by unpacking
 % source files and copying the result plus any additional support to the
-% test directory: this may be skipped using the |-s| option.
+% test directory: this may be skipped using the |--rerun| (|-r|) option.
 % \end{buildcmd}
 %
 % \begin{buildcmd}{clean}
@@ -591,7 +590,9 @@
 % \end{buildcmd}
 %
 % \begin{buildcmd}{tag [\meta{tag name}]}
-% Apply the Lua |update_tag()| function to modify the contents of files specified by |tagfiles| to update the `release tag' (or package version) and date.
+% Applies the Lua |update_tag()| function to modify the contents of all the files
+% specified by |tagfiles|; this function updates the `release tag' (or package version)
+% and date.
 % The tag is given as the optional command line argument \meta{tag name} and the date using
 % |--date| (or |-d|). If not given, the date will default to the current date in
 % ISO format (YYYY-MM-DD). If no \meta{tag name} is given, the tag will default to |nil|.
@@ -981,13 +982,14 @@
 % \cs{BEGINTEST}\marg{title} \dots \cs{ENDTEST} is an environment form of
 % \cs{TEST}, allowing verbatim material, \emph{etc.} to appear.
 % \item
-% \cs{SHOWFILE}\marg{filename} (\eTeX{} only) Shows the content of
+% \cs{SHOWFILE}\marg{filename} (\eTeX{} only) shows the content of
 % \meta{filename}.
 % \item
 % \cs{ASSERT}\marg{arg_1}\marg{arg_2} and \cs{ASSERTSTR}\marg{arg_1}\marg{arg_2}
-% Asserts if the full expansion of \meta{arg_1} and \meta{arg_2} are the same:
-% the \cs{ASSERT} function is token-based,
-% the \cs{ASSERTSTR} works on a string basis.
+% Test if the full expansion of \meta{arg_1} and \meta{arg_2} are the same:
+% on a token basis in \cs{ASSERT} and on a string basis in \cs{ASSERTSTR}.
+% Depending on the outcome, record either \texttt{PASSED} or \texttt{FAILED}
+% in the \texttt{.log}.
 % \end{itemize}
 % An example of some of these commands is shown following.
 % \begin{Verbatim}
@@ -1671,7 +1673,6 @@
 %       \var{epoch}         & String  \\
 %       \var{file}          & string  \\
 %       \var{first}         & Boolean \\
-%       \var{force}         & Boolean \\
 %       \var{full}          & Boolean \\
 %       \var{halt-on-error} & Boolean \\
 %       \var{help}          & Boolean \\
@@ -1680,6 +1681,7 @@
 %       \var{quiet}         & Boolean \\
 %       \var{rerun}         & Boolean \\
 %       \var{shuffle}       & Boolean \\
+%       \var{stdengine}     & Boolean \\
 %       \var{texmfhome}     & String  \\
 %     \bottomrule
 %     \end{tabular}



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