Hello,
@smaiorana and I are on the verge of migrating a fully functional Drupal 7.x site to Backdrop 1.x. We are in the final stages and we have noticed that after the migration is complete, there is data and tables left over in our migrated database from modules that were in Drupal 7.x and have since been removed or merged into Backdrop 1.x.
For example, admin_menu was replaced by admin_bar however there is no clean-up.
The following is a list of modules with lingering data and data tables:
- admin_menu
- admin_menu_toolbar
- ctools
- features
- fe_block
- ftools
- help
- jquery_update
- label_help
- media
- module_filter
- overlay
- page_manager
- panels
- panels_style_collapsible
- rdf
- statistics
What my colleague and I have been doing to take care of this is to create stub modules that represent the Drupal 7.x modules. We have been combing through these modules for specific hooks both in the .module and .install files and carryng that logic over to the respective stub module.
Here are the hooks we have been looking out for:
- Implements install/uninstall hooks that dictate logic other than status messages
- Implements hook_schema().
- Implements hook_field_schema().
- Implements a hook_permission().
- Implements a hook_node_grants().
After the stub module is created, we have a hook_update_N in an install file of a module responsible for carrying out important steps during the migration process.
function portal_migrate_update_1014() {
$modules = [
'admin_menu', 'admin_menu_toolbar',
'ctools',
'features',
'fe_block',
'ftools',
'help',
'jquery_update'.
'label_help',
'media'.
'module_filter',
'overlay',
'page_manager',
'panels',
'panels_style_collapsible',
'rdf',
'statistics',
];
module_disable($modules);
backdrop_uninstall_modules($modules);
// Get rid of the directory containing all stubbed modules.
$modulePath = BACKDROP_ROOT . '/modules/stubbed';
file_unmanaged_delete_recursive($modulePath);
// Disable any modules in the database that are not core compatible
// or no longer exist.
update_fix_compatibility();
}
I would like to understand the reasoning as to why Backdrop during the migrate process does not include this clean-up and if Backdrop should carry out this clean-up. Our stance is that Backdrop should carry out this clean-up but we understand if this is a scope issue and cleaning up these modules are outside the scope of Backdrop CMS.
Cheers!
Recent comments
With JQuery, simple and fast. Or put all possible links in one menu, and hide unnecessary with CSS mediaquery.
Different primary menus depending on the viewport size?
I wonder if what is happening here is the default database settings are for utf8mb4 if the database server supports it. In settings.php or settings.local.php if that's where you put your...
Problem with utf8mb4 Format when importing database
I've not done this with a menu before but something similar with different Views presentation blocks for different resolutions (i.e. not just responsive but a different presentation method...
Different primary menus depending on the viewport size?