Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:127892 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by lists.php.net (Postfix) with ESMTPS id 04ADB1A00C2 for ; Fri, 4 Jul 2025 22:49:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1751669271; bh=7rg/wUvCICRiGmFDpNOqBPjmopEtYzZbZT5a/fEk/yc=; h=References:In-Reply-To:From:Date:Subject:To:From; b=XNBClPWZcqT2guDkN3gecKQbbyD/pI65n01yCSCcMc31Hnr+Dfaja9aTQg/ck7Bii lnxouno1fam4FXWOCrcAs7MngZSpea4bl1R07XjWQ1TThDHGyjNKc4nrmHOvZTpXag dgpri7Rnm6o/xZRMxdbiwuBo1cy1e/lAWJ71x92WM2IynVYK8/igYAyrgxnwZbNOcc rzxd1aBn62iiTS9e5cOvJrkbGA0LTEe+A1tIWojyuIeidJYYtDOt1Kf0AZLP82GJ+S KhU626oQ1BAkk4EV3rJWneDe7IRX2E1j12PtSzeIRLZuqrjw9WaKslr7FsgtBuKlqS W1uVB2GHgtzIw== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 58A54180616 for ; Fri, 4 Jul 2025 22:47:50 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-1.2 required=5.0 tests=BAYES_20,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,FREEMAIL_FROM, HTML_MESSAGE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE, SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Virus: Error (Cannot connect to unix socket '/var/run/clamav/clamd.ctl': connect: Connection refused) X-Envelope-From: Received: from mail-yw1-f170.google.com (mail-yw1-f170.google.com [209.85.128.170]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Fri, 4 Jul 2025 22:47:47 +0000 (UTC) Received: by mail-yw1-f170.google.com with SMTP id 00721157ae682-7111d02c777so10564907b3.3 for ; Fri, 04 Jul 2025 15:49:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1751669379; x=1752274179; darn=lists.php.net; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=7rg/wUvCICRiGmFDpNOqBPjmopEtYzZbZT5a/fEk/yc=; b=PLkadHF1rBOsaKXwU+JqG5ghjdmMOZ1kJp3Ig+5sOPxxN1txWvYlY/d8C9gxCAybzs WlcJPtPjD0mPihQ7MCRzSdUzUzd2b6QjGtLfJNHN6+iHvcv8hNdrylWCsJlDdHVnT8eS CwnzCrWN/X4IXvtTdpuHB1RJUEzWNDV9pyhrTF+yDYrozI6VOW67wf+NMJk8SVr+RmWx T+g1Jprtl4c3/hC9r2hUJAEszMzq0HC8rpeAtWKjUkmP0djrPgY4m4+xXzK8+5laqVo4 tkVi+xEn4weBNKVoVn5ybNc3khHDnhN3jKo6ZoPG3LMTuthtTE10qxmZbBNFz34e8TZY zU6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751669379; x=1752274179; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=7rg/wUvCICRiGmFDpNOqBPjmopEtYzZbZT5a/fEk/yc=; b=Ry3QXyFWkwNL9LlvzFQ51iIOeBML5i7moPVod3IJlIFs5rYz6UCclUSZMbkp9aEidS /8/4Be+vs+3S267ihTRK2snrTXPMdzNtiCWkBgW7AHGEN8zSLV2Spdj4KJRBwDNDdkXX jHRyQ6zQ2Q+Xv8WyMUY3OuN9/kuc7oR9JUJVXuT6oCP9uFA3M9M5WcraIiKk56Zqk3DZ P4SmmQnI+utM5upMvMCIzmStfvSn2KrCn8vPai4SfVbst3kkiPciS9TU0NJSVZ/5kqRM goS2V2KnHMkvU3slQ9UE1Z+v6CP7UVWVXRcSnceST/PAMoLESzvvelhVQUmbdfBIZlnH Kh5w== X-Gm-Message-State: AOJu0YyOIKA5jmo0RpILgRWZ+TZAyEKmjYZptAuIw1p80E2taT7RKgv/ f7lZ2Lj4HcQVicGP61DLV2iQX2EVcx3Y+5NpCNNybNF1vWKR+bLD+VbX8x1Ai96NSlw/FuK+4ey /tpWM5AJ0XN0t98y0zkCqL/Ouj2Ydy0KshQ== X-Gm-Gg: ASbGncvewxIDFAvJdHRh4DxgpVjT0ZQ9Tqv6eAf0NxXLKKRfAyX70ZKizTwgZe2UE0p 0jme8Ox2Nxli4S6AREcCAbtgCd0EdMLxcvsfJm9235CrqMh8iiYtNUesCDAoldRZt3b910KZ2G1 JoP2sYnVlaHoqEbo/m3vew9M+KTtBdX6bR7LhiYTVSZuP1GGCfkiPL3kE3QMvwDJhMHAA/q61Ax W8Ovm2B55e/KA== X-Google-Smtp-Source: AGHT+IHegIyIUdXswBzBis6ulGR+jmytT2iMlgHckYALrzEKboV+DwolWeRQzHPHm+WNPTmCM431N0+eN+iIWv7eB1g= X-Received: by 2002:a05:690c:ece:b0:714:52d:af65 with SMTP id 00721157ae682-7166b670ab0mr49661487b3.18.1751669378832; Fri, 04 Jul 2025 15:49:38 -0700 (PDT) Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow MIME-Version: 1.0 References: In-Reply-To: Date: Fri, 4 Jul 2025 15:49:07 -0700 X-Gm-Features: Ac12FXyHCtpw3vKWBNKYVTCr8HSgwnUHm0l3s0I8IHAM5iXIt1-QzZyTXJUSrJc Message-ID: Subject: [PHP-DEV] Re: [RFC] [Discussion] #[\DelayedTargetValidation] attribute To: php internals Content-Type: multipart/alternative; boundary="00000000000016decd0639224f8c" From: daniel.e.scherzer@gmail.com (Daniel Scherzer) --00000000000016decd0639224f8c Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, Jun 17, 2025 at 4:26=E2=80=AFPM Daniel Scherzer wrote: > Hi internals, > > I'd like to start the discussion for a new RFC about adding a > `#[\DelayedTargetValidation]` attribute. > > * RFC: https://wiki.php.net/rfc/delayedtargetvalidation_attribute > * Implementation: https://github.com/php/php-src/pull/18817 > > --Daniel > This discussion has been ongoing for more than 2 weeks, and from what I can see there have only been 2 concerns/suggestions raised: * Going in the opposite direction and validating userland attributes at compile time too - this is counter to the design of attributes, which are meant to be easy to apply and can even be used when the specified attribute does not exist, with errors only raised when attributes are parsed. * Avoid the need for the `#[\DelayedTargetValidation]` attribute by changing the default behavior - I (and others) have responded about why this would be problematic, and I have updated the RFC to include changing the default behavior as a rejected feature with an explanation of the issues. If there is no further feedback, I intend to start a vote in a few days. -Daniel --00000000000016decd0639224f8c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Tue, Jun 17, 2025 at 4:26=E2=80=AFPM D= aniel Scherzer <daniel.e.= scherzer@gmail.com> wrote:
Hi internals,

I'd like to start the discussion = for a new RFC about adding a `#[\DelayedTargetValidation]` attribute.
=


--Daniel
=


This discussion has b= een ongoing for more than 2 weeks, and from what I can see there have only = been 2 concerns/suggestions raised:

* Going in the= opposite direction and validating userland attributes at compile time too = - this is counter to the design of attributes, which are meant to be easy t= o apply and can even be used when the specified attribute does not exist, w= ith errors only raised when attributes are parsed.
* Avoid the ne= ed for the `#[\DelayedTargetValidation]` attribute by changing the default = behavior - I (and others) have responded about why this would be problemati= c, and I have updated the RFC to include changing the default behavior as a= rejected feature with an explanation of the issues.

If there is no further feedback, I intend to start a vote in a few days.=

-Daniel
--00000000000016decd0639224f8c--