Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:86275 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 92009 invoked from network); 16 May 2015 21:56:43 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 16 May 2015 21:56:43 -0000 Authentication-Results: pb1.pair.com smtp.mail=nikita.ppv@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=nikita.ppv@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.212.178 as permitted sender) X-PHP-List-Original-Sender: nikita.ppv@gmail.com X-Host-Fingerprint: 209.85.212.178 mail-wi0-f178.google.com Received: from [209.85.212.178] ([209.85.212.178:33626] helo=mail-wi0-f178.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 03/01-14891-A1DB7555 for ; Sat, 16 May 2015 17:56:42 -0400 Received: by wicmx19 with SMTP id mx19so62839996wic.0 for ; Sat, 16 May 2015 14:56:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=taIBRIGurulAjVEO3ZchrfJ6BIS0IuZkUie9RP/0Jrs=; b=niJzuOlvu+AlVOkppnBT12odo+AHmz/o5sQmEvSiAWGaI34c1TQ0ZN8U2VUZByKqar b+tWrqpb463Qb28Qfl1njZokzWsDdJ8qtP29DeCmnklDsP9zDGIj3880jGWd+WxMpZzV gp5zacht1FXA5qrkOAo5Ut8aq6rUALaPyNrog0Nr6hlGzYSMfNsDgJN6W6HrdCHtNPVK ZiPy1gRtRX16de+i/ixIs/7YzNscZlG4yjGeXgbLy0ik0SRdmrZgCymcOdBWz2B0yCk6 FPR9R+aR3H5z2GA/TKEWF7soSsLp290PfO1SsQJOJwmUX++54+LphVvTTPhaWdPz4BWF 5JrA== MIME-Version: 1.0 X-Received: by 10.194.97.196 with SMTP id ec4mr30909867wjb.3.1431813399905; Sat, 16 May 2015 14:56:39 -0700 (PDT) Received: by 10.27.86.133 with HTTP; Sat, 16 May 2015 14:56:39 -0700 (PDT) In-Reply-To: <5557AF50.3060203@gmail.com> References: <5557AF50.3060203@gmail.com> Date: Sat, 16 May 2015 23:56:39 +0200 Message-ID: To: Stanislav Malyshev Cc: PHP Internals , Sebastian Bergmann Content-Type: multipart/alternative; boundary=047d7bf0ef18160b2705163a09c6 Subject: Re: [PHP-DEV] Throwable patch(es) and finalizing the story From: nikita.ppv@gmail.com (Nikita Popov) --047d7bf0ef18160b2705163a09c6 Content-Type: text/plain; charset=UTF-8 On Sat, May 16, 2015 at 10:57 PM, Stanislav Malyshev wrote: > Hi! > > I am assuming we have broad consensus about the move from BaseException > to Throwable. I've looked at the patch at > https://github.com/php/php-src/pull/1282 and it seems pretty close to > what we want to me. The only difference is that > https://wiki.php.net/rfc/throwable says Throwable is an interface and > this patch makes it abstract class - which I guess makes some sense as > both Exception and engine errors need the same properties - but I'm not > sure if it doesn't mess something up. Sebastian, could you comment on > this? Of course, other comments are welcome too. > > There's a question left about the naming - particularly, renaming > EngineException to Error. I'm not sure I am a fan of this. I think it's > better to leave it as EngineException, but I'm open to arguments here. > > One thing seems to be clear though - a) there's a broad support for > introducing Throwable and b) we need to do this before we release PHP 7 > alpha. So I think we need to start converging on something really soon. > I'd like to take https://github.com/php/php-src/pull/1282 as a baseline, > and once we close open questions about interface/abstract class and the > name of the Error class, merge it - targeting sometime within the > timeframe of the next week. If someone thinks it's impossible or should > not be done, please tell. > Sorry for going a bit off-topic here, but why does this need to be resolved for the first alpha? If I'm not mistaken, we do feature freeze on first beta, not first alpha, right? I'd like to see an alpha release ASAP without waiting for the last few features to trickle in. Btw, the author of PR #1282 also has an implementation that makes Throwable an interface (with semantics similar to Traversable, so cannot be directly implemented). Nikita --047d7bf0ef18160b2705163a09c6--