Frage

Assume any contributed module X (e.g Quiz) on drupal.org (=D.O), or any of its sub-modules Y (e.g Quiz Stats). Any such (sub-)module may depend on one or more other contributed (sub-)modules Z (e.g Charts, disclosure: I'm a co-maintainer), as indicated in the (sub-)module's info file (e.g in the last line of the info file of the Quiz Stats module).

My question: How can I identify all modules X and submodules Y, which depend on module Z?

The question about "Is there a drupal.org API for retrieving the list of available modules?" is somehow related (not a duplicate IMO), but none of the answers there seem to help to find the answer to my question, or am I missing something in those answers?

Note: this question is really about modules "on drupal.org", so I may not even have Drupal installed anywhere ... Think of this question in the context of, for example, a d8rules campaign, where somebody wants to try to find other modules depending on Rules to reach out to the module (co-)maintainers of those other modules (for whatever reason related to such campaign).

War es hilfreich?

Lösung

As was mentioned above the solution could be parsing info files of all projects hosted on drupal.org. You can use this small tool to facilitate the process of obtaining the codebase of Drupal contributed projects.

Below is an example of searching dependencies for Quiz module.

drupal-project-loader -c 5 -b 7.x -d d7_modules -y &&
cd d7_modules && ag 'dependencies\[\] = quiz$' -G \.info$ |
sed 's/\/.*//;s/^/https:\/\/www.drupal.org\/project\//' | uniq | sort

The result:

https://www.drupal.org/project/certificate
https://www.drupal.org/project/certify
https://www.drupal.org/project/civicrm_cert_quiz
https://www.drupal.org/project/cloze
https://www.drupal.org/project/course
https://www.drupal.org/project/elms_features
https://www.drupal.org/project/grouping_question
https://www.drupal.org/project/image_target_question
https://www.drupal.org/project/kalvi_core
https://www.drupal.org/project/mark_word
https://www.drupal.org/project/og_quiz
https://www.drupal.org/project/opigno
https://www.drupal.org/project/opigno_pretest_app
https://www.drupal.org/project/opigno_quiz_app
https://www.drupal.org/project/opigno_quiz_import_app
https://www.drupal.org/project/qq_import
https://www.drupal.org/project/quiz
https://www.drupal.org/project/quiz_ddlines
https://www.drupal.org/project/quiz_drag_drop
https://www.drupal.org/project/quiz_evaluation
https://www.drupal.org/project/quizfileupload
https://www.drupal.org/project/quiz_h5p
https://www.drupal.org/project/quiz_progress
https://www.drupal.org/project/quizrubric
https://www.drupal.org/project/quiz_sentence_drop
https://www.drupal.org/project/quiz_share
https://www.drupal.org/project/quiz_userpoints
https://www.drupal.org/project/quiz_voice_answer
https://www.drupal.org/project/quizwebform
https://www.drupal.org/project/simple_mcq
https://www.drupal.org/project/tincanapi
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit drupal.stackexchange
scroll top