Repository navigation
Conversation
Skip the default LaTeX scanner when LATEXSUFFIXES has not been configured. This lets commands consume LaTeX sources with tools=[] and strict substitution, while preserving configured and custom suffix behavior. Add portable copy and suffix regression tests and update the release notes. Related SCons#4511. Assisted-by: OpenAI Codex Signed-off-by: boulea7 <zln1905391059@163.com>
Who requested this? |
Maybe Github's default setting... |
Nope. Never happened on any SCons PR's before. |
|
Looks like default setting for new users of Copilot (just paid) , I just closed it , NVM |
|
I think this is the wrong fix. @mwichmann thoughts? |
|
I'm checking the registration path when no LaTeX tool is loaded, including how a change there would affect other environments. |
|
In local tests, removing the global registrations preserves nested input tracking for DVI/PDF builds from TeX. It does change |
With tool tex loaded it's not using the scanner? |
|
It does with |
A
Commandon a LaTeX source fails with an undefinedLATEXSUFFIXESerror when the environment usestools=[]andAllowSubstExceptions(). Skip the default LaTeX scanner when that variable is absent. Configured suffixes, custom scanners, and errors in configured substitution values retain their existing behavior.Related #4511. This addresses the reported LaTeX error while preserving the current scanner registration model.
The regression covers
.tex,.ltx, and.latexcopies, unchanged builds, source updates, and strict command substitution errors. Unit tests cover absent, empty, configured, and custom suffixes and invalid variable references.Validation on Python 3.11 / Linux:
All 26 selected test files passed, with no failures or skips. The issue's original three-line copy reproduction also succeeds. The full suite and real TeX executables were not run; the four TeX checks above use the repository's simulated commands.
The added LaTeX regression test also fails on the base and passes on this head with Python 3.12/Linux. An earlier Windows AppVeyor run failed in
test/Interactive/configure.py; that test passes on Linux at both commits, but the Windows failure's cause remains unconfirmed. Native Windows validation is still outstanding.Contributor Checklist:
CHANGES.txtandRELEASE.txtare updated;README.rstwas checked for relevant guidance.This change and its tests were developed with OpenAI Codex.