Die neueste Version von LaTeX2e ändert das Verhalten von \IfFileExists. Warum?

Die neueste Version von LaTeX2e ändert das Verhalten von \IfFileExists. Warum?

Die Ausgabe des folgenden Latex-Dokuments hat sich seit der letzten LaTeX2e-Version geändert:

\documentclass{article}
\begin{document}
\IfFileExists
  {}
  { yes }
  { no }
\end{document}

Veröffentlichung vom 02.02.2020:NEIN

Veröffentlichung vom 01.10.2020:Ja

Warum? Ist das beabsichtigt?

Aktualisieren

Stellen Sie sich vor, wir verwenden eine test.tex.erbDatei, die zuerst von Ruby verarbeitet wird.

\documentclass{article}
\begin{document}
\newcommand{\mypath}{<%= @image.path %>}
\IfFileExists
  {\mypath}
  {\includegraphics{\mypath}}
  { no image }
\end{document}

@image.pathnilmacht manchmal \mypathleer. Dies führt \includegraphics{\mypath}seit der neuesten LaTeX2e-Version (Oktober 2020) zu Fehlern. In jeder früheren LaTeX2e-Version wurde der Text „kein Bild“ ohne Fehler gerendert.

Lösung

Die einfache Lösung, die wir verwenden, ist diese:

\newcommand{\mypath}{<%= @image.path || './inexistant.txt' %>}

Problem gelöst. Danke.

verwandte Informationen