James Carlson wrote:
[sorry, this one was stuck&&forgotten in my Drafts/-folder]
> Garrett D'Amore writes:
> > Have the upstream providers given thought to dealing with changes like
> > this and their impact on already-deployed scripts?  (Maybe there aren't
> > any that we care about yet, since our ksh93 is still so new.)
> 
> We've already had such problems.  See CR 6667990 for one such
> accident; you can't call your local function "start" and upgrade
> safely from Sun's old ksh88 to ksh93.

1. AFAIK the "quagga" builtin has problem with the ksh(88|93) shell
_alias_ called "stop"
2. The issue is caused by the switch from Bourne shell to ksh, not by
ksh93 itself. ksh88 already had the "stop" alias:
-- snip --
$ /usr/bin/ksh -c 'alias' | fgrep "stop"
stop='kill -STOP'
-- snip --
... and other shells have the same problem. And the trouble is that
"stop" is an shell "alias" which pretty much overrides anything else (as
a future countermeasure we'll get "shlint" at some point (once "shcomp"
is in the tree) to check for such common dragon-filled pits in the
future (in the meantime you can run your script against $ shcomp -n
<scriptname> /dev/null # ...)).

> > I'm concerned, going forward, as ksh93 syntax becomes more prevalent,
> > that bringing in changes like the above may have unintended consequences
> > in scripts or even ON delivered components, which we cannot easily find
> > or test.
> 
> This probably isn't a good place to design a solution, but I share the
> sense of unease.  It puts script writers on shaky ground if they can't
> either specify a known environment or predict what's "safe."

Umpf... IMO "safe" is what's described in the POSIX shell standard and
http://www.opensolaris.org/os/project/shell/shellstyle/ (that's why I
wrote that document...).

----

Bye,
Roland

P.S.: Setting Reply-To: to ksh93-integration-discuss at opensolaris.org to
get this off he ARC list...

-- 
  __ .  . __
 (o.\ \/ /.o) roland.mainz at nrubsig.org
  \__\/\/__/  MPEG specialist, C&&JAVA&&Sun&&Unix programmer
  /O /==\ O\  TEL +49 641 7950090
 (;O/ \/ \O;)

Reply via email to