[drupal-devel] [feature] Dependency system to solve forum without
comment problem
chx
drupal-devel at drupal.org
Sun Mar 6 02:00:29 UTC 2005
Issue status update for http://drupal.org/node/18447
Project: Drupal
Version: cvs
Component: system.module
Category: feature requests
Priority: normal
Assigned to: chx
Reported by: chx
Updated by: chx
Status: patch
Attachment: http://drupal.org/files/issues/depend_0.patch (3.6 KB)
I would leave associative arrays for the future. As we do not have a
package tool, there is little use of 'optional' -- I'd like to get this
into 4.6
After testing the patch, I have changed something, which I should not
have done, so another version is attached.
chx
Previous comments:
------------------------------------------------------------------------
March 6, 2005 - 01:55 : chx
Attachment: http://drupal.org/files/issues/depend.patch (3.22 KB)
As discussed on the developer list. This was surprisingly easy. There is
still an issue: t('The configuration options have been saved.') is
displayed more than once if there is a dependency forced module switch
on. I have tried something (you'll see) for some reason it does not
work.
Number of page reloads can be decreased if Drupal could be
reinitialized after system_listing_save instead of redirecting but I
doubt this would be feasible.
Although I marked this is feature request, this is more a usability
issue (for the forum-comment dependency) and as a side effect it is a
useful feature, too (for any other module "bundles").
I want criticism! I'd like to get torn apart by wild animals. Heavy!
Eaten by some squirrels.
------------------------------------------------------------------------
March 6, 2005 - 02:22 : clydefrog
Forgive me if I'm mistaken, but shouldn't forum_depends return an array?
------------------------------------------------------------------------
March 6, 2005 - 02:26 : javanaut
I think allowing for both required dependencies as well as optional ones
would make it practical for a package management tool to be created. I
like it, though, and I think being able to programatically enforce (or
at least notify users about) dependencies would assist users who refuse
to RTFM.
>From my drupal-devel comment, here's how I would suggest formatting the
hook_depends:
<?php
function filestore2_depends() {
return array('required'=>array('fscache'),
'optional'=>array('taxonomy','comments'));
}
?>
------------------------------------------------------------------------
March 6, 2005 - 02:29 : chx
If you take a look at module_invoke_all, you will see that a string is
fine, 'cos if you return a string it does $result[]
However, an associative array is not good with module_invoke_all 'cos
for returned arrays there is an array_merge where "If the input arrays
have the same string keys, then the later value for that key will
overwrite the previous one."
------------------------------------------------------------------------
March 6, 2005 - 02:33 : javanaut
Ok, how about it taking a parameter?
<?php
function filestore2_depends($dep_type='required') {
$deps = array('required'=>array('fscache'),
'optional'=>array('taxonomy','comments'));
return $deps[$dep_type];
}
?>
Then, for required dependencies, pass a 'required' argument, and
optional ones could take an 'optional' argument.
More information about the drupal-devel
mailing list