[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Work around BSD `join` bug
From: |
Bruno Haible |
Subject: |
Re: Work around BSD `join` bug |
Date: |
Wed, 10 Jan 2024 22:58:55 +0100 |
Hello Avinash,
> BSD `join` has a bug where if one of the input file contains blank
> lines then `join` fails.[0] Confirmed on FreeBSD and NetBSD.
[0] https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=232405
Before applying the patch, it would be useful to understand its scope and
the kind of bug:
- Scope: You provided an example for 'join' without -a or -v options.
Is there also an example for 'join -a 1' and an example for 'joing -v 1'?
- POSIX violation or not? Is it valid to pass lines with missing fields
to 'join', according to POSIX [1]?
Then, would it make sense to document it in the GNU Autoconf manual? [2]
If it's valid to pass lines with missing fields to 'join', I would prefer
that gnulib-tool does a quick check on the 'join' program and bails out
if it find a non-POSIX-compliant one and no JOIN environment variable is
set. Otherwise, the fix should be in gnulib-tool and, equally, in the
pygnulib/ directory.
Bruno
[1] https://pubs.opengroup.org/onlinepubs/9699919799/utilities/join.html
[2]
https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.71/html_node/Limitations-of-Usual-Tools.html