On Fri, Jan 26, 2018 at 7:50 PM, Mike Frysinger <[email protected]> wrote:
> On 26 Jan 2018 15:15, Denys Vlasenko wrote:
>> On Fri, Jan 26, 2018 at 9:34 AM, Paul Otto <[email protected]> wrote:
>> > This patch restores, and improves upon, expected behavior to BASH
>> > compatibility which was lost beginning with 1.27.0. This was pulled into
>> > Alpine 3.7 which, in turn was pulled into official Docker images beginning
>> > with docker:17.12. As a result, a large number of CICD builds that use
>> > "source filename" have broken everywhere.
>> >
>> > According to the BASH documentation, the source command should:
>> > Read and execute commands from filename  in  the  current  shell 
>> > environment
>> > and return the exit status of the last command executed from filename.  If
>> > filename does not contain a slash, filenames  in  PATH  are used to find 
>> > the
>> > directory containing filename.  The file searched for in PATH  need  not  
>> > be
>> > executable. When  bash  is  not  in  posix  mode,  the  current directory 
>> > is
>> > searched if no file is found in PATH.
>>
>> I wish bash wouldn't introduce gratuitous standard violations.
>
> bash is its own shell.  why can't it introduce its own extensions as it sees
> fit ?

Because a divergence is not a good thing, especially if it's gratuitous
(i.e. if a particular bashism is not adding any useful functionaluty).

Making bash "source" behavior non-standard had nothing useful in it.
_______________________________________________
busybox mailing list
[email protected]
http://lists.busybox.net/mailman/listinfo/busybox

Reply via email to