panels_mini's hook_uninstall() depends on code that exists in panels.module: panels_delete_display(). The panels_node module does not have this dependency, simply because that module doesn't delete the displays associated with its panels.

There are two options to solve this:
1) Don't let panels_mini delete the associated displays.
2) Include panels.module conditionally:

    if (!function_exists('panels_delete_display')) {
      require_once drupal_get_path('module', 'panels') .'/panels.module';
    }

It's been too long since I've looked at Panels code, so I'm leaving this up to you, merlin.

Comments

moshe weitzman’s picture

For D6, core recently patched to handle install dependencies properly. Not sure if we did uninstall also.

merlinofchaos’s picture

I totally hadn't thought about uninstall dependencies. I guess I"ll need to rig something up to conditionally include that code.

Also, panels_node *should* delete its panel displays when uninstalling. Thanks.

wim leers’s picture

We don't. Those improvements only affected installation.

merlinofchaos’s picture

Status: Active » Fixed

Committed.

Anonymous’s picture

Status: Fixed » Closed (fixed)

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