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
Hi Kevin I am interested assisting you developing a theme by cloning feature from existing WordPress website. Please let me know your suitable time to discuss further...
Create a theme from existing website
I've updated the Zulip link in both places I found it. No need to post again, unless you have something new to say. We'll pull together feedback from all the sources.
Backdrop CMS Core Priorities
Should we post here again, what we posted over there? Or would that unnecessarily duplicate things? The link to a Zulip thread in this initial post leads to an internal one, but there's...
Backdrop CMS Core Priorities