Subject: Re: bug#61386: [PATCH] cp,mv,install: Disable sparse copy on macOS

From: Pádraig Brady <[email-masked]>
Date: Mon, 6 Mar 2023 11:13:08 +0000

On 06/03/2023 07:37, Paul Eggert wrote:
> I recall reading somewhere in this thread that a 'split' test was
> failing on macOS because it doesn't let you lseek on /dev/null. I fixed
> that problem here:
> 
> https://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=aa266f1b3dc4e12acdc46cc0f562adc03c2c0b8f
> 
> and fixed some other 'split' issues in adjacent patches, while I was in
> the neighborhood.

The lseek /dev/null issue was only in your undef SEEK_DATA test patch,
and already addressed in your final gnulib patch in the area, as discussed at:
https://lists.gnu.org/archive/html/bug-coreutils/2023-02/msg00081.html

Also immediately rejecting input where we can't determine the size is a feature.
I.e. the following is the expected behavior:

   $ : | split -n l/1
   split: -: cannot determine file size

With the changes we now have:

   $ : | split -n l/1  # Creates an empty file
   $ yes | split -n l/1
   split: -: cannot determine file size

This is inconsistent, and an insidious issue that users may introduce to scripts,
that will only fail once input data hits a certain size.

Also there are a few `make syntax-check` issues in the new split code.

Would it be possible to revert this change in isolation?

thanks,
Pádraig