Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:125804 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 qa.php.net (Postfix) with ESMTPS id 481D61A00BD for ; Tue, 15 Oct 2024 03:27:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1728962994; bh=cnbfXHQqhDxGuBuHLWGwQhWNOlR5KLgi0vAF6lI7Z2E=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=jy4ojJbuLzHV2y4nxwGD8ZdwCFSQOqKtL9GWtsARXhHxto0tjneswQJfARIKr4R9Y 1RhXYaZXmE9JtDhGyWteIG5loCiLGdJ7oQvDjOCLH+sTiEe9hcXqBZLcmwuyuWIioL ErVUwJT3BYJo99SOjPnLL75JD4QpSX0uD5QoJBXiyypZQQKOYQbmUO2SlczAUNGUhg vCXBLz/gykFHazD3nsWHemQjocclD6xZNx/H9CxFsBrZXUtgnz9CU+aHK2Z4NDwyKX wI6vLW+1+K7wwmnndyiuE07iXhll1zu3imPteuTHBCrRHrKXntUzgOtWeQhdS6NvzA Bq/PdJQcp5o7A== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 8D58318004F for ; Tue, 15 Oct 2024 03:29:53 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) 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,FREEMAIL_FROM, HTML_MESSAGE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL, SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: No X-Envelope-From: Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) (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 ; Tue, 15 Oct 2024 03:29:53 +0000 (UTC) Received: by mail-pl1-f180.google.com with SMTP id d9443c01a7336-20c70abba48so31735385ad.0 for ; Mon, 14 Oct 2024 20:27:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728962852; x=1729567652; darn=lists.php.net; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=cnbfXHQqhDxGuBuHLWGwQhWNOlR5KLgi0vAF6lI7Z2E=; b=SwGZJaC8On9hO/nwSPwRKPGnYyBsAE4WbOAJQt/tsWbnrjQGS2vm6iMdsOjyl14cmm s9bQ+TXPQWdlJ3nE9nyTvoAY+MduRcSwLir570JRSDUK+OhvwKiOFRSjLFDcw3klKZp7 l+QRb1GbXNRQiXVAkp9c9RHStgJw92t+Lumxq8sEPupgwODUFlx5D2CSZYaE72DMLPxn p3iRccpE+YVP5vh7Ifqy5X0lFgzV4sABermISF9qqaNkB+AODWOC6RfKKIr+DAfmTwzH +OU1zquqL+WN1rdJKE984kns4g81c/doYmH49hbAv9oBtIYsFp9c/G9VVwek7qw301VU cASQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728962852; x=1729567652; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=cnbfXHQqhDxGuBuHLWGwQhWNOlR5KLgi0vAF6lI7Z2E=; b=QT+PHIGUpGrT8UFeJaUa2g8R+7RFaWJ5+F20TiPGmfS9Cmo/lLCz3mcBjn/sRuZlum 1mElv+TSKFWKhT67U+rRPGY1vfH25rgI8LTBe/Unal+cd+ydvxR5cCdrMvZxfIx13NtS o47PXBCbZZJnpEbVQ49zXNk5t6FI4tSCcpCCzG5SXUrHJM6/zJonq21q3I8LOrwuOELx 4swWnWWPEfh7k9RNIC5bkaPZ928LYYCFKmvxy+hVgWrORLJPvgv7EbggB9ZioqMj3LXY O5nwSPzXEODKH2oURFsIFvpyb3irEfrUrBniErJNXYxIptR8xSGIL0DY0sE72KDzeI5w PbKw== X-Gm-Message-State: AOJu0YyeRuIPiJ1oxw82Br/IKjDFAmjNWqadiPT6a5YmYKTSkO8LGtLz 5sLRQj3nvUX/4LN48dn0OFJKcpUf7Z4yUkEvMdGMBQi8crKU7gx9da8UH5Jvnvz4RLeNUlZYtHd 6i27hPpC2NleftVnzMdh1Zqs89u3WZQ== X-Google-Smtp-Source: AGHT+IECv0rc1TzdeLaVqBT5/mzxPfQ82ChHk01+5S5Dr8jkfdv4/tAewyN5eGr9UQlEGIFfTnYHaLvGHYWXoGEHeIc= X-Received: by 2002:a17:90a:e38a:b0:2e2:d1a3:faf9 with SMTP id 98e67ed59e1d1-2e315390127mr10453183a91.40.1728962851659; Mon, 14 Oct 2024 20:27:31 -0700 (PDT) Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow MIME-Version: 1.0 References: <2A7CF24F-3AE3-4125-965F-C65431C42DFB@gmail.com> <30a41608-a1ea-40a9-8d2a-c53c508cd89f@jnvsor.net> <3648840e-5c73-49c9-bc89-105ed761e5c2@scriptfusion.com> In-Reply-To: <3648840e-5c73-49c9-bc89-105ed761e5c2@scriptfusion.com> Date: Tue, 15 Oct 2024 10:27:18 +0700 Message-ID: Subject: Re: [PHP-DEV] Asymmetric visibility is a BC break To: Bilge Cc: PHP internals Content-Type: multipart/alternative; boundary="0000000000009a68df06247b881a" From: pierre.php@gmail.com (Pierre Joye) --0000000000009a68df06247b881a Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello, On Mon, Oct 14, 2024, 8:07=E2=80=AFAM Bilge wrote: > On 14/10/2024 01:02, Valentin Udaltsov wrote: > > The problem is that in practice most of the PHP libraries consider > > themselves to be compatible with newer PHP versions. > > > > For instance, Symfony PropertyInfo uses `"php": ">=3D8.2"` constraint i= n > > its `composer.json`. > > That seems like a problem they have created for themselves. It seems an > error to me to declare software forward-compatible with PHP versions > that do not yet exist and thus have clearly not been tested against. > Being as it is an error, we shouldn't consider it impinges on PHP's > definition of a BC break. > As much as I like this new feature and I am more than thankful for the work behind it, if a test in codes using a x.y version of php works but fails in x.y+1, it is a BC break, no matter how we look at it. A php dependency targeting x.* is very common. While it tends to be used less frequently as the amount of issues increase, that's not necessarly a good thing. In some cases it is a necessary evil (extension deprecated adding warnings, security fix requiring a bc break, f.e.). However, I am very doubtful here. And I do not know if it can be avoided while keeping the new behaviors. All in all, it would be great to at least agree that there is a BC break issue, so it can be addressed according, whatever the final decision is. best, Pierre > --0000000000009a68df06247b881a Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello,

On Mon, Oct 14, 2024, 8:07=E2=80=AFAM Bilge <= bilge@scriptfusion.com> wr= ote:
On 14/10/2024 01:02, Valentin = Udaltsov wrote:
> The problem is that in practice most of the PHP libraries consider
> themselves to be compatible with newer PHP versions.
>
> For instance, Symfony PropertyInfo uses `"php": ">= =3D8.2"` constraint in
> its `composer.json`.

That seems like a problem they have created for themselves. It seems an error to me to declare software forward-compatible with PHP versions
that do not yet exist and thus have clearly not been tested against.
Being as it is an error, we shouldn't consider it impinges on PHP's=
definition of a BC break.

As much as I like this= new feature and I am more than thankful for the work behind it, if a test = in codes using a x.y version of php works but fails in x.y+1, it is a BC br= eak, no matter how we look at it. A php dependency targeting x.* is very co= mmon. While it tends to be used less frequently as the amount of issues inc= rease, that's not necessarly a good thing.

<= /div>
In some cases it is a necessary evil (extension depr= ecated adding warnings, security fix requiring a bc break, f.e.).

However, I am very doubtful here.= And I do not know if it can be avoided while keeping the new behaviors.=C2= =A0

All in all, it would= be great to at least agree that there is a BC break issue, so it can be ad= dressed according, whatever the final decision is.
<= br>
best,
Pierre
--0000000000009a68df06247b881a--