Re: No bug tracker

2023-03-23 Thread Raymond Toy



On 3/23/23 13:36, Patrice Dumas wrote:

There was a bugtracker at some point, but it was not so useful.

On Thu, Mar 23, 2023 at 07:44:47PM +, Gavin Smith wrote:

The scale of this project is also a factor here, and if it were a larger
project a bug tracking system might be more useful, although I don't really
have experience of this.

To me that is the main factor here, no much point in such an
infrastructure with such a small project.


I work on some small (one person)  and not so small open source projects 
that also have mailing lists. I like bug trackers because then I have a 
fairly easy way to find a bug instead of having to fish through tons of 
email with possibly incorrect subject lines that might be spread out 
over many threads to find the relevant discussion.  But this also 
requires discipline to discuss the bugs on the tracker instead of the 
mailing list.  And sometimes the mailing list is easier for bug 
discussion than a bug tracker. Hopefully someone will update the bug 
with links to the mailing list or summarizes the mailing list. But that 
means extra work.


I also don't have any qualms about closing bugs as wontfix or not-a-bug, 
as long as I explain (briefly) why.


But each project needs to do whatever works best for them




Re: No bug tracker

2023-03-23 Thread Bogdan
Gavin Smith , Thu Mar 23 2023 20:44:47 
GMT+0100 (Central European Standard Time)

On Thu, Mar 23, 2023 at 05:57:58PM +0100, Bogdan wrote:

  No bugtracker? Not good from a bug reporter's point of view :). I thought
all FSF projects use the same bugtracker, it would seem logical. You
probably have a good reason for not to have one, but don't you sometimes get
10 reports about the same problem? :)


Users are free to write to bug-texinfo@gnu.org with bugs.  It doesn't
mean we don't care about bugs.



 I didn't say you don't, I'm pretty sure you do.



 Having a bug tracker doesn't mean that
the bugs will get fixed or that formally reported bugs are something
that the developers care about.



 I do hope that developers care about formally reported bugs, not 
only those sent to a mailing list :). Although a mailing list is a 
formal report in this case.




 You've likely had the experience of
submitting bugs to bug trackers and then the reports being ignored --
I know I have.



 Well, maybe not ignored, but long waiting times and "Please check if 
still valid" - sure.




 It's a volunteer project and contributors will work on
what they themselves consider to be valuable, not what a bug tracker
orders them to.

I also find that a lot of reported bugs are questionable, and may
not really be bugs.



 True.



 Rather than risk pissing people off by closing
their bugs immediately as NOTABUG, WONTFIX or the like, or having the
tracker fill up with 1000s of junk bugs that will never be closed,
it's better to have a discussion on the mailing list to improve mutual
understanding of the issues involved.



 Discussion - sure. Having to write "It's a feature, not a bug" for 
the same issue 1000 times in 1000 e-mails separately to 1000 users may 
be a bit less fun.




If there is a clear bug that doesn't get fixed, and it's likely there
are contributors with capacity to work on the issue, the best course of
action is to keep on emailing about it if you are worried it has been
forgotten about.



 "Is my bug fixed yet?" every week :)



 This shows some commitment on behalf of the person
reporting the bug and gives an indication it is something worth worrying
about, if the reporter has been motivated to follow it up.



 True.



The scale of this project is also a factor here, and if it were a larger
project a bug tracking system might be more useful, although I don't really
have experience of this.



 That may also be the deciding factor.
 I don't know how it looks in Texinfo, but when there are 3 people 
working on a project tightly, a mailing list may suffice (although I 
see quite of a monthly volume on 'bug-texinfo').
 When there are tens of people and hundreds of mails weekly, a 
bugtracker may be better. Also perhaps easier to search for old bugs 
and not duplicate them.


 Anyway, I guess that we both have valid points and "it depends on 
the project" is the right outcome of this thread. I was just 
surprised, because Texinfo is rather important and I thought it would 
be more "formalized" with more tools. Just asking, not criticizing :)


--
Regards - Bogdan ('bogdro') D. (GNU/Linux & FreeDOS)
X86 assembly (DOS, GNU/Linux):http://bogdro.evai.pl/index-en.php
Soft(EN): http://bogdro.evai.pl/soft  http://bogdro.evai.pl/soft4asm
www.Xiph.org  www.TorProject.org  www.LibreOffice.org  www.GnuPG.org




Re: No bug tracker

2023-03-23 Thread Patrice Dumas
There was a bugtracker at some point, but it was not so useful.

On Thu, Mar 23, 2023 at 07:44:47PM +, Gavin Smith wrote:
> The scale of this project is also a factor here, and if it were a larger
> project a bug tracking system might be more useful, although I don't really
> have experience of this.

To me that is the main factor here, no much point in such an
infrastructure with such a small project.

On large project it is important to have bug trackers to avoid bug being
filled multiple time and to have someone responsible for each bug.

-- 
Pat



Re: [PATCH] Texinfo: inconsistent behavior: cmd line vs. env

2023-03-23 Thread Bogdan
Gavin Smith , Thu Mar 23 2023 20:26:29 
GMT+0100 (Central European Standard Time)

On Thu, Mar 23, 2023 at 07:25:29PM +, Gavin Smith wrote:

Here's an updated patch:

diff --git a/ChangeLog b/ChangeLog
index 92bc4d6325..2707f6bad5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2023-03-23  Gavin Smith 
+
+   Make setting TEXI2DVI_BUILD_DIRECTORY equivalent to --build-dir option
+
+   * util/texi2dvi: Make setting build dir to a directory other
+   than '.' change build mode from 'local' to 'tidy' regardless of
+   whether it is given with --build-dir or setting the
+   TEXI2DVI_BUILD_DIRECTORY envvar.  Report from Bogdan Drozdowski.
+


And this ChangeLog is inaccurate, of course, as '.' is not a special case
with this patch.



 Right. Patching the patched patch :)

--
Regards - Bogdan ('bogdro') D. (GNU/Linux & FreeDOS)
X86 assembly (DOS, GNU/Linux):http://bogdro.evai.pl/index-en.php
Soft(EN): http://bogdro.evai.pl/soft  http://bogdro.evai.pl/soft4asm
www.Xiph.org  www.TorProject.org  www.LibreOffice.org  www.GnuPG.org




Re: [PATCH] Texinfo: inconsistent behavior: cmd line vs. env

2023-03-23 Thread Bogdan
Gavin Smith , Thu Mar 23 2023 20:25:27 
GMT+0100 (Central European Standard Time)

On Thu, Mar 23, 2023 at 05:57:58PM +0100, Bogdan wrote:

There is still the minor question of what should happen if
TEXI2DVI_BUILD_DIRECTORY is set to '.' (the default).  Since this is the
default value, it doesn't seem right that explicitly setting
TEXI2DVI_BUILD_DIRECTORY=. in the environment should change the
behaviour of texi2dvi.



  I *was* thinking about this, too. On the other hand, if the user gives
"--build-dir=.", it *would* imply --tidy, even though this is the default.
The sole presence of the switch changes the behaviour.


It occured to me that we didn't have to make '.' the default value.  We
can make the default value empty and avoid this as a special case.  The
build_dir variable is not used that much in the program, so it is easy
to accommodate a change in default value.



 Probably even better. When specifying a build directory, give an 
actual value. If you want just --tidy and use the default directory 
name, write just --tidy. Makes sense :).


[...]



Hence, I propose the following patch:


Here's an updated patch:



[...]



@@ -151,12 +151,7 @@ Build modes:
--tidy   same as --build=tidy
-c, --clean  same as --build=clean
--build-dir=DIR  specify where the tidy compilation is performed;
- implies --tidy;
- defaults to TEXI2DVI_BUILD_DIRECTORY [$build_dir]
-
-The MODE specifies where the TeX compilation takes place, and, as a
-consequence, how auxiliary files are treated.  The build mode can also
-be set using the environment variable TEXI2DVI_BUILD_MODE.



 I suppose the first sentence in the above removed block is still 
correct, so it could stay (but doesn't need to).
 "Tidy compilation" sounds maybe a bit strange. But "compilation in 
tidy mode" or "TeX compilation in tidy mode" are probably too long. 
Maybe "tidy build"? But, I'm not insisting. The user probably knows 
what this means anyway.


 [Snip the rest of the patch - agreed]



  Remember also about the help message:

"
   --build-dir=DIR  specify where the tidy compilation is performed;
  implies --tidy;
  defaults to TEXI2DVI_BUILD_DIRECTORY [$build_dir]

"

For some reason, it was made so that passing --build-dir implies --tidy...
But, maybe just for the non-default values, as I wrote above ("external
directories").


It's slightly more complicated than it needs to be due to the
indirection through TEXI2DVI_BUILD_DIRECTORY.  I've reworded this in the
patch above.


  From a user's point of view - looks fine. Generally, I have nothing against
your change.
  Since I began playing with fixing Automake I'm just worried if its tests
would need to pass --tidy now, which wasn't present in the older versions,
so what do we do now to have a command line that works with all versions
(maybe except really ancient ones)?
But it seems we're always passing a directory which isn't ".", so hopefully
it will work.


In the new patch above "." is no longer a special case.



 Sounds fine, thank you!

--
Regards - Bogdan ('bogdro') D. (GNU/Linux & FreeDOS)
X86 assembly (DOS, GNU/Linux):http://bogdro.evai.pl/index-en.php
Soft(EN): http://bogdro.evai.pl/soft  http://bogdro.evai.pl/soft4asm
www.Xiph.org  www.TorProject.org  www.LibreOffice.org  www.GnuPG.org




No bug tracker

2023-03-23 Thread Gavin Smith
On Thu, Mar 23, 2023 at 05:57:58PM +0100, Bogdan wrote:
>  No bugtracker? Not good from a bug reporter's point of view :). I thought
> all FSF projects use the same bugtracker, it would seem logical. You
> probably have a good reason for not to have one, but don't you sometimes get
> 10 reports about the same problem? :)

Users are free to write to bug-texinfo@gnu.org with bugs.  It doesn't
mean we don't care about bugs.  Having a bug tracker doesn't mean that
the bugs will get fixed or that formally reported bugs are something
that the developers care about.  You've likely had the experience of
submitting bugs to bug trackers and then the reports being ignored --
I know I have.  It's a volunteer project and contributors will work on
what they themselves consider to be valuable, not what a bug tracker
orders them to.

I also find that a lot of reported bugs are questionable, and may
not really be bugs.  Rather than risk pissing people off by closing
their bugs immediately as NOTABUG, WONTFIX or the like, or having the
tracker fill up with 1000s of junk bugs that will never be closed,
it's better to have a discussion on the mailing list to improve mutual
understanding of the issues involved.

If there is a clear bug that doesn't get fixed, and it's likely there
are contributors with capacity to work on the issue, the best course of
action is to keep on emailing about it if you are worried it has been
forgotten about.  This shows some commitment on behalf of the person
reporting the bug and gives an indication it is something worth worrying
about, if the reporter has been motivated to follow it up.

The scale of this project is also a factor here, and if it were a larger
project a bug tracking system might be more useful, although I don't really
have experience of this.




Re: [PATCH] Texinfo: inconsistent behavior: cmd line vs. env

2023-03-23 Thread Gavin Smith
On Thu, Mar 23, 2023 at 07:25:29PM +, Gavin Smith wrote:
> Here's an updated patch:
> 
> diff --git a/ChangeLog b/ChangeLog
> index 92bc4d6325..2707f6bad5 100644
> --- a/ChangeLog
> +++ b/ChangeLog
> @@ -1,3 +1,12 @@
> +2023-03-23  Gavin Smith 
> +
> + Make setting TEXI2DVI_BUILD_DIRECTORY equivalent to --build-dir option
> +
> + * util/texi2dvi: Make setting build dir to a directory other
> + than '.' change build mode from 'local' to 'tidy' regardless of
> + whether it is given with --build-dir or setting the
> + TEXI2DVI_BUILD_DIRECTORY envvar.  Report from Bogdan Drozdowski.
> +

And this ChangeLog is inaccurate, of course, as '.' is not a special case
with this patch.



Re: [PATCH] Texinfo: inconsistent behavior: cmd line vs. env

2023-03-23 Thread Gavin Smith
On Thu, Mar 23, 2023 at 05:57:58PM +0100, Bogdan wrote:
> > There is still the minor question of what should happen if
> > TEXI2DVI_BUILD_DIRECTORY is set to '.' (the default).  Since this is the
> > default value, it doesn't seem right that explicitly setting
> > TEXI2DVI_BUILD_DIRECTORY=. in the environment should change the
> > behaviour of texi2dvi.
> 
> 
>  I *was* thinking about this, too. On the other hand, if the user gives
> "--build-dir=.", it *would* imply --tidy, even though this is the default.
> The sole presence of the switch changes the behaviour.

It occured to me that we didn't have to make '.' the default value.  We
can make the default value empty and avoid this as a special case.  The
build_dir variable is not used that much in the program, so it is easy
to accommodate a change in default value.

>  In other words, for consistency and no-surprises, it should be:
>   --build-dir given => --tidy
>   TEXI2DVI_BUILD_DIRECTORY given => --tidy
> whatever the values.

Yes, that makes the most sense.  I realised this when trying to update
the help message.

> > Hence, I propose the following patch:

Here's an updated patch:

diff --git a/ChangeLog b/ChangeLog
index 92bc4d6325..2707f6bad5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2023-03-23  Gavin Smith 
+
+   Make setting TEXI2DVI_BUILD_DIRECTORY equivalent to --build-dir option
+
+   * util/texi2dvi: Make setting build dir to a directory other
+   than '.' change build mode from 'local' to 'tidy' regardless of
+   whether it is given with --build-dir or setting the
+   TEXI2DVI_BUILD_DIRECTORY envvar.  Report from Bogdan Drozdowski.
+
 2023-03-21  Patrice Dumas  
 
Index commands do not end paragraphs in texi2any
diff --git a/util/texi2dvi b/util/texi2dvi
index 28c53ebe44..bd4f3df9a8 100755
--- a/util/texi2dvi
+++ b/util/texi2dvi
@@ -36,7 +36,7 @@ set -e
 program=`echo $0 | $SED -e 's!.*/!!'`
 
 build_mode=${TEXI2DVI_BUILD_MODE:-local}
-build_dir=${TEXI2DVI_BUILD_DIRECTORY:-.}
+build_dir=${TEXI2DVI_BUILD_DIRECTORY:-}
 
 orig_pwd=`pwd`
 
@@ -151,12 +151,7 @@ Build modes:
   --tidy   same as --build=tidy
   -c, --clean  same as --build=clean
   --build-dir=DIR  specify where the tidy compilation is performed;
- implies --tidy;
- defaults to TEXI2DVI_BUILD_DIRECTORY [$build_dir]
-
-The MODE specifies where the TeX compilation takes place, and, as a
-consequence, how auxiliary files are treated.  The build mode can also
-be set using the environment variable TEXI2DVI_BUILD_MODE.
+ implies --tidy
 
 Valid values of MODE are:
   \`local'  compile in the current directory, leaving all the auxiliary
@@ -166,6 +161,10 @@ Valid values of MODE are:
   \`clean'  same as \`tidy', but remove the auxiliary directory afterwards.
Every compilation therefore requires the full cycle.
 
+The build mode can also be set using the environment variable
+TEXI2DVI_BUILD_MODE.  The build directory can also be set using
+the environment variable TEXI2DVI_BUILD_DIRECTORY.
+
 The values of these environment variables are used to run the
 corresponding commands, if they are set:
 
@@ -1694,7 +1693,7 @@ while test x"$1" != x"$arg_sep"; do
 -~ ) verbose "Option -~ is obsolete: texi2dvi ignores it.";;
 -b | --batch) ;; # Obsolete
  --build)  shift; build_mode=$1;;
- --build-dir)  shift; build_dir=$1; build_mode=tidy;;
+ --build-dir)  shift; build_dir=$1;;
 -c | --clean) build_mode=clean;;
 -D | --debug) debug=true;;
 -e | -E | --expand) expand=true;;
@@ -1743,6 +1742,11 @@ done
 # Pop the token
 shift
 
+# If build_dir given, switch from --local to --tidy
+if test x"$build_dir" != x"" && test x"$build_mode" = x"local" ; then
+  build_mode=tidy
+fi
+
 # $tidy:  compile in a t2d directory.
 # $clean: remove all the aux files.
 case $build_mode in
@@ -1848,7 +1852,8 @@ do
   # in compiling this document.
   case $build_dir in
   '' | . ) t2ddir=$out_noext.t2d ;;
-  *) # Avoid collisions between multiple occurrences of the same
+  *) ensure_dir "$build_dir"
+ # Avoid collisions between multiple occurrences of the same
  # file, so depend on the output path.  Remove leading `./',
  # at least to avoid creating a file starting with `.!', i.e.,
  # an invisible file. The sed expression is fragile if the cwd
@@ -1860,7 +1865,7 @@ do
   # Remove it at exit if clean mode.
   trap "cleanup" 0 1 2 15
 
-  ensure_dir "$build_dir" "$t2ddir"
+  ensure_dir "$t2ddir"
 
   # Sometimes there are incompatibilities between auxiliary files for
   # DVI and PDF.  The contents can also change whether we work on PDF

>  Remember also about the help message:
> 
> "
>   --build-dir=DIR  specify where the tidy compilation is performed;
>  implies --tidy;
>  defaults to TEXI2DVI_BUILD_DIRECTORY 

Re: [PATCH] Texinfo: inconsistent behavior: cmd line vs. env

2023-03-23 Thread Bogdan
Gavin Smith , Wed Mar 22 2023 20:06:49 
GMT+0100 (Central European Standard Time)

On Tue, Mar 21, 2023 at 02:13:40PM +0100, Bogdan wrote:

Hello.

  As suggested by Gavin, I'm reporting a problem (or at least a "surprising
inconsistency") in the texi2dvi script. This is related to Automake
bug#29188 (https://debbugs.gnu.org/cgi/bugreport.cgi?bug=29188).

  Since texinfo-4.9, one can set the build directory with an environment
variable "TEXI2DVI_BUILD_DIRECTORY". Unfortunately, texinfo has a
problem/inconsistency there. When setting "--build-dir=" on the command
line, the build mode is set to "tidy" (which cleans some log files, etc.).
Fine. The problem is that if you set the build directory using an
environment variable, the mode is NOT set to "tidy", leaving the logs files
(and failing tests in Automake). Luckily, you can also set the build mode
from an environment variable, "TEXI2DVI_BUILD_MODE".


I guess that TEXI2DVI_BUILD_DIRECTORY must be rarely used because this
hasn't been reported before.



 I believe. Probably not many wish to have such a high level of 
compatibility with both the new and old Texinfo, and so most people 
simply use command-line switches. But it's so good that the 
environment variable now exists!




 The existing behaviour doesn't seem useful,
and I'm in favour of simplifying the possible configurations, so it
seems like a good idea to make setting TEXI2DVI_BUILD_DIRECTORY equivalent
to using --build-dir, as you suggest.

To summarize, if TEXI2DVI_BUILD_DIRECTORY was set, but --tidy (or --clean)
wasn't given, then the build directory would be created, but all the
auxiliary files would be dumped in the current directory.



 Yes. As a side effect, this would cause test failures in Automake if 
just the environment variable and only this particular environment 
variable was set, because some tests check for left-over files in the 
build directory.




There is still the minor question of what should happen if
TEXI2DVI_BUILD_DIRECTORY is set to '.' (the default).  Since this is the
default value, it doesn't seem right that explicitly setting
TEXI2DVI_BUILD_DIRECTORY=. in the environment should change the
behaviour of texi2dvi.



 I *was* thinking about this, too. On the other hand, if the user 
gives "--build-dir=.", it *would* imply --tidy, even though this is 
the default. The sole presence of the switch changes the behaviour.


 I'm thinking also about situations like

export TEXI2DVI_BUILD_DIRECTORY=$some_runtime_var
and
texi2dvi --build-dir=$some_runtime_var ...

 where 'some_runtime_var' can be any directory, or '.' as a fallback, 
in some user script.
 Even if it ends up in the '.' fallback, it still means the user 
explicitly chose to use the command-line switch (which implies --tidy) 
or the environment variable (which doesn't imply --tidy right now).

 In other words, for consistency and no-surprises, it should be:
--build-dir given => --tidy
TEXI2DVI_BUILD_DIRECTORY given => --tidy
whatever the values.



I like the simplicity that the environment variable is used to set
the internal 'build_dir' variable exactly once, and is never used again.

Maybe it seems like I'm being picky here, but texi2dvi is at the borderline
of being difficult to make sense of, and any extra complications in terms
of possible configurations could push it over the edge.



 I understand and I'm not claiming that my patch is perfect.



Hence, I propose the following patch:

diff --git a/util/texi2dvi b/util/texi2dvi
index 28c53ebe44..29b0abd453 100755
--- a/util/texi2dvi
+++ b/util/texi2dvi
@@ -1694,7 +1694,7 @@ while test x"$1" != x"$arg_sep"; do
  -~ ) verbose "Option -~ is obsolete: texi2dvi ignores it.";;
  -b | --batch) ;; # Obsolete
   --build)  shift; build_mode=$1;;
- --build-dir)  shift; build_dir=$1; build_mode=tidy;;
+ --build-dir)  shift; build_dir=$1;;
  -c | --clean) build_mode=clean;;
  -D | --debug) debug=true;;
  -e | -E | --expand) expand=true;;
@@ -1743,6 +1743,10 @@ done
  # Pop the token
  shift
  
+if test x"$build_dir" != x"." && test x"$build_mode" = x"local" ; then

+  build_mode=tidy
+fi
+
  # $tidy:  compile in a t2d directory.
  # $clean: remove all the aux files.
  case $build_mode in

It still sets build_mode to tidy based on the build directory, but in only
one place in the code, not in two.



 Certainly makes sense, and is probably the way it was meant to be 
(in other words, clean some external directories). Shouldn't hurt 
Automake's tests, I think.


 Remember also about the help message:

"
  --build-dir=DIR  specify where the tidy compilation is performed;
 implies --tidy;
 defaults to TEXI2DVI_BUILD_DIRECTORY 
[$build_dir]


"

For some reason, it was made so that passing --build-dir implies 
--tidy... But, maybe just for the non-default values, as I wrote above 
("external directories").




My patch may have the problem