CTAN Comprehensive TeX Archive Network

CTAN update: expltools

Datum: 13. Mai 2026 14:06:35 MESZ
Vít Starý Novotný submitted an update to the expltools package. Version: 2026-05-12 License: lppl1.3c gpl2+ Summary description: Development tools for expl3 programmers Announcement text:
## expltools 2026-05-12 ### explcheck v0.21.0 #### New features This version of explcheck has implemented the following new features: - Add command-line option `--inline-config`. (suggested by @muzimuzhi in #203, added in #211) This option accepts a TOML string that is treated as a config file, overriding any options specified in config files. The option may be specified repeatedly; when the same Lua option appears in multiple TOML strings, later occurrences take precedence. With this option, you can set ad-hoc Lua options without creating a config file. For example, to disable the Lua option `stop_early_when_confused`, you can write `--inline-config defaults.stop_early_when_confused=false`. - Support specifying Lua options at the top level of the config file. (suggested by @muzimuzhi in #203, added in #211) This allows you to omit the `[defaults]` section from your config file. For example, the following is now a complete valid config file: ``` toml max_line_length = 120 ignored_issues = ["w100", "S"] ``` This also simplifies the use of the `--inline-config` command-line option: you can now write `--inline-config stop_early_when_confused=false` without the previously required `defaults.` prefix. - Change the semantics of the Lua options `max_reaching_definition_inner_loops` and `max_reaching_definition_outer_loops` to perform a partial reaching definition analysis when the limits are exceeded. (#212, 975f91d) Previously, exceeding either limit would cause explcheck to abort the analysis. Now, processing only aborts when the number of reaching definition loops exceeds the theoretical upper bounds, which indicates a bug. By contrast, when the limits specified by these options are exceeded, explcheck now continues with a partial analysis. This may lead to false positive issues reported by the flow analysis, but can also greatly improve performance. #### Fixes This version of explcheck has fixed the following problems: - Do not report issue W429 (Defined an unexpandable function as unprotected) for restricted-expandable functions. (e507747) - Fix potentially untrue assertion predicates in the flow analysis. (reported by @muzimuzhi in #208, fixed in #209) - Do not expect the `statements` key in all segments. (#212) Some segment types such as `BOOLEAN_EXPRESSION` only contain `calls`, not `statements`. #### Deprecations This version of explcheck has deprecated the following features and scheduled them for removal in v1.0.0: - Rename the Lua option `config_file` to `config_files` and deprecate `config_file`. (#211) - Deprecate the command-line option `--expl3-detection-strategy`. (#211) If you rely on this option, you may set it using `--inline-config`. For example, you would replace `--expl3-detection-strategy always` with `--inline-config 'expl3_detection_strategy = "always"'. #### Continuous integration This version of explcheck has made the following changes to our continuous integration (CI): - Run the flow analysis on the whole TeX Live in the CI. (#208, #210, #212, 975f91d, 59be8c3) - Cancel previous CI run from the same branch or pull request. (cae310d) - Do not run the CI when tags are pushed. (d88b2f1, 8c7a960)
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 .

expltools – Development tools for expl3 programmers

This bundle introduces explcheck, a static analysis tool for developers working with expl3 code. Currently in its initial release, explcheck aims to help developers identify potential issues and improve code quality. In the future, this bundle may expand to include additional development tools for expl3.

Paketexpltools
Version 2026-05-12
Copyright2024–2026 Vít Starý Novotný
BetreuerVít Starý Novotný

Ankündigungen

mehr

Gästebuch Seiten-Struktur Impressum Autor kontaktieren