On 28/07/2023 16:44, LARONDE Thierry wrote: > On Fri, Jul 28, 2023 at 04:20:09PM +0100, Joseph Wright wrote: >> On 28/07/2023 16:18, David Carlisle wrote: >>> On 28/07/2023 16:14, LARONDE Thierry wrote: >>>> On Fri, Jul 28, 2023 at 03:58:49PM +0100, Joseph Wright wrote: >>>>> On 28/07/2023 15:28, Thierry wrote: >>>>>> Yes. But the same engine does things differently between LaTeX >>>>>> 2022-11-01 and LaTeX 2023-06-01. >>>>>> >>>>>> So could someone give me the diff of the input related things in >>>>>> LaTeX between these two versions so that I can have a clue about >>>>>> what LaTeX is expecting and what it is eventually calling (because it >>>>>> could be calling, low level, the open routine, and there is no >>>>>> acrobatics made in the open routine in kerTeX: the handling is made >>>>>> before calling the routine; so if LaTeX is calling low level like >>>>>> this, the result is not a surprise). >>>>> Older LaTeX used \openin + \ifeof to test for file existence; we now use >>>>> \(pdf)filesize, which is expandable and reports "0" for a >>>>> non-existent file. >>>>> Both methods should find "foo.tex" from "foo" in the same way. >>>>> >>>> Uh! You expect \filesize to do searching and file extension? Why? >>>> \filesize can be called with whatever file, not necessarily a .tex. >>>> Why would it assume it has to try an extension if it is not found? >>>> >>>> Where was this specified for the primitive? >>> >>> The primitive has always acted that way (since being added by pdftex) >>> it's not a latex feature. >>> >>> If \input{xxx} inputs a file, \(pdf)filesize{xxx} should refer to the >>> same file, so the primitive has always used the same file searching. >> >> Indeed, we (team) picked up the trick of using \(pdf)filesize from Heiko >> Oberdiek's code, where it has been used for I think 15+ years in some >> extensions to the graphics mechanisms for file searching. >> > > And it was specified nowhere. True, but I think that's because it's implicit in TeX. The 'classical' primitives \input, \openin and \openout all add .tex if no file extension is given: this is why you cannot create extensionless files from DocStrip, for example. So when Hans added other file-related primitives to pdfTeX, the same underlying extension behaviour applied automatically - the same low-level file access is used by everything. Joseph