I have been trying out the new upgrade processing that aborts updates that should not be run. The currently logic will not work correctly unless every CCK module in the modules folder is enabled, otherwise you keep getting a message like 'content.module and fieldgroup must be enabled. Return here to re-run the update'. There are two problems with the message. First it says content.module is not enabled and it is, which is very confusing. It's fieldgroup which is not enabled. Second, it indicates that I must go and enable fieldgroup and then return to run updates, which doesn't make sense if I don't plan to use it. I'm going to get the same message for every other CCK module in the folder, including any number of modules that I'm not ready to enable yet, so it truly does appear to be an endless loop.

I'm re-working the processing to first of all to accurately identify which module is not enabled and second to say that 'fieldgroup is available but not enabled. When it is enabled you will need to return here and run update.php again.' That will make it possible to leave some modules disabled.

I'm still doing some testing of my code, but that's my plan.

Comments

KarenS’s picture

Status: Active » Fixed

I tried various kinds of updates, leaving some modules disabled, and tested messages to be sure they made sense. I tried to word them in a way that they wouldn't look like failures if the only problem is that some modules are still disabled, and to make it clear when more updates need to be run.

I also added a helper function to prevent dangerous database operations until the database is updated. It prevents a lot of ugly error messages when CCK modules are enabled before the content module updates have been run, since the module is trying to do database operations on content_field and content_field_instance databases that may not work yet.

Anonymous’s picture

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for two weeks with no activity.