Problem/Motivation
/admin/structure/views/view/articles/display-builder/page_1 has a fatal after upgrade to Drupal 11.4-rc2:
InvalidArgumentException: No converter has been registered for drupal.proxy_original_service.paramconverter.views_ui in Drupal\Core\ParamConverter\ParamConverterManager->getConverter() (line 37 of core/lib/Drupal/Core/ParamConverter/ParamConverterManager.php).
It may be related to this change in Core: #3436295: ParamConverterManager lazy services are broken and should use a service locator
Proposed resolution
in /modules/display_builder_views/display_builder_views.routing.yml
converter: 'drupal.proxy_original_service.paramconverter.views_ui'
+ converter: 'paramconverter.views_ui'
Careful, are we still compatible with Drupal 11.3 after applying this change.
Remaining tasks
I have another error:
"Call to a member function getPlugin() on null in Drupal\views\ViewExecutable->initStyle()"
Because when we load a View Exeutable from a View entity in ViewsSourceBase, the executable has no display set.
But it may be on UI Patterns side.
Issue fork display_builder-3607019
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #2
pdureau commentedComment #4
pdureau commentedPushed.
Let's check if the pipeline is still green.
Comment #5
pdureau commentedHello Jean,
I am not able to guess if the playwright fails are the timeout we have from time to time with View UI or something related to this change: https://git.drupalcode.org/project/display_builder/-/jobs/10628199
What do you think?
Drupal 11.4 is expected for this week, so let's move fast on this subject.
But we need to also check the
ViewsSourceBaseerror before merging.Comment #6
pdureau commentedhttps://www.drupal.org/blog/drupal-11-4-0 has been released
Comment #7
pdureau commentedI am afraid we can't be compatible with both 11.3 and 11.4, because I have this in
InvalidArgumentException: No converter has been registered for paramconverter.views_ui in Drupal\Core\ParamConverter\ParamConverterManager->getConverter() (line 39 of core/lib/Drupal/Core/ParamConverter/ParamConverterManager.php).I will add a Kernel test to check this.
Comment #8
pdureau commentedWe now have a kernel test tetsing this param converter:
vendor/bin/phpunit -c web/core web/modules/custom/display_builder/modules/display_builder_views/tests/src/Kernel/ViewsControllerTest.phpThat's nice because we are now failing at phpunit stage instead of reaching playwright.
So, with
drupal.proxy_original_service.paramconverter.views_uithe test is OK with 11.3 but KO with 11.4. Withparamconverter.views_ui, the test is KO with 11.3 but OK with 11.4Do you have an idea how to be compatible with both?
Comment #9
pdureau commentedSuggestion from @grimreaper: a route subscriber service.
Comment #10
pdureau commentedComment #12
mogtofu33 commented