Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:99512 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 15461 invoked from network); 13 Jun 2017 19:15:37 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 13 Jun 2017 19:15:37 -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.214.53 as permitted sender) X-PHP-List-Original-Sender: nikita.ppv@gmail.com X-Host-Fingerprint: 209.85.214.53 mail-it0-f53.google.com Received: from [209.85.214.53] ([209.85.214.53:33856] helo=mail-it0-f53.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 87/E9-00089-8D930495 for ; Tue, 13 Jun 2017 15:15:37 -0400 Received: by mail-it0-f53.google.com with SMTP id m47so3475712iti.1 for ; Tue, 13 Jun 2017 12:15:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=Ydq17u1j7bJ6uEDFhucCfSHscLFj2LSzGqg53FYn3qk=; b=UF3A8UFWpsrSzTZQOdC6rzt+Y9UuIzqdTKt2Kj73Pb7hpdLIRYhVtb+jkGSODxf7ij EwArLUWl6Q6oQfKmYPYC7PlgN+vLpW/qANIzep3gF8Q9iD5KMC1LR1iUS0sqN3JdBOOO 8VR1wrVsn4ZQrd+Y/OFuuiC8kR42zUkJrXaPwoPjzVAg46TvJOjlCyWiBf1RiCFVEOeM d+j9VmS64Lf9qB8s/+vY9QmeVdJtFNr5txpbgk+rh6Kv+eD5H+PvZpD5zR+20v5njvA0 eWgNAF/wt+v3cgwVWdZUW4KcAYLj3gxaqjzkTtN1Sgp8CZG53rUabPNDl4+mkl5foJ7O rJrA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=Ydq17u1j7bJ6uEDFhucCfSHscLFj2LSzGqg53FYn3qk=; b=Thf++iQ9Hes8pDslenMcHA+IOEbfaG9WD5h/u/A30/IDycSCQtQ0BspHXqRdwCBYdV YQyKAGy+xGqrXqlwWLn68B/fXu3uPUMnXojG28jOeFFmSSYhhCXLq12mSlB0s1pGt3p1 j1TccxnCtV7GczIy+LYv7Mmn239eH8V/+bb0sOXZtsDeEMaZoF26hv+L1E6nmp0Q127j +mpYjTEgKKruglz0wEIDgEla6Cd0MPrvyr/8kqUvnLkYlVuecD1AFFfx/OSZLsb9P458 vJgRRYCMW8CDupus5J4YmSNW1qepZimpTq13chPSTOSSyHxT4am3gvXe+OrJpG/bTP5n aCQA== X-Gm-Message-State: AKS2vOxSKvWCdTxF3Z5gnszvhaf3dlFFiAMpVW/EvbK2C0yN6JLqdtrE 3zWRcVI13ctHXysZ32EIJscw2jrRlbYI X-Received: by 10.36.101.135 with SMTP id u129mr1886501itb.21.1497381333883; Tue, 13 Jun 2017 12:15:33 -0700 (PDT) MIME-Version: 1.0 Received: by 10.107.50.78 with HTTP; Tue, 13 Jun 2017 12:15:33 -0700 (PDT) In-Reply-To: References: Date: Tue, 13 Jun 2017 21:15:33 +0200 Message-ID: To: =?UTF-8?Q?Pedro_Magalh=C3=A3es?= Cc: PHP internals Content-Type: multipart/alternative; boundary="001a114608228004b40551dc4248" Subject: Re: [PHP-DEV] [RFC] [VOTE] Restarted vote on the negative arrays From: nikita.ppv@gmail.com (Nikita Popov) --001a114608228004b40551dc4248 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, Jun 13, 2017 at 8:44 PM, Pedro Magalh=C3=A3es wro= te: > Hi internals, > > Based on the feedback on the original RFC targeting 7.2, I have now updat= ed > the RFC to target version 8.0. Additionally, I changed the existing PR to > throw a E_DEPRECATED notice on the cases where this RFC will cause a BC > break when the change is implemented to ease the detection of such cases. > > I have closed the current vote (YES 14 - 16 NO) and opened a new one for > the revised RFC targeting the next major version. > > You can vote (again) at https://wiki.php.net/rfc/negative_array_index > until 28/6/2017 19:00 UTC. > > Regards, > Pedro > As this is a significant change to the RFC, I'd recommend moving it back to discussion first. Without some further evaluation, I am not sure whether throwing a deprecation from a low level hash API function like this is safe. The deprecation may be converted into an exception and it's not immediately clear that calling code will handle this correctly. In any case, even assuming this is safe, what is the expected behavior if the deprecation notice is converted into an exception? As the implementation stands right now, the element will still be inserted into the array. Is this intentional= ? ("We don't care" is also a valid answer -- it's an edge case.) It would also be nice to quickly check what the performance impact of this change is (a micro-benchmark on array appends should be enough). The patch adds a number of additional checks in a very hot code-path, which may or may not have a measurable impact. Regards, Nikita --001a114608228004b40551dc4248--