Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:116415 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 9564 invoked from network); 16 Nov 2021 14:31:49 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 16 Nov 2021 14:31:49 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 029BA180384 for ; Tue, 16 Nov 2021 07:26:48 -0800 (PST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,HTML_MESSAGE, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS15169 209.85.128.0/17 X-Spam-Virus: No X-Envelope-From: Received: from mail-io1-f54.google.com (mail-io1-f54.google.com [209.85.166.54]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Tue, 16 Nov 2021 07:26:47 -0800 (PST) Received: by mail-io1-f54.google.com with SMTP id k22so26418146iol.13 for ; Tue, 16 Nov 2021 07:26:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=lTpW8V5Qitt92yXuhB5aMYqSv9BTOTjNhILXqviDXiY=; b=cROc9oy+wecsXBLUJ13XLchU+2+8U9HysKQGnYclVX8qnHKDCX85n72H2bI4ZOsaIS 6Hi50KSzlKzOGQm5uKjEHblE0OTwpQ+FYE1h8vUKu+r7tv6FFKdwZC/WjJsH7KCodknl UmQXQt8UlsuXGxK49BRGOH0EGk7LlceX9iB5LOk779hwZzej+y/uZAG1yus/w/0Hp2rR KuxyE7DRXEqRJeAdVUoaIOFsczPIhnZgRFAAN6cdc8Et7XNGdGs75RST90vjDB6W6gOp Dk+aKc7/RHtHOYaj7ZCMIbHymMVFmZ2Q44/mgNsPoWOD+qycZmKOLXp/sEKAiYneN5Ff x4/g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=lTpW8V5Qitt92yXuhB5aMYqSv9BTOTjNhILXqviDXiY=; b=6ysI+knzxZimYKDzPGR67vpYVYswkNjIf5dOBSkzeC0vx7ZCPTtAphCAs1p/NQsU9O zkCAMEiL0QfquXA0yegaxqe957pTNr9CLkOZn9aFK5p8Dk4nu+xCS31VQkQzFh9IQ6l/ BB3Q7wOeHVyv8V8d65vETVuwZ+S94pHjouvlgNAmRSue7xipxo6Yvd7iy4qjgCiKSpE5 +9uUWEGRihkdbK+OsRtvJfW7/BJ0AahBKzhAg6KMTx1rGBKXn6XzxBVXQenoW9yIyJ07 nMZkZ6xyM+hyg/cPLYv3NyOhkcZFfa0+DcsgRLqPgeQQ9WsNgHfl9l2LHoN/TG2ZGcni nr8g== X-Gm-Message-State: AOAM532GT3mcW4pO501hKhlpgcIAEPtiz0k1Wko3rO1CUR4tXz/EV8V2 8dRIz+t26enaiARr2dijhmnOQTpSD3XLB3IKWepfOUO7Li8= X-Google-Smtp-Source: ABdhPJztmQQM6D7ZMwZGKdiIDlU0Fik53p01kO+x/7ety4dYJDBc5hpPng2JoIS906dfrDUqjqgFjlnoCP+mm1x7oOo= X-Received: by 2002:a6b:4e07:: with SMTP id c7mr5355094iob.23.1637076406901; Tue, 16 Nov 2021 07:26:46 -0800 (PST) MIME-Version: 1.0 References: <371ca983-2b07-ae39-3629-49cf7ff8ee64@heigl.org> <497ab532-a39d-389c-8bca-86768650c2f4@heigl.org> In-Reply-To: Date: Tue, 16 Nov 2021 16:26:11 +0100 Message-ID: To: James Gilliland Cc: Rowan Tommins , PHP internals Content-Type: multipart/alternative; boundary="000000000000b4219705d0e98d51" Subject: Re: [PHP-DEV] Re: [RFC] Deprecate dynamic properties From: deleugyn@gmail.com (Deleu) --000000000000b4219705d0e98d51 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, Nov 16, 2021 at 3:59 PM James Gilliland wrote= : > On Tue, Nov 16, 2021 at 4:23 AM Rowan Tommins > wrote: > > > On 16/11/2021 09:27, Andreas Heigl wrote: > > > > > >> I see, yes, code that is 100% perfectly tested can get away without > > >> the language performing any error checking at all - the behaviour is > > >> all guaranteed by the tests. I would be very surprised if even 1% of > > >> PHP applications can claim such comprehensive tests. > > > > > > The topic here was that new code can verify the declaration of a > > > property by using tests. That does not need to happen on the language > > > level. I was never talking about adding tests for existing code. > > > > > > > > For most code bases, even new ones being written from scratch in PHP > > 8.0, that level of testing simply doesn't exist, and having the languag= e > > tell you "hey, you wrote $this->loger instead of $this->logger" is a > > useful feature. And, in a lot of cases, more useful than having the > > language say "OK, I've created your dynamic $loger property for you", > > which is what currently happens. > > > > What you described there sounds like a warning and not a fatal error. May= be > that's where some of the trepidation is coming from. I know I'm less > worried about the deprecation notice and more worried about what happens = in > PHP 9 when it's a fatal error. > I can't say that this line of reasoning has its merits, but then there's no benefit to the engine itself. Issuing a warning and carry on materializing dynamic properties will never bring the original performance improvement that was part of the original state of the RFC. --=20 Marco Aur=C3=A9lio Deleu --000000000000b4219705d0e98d51--