Updated: Comment #0
Problem/Motivation
#1776830: [META-1] Installation and uninstallation of configuration provided by a module that belongs to another module's API won't solve all of our problems. When the node module is uninstalled, the frontpage view is left behind. It shouldn't be.
Proposed resolution
When a module providing a base table is uninstalled, delete all views built on it.
Remaining tasks
N/A
User interface changes
N/A
API changes
N/A
Related Issues
Comment | File | Size | Author |
---|---|---|---|
#6 | 2079121-6-views-base-tables.patch | 1.33 KB | Anonymous (not verified) |
#4 | 2079121-views-base-tables.patch | 1.27 KB | Anonymous (not verified) |
#1 | vdc-2079121-1.patch | 1.09 KB | tim.plunkett |
Comments
Comment #1
tim.plunkettComment #2
jibranI think we should add !empty check here.
Do we have to check $query is empty or not?
Comment #3
dawehner+1 in general.
Comment #4
Anonymous (not verified) CreditAttribution: Anonymous commentedupdated patch after discussion with timplunkett in IRC.
'get all tables that are being removed, and get all tables that are from hook_views_data() implemenations that are being uninstalled.'
Comment #6
Anonymous (not verified) CreditAttribution: Anonymous commentedahem.
Comment #7
catchField module prevents module uninstall if a field providing module has an active field/instance, this is nuking views if the module is uninstalled. I think we need to pick one set of behaviour for config that's dependent on multiple modules and stick with it, so postponing on #2080823: Create API to discover config entities' soft dependencies and use this to present a confirm form on module uninstall.
Comment #8
alexpottActually postponing...
I tested this last night and the interesting thing is that whilst the frontpage view remains in active config after uninstalling node the view is not listed in views ui and the path returns a 404. So I'm not 100% certain we have a bug.
Comment #9
catchThe problem would be when node module is eventually re-installed one day. If node changes its views plugins in the meanwhile, it'll have updates that update existing views to fix them (or there'll need to be some other mechanism to update the config to match new plugin IDs). However since node module is uninstalled, those updates won't run - then when node module is re-enabled what's the status of the view that's in active config?
Comment #10
andypostComment #11
alexpottThis will be handled by the config dependency system - #2267453: Views plugins do not store additional dependencies