Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:124173 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 48DF41A009C for ; Tue, 2 Jul 2024 06:49:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1719903024; bh=/AIGUkj1BmvkcGmq2f/i9DjT5xyUlaLSSeT7Idib7Ds=; h=Date:Subject:To:References:From:In-Reply-To:From; b=m/Kt/p2SbCf3IuI3TDd8s21ELU3x+Glos/eET07b8tJ9GEePWJicO2VVE4E0lpcYB tGRXnlTj9VQlVTm7/snBu04RkKSiFG7hu26tRciZuVMkzJXb4jGs5wo3UpmRUhOrN8 NPAAgB/tWrmJJDCjDQsTNgMbYkAN3NkgE51MCkNuCBmG4bhfe8UbNYs/oud1Wat27Z jVM5nUGlPWj/CLeKo5Ks+L4lKgVqUOQg9KZ47voOhnb+KQK+0miffgvVWfaFP7/JQf C817I8yp22mVSWlRRE2QwiUA2SQUC6xI1RZ32GAMW6/zqFIlzB58OuU5tQT6ySbP0T 25xiKJX6TgZWA== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 8CD9318007B for ; Tue, 2 Jul 2024 06:50:23 +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.3 required=5.0 tests=BAYES_50,DKIM_INVALID, DKIM_SIGNED,DMARC_MISSING,HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: Error (Cannot connect to unix socket '/var/run/clamav/clamd.ctl': connect: Connection refused) X-Envelope-From: Received: from wp160.webpack.hosteurope.de (wp160.webpack.hosteurope.de [80.237.132.167]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Tue, 2 Jul 2024 06:50:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mabe.berlin ; s=he194859; h=Content-Type:In-Reply-To:From:References:To:Subject: MIME-Version:Date:Message-ID:From:Sender:Reply-To:Subject:Date:Message-ID:To: Cc:MIME-Version:Content-Type:Content-Transfer-Encoding:Content-ID: Content-Description:In-Reply-To:References; bh=OHy5sfW/89X0n1FiaAZ67Q4zgIdYKcitBhpHdyY/Mec=; t=1719902942; x=1720334942; b=udtc3c/v4eIVEoWEyZU0h2GBzQaMNveOUfq0HQZQpuY3v3DHVKDHW0yBe/8B0DJJiIjZEvk8OO F0EUmr7MgiPx/AvwbU1bm+75iOl7ZOFqxa3jLBMfh1adJWJBM9R15UpMhAOc8+8/KZil+ANLn3+Rq N5Qpn/IY/GgQgZOJ27pA2s3KokscEoIMYNL7NXGrVVapXdTpoQv44leAcR9OI8TZRwRQ5qcSMaGR0 k5WbdzVp41fbVKPXDlQ0enD8iM4R//xXNOLGLPkT47BmqT2w/Ukfod2/UJ+GWyOiMe5fQpvohPdWg W7BFiSEh+7uytAWeBm5MWTEPE6X/A95T9usdA==; Received: from [176.95.78.98] (helo=[192.168.3.113]); authenticated by wp160.webpack.hosteurope.de running ExIM with esmtpsa (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) id 1sOXK0-0007u7-Mj; Tue, 02 Jul 2024 08:49:00 +0200 Message-ID: <5a139dc5-53da-4f8b-bdb7-de64b16e0545@mabe.berlin> Date: Tue, 2 Jul 2024 08:49:00 +0200 Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PHP-DEV] [RFC] Deprecations for PHP 8.4 To: internals@lists.php.net References: Content-Language: en-US Autocrypt: addr=marc@mabe.berlin; keydata= xsBNBFby8roBCAD4qHjbk9+V3SmB5DfpkTtX58jYJ9VXVfF54MDoI0fQiYvKyrrghfO78alH c12RsEZxLH2F5kEfu8WO4wA4apg2gBnRRxqPj7krsct1ySOAdMrRVp8Wtaeaznpdcn2gJZyA MSI6LTzebT25N77ksvSrUi1BuCKyOa7SmYff3xGgOwYsHQlT5opMNGPCVegiPmO/K37anwts gj6L7RVtjXtp2Z3wAs6r3EmO318PL48xDLUgYMvEFAPJglth5FGH2En6n6HFIhxh43LqXQiN eHVjLjS2y8huNBswwc9ZVxk3ip5z/GCmpWnNkgGBOSJ7loJRsq2tOaU6yU8KWb5rhOoFABEB AAHNIU1hcmMgQmVubmV3aXR6IDxtYXJjQG1hYmUuYmVybGluPsLAeAQTAQIAIgUCVvLyugIb AwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQOTar91O8iM6jzggAwvV6MqU/hcAI6ldp xVjucGz2J9cAWtva8GL+rm9zvEs7EENtamehJiZob/CTw50WiI/zsJzPblktpT0D2AFBEp9k P5/8CmCpZzxYPsxnLtsFM52fOBpO+aP0PSStBpJjndjBH7HPqKcTCXM3ZM+SL6lyRweAJR7G +JXIZbuUrbjB2lbGx3itNZ6TeXqqnE6KTXNKLEbNHfVdzE4sPDkmuZRo/M2h+gmeS1iQb29W BmhvL6czugCQI9rYl7C4Nci9wPii1lTYyfCWQfQKID4/F2HiOv+N/vDMCK1xV8TUeCy8w4X+ nYj+wDog046ki9lUM60oPij6WoSJLqfsXr1kNc7ATQRW8vK6AQgAq7QYLB1Dz+8RSi5AGJP1 tOFQXtcxyOhNVQZsI1mCQiHay4wteQ+5m4EOUuR+FrFIlnbSrPdTkKD2wvQDHVqpZivThBpJ vara/ick0wi2R3dasu1sPMu1P6h1EwUsydhviNJB07aLfPAWD6eoqmGTd8236znIIq7mbnNp OnxIQxviTyELUekrNw38uQtVzR6XZv9PAThA2o1J1JZID7QUpKcNyo9ebYlwxyS+xzhA4DLD qfD6O5sKoKvxEf2fIZeP0ETPpHNYk0WiWnmNoPy8eEY07LriYALVidBwPBcxus0wGoKf8Nun y2aE13SHmj0ioBI1bXMGJx3hEbvzXK6WrwARAQABwsBfBBgBAgAJBQJW8vK6AhsMAAoJEDk2 q/dTvIjOkowIAI70P8U4j3eqyK/7x1bnCZZRcpwZ1aH+LR1yMKTINo9NDqlOBWQTLT69YMfV 4UN+nTSiD/uLw1fSeLSzBwpoalCMLPVOX/d3Mq5JtL5cKtWUTIVf3Vb7VbN4Rvb8HgWjeSnM 1PiG9yQBmLKI68sG/gdgvA/xANdUatkDgG0yj8PCdt+Vy4EblXbIAXZXJ6eRugSKowTjst7i HXKOJxivomHFcmqmkiqjwGTGx/jrhbDtEpPDRk+U9W45D4CbUcyPR6lMSrje5JPGQDv/45M5 wPe286YelBjnb0cWRJpA7GZCWDKZOsQ2H6cCRBi8i4m+vfRk7GLA536XnmvWxKFVP9U= In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------lMTiGyevQJqVHv0scTciMWTE" X-bounce-key: webpack.hosteurope.de;marc@mabe.berlin;1719902942;2225b30b; X-HE-SMSGID: 1sOXK0-0007u7-Mj From: marc@mabe.berlin (Marc Bennewitz) This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------lMTiGyevQJqVHv0scTciMWTE Content-Type: multipart/mixed; boundary="------------VFtWsTFlzaBDSwhyGd5lH5IV"; protected-headers="v1" From: Marc Bennewitz To: internals@lists.php.net Message-ID: <5a139dc5-53da-4f8b-bdb7-de64b16e0545@mabe.berlin> Subject: Re: [PHP-DEV] [RFC] Deprecations for PHP 8.4 References: In-Reply-To: --------------VFtWsTFlzaBDSwhyGd5lH5IV Content-Type: multipart/mixed; boundary="------------wn0fDoiOjfulsRq3hr5RXDuq" --------------wn0fDoiOjfulsRq3hr5RXDuq Content-Type: multipart/alternative; boundary="------------GT99MeVre0g81Kkt0lqQPt7O" --------------GT99MeVre0g81Kkt0lqQPt7O Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 SGkgR2luYSwNCg0KT24gMjUuMDYuMjQgMTY6MzYsIEdpbmEgUC4gQmFueWFyZCB3cm90ZToN Cj4gSGVsbG8gaW50ZXJuYWxzLA0KPg0KPiBJdCBpcyB0aGlzIHRpbWUgb2YgeWVhciBhZ2Fp biB3aGVyZSB3ZSBwcm9wb3NlZCBhIGxpc3Qgb2YgZGVwcmVjYXRpb25zIHRvIGFkZCBpbiBQ SFAgOC40Og0KPg0KPiBodHRwczovL3dpa2kucGhwLm5ldC9yZmMvZGVwcmVjYXRpb25zX3Bo cF84XzQNCj4NCj4gQXMgYSByZW1pbmRlciwgdGhpcyBsaXN0IGhhcyBiZWVuIGNvbXBpbGVk IG92ZXIgdGhlIGNvdXJzZSBvZiB0aGUgcGFzdCB5ZWFyIGJ5IHZhcmlvdXMgZGlmZmVyZW50 IHBlb3BsZS4NCj4NCj4gQW5kIGFzIHVzdWFsLCBlYWNoIGRlcHJlY2F0aW9uIHdpbGwgYmUg dm90ZWQgaW4gaXNvbGF0aW9uLg0KPg0KPiBXZSBzdGlsbCBoYXZlIGEgYml0IG9mIHRpbWUg YnVmZmVyLCBzbyBpZiBhbnlvbmUgZWxzZSBoYXMgYW55IHN1Z2dlc3Rpb25zLCB0aGV5IGFy ZSBmcmVlIHRvIGFkZCB0aGVtIHRvIHRoZSBSRkMuDQo+DQo+IFNvbWUgc2hvdWxkIGJlIG5v bi1jb250cm92ZXJzaWFsLCBvdGhlcnMgYSBiaXQgbW9yZS4NCj4gSWYgc3VjaCwgdGhleSBt aWdodCB3YXJyYW50IHRoZWlyIG93biBkZWRpY2F0ZWQgUkZDLCBvciBiZSBkcm9wcGVkIGZy b20gdGhlIHByb3Bvc2FsIGFsdG9nZXRoZXIuDQoNCkkgd291bGQgbGlrZSB0byBwcm9wb3Nl IGEgZGVwcmVjYXRpb24gb2YgaW1wbGljaXQgY2FzdCB0byBpbnQgb2YgbnVtZXJpYyANCnN0 cmluZ3MgdXNpbmcgYml0IHNoaWZ0IG9wZXJhdG9ycy4NCg0KRm9yIHRoZSBmb2xsb3dpbmcg cmVhc29uczoNCjEuIEluIFBIUCBzdHJpbmdzIGFyZSBieXRlIGFycmF5cyBhbmQgd2l0aG91 dCBjb250ZXh0IGl0J3Mgbm90IHBvc3NpYmxlIA0KdG8ga25vdyBpZiAiMTIzIiBpcyBhY3R1 YWxseSBhIG51bWJlciBvciBqdXN0IHRocmVlIGJ5dGVzIG9mIDB4MzEzMjM0DQoyLiBUaGUg b3RoZXIgYml0d2lzZSBvcGVyYXRvcnMgYHxgLCBgJmAsIGB+YCwgYF5gIGFscmVhZHkgdGFr ZSBpdCBhcyANCmJ5dGUgYXJyYXksIG9ubHkgdGhlIGJpdCBzaGlmdCBvcGVyYXRvcnMgdHJ5 IHRvIGJlIHNtYXJ0IGhlcmUNCjMuIE5vbiBudW1lcmljIHN0cmluZ3MgYWxyZWFkeSBmYWls IHdpdGggIlVuc3VwcG9ydGVkIG9wZXJhbmQgdHlwZXM6IA0Kc3RyaW5nID4+IGludCINCjQu IFRoaXMgbWFrZXMgd29ya2luZyB3aXRoIGJ5dGUgYXJyYXlzIHVubmVjZXNzYXJ5IGhhcmQg YW5kIGZvcmNlcyB5b3UgDQp0byB1c2UgbGltaXRlZCBhbmQgc3lzdGVtIGRlcGVuZGluZyBp bnQncy4NCg0KaHR0cHM6Ly8zdjRsLm9yZy9JQlVERA0KDQpXaGlsZSBwcm9jZXNzaW5nIHN0 cmluZ3MgYXMgYnl0ZSBhcnJheXMgdXNpbmcgYml0IHNoaWZ0IG9wZXJhdG9ycyBuZWVkcyAN CmEgc2VwYXJhdGUgUkZDLCBJIHRoaW5rLCBpZiB0aGVyZSBpcyBhbiBhZ3JlZW1lbnQgb24g ZGVwcmVjYXRpbmcgdGhpcyANCmltcGxpY2l0IGNhc3QgaXQgd291bGQgYWxyZWFkeSBiZSBi ZW5lZmljaWFsIHRvIGhhdmUgdGhpcyBzb29uZXIgdGhhbiBsYXRlci4NCg0KV2hhdCBkbyB5 b3UgdGhpbms/DQoNCj4gQmVzdCByZWdhcmRzLA0KPg0KPiBHaW5hIFAuIEJhbnlhcmQNCg0K QmVzdCwNCk1hcmMNCg0KDQo= --------------GT99MeVre0g81Kkt0lqQPt7O Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

Hi Gina,

On 25.06.24 16:36, Gina P. Banyard wrote:
Hello internals,

It is this time of year again where we proposed a list of deprecations to=
 add in PHP 8.4:

https://wiki.php.net/rfc/deprecations_php_8_4

As a reminder, this list has been compiled over the course of the past ye=
ar by various different people.

And as usual, each deprecation will be voted in isolation.

We still have a bit of time buffer, so if anyone else has any suggestions=
, they are free to add them to the RFC.

Some should be non-controversial, others a bit more.
If such, they might warrant their own dedicated RFC, or be dropped from t=
he proposal altogether.

I would like to propose a deprecation of implicit cast to int of numeric strings using bit shift operators.

For the following reasons:
1. In PHP strings are byte arrays and without context it's not possible to know if "123" is actually a number or just three bytes of 0x313234
2. The other bitwise operators `|`, `&`, `~`, `^` already take it as byte array, only the bit shift operators try to be smart here
3. Non numeric strings already fail with "Unsupported operand types: string >> int"
4. This makes working with byte arrays unnecessary hard and forces you to use limited and system depending int's.

https://3v4l.org/IBUDD

While processing strings as byte arrays using bit shift operators needs a separate RFC, I think, if there is an agreement on deprecating this implicit cast it would already be beneficial to have this sooner than later.

What do you think?

Best regards,

Gina P. Banyard

Best,
Marc


--------------GT99MeVre0g81Kkt0lqQPt7O-- --------------wn0fDoiOjfulsRq3hr5RXDuq Content-Type: application/pgp-keys; name="OpenPGP_0x3936ABF753BC88CE.asc" Content-Disposition: attachment; filename="OpenPGP_0x3936ABF753BC88CE.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFby8roBCAD4qHjbk9+V3SmB5DfpkTtX58jYJ9VXVfF54MDoI0fQiYvKyrrg hfO78alHc12RsEZxLH2F5kEfu8WO4wA4apg2gBnRRxqPj7krsct1ySOAdMrRVp8W taeaznpdcn2gJZyAMSI6LTzebT25N77ksvSrUi1BuCKyOa7SmYff3xGgOwYsHQlT 5opMNGPCVegiPmO/K37anwtsgj6L7RVtjXtp2Z3wAs6r3EmO318PL48xDLUgYMvE FAPJglth5FGH2En6n6HFIhxh43LqXQiNeHVjLjS2y8huNBswwc9ZVxk3ip5z/GCm pWnNkgGBOSJ7loJRsq2tOaU6yU8KWb5rhOoFABEBAAHNIU1hcmMgQmVubmV3aXR6 IDxtYXJjQG1hYmUuYmVybGluPsLAeAQTAQIAIgUCVvLyugIbAwYLCQgHAwIGFQgC CQoLBBYCAwECHgECF4AACgkQOTar91O8iM6jzggAwvV6MqU/hcAI6ldpxVjucGz2 J9cAWtva8GL+rm9zvEs7EENtamehJiZob/CTw50WiI/zsJzPblktpT0D2AFBEp9k P5/8CmCpZzxYPsxnLtsFM52fOBpO+aP0PSStBpJjndjBH7HPqKcTCXM3ZM+SL6ly RweAJR7G+JXIZbuUrbjB2lbGx3itNZ6TeXqqnE6KTXNKLEbNHfVdzE4sPDkmuZRo /M2h+gmeS1iQb29WBmhvL6czugCQI9rYl7C4Nci9wPii1lTYyfCWQfQKID4/F2Hi Ov+N/vDMCK1xV8TUeCy8w4X+nYj+wDog046ki9lUM60oPij6WoSJLqfsXr1kNc7A TQRW8vK6AQgAq7QYLB1Dz+8RSi5AGJP1tOFQXtcxyOhNVQZsI1mCQiHay4wteQ+5 m4EOUuR+FrFIlnbSrPdTkKD2wvQDHVqpZivThBpJvara/ick0wi2R3dasu1sPMu1 P6h1EwUsydhviNJB07aLfPAWD6eoqmGTd8236znIIq7mbnNpOnxIQxviTyELUekr Nw38uQtVzR6XZv9PAThA2o1J1JZID7QUpKcNyo9ebYlwxyS+xzhA4DLDqfD6O5sK oKvxEf2fIZeP0ETPpHNYk0WiWnmNoPy8eEY07LriYALVidBwPBcxus0wGoKf8Nun y2aE13SHmj0ioBI1bXMGJx3hEbvzXK6WrwARAQABwsBfBBgBAgAJBQJW8vK6AhsM AAoJEDk2q/dTvIjOkowIAI70P8U4j3eqyK/7x1bnCZZRcpwZ1aH+LR1yMKTINo9N DqlOBWQTLT69YMfV4UN+nTSiD/uLw1fSeLSzBwpoalCMLPVOX/d3Mq5JtL5cKtWU TIVf3Vb7VbN4Rvb8HgWjeSnM1PiG9yQBmLKI68sG/gdgvA/xANdUatkDgG0yj8PC dt+Vy4EblXbIAXZXJ6eRugSKowTjst7iHXKOJxivomHFcmqmkiqjwGTGx/jrhbDt EpPDRk+U9W45D4CbUcyPR6lMSrje5JPGQDv/45M5wPe286YelBjnb0cWRJpA7GZC WDKZOsQ2H6cCRBi8i4m+vfRk7GLA536XnmvWxKFVP9U=3D =3Doi2m -----END PGP PUBLIC KEY BLOCK----- --------------wn0fDoiOjfulsRq3hr5RXDuq-- --------------VFtWsTFlzaBDSwhyGd5lH5IV-- --------------lMTiGyevQJqVHv0scTciMWTE Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature.asc" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEENJIbKB0SAX2RmUKbOTar91O8iM4FAmaDotwFAwAAAAAACgkQOTar91O8iM7q Qgf+KKQWvXxvwVylwFxNZ2X1Lty5v0+VbzlN76+cNMIhwvQ9tcBUPOl+fnhdZRMlBtOkDdMKkKmn H9s9fE94CdMTlhisYF8EVQ+8wNgGeP+Y9rD0G1lz4l3pbCWF6qCzdnvxS+tJJ+nmPpb/8NGJs8h3 CeGb/7Bb+7cEZf9Eu6wjNsUOBA3NX9G9Ul+bcAPzGmoJg1TGgcYQA9t8jjno41ZEA0RBSKvVy7Y4 z1nGaSJbjoye6lScHbj3e7Tgr2WPqV+JZ460LjATcis9IfECf4mpP6vnSYCj9ySqwSeQvKyKVRnu S4bzwimOK//uWQW/c4kV6U9i1yMqqtxCbVyPj0i1Sw== =pq3k -----END PGP SIGNATURE----- --------------lMTiGyevQJqVHv0scTciMWTE--