git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
To: Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH 0/5] some shell portability fixes
Date: Tue, 6 Nov 2007 22:09:25 +0100	[thread overview]
Message-ID: <20071106210925.GJ6361@ins.uni-bonn.de> (raw)
In-Reply-To: <7v8x5bgl04.fsf@gitster.siamese.dyndns.org>

Hello Junio,

* Junio C Hamano wrote on Tue, Nov 06, 2007 at 09:46:35PM CET:
> All missing Signed-off-by: lines.

Oops.  Sorry.

> [1/5] In addition to take advantage of the fact that the RHS of
>       assignment is not split, I'd prefer replacing `` with $()
>       with these cases.	 Much easier to read if your shell
>       supports it (and all the modern ones do).

OK.

> [2/5] Gaah, AIX sed X-<.  I am not opposed to this patch but
>       would want to get Yays from people with non GNU sed.  Is
>       busybox sed good enough to grok our scripts these days?
>       Please ask help and collect Acks at least from folks on
>       Solaris, MacOS, FBSD, and OBSD.

FWIW, I have little experience with busybox sed, but for the others here
you go:  With

echo axbyc | sed 's,x,\n,; s,y,\
,'

I get on OpenBSD, FreeBSD, Solaris, and Darwin (minus indentation):
  anb
  c

GNU sed gives
  a
  b
  c

> [3/5] Arithmetic expansion.  Have you caught _all_ of them, or
>       is this patch about only the ones you noticed?

I have grepped *.sh.  But let's drop that, I see that it goes backwards.

> [4/5] I wonder if use of fgrep would be easier to read and more
>       portable with this one:
> 
> 	name=$( GIT_CONFIG=.gitmodules \
> 		git config --get-regexp '^submodule\..*\.path$' |
> 		fgrep "submodule.$1.path" |
> 		sed -e 's/^submodule\.\(.*\)\.path$/\1/'
> 	)

Certainly easier to read.  But fgrep itself is not portable (it could be
grep -F).  Also, isn't the $1 to be matched at the end, after a "="
here?  FWIW the pattern I posted has survived a few years in Automake,
so there is some hope that it works.

> [5/5] Again, have you covered all of them?

No, oops again.  As I searched for `test.*-[oa]' I have missed line
wraps and [ ... -o ... ].

>       I am not opposed to
>       this one, although I am a bit curious who lacks -a/-o in
>       practice.

Hmm, good question.  I actually don't know whether there is a shell
that isn't ruled out by $() anyway.  Let's drop that one, too, then.

Cheers,
Ralf

  parent reply	other threads:[~2007-11-06 21:09 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-11-06 20:15 [PATCH 0/5] some shell portability fixes Ralf Wildenhues
2007-11-06 20:17 ` [PATCH 1/5] Avoid a few unportable, needlessly nested "...`..." Ralf Wildenhues
2007-11-06 20:17 ` [PATCH 2/5] Fix sed script to work with AIX sed Ralf Wildenhues
2007-11-06 20:18 ` [PATCH 3/5] Replace $((...)) with expr invocations Ralf Wildenhues
2007-11-06 20:26   ` Ralf Wildenhues
2007-11-06 21:06     ` Junio C Hamano
2007-11-06 23:17       ` [PATCH] Add Documentation/CodingStyle Johannes Schindelin
2007-11-07  0:04         ` Andreas Ericsson
2007-11-07  0:40         ` Junio C Hamano
2007-11-07  8:52           ` Andreas Ericsson
2007-11-07 14:59             ` [PATCH v2] " Johannes Schindelin
2007-11-07 21:43               ` Robin Rosenberg
2007-11-07 22:35                 ` [PATCH v3] Add Documentation/CodingGuidelines Johannes Schindelin
2007-11-07 23:14                   ` Junio C Hamano
2007-11-08  0:33                     ` [PATCH v4] " Johannes Schindelin
2007-11-08  0:38                       ` Junio C Hamano
2007-11-07 14:54           ` [PATCH] Add Documentation/CodingStyle Johannes Schindelin
2007-11-07  7:53         ` Wincent Colaiuta
2007-11-07  8:53           ` Andreas Ericsson
2007-11-07 19:40         ` Jon Loeliger
2007-11-07 20:13           ` Johannes Schindelin
2007-11-08 11:29         ` Mike Ralphson
2007-11-06 20:20 ` [PATCH 4/5] Fix sed string regex escaping in module_name Ralf Wildenhues
2007-11-06 20:20 ` [PATCH 5/5] Avoid "test -o" and "test -a" which are not POSIX, only XSI Ralf Wildenhues
2007-11-06 20:46 ` [PATCH 0/5] some shell portability fixes Junio C Hamano
2007-11-06 21:02   ` Mike Hommey
2007-11-06 23:25     ` Johannes Schindelin
2007-11-07 14:17       ` Mike Ralphson
2007-11-07 14:47         ` Johannes Schindelin
2007-11-07 15:30           ` Mike Ralphson
2007-11-07 15:37             ` Johannes Schindelin
2007-11-06 21:09   ` Ralf Wildenhues [this message]
2007-11-07 15:58   ` Nguyen Thai Ngoc Duy
2007-11-07 16:05     ` Nguyen Thai Ngoc Duy
2007-11-07 20:42       ` Junio C Hamano
2007-11-08  6:14         ` Ralf Wildenhues
2007-11-12 11:20         ` Nguyen Thai Ngoc Duy
2007-11-10 22:30   ` Miles Bader

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20071106210925.GJ6361@ins.uni-bonn.de \
    --to=ralf.wildenhues@gmx.de \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).