git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 1/7] Redirect grep's stderr top null too.

From
Đoàn Trần Công Danh <congdanhqx@gmail.com>
Date
May 18, 2020, 15:30 UTC
Message-ID
<20200518153025.GD1980@danh.dev>
In-Reply-To
<CALDDTe13_utn7E+QF1AgndX_6nPph=Gr1hesLwfV8e9LwgUPOQ@mail.gmail.com>
On 2020-05-19 00:29:47+1000, Darren Tucker <dtucker@dtucker.net> wrote:
Show 20 quoted lines
> On Tue, 19 May 2020 at 00:13, Đoàn Trần Công Danh <congdanhqx@gmail.com> wrote:
> >
> > Hi Darren,
> >
> > On 2020-05-18 20:03:50+1000, Darren Tucker <dtucker@dtucker.net> wrote:
> > > Prevents pollution of configure output on platforms that don't have
> > > grep -a.
> >
> > From your other's patch, I think you're in HP-UX,
> 
> Yes (it's not my usual platform but I had occasion to test something
> on it so revived an old system).
> 
> > would you mind also run the test.
> >
> > Since t5703 also uses "grep -a"
> 
> It fails with:
> $ ./t5703-upload-pack-ref-in-want.sh
> sed: There are too many commands for the s/\n// function.

I think this was introduced at 878f988350 (t/test-lib: teach --chain-lint to detect broken &&-chains in subshells, 2018-07-11)

The chainlint.sed is too complicated for a mortal like me to understand, I added Eric to Cc.

Show 14 quoted lines
> ok 1 - setup repository
> sed: There are too many commands for the s/\n// function.
> not ok 2 - config controls ref-in-want advertisement
> #
> #               test-tool serve-v2 --advertise-capabilities >out &&
> #               ! grep -a ref-in-want out &&
> #
> #               git config uploadpack.allowRefInWant false &&
> #               test-tool serve-v2 --advertise-capabilities >out &&
> #               ! grep -a ref-in-want out &&
> #
> #               git config uploadpack.allowRefInWant true &&
> #               test-tool serve-v2 --advertise-capabilities >out &&
> #               grep -a ref-in-want out

I'm thinking about: -----------8<------------

diff --git a/t/t5703-upload-pack-ref-in-want.sh b/t/t5703-upload-pack-ref-in-want.sh
index a34460f7d8..92ad5eeec0 100755
--- a/t/t5703-upload-pack-ref-in-want.sh
+++ b/t/t5703-upload-pack-ref-in-want.sh
@@ -49,15 +49,18 @@ test_expect_success 'setup repository' '
 
 test_expect_success 'config controls ref-in-want advertisement' '
 	test-tool serve-v2 --advertise-capabilities >out &&
-	! grep -a ref-in-want out &&
+	perl -ne "/ref-in-want/ and print" out >out.filter &&
+	test_must_be_empty out.filter &&
 
 	git config uploadpack.allowRefInWant false &&
 	test-tool serve-v2 --advertise-capabilities >out &&
-	! grep -a ref-in-want out &&
+	perl -ne "/ref-in-want/ and print" out >out.filter &&
+	test_must_be_empty out.filter &&
 
 	git config uploadpack.allowRefInWant true &&
 	test-tool serve-v2 --advertise-capabilities >out &&
-	grep -a ref-in-want out
+	perl -ne "/ref-in-want/ and print" out >out.filter &&
+	test_file_not_empty out.filter
 '
 
 test_expect_success 'invalid want-ref line' '
------------------->8-----------

> #
> sed: There are too many commands for the s/\n// function.
> ok 3 - invalid want-ref line
> sed: There are too many commands for the s/\n// function.
> ok 4 - basic want-ref
> sed: There are too many commands for the s/\n// function.
> ok 5 - multiple want-ref lines
> sed: There are too many commands for the s/\n// function.
> ok 6 - mix want and want-ref
> sed: There are too many commands for the s/\n// function.
> ok 7 - want-ref with ref we already have commit for
> sed: There are too many commands for the s/\n// function.
> FATAL: Unexpected exit with code 0
> 
> If I use gnu sed and native grep, only #2 fails as above.  If I use
> gnu grep and gnu sed it passes with a warning from (gnu) printf:
> $ ./t5703-upload-pack-ref-in-want.sh
> printf: \3: invalid escape

Look like HP-UX's printf doesn't understand octal escape.
This may be a problem, since we've a patch to fix git-bisect's replace
for Windows, which is using "printf \015"
Cc-ing Junio for checking.
-- 
Danh
Previous: Darren TuckerNext: Darren Tucker
Message 16 of 24 in “Redirect grep's stderr top null too.”
  1. 1/7 Redirect grep's stderr top null too.Darren Tucker, May 18, 2020
  2. 4/7 Use strtoumax instead of strtoull.Darren Tucker, May 18, 2020
  3. Junio C HamanoMay 18, 2020
  4. 5/7 Define LLONG_MAX/MIN etc if not already defined.Darren Tucker, May 18, 2020
  5. Andreas SchwabMay 18, 2020
  6. Darren TuckerMay 18, 2020
  7. 6/7 Check if strtoumax is a macro (eg HP-UX 11.11).Darren Tucker, May 18, 2020
  8. Junio C HamanoMay 18, 2020
  9. Darren TuckerMay 20, 2020
  10. Junio C HamanoMay 20, 2020
  11. 2/7 Define NO_PREAD for HPUX 11.11 and 11.00.Darren Tucker, May 18, 2020
  12. 3/7 Test for strtoull in configure.Darren Tucker, May 18, 2020
  13. 7/7 Define SCNuMAX if not already defined.Darren Tucker, May 18, 2020
  14. Đoàn Trần Công DanhMay 18, 2020
  15. Darren TuckerMay 18, 2020
  16. Đoàn Trần Công DanhMay 18, 2020
  17. Darren TuckerMay 18, 2020
  18. t5703: replace "grep -a" usage by perlĐoàn Trần Công Danh, May 19, 2020
  19. Darren TuckerMay 19, 2020
  20. Christian CouderMay 19, 2020
  21. Đoàn Trần Công DanhMay 19, 2020
  22. Christian CouderMay 19, 2020
  23. Eric SunshineMay 19, 2020
  24. Junio C HamanoMay 18, 2020

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.