User login

Ask Agaric: Where does Drupal store module dependency information?

Searched words: 
dependencies

"I can't see how drupal is storing the dependents. They are not in the system table info column."

Drupal doesn't store dependents, it gets them from the .info file each time:

http://api.drupal.org/api/function/drupal_parse_info_file/6
is called by
http://api.drupal.org/api/function/module_rebuild_cache/6
which is what also calls
http://api.drupal.org/api/function/_module_build_dependencies/6

Note: That is the real source of the dependency list, because module_rebuild_cache is also called by
http://api.drupal.org/api/function/system_modules/6
which is how
http://api.drupal.org/api/function/system_modules_submit/6
gets the list of modules in its form values that it then passes to
http://api.drupal.org/api/function/system_module_build_dependencies/6

The other key line from module_rebuild_cache is

<?php
$files = drupal_system_listing('\.module$', 'modules', 'name', 0);
?>

which gets the location of all modules, and hence info files.

Resolution

Comments

Post new comment

The content of this field is kept private and will not be shown publicly.
  • You may post code using <code>...</code> (generic) or <?php ... ?> (highlighted PHP) tags.
  • You can use Markdown syntax to format and style the text. Also see Markdown Extra for tables, footnotes, and more.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <blockquote> <small> <h2> <h3> <h4> <h5> <h6> <sub> <sup> <p> <br> <strike> <table> <tr> <td> <thead> <th> <tbody> <tt> <output>
  • Syntax highlight code surrounded by the {syntaxhighlighter SPEC}...{/syntaxhighlighter} tags, where SPEC is a Syntaxhighlighter options string or "class="OPTIONS" title="the title".
  • Lines and paragraphs break automatically.

More information about formatting options

By submitting this form, you accept the Mollom privacy policy.