Problem/Motivation
When upgrading a Drupal 11.1.x website to Drupal 11.2.x, I encountered the following message when executing database updates via update.php:
An AJAX HTTP error occurred.
HTTP Result Code: 200
Debugging information follows.
Path: /update.php/start?id=1&op=do_nojs&op=do
StatusText: parsererror
ResponseText:
Fatal error: Type of Drupal\indieweb_webmention\Plugin\views\row\Webmention::$base_field must be string (as in class Drupal\views\Plugin\views\row\RowPluginBase) in /var/www/html/modules/contrib/indieweb/modules/indieweb_webmention/src/Plugin/views/row/Webmention.php on line 22
On the subsequent error page which was a WSOD, I saw this message (possibly unrelated)
The website encountered an unexpected error. Try again later.
TypeError: Drupal\Core\ProxyClass\Render\BareHtmlPageRenderer::renderBarePage(): Argument #1 ($content) must be of type array, false given, called in /var/www/html/core/modules/system/src/Controller/DbUpdateController.php on line 211 in Drupal\Core\ProxyClass\Render\BareHtmlPageRenderer->renderBarePage() (line 73 of core/lib/Drupal/Core/ProxyClass/Render/BareHtmlPageRenderer.php).
Drupal\Core\ProxyClass\Render\BareHtmlPageRenderer->renderBarePage() (Line: 211)
Drupal\system\Controller\DbUpdateController->handle()
call_user_func_array() (Line: 115)
Drupal\Core\Update\UpdateKernel->handleRaw() (Line: 76)
Drupal\Core\Update\UpdateKernel->handle() (Line: 27)
The updates that my database wanted after the update included the following:
system module
11200 - Add a [time] column to the {simpletest} table, if existing.
11201 - Add the [alias] field to the {router} table.
Updates entity_form_mode descriptions from empty string to null.
Remove path key in system.file.
block module
Updates the `depth` setting to NULL if it is 0 in any menu blocks.
file module
Adds a value for the 'playsinline' setting of the 'file_video' formatter.
update module
Removes the legacy 'Update Manager' disk cache.
views module
Defaults `items_per_page` to NULL in Views blocks.
Adds a default table CSS class.
Clean-up empty remember_roles display settings for views filters.
After trying to update, failing, and checking the list of remaining updates, it appears that the update that cases the site to break is the "Adds a default table CSS class." update in the views module.
Steps to reproduce
On a website that has views, indieweb, and indieweb_webemntions installed (and has web-mentions on it), try to update to 11.2.x using composer, then attempt db updates.
Proposed resolution
Remaining tasks
User interface changes
API changes
Data model changes
| Comment | File | Size | Author |
|---|---|---|---|
| #3 | 3545178-3.patch | 639 bytes | swentel |
Issue fork indieweb-3545178
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
abenbowComment #3
swentel commentedSorry for the delay on this, I missed the issue report in my mail for some reason.
It's been a while of course since the update, but the attached patch should solve the issue - for updates, but probably also in case you would use views to render webmentions.
Comment #5
swentel commentedAlright, all deprecations in the module are fixed.
There's one in an external package for which I've created a pull request, see https://github.com/aaronpk/p3k-http/pull/3
Will trigger a new release in a couple of minutes.
Comment #6
swentel commentedNew release out with these fixes https://www.drupal.org/project/indieweb/releases/8.x-1.27
Comment #8
swentel commented