Vít Starý Novotný submitted an update to the
expltools
package.
Version: 2025-10-22 License: lppl1.3c gpl2+
Summary description: Development tools for expl3 programmers
Announcement text: --------------------------------------------------------------------------------
## expltools 2025-10-22
### explcheck v0.15.0
#### Development
This version of explcheck has implemented the following new features:
- Add support for a non-standard Vim's quickfix errorformat item `%M` in the Lua option `error_format`. (discussed with @YDX-2147483647 in #143, added in #144)
Compared to `%m`, `%M` contains not just the issue description (e.g. "unused private function") but also the optional issue context (e.g. "unused private function: `__example_foo:n`"), just like the human-readable output ever since explcheck v0.12.0.
- Recognize calls to known or defined functions and function variants as a new statement type `FUNCTION_CALL` distinct from `OTHER_STATEMENT`. (#141)
For the purpose of code coverage, calls to defined functions and function variants are now considered well-known tokens. This has significantly increased code coverage on TeX Live 2024 (from ca 13% to 30% of all expl3 tokens).
- Only detect well-understood tokens in analyzed parts of statements. (#141)
Specifically, this prevents us from considering e.g. the value in a variable definition well-understood, unless we have analyzed it. After this change, the code coverage should be a better lower-bound estimate of actual code understanding. This has significantly reduced code coverage on TeX Live 2024 (from ca 30% to 24% of all expl3 tokens).
- Add context for the issue S103 (Line too long). (#141)
- Draft flow analysis. (#141)
- Include expl3 part delimiters in the total number of bytes. (#141)
This increases the estimated number of expl3 bytes and allows us to determine whether two expl3 parts are immediately adjacent when we disregard delimiters, which has some significance for the flow analysis.
#### Fixes
This version of explcheck has fixed the following bugs:
- Fix the detection of the issue S103 (Line too long), which was previously often only detected in parts of the input files outside expl3 parts. (#141)
--------------------------------------------------------------------------------
This package is located at https://mirrors.ctan.org/support/expltools
More information is at https://ctan.org/pkg/expltools
--------------------------------------------------------------------------------
Thanks for the upload.
For the CTAN Team Manfred Lotz
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 .