Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:129376 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 476641A00BC for ; Fri, 21 Nov 2025 17:57:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1763747876; bh=AcyfI0nlOO7zzEMnxFNwpXe+GW6fCsIQoBv0ApTyD6w=; h=Date:From:To:CC:Subject:In-Reply-To:References:From; b=H3IUbiOUUb+cDoKkbknC6h6GDnwyRHnqeuYUg1msjy95FeIgNg0Vm46dMHWcpYJtg HmZdi6mGD8cTjEz7kKb5Icqb4XOWjD40WtCvuyIH827NQwx3tQhfLfsmKxNcH7ueqY OsWH+EfYoCCGJ+CPRf1Wd3QYjcmhUEc4lZQGrhLUrjOvk68HIWLbpkhkMZ3yP6NAJY hxppyDVfaEQm8BYzEDwSyywr/lSO0j1LjbpM0gKT+KWZgg+Gm9OYjd3Py+W3/NH1+0 dT1PR3VHBbxOsf/Cg87zx2FG2Xh7s0yNGSNpZp87yjuLXLOpfBDA767Nw29qsO3OBu b6K/YXQn8x3xA== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 584D8180083 for ; Fri, 21 Nov 2025 17:57:56 +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.1 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_MISSING,RCVD_IN_DNSWL_LOW, SPF_HELO_PASS,SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Virus: No X-Envelope-From: Received: from fout-b7-smtp.messagingengine.com (fout-b7-smtp.messagingengine.com [202.12.124.150]) (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 ; Fri, 21 Nov 2025 17:57:56 +0000 (UTC) Received: from phl-compute-02.internal (phl-compute-02.internal [10.202.2.42]) by mailfout.stl.internal (Postfix) with ESMTP id 0B4AF1D00142; Fri, 21 Nov 2025 12:57:46 -0500 (EST) Received: from phl-mailfrontend-01 ([10.202.2.162]) by phl-compute-02.internal (MEProxy); Fri, 21 Nov 2025 12:57:46 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rwec.co.uk; h=cc :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=1763747865; x=1763834265; bh=AcyfI0nlOO7zzEMnxFNwpXe+GW6fCsIQoBv0ApTyD6w=; b= scIjF9cCkZGBmonG9S25W/N8BzGYt7+EeFg5a+md7gvYvNWoXFTS+8k9qxWeGmp0 w0M3KUmSRz3JRD08Ho0LUwHzGl/5q3oEX9J6zlw+AdnvC2kKbD2pU1Q5X9xZbZ1r jhvAJR5VXbCqTXR2Usox1fAZN74hB0Mnz+c7oPJcDEOn/NkxdQbs0VpKnragHkCT LNsJ0yGAyhuMyhxxhADo9XzN5uHhBFrJTFRk4KODJKPxXl1gsRfEb5KCu7lIwDTc sbxeMFRBp7UXKxtHad3Nm67dTzt19LPa06P2HU/dep8oPdYmC0DRZhGsxndUqJw7 7a4h9JJD2HStH2cYAarJBA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc: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-sender:x-me-sender:x-sasl-enc; s=fm3; t=1763747865; x= 1763834265; bh=AcyfI0nlOO7zzEMnxFNwpXe+GW6fCsIQoBv0ApTyD6w=; b=r Y4s3J1aE71/3+8hxXSOP2/N1s06A0CsmgZsi2galA7mptfM4KkpECMF8jbi5wK+0 Tu+/2lC4Q7Xr3XpdI+CYS1yxbEajyXygczOQkdQepcmJf9A92wmi+1cbKMMiPfvf tTQKlKw5GKmGS6noP+xYoYW06581MbXnr8WqWjlAQFrPAw9Nspc1woASGJhbvUdB KhE4nYdje9pmaXysM6l7me3tAQPcAVl2MoklKbwgYi3Mlu7uFyfAZNR76DZKCjHA 86l1vL/OmKYQig4PHEibsJEbGOB/FcXnht0RgSjcXhH85oz2l+wzSuW7tUet3PT+ 7/bN8BKcdvfqOsV1wmFaw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeffedrtdeggddvfedtiedvucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucenucfjughrpeffhffvvefufggjfhfkgggtgfesthhqmh dttderjeenucfhrhhomhepfdftohifrghnucfvohhmmhhinhhsucglkffoufhorfgnfdcu oehimhhsohhprdhphhhpsehrfigvtgdrtghordhukheqnecuggftrfgrthhtvghrnhepue fgjeefgffhvdduvdeijefhfeefleeujeeihefftdegtddvteduudefudekueeunecuvehl uhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepihhmshhophdrph hhphesrhifvggtrdgtohdruhhkpdhnsggprhgtphhtthhopedvpdhmohguvgepshhmthhp ohhuthdprhgtphhtthhopehinhhtvghrnhgrlhhssehlihhsthhsrdhphhhprdhnvghtpd hrtghpthhtohepsghukhhkrgesphhhphdrnhgvth X-ME-Proxy: Feedback-ID: id5114917:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 21 Nov 2025 12:57:44 -0500 (EST) Date: Fri, 21 Nov 2025 17:56:41 +0000 To: internals@lists.php.net CC: Jakub Zelenka Subject: Re: [PHP-DEV] [VOTE] True Async RFC 1.6 User-Agent: K-9 Mail for Android In-Reply-To: References: Message-ID: 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: imsop.php@rwec.co.uk ("Rowan Tommins [IMSoP]") On 21 November 2025 13:06:30 GMT, Deleu wrote: >Here is a very simple hypothetical: >Suppose I run a website and I have very little understanding of PHP, but = I >know the basics=2E Every Monday I run `composer update`, do a little test= ing >and deploy the website=2E Suppose next Monday when I run `composer update= ` >one of my dependencies (Package A) starts to pull in AMPHP as its nested >dependency=2E When I try to open my website locally it will either have >everything broken or it will just work regularly and nothing will be >running async=2E There is no other option=2E >Now suppose the same example but with PHP 9 + TrueAsync=2E I do `composer >update` one day and test my home page and it works=2E But deeply nested >somewhere there is a feature that will use Package A which then spawns a >coroutine and leads to my global state code behaving weirdly=2E It's not = a >fatal error=2E It's not very clear at all to me that something changed, b= ut >now my array indexes are triggering DB updates out of order=2E This is basically the exact scenario I had in mind=2E For me, having a cast-iron way to avoid this problem is a hard requirement= for releasing a version of PHP with True Async included=2E Whether that's = an ini setting, an annotation that protects particular parts of the code, e= tc, is detail we can work out later, but it must be a design requirement th= at protecting legacy code in some way is possible=2E Debugging tools would be a useful addition, but wouldn't replace the off s= witch=2E I know for a fact that there are applications I will want to run o= n PHP 9 which will never be worth the investment to make async-ready=2E Oth= er applications, I might well run in sync mode initially, then test and ena= ble async=2E And this again highlights why we need a project structure, where we can ag= ree selected details of the design, with known outstanding issues=2E I want= to be able to say "I approve of the design so far, with the understanding = that X, Y and Z will be addressed before final release"=2E Regards, Rowan Tommins [IMSoP]