Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:119862 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 37728 invoked from network); 10 Apr 2023 15:34:48 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 10 Apr 2023 15:34:48 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 36D4D1804C6 for ; Mon, 10 Apr 2023 08:34:46 -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.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A,RCVD_IN_DNSWL_LOW, SPF_HELO_PASS,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS20857 136.144.128.0/17 X-Spam-Virus: No X-Envelope-From: Received: from outbound4.mail.transip.nl (outbound4.mail.transip.nl [136.144.136.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Mon, 10 Apr 2023 08:34:45 -0700 (PDT) Received: from submission11.mail.transip.nl (unknown [10.103.8.162]) by outbound4.mail.transip.nl (Postfix) with ESMTP id 4PwChN072sztdVm for ; Mon, 10 Apr 2023 17:34:44 +0200 (CEST) Received: from [IPV6:2a02:a450:3eae:1:acd3:9022:e86:ac76] (2a02-a450-3eae-1-acd3-9022-e86-ac76.fixed6.kpn.net [IPv6:2a02:a450:3eae:1:acd3:9022:e86:ac76]) by submission11.mail.transip.nl (Postfix) with ESMTPA id 4PwChL5LPYz2Bcwn for ; Mon, 10 Apr 2023 17:34:42 +0200 (CEST) Message-ID: Date: Mon, 10 Apr 2023 17:34:42 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.9.1 To: internals@lists.php.net References: <8b20a236-c4c4-9b61-43f1-ff6145752c75@gmx.net> Content-Language: nl In-Reply-To: <8b20a236-c4c4-9b61-43f1-ff6145752c75@gmx.net> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Scanned-By: ClueGetter at submission11.mail.transip.nl DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=transip-a; d=demon-angel.eu; t=1681140882; h=from:subject:to: references:in-reply-to:date:mime-version:content-type; bh=/rM5Q58U0/7ehThMqsxDuJTd+4fL/6+ynznswcyBl4Q=; b=Cf3PcNbmdLL0EgPLc8eOtXToMiLfXSDn6nQtW3peKn6tN9+E6Z0McdevFz0p29fb7MSCs8 1DZn0AkevOPXdqse/O5GpZVgXXKQXOxAo4w03m+Up6E707yID66vXiHgTeoh10miERS9Mm NehbySPnCUhbuR1q9He1RT1acNwz41mm99+1mE2JyvZh5sC8eiiifFodd+N/FiL2OIT/jo d8Byy0uIDJwchxcNR8eknZz2jDnKqBGJI2RMZ7Irchg71SsmoV4Ey5ZuLf8DAYxpDfurMX UhHeWP8hV0NMRVIHG3teDTaj7RM3wZTUDWqbNmEL/eyvfzOl9cQ6bL59WNV6yw== X-Report-Abuse-To: abuse@transip.nl Subject: Re: [PHP-DEV] Future stability of PHP? From: mark@demon-angel.eu (Mark Baker) On 10/04/2023 10:48, Andreas Leathley wrote: > It would be interesting to know why some people are having such huge > problems upgrading their applications, as I think those would often be > good stories with something to learn in them. So to the original poster > or other people with big problems when upgrading, writing a blog article > detailing what happened would be helpful to evaluate if the PHP project > could improve something, or even why something broke. Would it really be considered helpful? When I or others like jrf who see the potential problems try to warn about these issues here on Internals, our concerns are generally ignored, or it's considered that we don't want to allow PHP to move forward, or that we're simply scaremongering. We aren't against PHP moving forward; we're not advocating that changes and improvements shouldn't be made. We are saying that they shouldn't be purely technical discussions about implementation here on Internals, but there should also be consideration for the impact on existing userland code. All too many of the changes made in 8.0, 8.1 and 8.2 had no impact assessment, no consideration of how much effort might be required for users to make the necessary changes in their code. Thankfully, I've started seeing some effort again to include a risk analysis or impact assessment in some of the more recent RFCs. And many of those RFCs work on the assumption that all existing PHP codebases are adequately covered by unit tests to identify the points where changes need to be made, and written well enough that any designated fix will always work. But in the real world, that is rarely the case, particularly with older codebases. Too often the RFCs seems to assume the happy path; with testing for edge cases in developers applications after release. > Nowadays there are even tools now like Rector that can help you automatically > upgrade your codebase - that is also a new value proposition. Tools like rector can help, particularly for developers that are specifically upgrading from one PHP version to another; and rector is certainly a game-changer there in the same way that Composer changed the way that we build applications and manage dependencies. Where rector is less useful is if we need to maintain the same codebase across multiple PHP versions, which is the case for many libraries, as well as some of the tools that we use for developing and testing. -- Mark Baker