Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:129215 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 D117A1A00BC for ; Thu, 13 Nov 2025 10:00:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1763028021; bh=6NdHQuvkIYiqYY5ZzEeUw1e5LFs+S9fYun8ODtGFuvo=; h=Date:Subject:To:References:From:In-Reply-To:From; b=CLDKlhCpKYWMDLkDjpYc6HOCrT548eu+uKQLNXQJYX/b5hXTBftHeNLMESwED8EE+ h5yCal6IH6Lp+8wwOTk66UREv4J0wk+uqruIh1kzETnz3cph2j2kVCHOY6MiM1Xvtn bMFin4dTpRGpUjskm8/vFR1wlKd5fRaId9FwHrHk42kYUv97231zABhw91ayQ7t1vG 9Ip23e9xPNzgS2Hg3AeEVRAlhobQzOysmjddg4qfjZF2/8joXlBxgoWrL+mcYYSD1A g8O44pjudm4tz4kJJ7KvYNIoeuwj8q+Dm23rnUxNZOk9Uhp8auXsGXVC5greQpZEy4 en4jS1VXu19qg== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id E920418002E for ; Thu, 13 Nov 2025 10:00:20 +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.6 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,SPF_HELO_NONE, SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Virus: No X-Envelope-From: Received: from chrono.xqk7.com (chrono.xqk7.com [176.9.45.72]) (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 ; Thu, 13 Nov 2025 10:00:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bastelstu.be; s=mail20171119; t=1763028009; bh=b/4rPOKOfJ7R0huAFjWcOYJ+AHO5GvPL0y7YSyT9Lyg=; h=Message-ID:Date:MIME-Version:Subject:To:References:From: In-Reply-To:Content-Type:from:to:cc:subject:message-id; b=gbIfWPshwqAY4l/QBRGOKJ6doFbZqxjAZCOj2RFU914Ip/s/3Lx3LmWBRY40UvRdL hxzgYT3Gig5TgngVlt9Sq+g8RQo6lPNScYB7iAcAlW+FgIzzd+80VASxmBSV6h4qS9 F9rROlsSWMjot5SSTuIa5KP5soS2ULvKwMLTAt81elYzzE6zdCS8i9EFyoa7Hym3ar qLR21G08rW6MZmggF4+RZb06IhmptnYuHEUDwE4QrPdKHb9/kwAmpy5Rv7v4Sy1zCo opoaJZWCh9vxu5CbMaoHRb9lPUWTncBXucFyrNk/oqgxP5As2Iv7pPfdcBhpMCUOKn ovLNjAGBNwz9w== Message-ID: <697c56c5-78bf-407a-a884-74ee150e992c@bastelstu.be> Date: Thu, 13 Nov 2025 11:00:08 +0100 Precedence: list list-help: list-unsubscribe: list-post: List-Id: x-ms-reactions: disallow MIME-Version: 1.0 Subject: Re: [PHP-DEV] Re: PHP True Async RFC Stage 5 To: Edmond Dantes , php internals , Jakub Zelenka , Larry Garfield References: Content-Language: en-US In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit From: tim@bastelstu.be (=?UTF-8?Q?Tim_D=C3=BCsterhus?=) Hi Given your planned timeline of voting, I wanted to chime in here before my vacation. I'll likely only see the reply on Monday morning. On 11/13/25 10:01, Edmond Dantes wrote: > If anyone else is working on comments for the RFC, please let me know. > If there are no objections, we can start the vote on Monday. It appears that you believe that the RFC and the proposal finally settled. I frankly lost track of what has been discussed in all the different discussion threads related to various Async RFCs. What I am missing from the RFC text is some kind of "Executive Summary" to make it clear what *is* and what *is not* actually being proposed. The RFC starts of with goals and a glossary that primarily explains by means of an example. This makes it hard for me to see what I am actually voting for (and what I am not), especially after the many changes to refine the RFC. I would suggest to add a “full stub” (as suggested in the RFC template https://wiki.php.net/rfc/template#proposal) at the start and also to shortly explain what is proposed and what is left untouched (e.g. the RFC already mentions that file_get_contents is not proposed to change, but that is easy to miss without carefully reading everything) before diving into the details for each of the functions. With regard to the relationship with fibers, it is not clear to me why e.g. Fiber::suspend() could map to Async\suspend() and why the Async event loop couldn't call ->resume() on suspended Fibers. Elaborating a little more would be helpful I think. Also, please make sure to add the “Abstain” option to the vote (https://wiki.php.net/rfc/rfc_vote_abstain). Best regards Tim Düsterhus