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

Re: [PATCH] Avoid using non-portable `echo -n` in tests.

From
Pierre Habouzit <madcoder@debian.org>
Date
Oct 31, 2008, 18:36 UTC
Message-ID
<20081031183601.GB8464@artemis.corp>
In-Reply-To
<20081031182456.GC3230@sigill.intra.peff.net>
On Fri, Oct 31, 2008 at 06:24:56PM +0000, Jeff King wrote:
Show 11 quoted lines
> On Fri, Oct 31, 2008 at 01:09:13AM -0400, Brian Gernhardt wrote:
> 
> > Not all /bin/sh have a builtin echo that recognizes -n.  Using printf
> > is far more portable.
> > 
> > Discovered on OS X 10.5.5 in t4030-diff-textconv.sh and changed in all
> > the test scripts.
> 
> Hmph. I think this is a good patch, and there is precedent in the past
> (20fa04ea, 2aad957, 9754563). But I am surprised this was not caught by
> our recent autobuilding project.

Set up a Debian autobuilder with dash as a /bin/sh (apt-get install dash, dpkg-reconfigure -plow dash and say 'yes'). You'll see those kind of problems arise immediately.

Dash is a POSIX compatible shell, with almost no extension added (in particular its echo has no -n option) which helps to find those kind of issues.

It would help detecting git shell scripts that use bashism as well.
-- 
·O·  Pierre Habouzit
··O                                                madcoder@debian.org
OOO                                                http://www.madism.org
Previous: Jeff KingNext: Jeff King
Message 11 of 15 in “t4030: Don't use echo -n”
  1. t4030: Don't use echo -nBrian Gernhardt, Oct 30, 2008
  2. Ian HiltOct 30, 2008
  3. Brian GernhardtOct 31, 2008
  4. Avoid using non-portable `echo -n` in tests.Brian Gernhardt, Oct 31, 2008
  5. Junio C HamanoOct 31, 2008
  6. Brian GernhardtOct 31, 2008
  7. Junio C HamanoOct 31, 2008
  8. Steve FollyOct 31, 2008
  9. Shawn O. PearceOct 31, 2008
  10. Jeff KingOct 31, 2008
  11. Pierre HabouzitOct 31, 2008
  12. Jeff KingOct 31, 2008
  13. Francis GaliegueOct 31, 2008
  14. Johannes SchindelinOct 31, 2008
  15. Mike RalphsonNov 3, 2008

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.