Vít Starý Novotný submitted an update to the
expltools
package.
Version: 2026-03-13
License: lppl1.3c gpl2+
Summary description: Development tools for expl3 programmers
Announcement text:
----------------------------------------------------------------------
## expltools 2026-03-13
### explcheck v0.18.2
#### Fixes
This version of explcheck has fixed the following problems:
- Support `c`-type arguments in variable and constants declarations,
definitions, and uses. (#187)
This improved [code coverage][] from ca 21% to 25% of all expl3 tokens on
TeX Live 2024.
- Do a better job detecting arguments in unrecognized replacement texts when
extracting control sequence name patterns from `c`-type arguments in function
calls. (#187)
- In semantic analysis, consider the base variables in indirect variable
definitions to be used, similarly to how base functions in indirect
function definitions are considered used. (#187)
This has removed a dozen false positive detections of issue W415 (Unused
variable or constant) on TeX Live 2024.
- Include `\q_no_value` among well-known expl3 control sequence names. (#187)
- Have the issue E417 (Setting a variable as a constant) mask the issue E421
(Globally setting a local variable). (#187)
This has removed a couple questionable detections of the issue E421 on
TeX Live 2024.
- Only consider potentially used function (variant) (un)definitions in the flow
analysis. (suggested by @lostenderman in #156, fixed in #187)
This change improves processing time by about 3% for an average package file
in TeX Live 2024, and by up to 91% (or 11×) for large files such as
`expl3-code.tex` when flow analysis is enabled despite incomplete code
understanding. It also reduces the memory footprint of flow analysis by
up to 4× for those files.
After this change, the default value of the Lua option
`max_reaching_definition_inner_loops` has been reduced from 650,000
to just 350,000 inner-loop iterations.
Overall, the changes in the past two releases have reduced the processing time
for large files such as `expl3-code.tex` from months to a little over an hour
(up to 800×) when flow analysis is enabled despite incomplete code
understanding, and have reduced the memory footprint of flow analysis by up to
12× for those files.
[code-coverage]: https://witiko.github.io/Expl3-Linter-11/#code-coverage
----------------------------------------------------------------------
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
Vincent Goulet
----------------------------------------------------------------------
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]