Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:122229 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 9776 invoked from network); 22 Jan 2024 21:45:21 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 22 Jan 2024 21:45:21 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1705959963; bh=RX3jDwjiZDRoHv+KfJk53isnHSE9pKCty1YnB+GbAvo=; h=In-Reply-To:References:Date:From:To:Subject:From; b=Jzk3tTgJH+2YG2pzH6y+D8NIjf9brYrlraSinpGKqhqIm1yD9mwh/n+JcntE68PxB BH0yoCTVTjAGg9XIo0RPOn5bddwFLbQmmGwTv+7uANJRrrQjf+N7ki5xVoeejoA+6q O2vF416+vmXNbXbX6f6nuCB9abi04mrYTO/D8vUK0XL1loYh0yFb6SFWOlRko6+goG 50DwxFgyG0l65V0II2HUFmwCciHB79ozqtaYoFxyX/wnKTtZ4iJwZmSMzQdJfo6Glb c2pQYDioR4D4ldlSMIVXq/SwvVh+J6yL5Bld6C8fU8dojpchYmcTUnKcjE0MpUqoVJ q5UHZfJnf39xw== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 5F03118005B for ; Mon, 22 Jan 2024 13:46:03 -0800 (PST) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_MISSING,RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,SPF_NONE autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: No X-Envelope-From: Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) (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 ; Mon, 22 Jan 2024 13:46:02 -0800 (PST) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 937B85C01D8 for ; Mon, 22 Jan 2024 16:45:19 -0500 (EST) Received: from imap50 ([10.202.2.100]) by compute1.internal (MEProxy); Mon, 22 Jan 2024 16:45:19 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= garfieldtech.com; h=cc:content-transfer-encoding:content-type :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to; s=fm3; t=1705959919; x=1706046319; bh=6z4SmK1vzYieUJmFzLDp+ iYBYl+9V64P0Rjf9r+/HRo=; b=W2m84q+3jeL1UN2DTKO/ajraS8e4V5dUi9FCD PFHRrAkOZT6q5qIgYN/zkt7rD6ANYapP8ht8wAbY+VMQyuhDTkR/PKYJq2lIlJ8t JMx1mOKW6yBYawY5S38rxQhiqTFmh8YjGVwAN4RJJ9kg9jOMNIW8qfowqVKOJaJs GsdV6N1hXOhcEXYMkyNhdweWTTVZWz0Xp7YgdkwSC5vuJpNgafoHFZVVKedsik14 KtnIDMOY3Zw2ovBJj/JX2QScrScNpML9lRXxTpsgPXncXwWX+gujYHi5HOBXSFqH L/gpIwW0wTRiNAyiTw+n6E6TDLCOzEYMrYfpxtKcEiidDaQUA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1705959919; x= 1706046319; bh=6z4SmK1vzYieUJmFzLDp+iYBYl+9V64P0Rjf9r+/HRo=; b=B B3TZ/qsq1NGu6uzno0Vw0b+8lHfANTzHbNrCKx+lE9JKqEGh2o3TZS3Cj9NVovMG TaExYFDCw3JrU2bl7U7cE5tHP+ROI59JsLK+Btk0S5qRlHjIyS8KrIWS7Ckh2z8l mjPF2OC3LaI/ZkKQMP3F2fzVRdgDZ31977kePVR6SwhoaoU18ROS9xHzXFfY2Hnc mwyHfuLovTtNHOC3AKSHtMWus1nJydbS+D1ibFkLf9F4RA0+8kl0yIV3fLfbuU/0 PaULBrp38kBEYEz1u1HyY5QPGohZkb2R/6zfbsSr2QfWdOOfaTW3eRQoMBnM2LIJ 5XH0O247+8iiOGRgQ8KuQ== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdekiedgudehtdcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefofgggkfgjfhffhffvufgtgfesthhqredtreerjeenucfhrhhomhepfdfn rghrrhihucfirghrfhhivghlugdfuceolhgrrhhrhiesghgrrhhfihgvlhguthgvtghhrd gtohhmqeenucggtffrrghtthgvrhhnpeffffffjeffudfggeevvdeitdetvdfgjefffeff jeelfeejteevheeghffhvdfgleenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmh epmhgrihhlfhhrohhmpehlrghrrhihsehgrghrfhhivghlughtvggthhdrtghomh X-ME-Proxy: Feedback-ID: i8414410d:Fastmail Received: by mailuser.nyi.internal (Postfix, from userid 501) id 24ED21700098; Mon, 22 Jan 2024 16:45:19 -0500 (EST) X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.11.0-alpha0-119-ga8b98d1bd8-fm-20240108.001-ga8b98d1b MIME-Version: 1.0 Message-ID: <47253b99-b0b9-4022-8536-9b9f0d2f9070@app.fastmail.com> In-Reply-To: References: <344c3e06-3822-4b20-9a6f-a58fb64929a7@app.fastmail.com> Date: Mon, 22 Jan 2024 21:44:57 +0000 To: "php internals" Content-Type: text/plain;charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [PHP-DEV] [RFC] Deprecate implicitly nullable parameter type From: larry@garfieldtech.com ("Larry Garfield") On Mon, Jan 22, 2024, at 9:11 PM, Matthew Weier O'Phinney wrote: > On Mon, Jan 22, 2024 at 12:54=E2=80=AFPM Larry Garfield > wrote: > >> I am in support of this change. My only concern is timeline. This R= FC >> would deprecate it in 8.4, and presumably support would be removed in= 9.0. >> While we haven't discussed a timeline for 9.0, historically the patte= rn is >> every 5 years, which would put 9.0 after 8.4, which means only one ye= ar of >> deprecation notices for this change. >> > > This is... not true. There is literally no established pattern for when > major releases take place, either by length of time, or number of minor > releases. > > PHP 3 had no minor releases. PHP 4 had 4 minor releases before PHP 5 > dropped, and then a minor release happened AFTER PHP 5 was already in = the > wild (4.4). PHP 5 had 7 minor releases, with MULTIPLE YEARS between so= me of > the minor releases before the current process was adopted towards the = end > of its lifecycle. > > We are moving TOWARDS a fairly standard process, but there's no defini= te > plans for PHP 9 to follow after 8.4 as of yet, and the process does not > require it. I know there's no official statement regarding timeline. However, 5.3 (= aka PHP 6) -> PHP 7 was 5 years. PHP 7 -> PHP 8 was 5 years. It's not = unreasonable for folks to assume 9 comes 5 years after 8, whether that's= the intention or not. Given the lengths of time involved there's not a= great many data points to work from, but humans gonna pattern match. :-) In any case, my core point is a deprecation of this impact probably need= s more than a year's lead time before it's actually removed. If we agre= e on that, we should plan around that and actually, you know, plan. >> Given the massive amount of code that built up between 5.1 and 7.1, a= nd >> 7.1 and today, I worry that a year won't be enough time for legacy co= de to >> clean up and it would be another "OMG you broke everything you evil >> Internals !" like the "undefined is now warning" c= hanges >> in 8.0. (In both cases, well-written code any time from the past dec= ade >> has no issue but well-written code is seemingly the minority.) >> > > But I DO agree with the above. So this might be a time for us to start > discussing if/when we want a PHP 9 to occur. --Larry Garfield