GNU bug report logs -
#74042
[PATCH] Accept texi2any for version identification
Previous Next
Reported by: Mats Lidell <matsl <at> gnu.org>
Date: Sun, 27 Oct 2024 08:37:02 UTC
Severity: normal
Tags: patch
Done: Stefan Kangas <stefankangas <at> gmail.com>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 74042 in the body.
You can then email your comments to 74042 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#74042
; Package
emacs
.
(Sun, 27 Oct 2024 08:37:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Mats Lidell <matsl <at> gnu.org>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Sun, 27 Oct 2024 08:37:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hi,
Although according to docs texi2any is identical to makeinfo it outputs its
name in the first line which the version check in
`Info-file-supports-index-cookies' does not account for. The submitted patch
allows both makeinfo and texi2any to be in the version string.
In GNU Emacs 31.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.41, cairo version 1.18.2) of 2024-10-27 built on ethel
Repository revision: 523aade3ea11c188e30e3889f031d1848129cf82
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12101013
System Description: Gentoo Linux
Configured using:
'configure --prefix=/home/matsl --with-mailutils --with-native-compilation --with-tree-sitter'
[0001-Accept-texi2any-for-version-identification.patch (text/patch, attachment)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#74042
; Package
emacs
.
(Sun, 27 Oct 2024 09:22:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 74042 <at> debbugs.gnu.org (full text, mbox):
> From: Mats Lidell <matsl <at> gnu.org>
> Date: Sun, 27 Oct 2024 09:35:45 +0100
>
> Although according to docs texi2any is identical to makeinfo it outputs its
> name in the first line which the version check in
> `Info-file-supports-index-cookies' does not account for. The submitted patch
> allows both makeinfo and texi2any to be in the version string.
Can you explain the rationale? IOW, when does the current code not
doing its job?
The fact that makeinfo invokes texi2any is an internal implementation
detail of the Texinfo project, and I wouldn't want us to depend on
that without a very good reason. E.g., once upon a time, makeinfo was
a standalone program written in C, and nothing prevents the Texinfo
folks from doing that again in some future release.
Thanks.
Reply sent
to
Stefan Kangas <stefankangas <at> gmail.com>
:
You have taken responsibility.
(Sun, 27 Oct 2024 09:50:01 GMT)
Full text and
rfc822 format available.
Notification sent
to
Mats Lidell <matsl <at> gnu.org>
:
bug acknowledged by developer.
(Sun, 27 Oct 2024 09:50:01 GMT)
Full text and
rfc822 format available.
Message #13 received at 74042-done <at> debbugs.gnu.org (full text, mbox):
Mats Lidell <matsl <at> gnu.org> writes:
> Although according to docs texi2any is identical to makeinfo it outputs its
> name in the first line which the version check in
> `Info-file-supports-index-cookies' does not account for. The submitted patch
> allows both makeinfo and texi2any to be in the version string.
Thanks for the patch. Pushed to master as commit 4af5b794015.
I'm therefore closing this bug report.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#74042
; Package
emacs
.
(Sun, 27 Oct 2024 10:13:02 GMT)
Full text and
rfc822 format available.
Message #16 received at 74042 <at> debbugs.gnu.org (full text, mbox):
> Resent-To: bug-gnu-emacs <at> gnu.org
> From: Stefan Kangas <stefankangas <at> gmail.com>
> Date: Sun, 27 Oct 2024 02:47:44 -0700
>
> Mats Lidell <matsl <at> gnu.org> writes:
>
> > Although according to docs texi2any is identical to makeinfo it outputs its
> > name in the first line which the version check in
> > `Info-file-supports-index-cookies' does not account for. The submitted patch
> > allows both makeinfo and texi2any to be in the version string.
>
> Thanks for the patch. Pushed to master as commit 4af5b794015.
>
> I'm therefore closing this bug report.
I'd like to discuss the need for this, as mentioned in my previous
message. I don't see why we need to support direct invocations of
texi2any. I hope Mats will respond to my questions.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#74042
; Package
emacs
.
(Sun, 27 Oct 2024 17:52:02 GMT)
Full text and
rfc822 format available.
Message #19 received at 74042 <at> debbugs.gnu.org (full text, mbox):
Hi Eli,
> Eli Zaretskii writes:
> Can you explain the rationale? IOW, when does the current code not
> doing its job?
If the user generates the info file by using texi2any the check for version
number fails and the fact that "index cookies" are supported is lost.
I don't know what index cookies are but the effect was in my case that only
one of three indexes was noticed in the info file.
> The fact that makeinfo invokes texi2any is an internal implementation
> detail of the Texinfo project, and I wouldn't want us to depend on
> that without a very good reason. E.g., once upon a time, makeinfo was
> a standalone program written in C, and nothing prevents the Texinfo
> folks from doing that again in some future release.
It seems to be a legit case to use texi2any directly, even encouraged, due to
being a generic translator. makeinfo is mentioned as being an alias with no
different behavior. On my system makeinfo is a symbolic link to texi2any.
https://www.gnu.org/software/texinfo/manual/texinfo/html_node/Generic-Translator-texi2any.html
Yours
--
%% Mats
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#74042
; Package
emacs
.
(Sun, 27 Oct 2024 19:20:02 GMT)
Full text and
rfc822 format available.
Message #22 received at 74042 <at> debbugs.gnu.org (full text, mbox):
> From: Mats Lidell <matsl <at> gnu.org>
> Cc: 74042 <at> debbugs.gnu.org
> Date: Sun, 27 Oct 2024 18:50:59 +0100
>
> Hi Eli,
>
> > Eli Zaretskii writes:
> > Can you explain the rationale? IOW, when does the current code not
> > doing its job?
>
> If the user generates the info file by using texi2any the check for version
> number fails and the fact that "index cookies" are supported is lost.
Why would users do that by invoking texi2any directly?
> > The fact that makeinfo invokes texi2any is an internal implementation
> > detail of the Texinfo project, and I wouldn't want us to depend on
> > that without a very good reason. E.g., once upon a time, makeinfo was
> > a standalone program written in C, and nothing prevents the Texinfo
> > folks from doing that again in some future release.
>
> It seems to be a legit case to use texi2any directly, even encouraged, due to
> being a generic translator. makeinfo is mentioned as being an alias with no
> different behavior. On my system makeinfo is a symbolic link to texi2any.
>
> https://www.gnu.org/software/texinfo/manual/texinfo/html_node/Generic-Translator-texi2any.html
FTR, I'm very unhappy about this change. I don't think we should
support this. It is not future-proof.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#74042
; Package
emacs
.
(Sun, 27 Oct 2024 21:03:02 GMT)
Full text and
rfc822 format available.
Message #25 received at 74042 <at> debbugs.gnu.org (full text, mbox):
Eli Zaretskii <eliz <at> gnu.org> writes:
>> From: Mats Lidell <matsl <at> gnu.org>
>> Cc: 74042 <at> debbugs.gnu.org
>> Date: Sun, 27 Oct 2024 18:50:59 +0100
>>
>> Hi Eli,
>>
>> > Eli Zaretskii writes:
>> > Can you explain the rationale? IOW, when does the current code not
>> > doing its job?
>>
>> If the user generates the info file by using texi2any the check for version
>> number fails and the fact that "index cookies" are supported is lost.
>
> Why would users do that by invoking texi2any directly?
Because that what the Texinfo documentation tells you to do now.
The Info node (info "(texinfo) Info Files") says:
Info files are nearly always created by processing a Texinfo
source document. ‘texi2any’, also known as ‘makeinfo’, is the
principal command that converts a Texinfo file into an Info file;
see texi2any.
[...]
With the release of ‘texi2any’ as the reference implementation,
development of both the C implementation of ‘makeinfo’ and
‘texi2html’ has been halted. Going forward, we ask authors of
Texinfo documents to use only ‘texi2any’.
Furthermore, the index entry for `makeinfo` in the Texinfo manual leads
to (info "(texinfo) Invoking texi2any"), and there they again tell you
to use `texi2any`:
To process a Texinfo file, invoke ‘texi2any’ followed by the name of
the Texinfo file. Also select the format you want to output with
the appropriate command line option (default is Info). Thus, to
create the Info file for Bison, type the following to the shell:
texi2any --info bison.texi
> FTR, I'm very unhappy about this change. I don't think we should
> support this. It is not future-proof.
I installed it before seeing your objections; I assumed it was
uncontroversial. I'm probably missing some nuances here as I'm far
removed from Texinfo development, but the documentation at least is
clear. At the very least, we should support the recommended use of
Texinfo, and that's all that Mats's patch does, AFAICT.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#74042
; Package
emacs
.
(Sun, 27 Oct 2024 21:35:02 GMT)
Full text and
rfc822 format available.
Message #28 received at 74042 <at> debbugs.gnu.org (full text, mbox):
> Eli Zaretskii writes:
> Why would users do that by invoking texi2any directly?
Because texi2any is a tool for generating info files from texi files!?
We started to use it with GNU Hyperbole and got into this subtle issue (and
wasted some hours due to it.)
> FTR, I'm very unhappy about this change. I don't think we should support
> this. It is not future-proof.
Well to take a step back. Is not the root problem here that the version number
of a tool is used for checking whether certain feature is supported in the
info file? If the check would be more direct then the tool would not matter as
long as the info file is correct!?
The suggested patch is just a simple and pragmatic way to cause less surprises
when a user or developer starts to use texi2any instead of makeinfo.
Yours
--
%% Mats
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#74042
; Package
emacs
.
(Mon, 28 Oct 2024 03:27:02 GMT)
Full text and
rfc822 format available.
Message #31 received at 74042 <at> debbugs.gnu.org (full text, mbox):
> From: Mats Lidell <matsl <at> gnu.org>
> Cc: 74042 <at> debbugs.gnu.org
> Date: Sun, 27 Oct 2024 22:33:59 +0100
>
> > Eli Zaretskii writes:
> > Why would users do that by invoking texi2any directly?
>
> Because texi2any is a tool for generating info files from texi files!?
>
> We started to use it with GNU Hyperbole and got into this subtle issue (and
> wasted some hours due to it.)
IMNSHO, as someone who is involved in the Texinfo development for many
years, the GNU Hyperbole made a mistake by doing so.
> > FTR, I'm very unhappy about this change. I don't think we should support
> > this. It is not future-proof.
>
> Well to take a step back. Is not the root problem here that the version number
> of a tool is used for checking whether certain feature is supported in the
> info file? If the check would be more direct then the tool would not matter as
> long as the info file is correct!?
Texinfo doesn't let us check for features, sadly. The only way to
know which features are present is by looking at the version.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Mon, 25 Nov 2024 12:24:09 GMT)
Full text and
rfc822 format available.
This bug report was last modified 266 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.