Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:114843 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 48997 invoked from network); 13 Jun 2021 18:30:32 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 13 Jun 2021 18:30:32 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 6EF6A1804C0 for ; Sun, 13 Jun 2021 11:46:35 -0700 (PDT) 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.6 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL, SPF_HELO_PASS,SPF_NONE autolearn=no autolearn_force=no version=3.4.2 X-Spam-Virus: No X-Envelope-From: Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) (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 ; Sun, 13 Jun 2021 11:46:34 -0700 (PDT) Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id A04465C0170 for ; Sun, 13 Jun 2021 14:46:33 -0400 (EDT) Received: from imap8 ([10.202.2.58]) by compute3.internal (MEProxy); Sun, 13 Jun 2021 14:46:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; bh=vNWR+4 PbLImMugqKMlHWfNYLu79VMpdX8vax79iGjnI=; b=pfuY5aMm6OUgSkzqLjxDn+ l5v1Yg7kYj1wBIoWh+UpqmEY3FjjdhvrXG2dahOrNvVdV5YMat1pAHcxS2Pdlakv tK7+uwUT/ppEVjpu2ByDxJFHb7r8fHyWrCuXkla9W9izQ7+2kjqI0YjBwc+aKKHc xwQ55vbohGp+dJ2Ujz3YTnWm5XQ3D4HyzFl5etgjNDvgHWj6ajdnW1LhhLQTQcCk IgiNSvjoOZ7tyCy+To1dYMRaJ/DaJSU7oF+izUtF9Ed1oLh5JgTTZzxEo4HCLl/D MAfi5AxsOMEqW4b1VOyzM6npIGhogtTzQcR64ghNmoToRf/Dv6S//3levIdGvF2g == X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrfedvfedgudefvdcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefofgggkfgjfhffhffvufgtsehttdertderredtnecuhfhrohhmpedfnfgr rhhrhicuifgrrhhfihgvlhgufdcuoehlrghrrhihsehgrghrfhhivghlughtvggthhdrtg homheqnecuggftrfgrthhtvghrnhepveehhedvveejledvvefgleevffdtjeekledvkeeg heffgfeivdejhffhledtudetnecuffhomhgrihhnpehphhhprdhnvghtnecuvehluhhsth gvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomheplhgrrhhrhiesghgrrhhf ihgvlhguthgvtghhrdgtohhm X-ME-Proxy: Received: by mailuser.nyi.internal (Postfix, from userid 501) id 5D9EE3A08BA; Sun, 13 Jun 2021 14:46:33 -0400 (EDT) X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.5.0-alpha0-519-g27a961944e-fm-20210531.001-g27a96194 Mime-Version: 1.0 Message-ID: <08d06870-43f1-46bd-955e-4daef1910e11@www.fastmail.com> In-Reply-To: References: Date: Sun, 13 Jun 2021 13:46:12 -0500 To: "php internals" Content-Type: text/plain Subject: Re: [PHP-DEV] [RFC] make Reflection*#setAccessible() no-op From: larry@garfieldtech.com ("Larry Garfield") On Sun, Jun 13, 2021, at 11:44 AM, Marco Pivetta wrote: > Hey folks, > > I'm posting here to introduce a new simplification, as well as > quality-of-life-improving RFC: > > https://wiki.php.net/rfc/make-reflection-setaccessible-no-op > > The RFC is quite minimal, and proposes removing any runtime behavior from > `ReflectionMethod#setAccessible()` and > `ReflectionProperty#setAccessible()`, making `ReflectionMethod` and > `ReflectionProperty` accessible by default. > > The rationale is: > > * this API is probably coming from a copy-pasted java-ism (although I > couldn't verify that, so I did not factor it into the RFC) > * removes the last bit of mutable state from `ReflectionProperty` and > `ReflectionMethod` > * simplifies usage of the API > * if I'm up to no good, I don't need to actually solemnly swear that i am > up to no good (that's stuff for fantasy books) > > I don't really know what the deadline for 8.1 features is, but I assume > it's coming up quite quickly, so friendly NikiC poked me to see if this > long-standing patch of mine was still relevant. > > Should be short/sweet, but I'm looking forward to your feedback. I'm generally OK with it. The change makes sense. What I'm unclear on is why it's not including the actual deprecation. Not doing that yet and having it just become a noop first seems fine, but it's also clear that having it throw a deprecation in the future, and presumably then having those methods be removed outright, is the long-term plan. I'm good with that too, but I don't see why the full death-cycle isn't included, and half of it is instead punted to a future RFC. Please explain. --Larry Garfield