Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:85546 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 39720 invoked from network); 30 Mar 2015 10:19:23 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 30 Mar 2015 10:19:23 -0000 Authentication-Results: pb1.pair.com header.from=nikita.ppv@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=nikita.ppv@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.212.179 as permitted sender) X-PHP-List-Original-Sender: nikita.ppv@gmail.com X-Host-Fingerprint: 209.85.212.179 mail-wi0-f179.google.com Received: from [209.85.212.179] ([209.85.212.179:35361] helo=mail-wi0-f179.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 00/31-31096-82329155 for ; Mon, 30 Mar 2015 05:19:20 -0500 Received: by wicne17 with SMTP id ne17so24974448wic.0 for ; Mon, 30 Mar 2015 03:19:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=uksDyE4qylEPzD0i9SwvSYBCWEVPT1wc0rMMM1qnKGo=; b=HBesAexNnht9/M5zFkTMylMIDjKetqsAVdYh1WBCCvZT2YDbCJZSRdePaZNF+JQJ/+ RDVmwvRNwPFNNn7HIwivP3l0I9+Z83d6t3YCRhDQhuOJOd9D2TC8AsRfHCeAhyo+8wC2 EHNIBp0CbZA3OqpuSFytLboGWhrJKtYi8hJosOYNe9v2KvLvxnM1x9eIkVo8wo+glt2u hmQZUx/24lX+c6BGjvjzFZHsvjebxhCGTwUx1QDCEw/vcNp/EX+e7yoyQLW4qUjxjxj1 wvanyCjX0Zre1tCqOzcwDnvWIUn2mW4d0paDsTJ/Icq5dqRO8secOs3AhAQgOP9lfBPD ZahA== MIME-Version: 1.0 X-Received: by 10.180.10.234 with SMTP id l10mr5429345wib.27.1427710757386; Mon, 30 Mar 2015 03:19:17 -0700 (PDT) Received: by 10.27.85.216 with HTTP; Mon, 30 Mar 2015 03:19:17 -0700 (PDT) Date: Mon, 30 Mar 2015 12:19:17 +0200 Message-ID: To: PHP internals Content-Type: multipart/alternative; boundary=001a11c2b34889407605127ed069 Subject: Exception hierarchy: open issues From: nikita.ppv@gmail.com (Nikita Popov) --001a11c2b34889407605127ed069 Content-Type: text/plain; charset=UTF-8 Hi internals! There are a number of open issues with regard to the exception hierarchy for recently introduced exception, for which I would like to open a new thread: * Naming and classiness of BaseException. There's an RFC to change this to a Throwable interface: https://wiki.php.net/rfc/throwable - If we want to move forward with that, it needs a patch, as turning it into an interface likely has non-trivial consequences that need to be addressed in the RFC. * Expectations introduced an AssertionException. Currently it extends Exception. Should it extend BaseException instead, as you usually should not catch assertion exceptions? This was discussed in the RFC thread, but the decision was postponed until engine exceptions land, which has happened by now. * The scalar type hints implementation added a TypeException extends EngineException. We didn't discuss this on-list, so I'd like to bring this up in case anyone disagrees. Imho TypeException may not be best name for it, as it's also thrown for non-type related error conditions, like mismatched argument count. Thanks, Nikita --001a11c2b34889407605127ed069--