Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:128831 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 B0C811A00BD for ; Mon, 13 Oct 2025 22:29:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1760394545; bh=CewPtSJWYOeeu10hNWGwfGq9KfNw5rrob66XVNUneIA=; h=Date:To:From:Cc:Subject:In-Reply-To:References:From; b=Bstx7fL1hu+Kr3jDSwU8BM73aoayrlEX2CIfijAtB7rIpCxFe5Zeke8mLc+gn/2C6 HifQfCz25ncqo0gcIfMPM36YuRx0l9dwtJPviRFYuGNDajGS8Q4maVJ1Ld0HZ6qthR 5mtnSJIftYilQ4KJoy0k4TDrtW4PkVV0fTck4nes+2TngPcOPOWQtmAsgGS13YiFRX FQGuknlfIxQOhXt+9EwhylE3xbA6ks9Wz3bhAPdQAkDscMxJ6aXDP7AavAqFI4F8tK 6hoUUnuebiAyk85l9gZ90xa2OYVmndnHB3is0b8X5RTdDm9jz72jVOBLId0Rqnf7Wo 7Kid4No2Dz+ig== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id F0C5818053E for ; Mon, 13 Oct 2025 22:29:02 +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=-0.2 required=5.0 tests=BAYES_40,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Virus: No X-Envelope-From: Received: from mail-4317.protonmail.ch (mail-4317.protonmail.ch [185.70.43.17]) (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, 13 Oct 2025 22:28:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gpb.moe; s=protonmail; t=1760394531; x=1760653731; bh=CewPtSJWYOeeu10hNWGwfGq9KfNw5rrob66XVNUneIA=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID:BIMI-Selector; b=EizFBX27iBYsDjL90E3wJAFHN7m9Br7rUVsif86XMm/hNPzGazn7OZ7UKCl2hTkB9 zRY6AqvR97G4EhT9pJaiPf/ks0S52jbNK4nzMB0n0I7RAEqPHjI0UHnSubK5FitdSz aGThaTo14/72n7G002KtTCv9YFkk+AVldWJh5PlvGrlCQAom63U754vPinWJSHXHHR 5Sfk03hkXHnvAuLnz5Kj47U2cN4lLVp51qeXgQHPoXON+Hrn9ipoQS54mM58Wtdw1M ZyTW9avMd2VHbNGYJxkLJ6CSne9Dv2BVsERvw97zh+1nAdeSgSchM2flCSlDhRD8Ks wjnLrHtAFV6JA== Date: Mon, 13 Oct 2025 22:28:47 +0000 To: Larry Garfield Cc: php internals Subject: Re: [PHP-DEV] Re: [RFC][Discussion] Policy release process update Message-ID: In-Reply-To: <13c2d58e-b6ff-4fa4-b5b9-c6d39104ba45@app.fastmail.com> References: <13c2d58e-b6ff-4fa4-b5b9-c6d39104ba45@app.fastmail.com> Feedback-ID: 96993444:user:proton X-Pm-Message-ID: 35a46cfeb7a8cb1122dedad643f8c3482ea3678f Precedence: list list-help: list-unsubscribe: list-post: List-Id: x-ms-reactions: disallow MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable From: internals@gpb.moe ("Gina P. Banyard") On Monday, 13 October 2025 at 19:42, Larry Garfield wrote: >=20 > My only pushback is not specific to this PR, but more that this PR would = be a good time to address this existing gap: >=20 > Under Major Version releases >=20 > > - Significant userland API backward compatibility breaks SHOULD be prec= eded >=20 > by the deprecation phase in the previous major version. >=20 > Right now, that deprecation phase could be as little as 15 months, or as = long as 5-6 years (and counting). And when deprecating something, we have n= o idea how long it's going to be deprecated before it's removed. That's dec= ided well after the fact, whenever it's decided (by whatever means) that PH= P.next will be a major this time. >=20 > This is hostile for users, who do not know, and cannot know, how long the= y have to address deprecations. Things deprecated in 8.5 (of which there we= re many) could be removed as soon as November of 2026. Things deprecated in= 8.1, however, have been deprecated for ~4-5 years now, and also could be r= emoved in November of 2026. >=20 > I would very much like us to put more structure around deprecations, when= they happen, and the release cycle to support that. Fixing the number of y= ears between Majors would be ideal, as then everyone can plan better around= deprecations. (Eg, we can say "no deprecations in the last minor of a seri= es", to ensure all deprecations have at least a 2 year window to address.) = As is, it's still largely guesswork for everyone. >=20 > --Larry Garfield I vehemently disagree with this proposed policy. Either we move to a system where deprecations are removed in constant inter= vals, e.g. every 3 years like Python does regardless of what the version nu= mber is, Or we continue our "semver-ish" policy where we only remove deprecations in= major versions. Users are *not* forced to upgrade to a new major version when it is release= d, and restricting when php-src can introduce deprecations is not something= that is practically doable. A bunch of deprecations were already pushed back from 8.0 to 8.1 because we= were told deprecations in a brand new major release just adds extra fricti= on, and now you are floating the idea of no deprecations in the last minor? Deprecations are basically never planned, because most, if not all, of them= are proposed after someone encounters an oddity in the language. Contributing to php-src is not easy, and we already have lost contributors = by telling them that they should have proposed X 2-3 years ago because "now= " is inconvenient. Any policy that aims to restrict when php-src can or cannot do something wi= ll get an automatic NO from me. Best regards, Gina P. Banyard