On 03/18/10 08:58 AM, Alan Coopersmith wrote: > Garrett D'Amore - sun microsystems wrote: > >> Compatibility between ksh93 built in utility implementation and GNU >> coreutils implementation: >> Should a future ARC case will add new features to the GNU coreutils >> utilities the project team will update the corresponding ksh93 built >> in utility. Should this not be possible the ksh93 project team will >> remove the mapping. >> > So this constrains all future GNU coreutils update cases to coordinate > with the ksh93 builtins, right? Have those responsible for the GNU > coreutils agreed to this constraint? Should this be expressed as an > ARC contract for cross-consolidation agreement of Volatile interfaces? > >
The ksh93 versions adhere to the public interfaces from the GNU versions. If they change the semantics, then it will require some extra work, but I'm not sure that a contract properly captures this. That said, this case explicitly states that it will revert any builtin if the GNU version evolves incompatibly (or even offers a new feature that the ksh93 doesn't) in the future. Personally, I despise the fact that we have to have GNU at the front of the user path. My $PATH doesn't list /usr/gnu at all. I'd far rather break this dependency upon GNU, and supply our own versions based on the ksh93 code base (which seems to be actively maintained), and just scrap /usr/gnu. But that's just my opinion, and not this case in any event. - Garrett