Fields::getDetails() can return a TranslatableMarkup object

Created on 2 July 2025, about 1 month ago

Problem/Motivation

We get this error when running "drush security:review":

 [error]  TypeError: Drupal\security_review\Plugin\SecurityCheck\Fields::getDetails(): Return value must be of type array|string, Drupal\Core\StringTranslation\TranslatableMarkup returned in Drupal\security_review\Plugin\SecurityCheck\Fields->getDetails() (line 338 of /var/www/web/modules/contrib/security_review/src/Plugin/SecurityCheck/Fields.php) #0 /var/www/web/modules/contrib/security_review/src/Commands/SecurityReviewCommands.php(238): Drupal\security_review\Plugin\SecurityCheck\Fields->getDetails(Array, Array, true)
#1 /var/www/web/modules/contrib/security_review/src/Commands/SecurityReviewCommands.php(192): Drupal\security_review\Commands\SecurityReviewCommands->formatResults(Array, false, true)
#2 [internal function]: Drupal\security_review\Commands\SecurityReviewCommands->securityReview(Array)
#3 /var/www/vendor/consolidation/annotated-command/src/CommandProcessor.php(276): call_user_func_array(Array, Array)
#4 /var/www/vendor/consolidation/annotated-command/src/CommandProcessor.php(212): Consolidation\AnnotatedCommand\CommandProcessor->runCommandCallback(Array, Object(Consolidation\AnnotatedCommand\CommandData))
#5 /var/www/vendor/consolidation/annotated-command/src/CommandProcessor.php(175): Consolidation\AnnotatedCommand\CommandProcessor->validateRunAndAlter(Array, Array, Object(Consolidation\AnnotatedCommand\CommandData))
#6 /var/www/vendor/consolidation/annotated-command/src/AnnotatedCommand.php(387): Consolidation\AnnotatedCommand\CommandProcessor->process(Object(Symfony\Component\Console\Output\ConsoleOutput), Array, Array, Object(Consolidation\AnnotatedCommand\CommandData))
#7 /var/www/vendor/symfony/console/Command/Command.php(279): Consolidation\AnnotatedCommand\AnnotatedCommand->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#8 /var/www/vendor/symfony/console/Application.php(1094): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#9 /var/www/vendor/symfony/console/Application.php(342): Symfony\Component\Console\Application->doRunCommand(Object(Consolidation\AnnotatedCommand\AnnotatedCommand), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#10 /var/www/vendor/symfony/console/Application.php(193): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#11 /var/www/vendor/drush/drush/src/Runtime/Runtime.php(110): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#12 /var/www/vendor/drush/drush/src/Runtime/Runtime.php(40): Drush\Runtime\Runtime->doRun(Array, Object(Symfony\Component\Console\Output\ConsoleOutput))
#13 /var/www/vendor/drush/drush/drush.php(140): Drush\Runtime\Runtime->run(Array)
#14 /var/www/vendor/bin/drush.php(119): include('/var/www/vendor...')
#15 {main}. 

Steps to reproduce

Proposed resolution

Fields::getDetails() should either cast the return value to a string or add TranslatableMarkup to the return type hint.

Remaining tasks

User interface changes

API changes

Data model changes

πŸ› Bug report
Status

Active

Version

3.1

Component

Code

Created by

πŸ‡«πŸ‡·France prudloff Lille

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

Merge Requests

Comments & Activities

Production build 0.71.5 2024