Skip to content

Form rules: declare nullable parameters (PHP 8.4 deprecation) - #28

Merged
codeling merged 1 commit into
mainfrom
ccr-c4633bb2-v97st1-deprecations
Nov 6, 2026
Merged

codeling merged 1 commit into
mainfrom
ccr-c4633bb2-v97st1-deprecations

Conversation

@codeling

@codeling codeling commented Nov 6, 2026

Copy link
Copy Markdown
Owner

PHP 8.4 deprecates typed parameters that default to null without being declared nullable ("Implicitly marking parameter $input as nullable is deprecated"). The six form rules in admin/rules/ declared test(..., Registry $input = null, Form $form = null). They now use ?Registry and ?Form, which is exactly the signature of Joomla's own FormRule::test() in Joomla 5 and 6.

These are most likely the "Deprecations: 6" the plugin's integration tests report on every Joomla 6 / PHP 8.4 job, on main too. They're the only implicitly nullable parameters in both repositories, and there are six of them. The plugin PR on the branch of the same name (codeling/bfstop#258) makes PHPUnit print deprecation details, so its CI run against this branch shows whether they're gone.

Locally: php -l passes on all six files. I couldn't run PHP 8.4 here, so the PHP 8.4 jobs in CI are the real check.


Generated by Claude Code

PHP 8.4 deprecates parameters with a type which default to null without
being declared nullable ("Implicitly marking parameter $input as nullable
is deprecated"). The six form rules declared Registry $input = null,
Form $form = null; they now have ?Registry and ?Form, as Joomla's own
FormRule::test() has in Joomla 5 and 6. These were the six deprecations
the plugin's tests report on Joomla 6 with PHP 8.4.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AFJFMMUpch4LGexEiXN8Nc
@codeling
codeling merged commit f06c36b into main Nov 6, 2026
13 checks passed
@codeling
codeling deleted the ccr-c4633bb2-v97st1-deprecations branch November 6, 2026 12:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants