Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:127873 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 8AF191A00BC for ; Fri, 4 Jul 2025 07:02:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1751612414; bh=lVE5x9jNHdzA1yUtLSURpZatl7ER+FP0L3+Bf348Auc=; h=Date:Subject:To:References:From:In-Reply-To:From; b=PJtYlkLrOCIU+LxzD6u5r1aPu/cPL0MzRKng6To+E0M75Zv5xX9DVcjPkhe1IeAcD UW1f3Y+JBHGo0SJ2NSc3AXvTVGKtDgwpJclX229I6CE7q/kt5VMewIEvzcaTOzRxZs 5uFJotgDSEdsIEyfknU7yR5UkTa/q5Yilm0txisd9elQU4gqMwfaaKcrXydutocSrt V9e+I6o06r6edMGv9RXzcjvonIASNtNfYch4cbzRYAM+Y1k7MazAFJNBMTZoCMQpGx /RXrAlguxHJNID/6j++wvR+SmCqBouCnfYdWjgUYOm0BJbpfJN/3vDEOo47MmSHdqL P95BlXh/yKmHQ== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 512FE180041 for ; Fri, 4 Jul 2025 07:00:13 +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.2 required=5.0 tests=BAYES_40,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,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 mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) (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, 4 Jul 2025 07:00:03 +0000 (UTC) Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-451dbe494d6so6303255e9.1 for ; Fri, 04 Jul 2025 00:01:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1751612514; x=1752217314; darn=lists.php.net; h=content-transfer-encoding:in-reply-to:from:content-language :references:to:subject:user-agent:mime-version:date:message-id:from :to:cc:subject:date:message-id:reply-to; bh=E5CCV41Ro8K2s7gJdcmbrzyU+YFTwcevgCExQggPooU=; b=MG9GXg/amKb/1T+bI5Un6FnmSbV7Pz9xhwn4thf8xt7iLbFKKqYEOqqkV6eA/Tfy8O fF7I6h9XoE606uj7mJgWGMURnM746ssEcn98+1m6c4IkwJj/gJ0znHQ/bl0J4zwncyKa en42ClYRgX2VB8261b6v6KyyjLUCkpLyjlMC0RcGtC4uhD7N76Tx2TuoeTF47wqKgUPh CsTJVUg1tXKh0ry26gjiA5M2Z7ST+1J9EWWk/kugi28OO9REiIxZjyJQIJQlKgHYBDmI wVcwOsQbEhfh1lNPgCNiacPXU5rvbvPkDb9t8eSLLsApp68OL8gZQU8xAfJFhbP+dlhd UuBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751612514; x=1752217314; h=content-transfer-encoding:in-reply-to:from:content-language :references:to:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=E5CCV41Ro8K2s7gJdcmbrzyU+YFTwcevgCExQggPooU=; b=elzqy5xoUHC7VxVjm4QGHqlFSmKHe7BLTkmQmSEXLHOimoF0XP8c4N3Zq864OS4FSj sN2jC9Ofk4E+xjvFMhOGJgQngEkrcr1ZqHB+mwMNb86GVKCzFEl7S/Buq9kmff0vBlnS gw03ATnFBsOFOTP/vhXZoTX23uoKwbocNJARuueiCOhnt1vQBw7o5cR8WFkTy4UaJhGX Iwcv+e5rxZhruS7YD8QB1TMXZizQ8UHH+UzMNF/UGOH2WSYZW5yROxMh97uqLm5uTRlu 863MkWayMjUHcTxiu1MwPkE9d3mGku3duQBjI9VdI6vxdnzfspdS/ZZjtrxfjgaxS61P U1iA== X-Gm-Message-State: AOJu0Yyw4YYSUwbb+qSQ6xl12rJs4kFpYSG78LKu6zTW+KtCd4oDYhxR lT8ooV7p8ZV1QYuH3+5jWQ8zVy7+9uql+G+btup7flMXys041hKhDsg1buhLxznR X-Gm-Gg: ASbGncsHLYimEJmnX3DP/ooSTv6hI56+16HZrdZo8pXtjJTZJgHJKsZJSY0UEnQ9sfQ Kz97peNCxek2HDvIWNU6WPO8m8gGA7klMuxB5WEtkb//P/czrwbR12ePhaa5IjOrW8GC+s3WoDf t+Vde/dKKfLR49Q2lXgO8CvElJyPny4fq9lvZnQc83B7J3t+nD1w4TC+ofQVUgyy0i0ihsObQU8 mUZrYZ7CRPbo/w9bfPxSmIEng45/4MwG12+9WAVS+2kP0kRMeDdawvInWVYXoktGn9TlXXvIqPN we9qErWuKVVQ2OMjMNRd8T8c6EZCLs4REDyclMAvxr0lDGBW8rqY+6QTiDE4UbHZgm6hS5Q/aLV thz/dKg7SeJiY6bBPQm+Uw//sWYIJZrI= X-Google-Smtp-Source: AGHT+IHQbWcxYhUkRIhl2ejPyCjAaYDEYyMVT+MkXo+cgp2F4hPvuGBLq8gQ66b8S7uOyzYPAfolKg== X-Received: by 2002:a05:6000:41f7:b0:3a3:652d:1640 with SMTP id ffacd0b85a97d-3b49700c684mr704264f8f.2.1751612513788; Fri, 04 Jul 2025 00:01:53 -0700 (PDT) Received: from [192.168.0.241] (178-119-85-231.access.telenet.be. [178.119.85.231]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b47285e241sm1694454f8f.94.2025.07.04.00.01.53 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 04 Jul 2025 00:01:53 -0700 (PDT) Message-ID: Date: Fri, 4 Jul 2025 09:01:52 +0200 Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PHP-DEV] [RFC] Deprecations for PHP 8.5 To: internals@lists.php.net References: Content-Language: en-US In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit From: dossche.niels@gmail.com (Niels Dossche) 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. 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. 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. * 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