- Issue created by @catch
- First commit to issue fork.
- Merge request !8559#3450868 Add ViewsConfigUpdater deprecation support for default_argument_skip_url β (Closed) created by Lendude
- Status changed to Needs review
over 1 year ago 1:12pm 27 June 2024 - Status changed to Needs work
over 1 year ago 2:17pm 27 June 2024 - π³π±Netherlands Lendude Amsterdam
As the test failures indicate, we missed removing some, or some new instances of Views with default_argument_skip_url got added after wards
- π³π±Netherlands Lendude Amsterdam
I think the remaining failures mean the database fixtures need to be updated? I think?
- π¬π§United Kingdom catch
The update should disable deprecation triggering probably - since we know that views that we update will need the change to be made.
- Merge request !12537Add ViewsConfigUpdater deprecation support for default_argument_skip_url β (Open) created by quietone
- π³πΏNew Zealand quietone
quietone β changed the visibility of the branch 3450868-add-viewsconfigupdater-deprecation to hidden.
- π³πΏNew Zealand quietone
@catch, sorry about that.
I went to update the MR and made a mess of it that I was not able to recover from. I made a new MR and hide, and closed, the original.
I am not sure what #7 means. @catch?
- π¬π§United Kingdom catch
@quietone as far as I know all the 11.x views post updates and associate code handle this correctly, e.g.:
/** * Post update configured views for entity reference argument plugin IDs. */ function views_post_update_views_data_argument_plugin_id(?array &$sandbox = NULL): void { /** @var \Drupal\views\ViewsConfigUpdater $view_config_updater */ $view_config_updater = \Drupal::classResolver(ViewsConfigUpdater::class); $view_config_updater->setDeprecationsEnabled(FALSE); \Drupal::classResolver(ConfigEntityUpdater::class)->update($sandbox, 'view', function (ViewEntityInterface $view) use ($view_config_updater): bool { return $view_config_updater->needsEntityArgumentUpdate($view); }); } /** * Clean-up empty remember_roles display settings for views filters. */ function views_post_update_update_remember_role_empty(?array &$sandbox = NULL): void { /** @var \Drupal\views\ViewsConfigUpdater $view_config_updater */ $view_config_updater = \Drupal::classResolver(ViewsConfigUpdater::class); $view_config_updater->setDeprecationsEnabled(FALSE); \Drupal::classResolver(ConfigEntityUpdater::class)->update($sandbox, 'view', function (ViewEntityInterface $view) use ($view_config_updater): bool { return $view_config_updater->needsRememberRolesUpdate($view); }); } /** * Adds a default table CSS class. */ function views_post_update_table_css_class(?array &$sandbox = NULL): void { /** @var \Drupal\views\ViewsConfigUpdater $view_config_updater */ $view_config_updater = \Drupal::classResolver(ViewsConfigUpdater::class); $view_config_updater->setDeprecationsEnabled(FALSE); \Drupal::classResolver(ConfigEntityUpdater::class)->update($sandbox, 'view', function (ViewEntityInterface $view) use ($view_config_updater): bool { return $view_config_updater->needsTableCssClassUpdate($view); }); }$view_config_updater->setDeprecationsEnabled(FALSE);in the post update ensures that no deprecations are triggered by the update path, but deprecation support in ViewsConfigUpdater itself allows them to be triggered by presave hooks.π Add generic interface + base class for upgrade paths that require config changes Active and π Add generic interface + base class for upgrade paths that require config changes Active have more discussion.