Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:127920 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 5E1FD1A00BC for ; Sun, 6 Jul 2025 16:11:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1751818181; bh=OpQ4rqpj3uqQkjED8eHJWhWyY0payhRhwXVQWOkjL+o=; h=Date:Subject:To:References:From:In-Reply-To:From; b=OQ9D0EOhq9oD+w4IQZkrbKclQ2UBEjIZxWvuPRDyjEW7NwuMtwYvNFXVBj1V85NNF 2w8pscVDDh871ZMg7WNrTM9XoxedhWFqRptR+ROy0ZcgUwkclyDMnjSOvsV1ZsSjHh NZeRsbrM1JbHiFEZ1o+YJtwXGeDuzgZSHODpo5ipfgeclTKFoXjwaYMDNkOozbHNgn 62wjA9NePdVopcZLJrbbpArnLohKwroPMXIFU/n9PWWLX7DtwNhEEOj0rPzp3fo4mg UY829xyooXiWOFe0HcpQtziVhrlMRUknjkpzScDoQ0gXF80WM3DmXbHxwVXFC5wL+U sVzA6iQpZ0Y0w== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id F0873180061 for ; Sun, 6 Jul 2025 16:09:40 +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=-1.1 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_20, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS, FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,HTML_MESSAGE, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Virus: Error (Cannot connect to unix socket '/var/run/clamav/clamd.ctl': connect: Connection refused) X-Envelope-From: Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05olkn2061.outbound.protection.outlook.com [40.92.89.61]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (secp384r1) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Sun, 6 Jul 2025 16:09:37 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=dmOVknIeV/X7eCw4/uCi3eqQnDPkVXsNwzTTiD+HKtLnO8yDuA59oV0ZE6q4I+q/lP5BW1yKhNda0zx4ZkVVTsdoUuNZqR6iU/nQ797d4+AdsLbS/gmO2EGpVUaZa8H29c6yRPns8YyTAd3htIVYkS/wdAMAZpGoANVEfC4cPwo4y7wJLpwVQjJtl9NfHCOw0KjurXEVYwwSLaS7VeR1bj6X1oRZq4jK/EXk+dMkizmdlX8hRXPD9qZc1meZF22YyBh8fPYMPULOE4Y5qmJbyicrg92NEP+msJ4BkSgCvrXDm9OMlRidaMAm9Zt1ZvvtRF9dlEr2i8J390k0qRuGfw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=6L2TN/IWrRn1ctxFYUcILrFo1XYyR3xKBwXW9MrhZdU=; b=DZo2Svwlj6qxnw+he8eztFTsh6cTR/V7xy502KnpyGSNB29azbg0R9fhXkTmIj6GbDaXMYiDPpP9sifKvkV16X8ofcggxxnL/kveuvWeE7TXaqyA2buCSDXw0mFRS7RT0RWsT7wAO+4fy+RgL5SwbQe/IYQzVT8sYjdoa/hG4/LL2yndjcQmwWuJqGGSrUXYeDwp/ky6yaDstIgSQoRm1T2km/veNacg75L0DFhBsHSjN+qjOColNqqOjmoyQbKL+kOsdnKtDcCH90U7+hqxju+WUDkqjL8/4P4/KY+ubIua1/RG7AfJLEvfeXAaebGwQzFeCGHUafzhr4l/9t2mvg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6L2TN/IWrRn1ctxFYUcILrFo1XYyR3xKBwXW9MrhZdU=; b=NEO5IqLnZua2X1bsnALSDMHDfzAwEo5uUwpVhpJcBlcx1YNAympRx97SgAfCZncnJNZWnTOicjyDZ41yG/VMz3D9fXeTktkW2AEJPfYekv09eiVAWSzpWDPCdpywNxXwADSnzkIeYyBMFzePmNZWKJVliX8+e9B1Zdc+SxiWx0istOSzwozGKXQaQXQgWLXUB+8cZrvH2SQ4b1T/ZoX+u3NjQnPgCHBnA+qdYmKjbtOHKMRcarpEg0tTGhKaELS5DLtivnQzqMl2gsrzzInYNizlWwWhfNKPbgNm1DI9PEpF/2fH/iofYI4yNW5oNirSNWPYi6RJ61U75BSrWnUsrQ== Received: from AM8P250MB0170.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:321::21) by AS4P250MB0893.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:588::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8901.21; Sun, 6 Jul 2025 16:11:26 +0000 Received: from AM8P250MB0170.EURP250.PROD.OUTLOOK.COM ([fe80::651e:bbd2:b18a:80ff]) by AM8P250MB0170.EURP250.PROD.OUTLOOK.COM ([fe80::651e:bbd2:b18a:80ff%6]) with mapi id 15.20.8901.023; Sun, 6 Jul 2025 16:11:26 +0000 Content-Type: multipart/alternative; boundary="------------hoAIWd9jvkW6FOf40LSz5SWc" Message-ID: Date: Sun, 6 Jul 2025 18:11:25 +0200 User-Agent: Mozilla Thunderbird Subject: Re: [PHP-DEV] [RFC] Deprecations for PHP 8.5 To: "Gina P. Banyard" , Niels Dossche , internals@lists.php.net References: Content-Language: en-US In-Reply-To: X-ClientProxiedBy: FR4P281CA0210.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:e5::11) To AM8P250MB0170.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:321::21) X-Microsoft-Original-Message-ID: Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM8P250MB0170:EE_|AS4P250MB0893:EE_ X-MS-Office365-Filtering-Correlation-Id: 7c891a6d-6423-43d8-70ac-08ddbca7c269 X-Microsoft-Antispam: BCL:0;ARA:14566002|9400799033|461199028|8060799009|7092599006|15080799009|12050799012|12121999007|19110799006|41001999006|5072599009|56899033|3412199025|40105399003|440099028|10035399007|12091999003|26104999006; X-Microsoft-Antispam-Message-Info: =?utf-8?B?emMwODgzazNwcDFEelY3MjBlRW5KQjViL2hJbXRxTWl5TStmQ003R09hRGlp?= =?utf-8?B?dFJTTVFMc0JmdU5Pb1lPWVVWbUl4ZWFDdjZjaXk4OUI4MzN2TTBnYjVQZTVw?= =?utf-8?B?M1ZsV3RnNnJWYlZNNEZLYjM0ekc1aS9RQjRCRGFwNmNIb0Q0bGh3cHhhMkJl?= =?utf-8?B?aVBLTGRDcis0RmpRb2lUTGRwM3Q4d01PM2JET2JCMG5CVWxMSm9jT3JZak9R?= =?utf-8?B?ZU5OVGNlM1MzSENMbys4MlEvL0NnT0t5eE10WFp4di8vR1d1dWpIaEUwY0Y5?= =?utf-8?B?d2UxNVFOcFJML0hjTTIwdXRLNHkzcWwrZWM3NVBXTE9TMGg0bms5M242bVJG?= =?utf-8?B?MjluOGl4N1dtZjcvRStHWERuSFVuMjJST1B4RjBIUzR0bFVka1hnTW1rWXFp?= =?utf-8?B?emp0RWYzYlNQb3lwamY0Y3hKTzIrQU5OSmxtUjVzcVlkaWd1S3plRFdOT3pz?= =?utf-8?B?c0xLVnA1Z1BnS0Mzd0lqei9KdWhCVnRQUm5BYW1FcEc3RlZ2YmQvbldxcmtR?= =?utf-8?B?NDZsREd4Qmk1aTA0NFFHUS9wNlRiQSszN240dHllSFVpY1NQNUVBK3FzTk1r?= =?utf-8?B?TkFMa2NuMzNNN0hpS2hhYllYWmREZkZMSktGSjdhYUhQS2FJRm4wTVhGc1V1?= =?utf-8?B?SS9yUTk5RlZjRUtSd05VR1RvV2dRL0g2RGwzSG5MRjlzYjc4dFpvdFAybitF?= =?utf-8?B?Rk1iOWJ3a0JhSHNENXJUUFQrM3J0NFh0ZjJuUXBkb05aVzJhdDZkNEhKbkls?= =?utf-8?B?Tmo1WmJrUVNjTzgxTVBwSHk2MG83enMzUC9nWU82K2FtdzViVzVtTFdFaVc4?= =?utf-8?B?MWhXdGZ1Zk5wMlBCN2RjUlNUbGVOQnVidXU2T3krMExkTjNPU3Q0bDh6Vkdr?= =?utf-8?B?QlVrVXlLSnRwZ0tGUFZWOUNhTFhwSjgzNlFDdm5QM0kwWnVKNWszcnFhb0VI?= =?utf-8?B?Mk9RYW1OdUlQRjNqY0hubm16NDVDZWNvVHZnWmhUQ3Z2UEhBc0lmOHkwV3Jh?= =?utf-8?B?QTBCY1BzQkFMK2x3Tk5RVHhnWFJNQU1wVk5hUjI1NnRXSFUzRVFNRkNSR2F6?= =?utf-8?B?cnRjNklGZXdLck1WMzIrYVVnVlFXQXlMUWdOSEErS2MxTThvK29Nb1VBRkZ2?= =?utf-8?B?UHR3S2dVRXZ4ZHR0aHhQRGR4QlMvaXZjTS9DcXl5RGV0eitRWWh3eWxMaWFy?= =?utf-8?B?bVBEeFRaSXNOYVJlRTg0YUFwTUlFVEVBdGdVdXppM1JzQmVUVEU0WmZPR3lj?= =?utf-8?B?RW5JdlNSejV3M2ltZzc4WHNQa1pjNmhhR0NQL0QxQWFONitCckJZWWk0cEVn?= =?utf-8?B?UGNpaHNFQ3BxUlJabys2RTlXa2RRUHErUE10UGVXenJMaHcxdnZ5TnMvamVr?= =?utf-8?B?ajRFUGlxUE1YTHJiOXZKZjBNOUVEUHZzVGFITHdpemtJaE9LVFl4Qy92WC81?= =?utf-8?B?V1NHeHArQnJSNDhpem5tV29zMEovZjVDdmIvVGJHbDlrTFVqb01PU2d5Wldq?= =?utf-8?B?VDhjRFh3YUp6TmZkdzd2Q3ZrYUVneDRKUHFqV1lVVnE3cVlsUDhZdGNJd0FN?= =?utf-8?B?Y1pRbEttY0xKQmsydzN5ejJtcjFmNitiZVpJR1p5UjlPUHRCaHlpSnR5bmdT?= =?utf-8?B?L0JJeWxWTTRPNDNrVnpiWllqRURCWWRCcXV5bnRKeXhEdWNUYmF5MGhwSXZF?= =?utf-8?B?UzlOVWptaDZtR3M0TkJYN3VZbXlpVnVnN0hKV3dzS3lFbkwyZnZkeGJ3QXgr?= =?utf-8?B?eXZBZkV2SjVDLzgwNUMwakNCNGVBSktrUStJTVpSNVZKVDBPWVZJRWY0Q2xv?= =?utf-8?B?cVBFWENJbUZKQlhrWjJhb2gvdWhTZ3lTajA0aEZrVEllbmh5UWdteXZocWhS?= =?utf-8?B?V2haaklLemVEZmRjMHlaY1BmdVdjRkRyKzFGQnNhTHA4NEE9PQ==?= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RkxGaDF4d2VlOE05MlhEdEh1OFV1T0FkN2hjRjRlWk82WGdiQTJqanZqaUN3?= =?utf-8?B?T1pIeER6QlhNYzJlWWQwS1hGNEdtU2ExUzFSL2orQndrd09hRS9GK1Zza2lT?= =?utf-8?B?L1JZendqV29UcE03Y0VWb1pUZkpkb1NuMHpyQU5jTWM5SmhUMWhGY2hZb0lt?= =?utf-8?B?VnAzeTBlanFLTEFFbU94OGdOaWdOSm1zY1hCUFo0b3pxOE9naFN0Q0d6c0Fj?= =?utf-8?B?c0ZPMkpDQWUvOHVUeWVaclVNU3lSc3I4YWlhMHlrZCtycFVkZ09mZit1OVM2?= =?utf-8?B?K21xTXMyWEE0b3NRTE94d0lZQUJFanR6WnVHWEhLRndrOVNibzVqNExUb2E0?= =?utf-8?B?TFNNdVIvUG9YVUROZDE2YzhDMkNzQlY1bFd5bUwyVlNDS09yeU1HaUN1cVlP?= =?utf-8?B?cDlIZk5na1VVSG1VaUYyYktjTVRNQnB1U0dRdDR3N3BMTEZ4L2ZEcHB1VmRS?= =?utf-8?B?R2ExYXpIUmlVb25YTUxvVWYzZVZuZlNEL1Z6bElUU090Rm4zSnRMbHVnU1lE?= =?utf-8?B?UTJVckJTbjFYdWc4MGttYWdSbU0wajg0aVJtbStYaEU1Y1RYcGQwalVuOWJ6?= =?utf-8?B?MXRDNmtsMlp5bFQ5d2x0Q3A3THdBbW1WN0FRQ0xmSGk5S0JhbnljUmdqUWFt?= =?utf-8?B?SnlXbGU2aEY1MnloNFc4VTFidkEwbzBpQ0J4dUpsQWwxaEtxSkVaZEhWYzlP?= =?utf-8?B?QVp4L2NiMHRqaGROTnQ5SUd5d2tyaEVhSFNzOWxBd09Sd2w5TTQzK1Z0bnFm?= =?utf-8?B?Rkg2ZCtVaDlxU1BySTVTUmhBU0ZPMFdyZ2h0VCtZbDRUNVg4Y1NMWDNreGI5?= =?utf-8?B?TTRncVl1OHVndVJzNXRYa2NTSDhGQXAyOFlGMHhGckg5ak9BS1N1R1NpZnl5?= =?utf-8?B?elRRbElnK2VUWlJNd2dweWdCeXVYbDNaZVh5cjF4UURSK04xbmdVSi91UVFS?= =?utf-8?B?d095b0RpU1VLRDNLaDJ4ZHlIOGpwQUtyWm9EYU4zNkxYRmlZbllxMlJ3bWt6?= =?utf-8?B?eG5peFlZZWFkQVN4ZFR0d1NRQk1ZMFZhS2pSWDZUb3plNDQ1VW1BdmxyK1hB?= =?utf-8?B?cUFMUFRrc1BPbDA3cWd0Z21CaUIyVTRTcVFZbjZCUXlHcXkrNENpaWhOZG9D?= =?utf-8?B?cEZyODNaaDBjWlo2TTEwbFFVdkIvUkVTTENvSmg4bHZLV3BuVng3bUtpUzMz?= =?utf-8?B?c0hEUU1xOUo2cUJtRFdFakdUNmN6OGJKbnVFdlM3cGVEakVsMFQ2ZDd3VlQ1?= =?utf-8?B?OGtEMHhaaVpKSWk1WVc0aklPamp3Nyt5MWVOd2dqTlhpby9oVWx2aDJnYk1x?= =?utf-8?B?N0VxYVZlMURIcHR5dzJHQmpHL2hMWUNaTi8yUC81YlBjcnYydVh6emF1ZFl0?= =?utf-8?B?TVcxN0taRmt0NUFMUW9iMk8rTWRJTWlEQy9pYm0wS2lscnZSc25iRk4yQnZW?= =?utf-8?B?Z1RERGhQREpBUHZDcnRaZjRueEsyWTdCa2pzR3RrYjNnVjQxTTRuSm01ZHVt?= =?utf-8?B?WndvcVlvTk9qcWVMOGdsbFJXbmdNU2FFRGw1RWljT01GWk13M2w2OVhsSWJU?= =?utf-8?B?QnJ2b2J0TGtKejlkMnBOZDRaMWs3U256N3dVQzdTMkpicDlqaUorZlY3c3dq?= =?utf-8?B?aStyemc2cVN2d2NOb1pEWWdUQStpVVJUVFNvNng3OHVOS3RFa1ROSHZ0UGIw?= =?utf-8?B?RjMycE90dFVMeCtwdG5tMzMwZGFWckNNS1R1V3I3Ukp4cUdPR0dJUVZHcGR4?= =?utf-8?Q?NOTCmrEEFhUxUD0gk8=3D?= X-OriginatorOrg: sct-15-20-8534-15-msonline-outlook-5f066.templateTenant X-MS-Exchange-CrossTenant-Network-Message-Id: 7c891a6d-6423-43d8-70ac-08ddbca7c269 X-MS-Exchange-CrossTenant-AuthSource: AM8P250MB0170.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jul 2025 16:11:26.8100 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4P250MB0893 From: bobwei9@hotmail.com (Bob Weinand) --------------hoAIWd9jvkW6FOf40LSz5SWc Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hey, On 4.7.2025 09:01:52, Niels Dossche wrote: > Hi > > First of all, that's a huge list of deprecations and I think we should tone down on that. > Especially if a feature still has a purpose and is not harmful or buggy, then we should probably consider not deprecating it. Yeah, I agree. The list of deprecations is too big and possibly should be multiple RFCs. Let's keep it in mind for next year at least, please. Deprecating should be a selective process, just like adding features is. I don't think we really have big RFCs which simply add a bunch of _unrelated_ stuff. > Secondly, I'm tired of having to deal with useless deprecation messages. > A lot of deprecation messages are completely useless for developers because they do not point to a reason or a replacement. > That leaves you needing to look up the documentation, which is also incomplete. > Seehttps://github.com/php/php-src/issues/14320 > Therefore, any deprecation proposed in this RFC that does not explicitly list the deprecation message, I will vote no for. Good idea. I can support that. > There are some things in the list I don't care about or I don't have a lot of insight of its uses in, and I will abstain for voting on them. > > There are a few things I will vote no for: > > * Deprecate semicolon after case in switch statement. > People seem to use this and it doesn't seem harmful to have. Just because you don't like it doesn't mean we should yeet it. > > * Deprecate attributes applying to multiple class properties/constants. > On the edge, confusing yes, but it might break real code. > > * Deprecate using values of type null and bool as array offsets and when calling array_key_exists() > Deprecating this would make the language more inconsistent by allowing this on array offsets but not on the function. > > * Deprecate __debugInfo() returning null > Weird, especially as the docs say the return type is ": array", but not harmful. > > * Deprecate ReflectionParameter::allowsNull() > This shorthand doesn't hurt anybody, and is convenient, I don't see the point in deprecating it. > > * Deprecate passing spl_autoload_call() to spl_autoload_unregister() > This is very ad hoc, and as Ilija pointed out, we can't prevent workarounds for this. So what's the point really. > The behaviour may be weird, but notice that people won't do this by accident. That one is probably just getting rid of the special casing in the code, which I'd support. > * Deprecate passing null to readdir(), rewinddir(), and closedir() > Dubious but not really harmful I think. > > * Based on Derick's comments I will vote no on the ext/filter deprecations. I was already going to vote no on the filter_* functions though. > > * Deprecate driver specific PDO constants and methods > Too early. > > Kind regards > Niels To add to Niels list: * Deprecate passing string which are not one byte long to ord()   This behaviour is consistent with mb_ord() as well. If we deprecate one, we also should deprecate the other. But that makes no sense, because the latter is not fixed with. So let's just not deprecate either. * Some INI deprecations: ** Deprecate the docref_root and docref_ext INI directives    What's the point? Why do these need to be deprecated? If these are not set you do not get clickable links at all, unrelated to mirrors and such. ** Deprecate the error_prepend_string and error_append_string INI directives    Why is that of questionable use? Why is "this is a development and debugging feature" considered a valid reason to get rid of something? It allows prominently displaying issues in development when they would be hidden behind other HTML otherwise. ** Deprecate the report_memleaks INI directive    So, "I'm currently working with this code having a known memory leak and I want to suppress it" is not a valid reason? If you select that that's a very deliberate opt-in. Bob --------------hoAIWd9jvkW6FOf40LSz5SWc Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit

Hey,

On 4.7.2025 09:01:52, Niels Dossche wrote:
Hi

First of all, that's a huge list of deprecations and I think we should tone down on that.
Especially if a feature still has a purpose and is not harmful or buggy, then we should probably consider not deprecating it.

Yeah, I agree. The list of deprecations is too big and possibly should be multiple RFCs. Let's keep it in mind for next year at least, please.

Deprecating should be a selective process, just like adding features is. I don't think we really have big RFCs which simply add a bunch of _unrelated_ stuff.

Secondly, I'm tired of having to deal with useless deprecation messages.
A lot of deprecation messages are completely useless for developers because they do not point to a reason or a replacement.
That leaves you needing to look up the documentation, which is also incomplete.
See https://github.com/php/php-src/issues/14320
Therefore, any deprecation proposed in this RFC that does not explicitly list the deprecation message, I will vote no for.
Good idea. I can support that.
There are some things in the list I don't care about or I don't have a lot of insight of its uses in, and I will abstain for voting on them.

There are a few things I will vote no for:

* Deprecate semicolon after case in switch statement.
  People seem to use this and it doesn't seem harmful to have. Just because you don't like it doesn't mean we should yeet it.

* Deprecate attributes applying to multiple class properties/constants.
  On the edge, confusing yes, but it might break real code.

* Deprecate using values of type null and bool as array offsets and when calling array_key_exists()
  Deprecating this would make the language more inconsistent by allowing this on array offsets but not on the function.

* Deprecate __debugInfo() returning null
  Weird, especially as the docs say the return type is ": array", but not harmful.

* Deprecate ReflectionParameter::allowsNull()
  This shorthand doesn't hurt anybody, and is convenient, I don't see the point in deprecating it.

* Deprecate passing spl_autoload_call() to spl_autoload_unregister()
  This is very ad hoc, and as Ilija pointed out, we can't prevent workarounds for this. So what's the point really.
  The behaviour may be weird, but notice that people won't do this by accident.
That one is probably just getting rid of the special casing in the code, which I'd support.
* Deprecate passing null to readdir(), rewinddir(), and closedir()
  Dubious but not really harmful I think.

* Based on Derick's comments I will vote no on the ext/filter deprecations. I was already going to vote no on the filter_* functions though.

* Deprecate driver specific PDO constants and methods
  Too early.

Kind regards
Niels

To add to Niels list:

* Deprecate passing string which are not one byte long to ord()
  This behaviour is consistent with mb_ord() as well. If we deprecate one, we also should deprecate the other. But that makes no sense, because the latter is not fixed with. So let's just not deprecate either.

* Some INI deprecations:

** Deprecate the docref_root and docref_ext INI directives
   What's the point? Why do these need to be deprecated? If these are not set you do not get clickable links at all, unrelated to mirrors and such.

** Deprecate the error_prepend_string and error_append_string INI directives
   Why is that of questionable use? Why is "this is a development and debugging feature" considered a valid reason to get rid of something? It allows prominently displaying issues in development when they would be hidden behind other HTML otherwise.

** Deprecate the report_memleaks INI directive
   So, "I'm currently working with this code having a known memory leak and I want to suppress it" is not a valid reason? If you select that that's a very deliberate opt-in.

Bob

--------------hoAIWd9jvkW6FOf40LSz5SWc--