Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:117590 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 48146 invoked from network); 25 Apr 2022 08:09:57 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 25 Apr 2022 08:09:57 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id AF9A41804DB for ; Mon, 25 Apr 2022 02:44:53 -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.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS15169 209.85.128.0/17 X-Spam-Virus: No X-Envelope-From: Received: from mail-wr1-f49.google.com (mail-wr1-f49.google.com [209.85.221.49]) (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 ; Mon, 25 Apr 2022 02:44:53 -0700 (PDT) Received: by mail-wr1-f49.google.com with SMTP id t6so16532232wra.4 for ; Mon, 25 Apr 2022 02:44:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=craigfrancis.co.uk; s=default; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=RFAsm2+u9maVyYRNrh1BoL1PiDX8/PiWy15oD6NG9ec=; b=AQdw9iHrDN1EHhV9VAR79kbMadQ/Z5DPCTWkZ/BL6sYLVuYHj3ag+ZRxxPrDs0Amfu 7cDJiW996uLgITgVFgxpjtw+E3vujV/aQgDdujmgAFdan9SDvhesKUmoOkpfL0V/iLPK +vQTFrBznUxyt2a1X0avkrLYmd+PJjmp2IPBk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=RFAsm2+u9maVyYRNrh1BoL1PiDX8/PiWy15oD6NG9ec=; b=p0CgdbpMGDOO7uhzhaTC/yZiqAXuFDMyzz7CS9O7gSkha5IP3lZO3bSiNPmtD59dHK WLQyCQQE8oyhvgKtpPrXKTqFvYbFIhJe7YRKQYzXeX86HNZBW6MLFTMQsVXLeEmxjohG izSSTUZgOLxpDYrfhSoxujxsOkM3czT4vid+OR3xRpTWMcXF+j/kPSvelaUS7um92pf6 b/cTA0ppqeOFMHsmYD6Yyl0eAGEGx92KuYfG9K/QavRHj8lYW+taecINwxX6kICOW9kJ WWFBTmku5PxLZyc470rBgGJMD/xtpwfJnl/mRYvL78gyK3cHgx6Gi3KLRIIBdi/sRc61 nPqg== X-Gm-Message-State: AOAM532n/EHZWzyjwCPfBqdmW3zCUGfWTQaoaxS4XcWo/G9RU+Msgf05 iPyr8xYYtfrf5+ITpBmttkeKYQ== X-Google-Smtp-Source: ABdhPJztdNt5VhC1mhLSrTWbOzVku3gJoRHMpuYnMGuKvCRVRNzxMfv3udoTL+N3HK0dEG8ZNmiR4Q== X-Received: by 2002:a05:6000:1a4f:b0:20a:ccdd:c70e with SMTP id t15-20020a0560001a4f00b0020accddc70emr11279542wry.444.1650879891617; Mon, 25 Apr 2022 02:44:51 -0700 (PDT) Received: from smtpclient.apple ([94.173.138.98]) by smtp.gmail.com with ESMTPSA id o2-20020a5d6482000000b0020a96536fcdsm9045772wri.57.2022.04.25.02.44.50 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 25 Apr 2022 02:44:50 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.80.82.1.1\)) In-Reply-To: <925590a9-afa8-7630-8201-cc561b2611fa@gmx.net> Date: Mon, 25 Apr 2022 10:44:47 +0100 Cc: internals@lists.php.net Content-Transfer-Encoding: quoted-printable Message-ID: <2F8CF57D-DFA8-49DA-9E42-F91BCCC6C1A8@craigfrancis.co.uk> References: <2035695b-b6b5-5982-a5ea-e85693e1f71f@gmx.net> <925590a9-afa8-7630-8201-cc561b2611fa@gmx.net> To: Andreas Leathley X-Mailer: Apple Mail (2.3696.80.82.1.1) Subject: Re: [PHP-DEV] NULL Coercion Consistency From: craig@craigfrancis.co.uk (Craig Francis) > On 21 Apr 2022, at 17:32, Andreas Leathley wrote: >=20 >>> There is another 3.5 years until PHP 9 is likely to come out, which = is a lot of time for people to adjust their codebase. I could even see = an argument for not promoting it to a fatal error in 9.0 if so many = people need more time. >>=20 >>=20 >> If it's deprecated, that is an intent to break... and if no other = solutions present themselves, and the vote for this RFC fails... why = would it be delayed? It will then be clear the Internals developers want = this (they would have made an informed choice, and put their name to = it). >=20 > A deprecation notice is fairly harmless. If in two years many projects = and many developers say that they need more time to fix these = deprecations and promoting them to errors would cause a lot of problems, = then it would be easy to prolong the period where it is only a = deprecation with a small RFC. By then more people will know if they are = impacted, many frameworks will have updated, and there will be a clearer = picture if this is such a big deal or not. Right now this is not clear - = I doubt most projects are using PHP 8.1, not even all = frameworks/libraries are compatible to PHP 8.1. You're right, I am working with a few development teams that are simply = not upgrading to 8.1 at the moment, they don't have the time to fix this = issue... two are using set_error_handler() to ignore this specific = deprecation notice, and one team has moved over, but they are still = finding these issues ~6 months later. >> Are you going to suggest any improvements? what have I missed? I'm = trying to keep it short, because I know long RFC's can be a problem. >=20 > An RFC should cover the discussions held on this mailing list. =46rom = the RFC howto: >=20 > "Update your RFC to document all the issues and discussions. Cover = both the positive and negative arguments." >=20 > Do you honestly believe you have done that? I have tried to discuss = some counterpoints and alternatives to your proposal, but none are = mentioned in the RFC. I also don't see the discussion points of other = people in the RFC. None of the alternatives to your proposal are = mentioned in the RFC - like changing the internal functions to accept = null instead. There have been quite a few suggestions and arguments made = so far, and I don't see them in the RFC. I'll ask again, what have I missed? as in, please, give me details. Last time you vaguely said that "George Peter Banyard wrote some = extensive arguments", I spent at least an hour going though every single = point (again), and this time I listed them out for you, and you ignored = that, not even an apology. The only point you made in that last paragraph is "changing the internal = functions to accept null", it's already there, under the heading = "Rejected Features", which includes the link to the RFC I created, and = the reason it was rejected. That reason is also noted in the second = paragraph of the Introduction. > I have discussed RFCs with a few people on this mailing list, = sometimes with very different opinions about a topic, and not always was = there a resolution to the topic at hand. Yet the discussions with you = have been the most frustrating so far, because you say you are open to = arguments and proposals, yet you do not seem to consider them at all - = yet you really seem to believe you are totally open-minded. I have been = impressed by a few people on this mailing list who I disagreed with = wholeheartedly, because I noticed with how much care they tried to relay = disagreeing arguments and other proposals in the RFC and how balanced = the RFCs were at the end. Your RFC seems totally incomplete to me and = mainly based on your made-up opinion. But at this point I don't think I = will get through to you in any way, which is why I will step out of this = conversation. If the RFC comes to a vote in the current conditions = though I will raise an objection that it does not represent the = discussions held on this mailing list and should be disregarded because = of that. I have no idea how to respond to this, I have spent a considerable = amount of time carefully reading your 5 emails, responding to every = single point you raised (which you simply ignore), ensuring all points = are in my RFC, and this is your attitude? no apology, no thanks, just = vague complaints and insults? If you have any objection that is not already noted in the RFC, please, = let me know what it is... maybe "Andreas does not like the wording in = this RFC, or the stats provided, but does not provide any alternative"? Craig