CTAN update: expltools

CTAN Announcements via ctan-ann <[email protected]>
Newsgroups gmane.comp.tex.ctan.announce
Organization CTAN
Message-ID <aamm_zHUuC50mVgf@prptp>
Vít Starý Novotný submitted an update to the

                     expltools

package.

Version:  2026-03-04
License:  lppl1.3c gpl2+

Summary description:  Development tools for expl3 programmers

Announcement text:
----------------------------------------------------------------------
 
 ## expltools 2026-03-04

 ### explcheck v0.18.0

 #### Enhancements

 This version of explcheck has made the following new enhancements:

 - In human-readable output, mention that further issues may be reported after
   fixing the current errors after we have failed fast. (reported by @dbitouze
   and @muzimuzhi in #170 and #171, fixed in #175)

 - Add more support for flow analysis. (#176)

   This adds support for the following issues from Section 5.1 of the document
   titled [_Warnings and errors for the expl3 analysis tool_][warnings-and-errors]:

    1. E505 (Calling an undefined function)

   Flow analysis is now enabled by default for all package files with at least 95%
   code understanding.

 - In issue W419 (Using an undeclared variable or constant), also report
   undeclared usages through `V`- and `v`-type arguments. (#176)

 - Support the plain TeX `\newtoks` command and the corresponding deprecated
   expl3 function `\toks_new:N`. (#176)

 - Support separate command-line options `--long-option value` in addition to
   `--long-option=value`. (contributed by @muzimuzhi in #178)

 - Deprecate the command-line options `--group-files={true|false|auto}` and
   `--make-at-letter={true|false|auto}`. Add the valueless options
   `--make-at-letter`, `--make-at-other`, `--group-files`, and
   `--no-group-files`. (#178)

   The expected usage is now as follows:

   - `--make-at-letter` instead of `--make-at-letter=true`
   - `--make-at-other` instead of `--make-at-letter=false`
   - `--group-files` instead of `--group-files=true`
   - `--no-group-files` instead of `--group-files=false`
   - no option instead of `--make-at-letter=auto` and `--group-files=auto` (default)

   The deprecated options are scheduled for removal in version 1.0.0.

 #### Code understanding

 This version of explcheck introduces the following changes to code understanding
 and to how it evaluates its own level of confidence:

 - Add support for `\cs_undefine:N`. (#176)
 - Treat simple constant and variable definitions, as well as message texts, as
   well-understood. (#176)
 - Consider `FUNCTION_CALL` statements high-confidence and well-understood only
   if there are no potential low-confidence definitions of the called control
   function. (#176)

 These changes have had a mixed effect on the [code coverage][]. Overall, it has
 remained mostly stable, but coverage on the current TeX Live 2025 snapshot
 (2026-02-19) now rounds to 19%, down from the previous 20%.

  [code coverage]: https://witiko.github.io/Expl3-Linter-11/#code-coverage

 #### Fixes

 This version of explcheck has fixed the following bugs:

 - Fix an integer overflow in function `format_pathname()`. (reported by
   @muzimuzhi in #163, fixed in 776eb72)
 - Fix a failure to load TOML files whose last line is a comment without
   a trailing newline. (reported by @Chipsterjulien in jonstoler/lua-toml#27
   and by @muzimuzhi in #165, fixed in #166)
 - Record control sequence name usage and definitions in unanalyzed arguments.
   (reported by @dbitouze in #170 and #173, fixed in #174)
 - Do not produce warning S204 (Missing stylistic whitespaces) for repeated
   begin group (`{{`) or end group (`}}`). (discovered in witiko/markdown#623,
   fixed in #177)

 #### Documentation

 This version of explcheck has made the following improvements to the documentation:

 - Document that `% noqa` at the top of a file silences issues everywhere.
   (f1528f1)

 #### Continuous integration

 This version of explcheck has made the following changes to our continuous
 integration:

 - Run LuaLS even if Luacheck failed. (95f71a1)
 - Run one additional process to reduce the problem of idle CPUs near the end
   while one worker grinds a difficult task. (#174, 19ceb45)
 - Increase the time limit for running explcheck over the entire TeX Live
   from 3 to 5 minutes. (#176)
 - Migrate from `TeX-Live/setup-texlive-action@v3` to `zauguin/install-texlive@v4`.
   (drafted by @koppor in koppor#1 and independently suggested by @muzimuzhi and
   @gucci-on-fleek in #178, added in #181)
 - Bump `actions/upload-artifact` from 6 to 7. (contributed by @dependabot in #179)
 - Bump `actions/download-artifact` from 7 to 8. (contributed by @dependabot in #180)

----------------------------------------------------------------------

The package’s Catalogue entry can be viewed at
   https://ctan.org/pkg/expltools

The package’s files themselves can be inspected at
   https://mirrors.ctan.org/support/expltools/

------------------------------------------------------------------------

   Thanks for the upload.

     For the CTAN Team
    Petra Rübe-Pugliese

------------------------------------------------------------------------

CTAN is run entirely by volunteers and supported by TeX user groups.
Please join a user group or donate to one, see https://ctan.org/lugs
_______________________________________________
ctan-ann mailing list -- [email protected]
To unsubscribe send an email to [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.