Fix PHP 8.4 deprecations

Created on 17 March 2025, 6 months ago

Problem/Motivation

There are a few issues with PHP 8.4, all of them related to the implicitly nullable parameter being deprecated now, requiring an explicit marking declaration.

I see the issue 🐛 Deprecated: PHP 8.4 Active fixed a few, but a couple still remains, most specifically for the Context UI submodule.

Checking the code using PHPCompatibility code sniffer:

FILE: /var/www/html/web/modules/contrib/context/modules/context_ui/src/Form/ConditionDeleteForm.php
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 92 | WARNING | Implicitly marking a parameter as nullable is deprecated since PHP 8.4. Update the type to be explicitly nullable instead. Found implicitly nullable parameter: $context.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


FILE: /var/www/html/web/modules/contrib/context/modules/context_ui/src/Form/ReactionDeleteForm.php
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 95 | WARNING | Implicitly marking a parameter as nullable is deprecated since PHP 8.4. Update the type to be explicitly nullable instead. Found implicitly nullable parameter: $context.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Time: 351ms; Memory: 8MB

exit status 1

Steps to reproduce

Test the code base with PHPCompatibility code sniffer.

Proposed resolution

Fix deprecations.

Remaining tasks

None.

User interface changes

None.

API changes

None.

Data model changes

None.

📌 Task
Status

Active

Version

5.0

Component

Code

Created by

🇨🇦Canada maursilveira Windsor, ON

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Merge Requests

Comments & Activities

  • Issue created by @maursilveira
  • 🇨🇦Canada maursilveira Windsor, ON
  • Merge request !623513516: Fix PHP 8.4 deprecations → (Open) created by maursilveira
  • 🇨🇦Canada maursilveira Windsor, ON

    I've created a merge request with the fixes for the PHP 8.4 deprecations.

    I'm also attaching here a patch file for the same fixes, for composer patches.

    Please let me know if you have any questions. Thank you.

  • Status changed to RTBC 21 days ago
  • 🇸🇮Slovenia deaom

    It seems gitlab-ci is not added for the 5.x-dev branch so pipelines are not running to see if changes actually break anything. The gitlab-ci was added in issue 🐛 fix phpstan warnings Active for the 5.x branch, so maybe best to merge that issue once RTBC so testing can happen for MRs. I'm setting this to RTBC as it seems nothing get broken by manually testing the context added on the site.

Production build 0.71.5 2024