From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 15489 invoked from network); 13 Apr 2021 20:28:57 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 13 Apr 2021 20:28:57 -0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20200801; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:Message-ID:Date:Content-ID: Content-Type:MIME-Version:Subject:To:References:From:In-reply-to:Reply-To:Cc: Content-Transfer-Encoding:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=2DpYsGv4nRyfPRJN2osxDwLkdYEkXz+f1HEC7OjoYfI=; b=uEbV9FTK7WHKLuD9WRdCTJb+yY RTZaI6pRLzmnWeCXO1ypleLgHAgJoDiOI/A2p0vqcvSu7psXxjIUjOZOkdRJtAI2zUEC+7bljLkzf abiN2NpfbGOFvCFu29toQE3Hb2hRQChGHnyvdk2nvqKaWGyq8te50td198LSk6i8ZRtBC43jcred2 ZFa8whjCDr2mBiSFWAYWameuF8Gk/iKep7YwiIqjoQfFp73sxRCp2cVmtmT1tKZPP9fmOEf3EJ+x+ vIJ9CKeHZUE8jKj+VU7RidH5ajJqLteSYcENN2ecZqMjVvksOlJ1aFJ5sB7UI2VAayflDaCjnBQ6U pfv4CeNg==; Received: from authenticated user by zero.zsh.org with local id 1lWPea-000GzW-Kr; Tue, 13 Apr 2021 20:28:56 +0000 Received: from authenticated user by zero.zsh.org with esmtpsa (TLS1.3:TLS_AES_256_GCM_SHA384:256) id 1lWPeO-000GlX-KI; Tue, 13 Apr 2021 20:28:44 +0000 Received: from [192.168.178.21] (helo=hydra) by mail.kiddle.eu with esmtp(Exim 4.93.0.4) (envelope-from ) id 1lWPeL-000Ici-Ui for zsh-workers@zsh.org; Tue, 13 Apr 2021 22:28:43 +0200 In-reply-to: <20210413160149.GT6819@tarpaulin.shahaf.local2> From: Oliver Kiddle References: <7FD930F4-37CD-402B-9A06-893818856199@dana.is> <20210413160149.GT6819@tarpaulin.shahaf.local2> To: Zsh hackers list Subject: Re: [PATCH] Document imperfections in POSIX/sh compatibility MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <71580.1618345721.1@hydra> Date: Tue, 13 Apr 2021 22:28:41 +0200 Message-ID: <71591-1618345721.890846@bhQS.j43I.WlFg> X-Seq: 48543 Archived-At: X-Loop: zsh-workers@zsh.org Errors-To: zsh-workers-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-workers-request@zsh.org X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: Daniel Shahaf wrote: > dana wrote on Sat, Apr 10, 2021 at 18:31:31 -0500: > > +Please note that zsh's emulation of other shells, as well as the degree > > +of its POSIX compliance, is provided on a `best effort' basis. Full > > +compatibility is not guaranteed, and is not necessarily a goal of the > > +project. > > I'm concerned that saying "is not necessarily a goal of the project" > might discourage people from even reporting bugs in the first place. Or of contributing fixes. In the past we've been open to POSIX related fixes. The entire project is done on a `best effort' basis with no guarantees. > No objection to setting expectations, of course, but could we phrase it > differently? E.g., by documenting a list of known incompatibilities > that won't be fixed? It might be sensible to have a file separate from Etc/BUGS for listing issues related to POSIX compliance. I don't imagine there is anything that "won't be fixed" in the sense that it has been outright rejected as opposed to nobody has come forward with an implementation. Mostly when I've come across people complaining about zsh's lack of compliance, they either aren't using emulation at all or are expecting bash scripts to work unchanged. And they're too lazy to understand the issues. It doesn't help when even something like the Intel C compiler comes with idiotic advice to use bash -c 'source ...;exec zsh' despite the necessary fix being no more than a one-line tweak. In the repository is the file Etc/STD-TODO that documents some incompatibilities, mainly against ksh93. In that context, "standard" is not used to mean a formal standard such as POSIX but rather features common to several shells. That file is excluded from a release distribution. Oliver