#2205271-153: Project namespace for dependencies has discovered issue with _system_rebuild_module_data_ensure_required. This function assumes that the dependency is always just the module name. It is not. It can contain project information and version information.
Beta phase evaluation
| Issue category | Bug because correct usage of module dependencies can result in php warnings. |
|---|---|
| Unfrozen changes | Unfrozen because it is just a normal bug fix. |
| Disruption | none |
| Comment | File | Size | Author |
|---|---|---|---|
| #7 | 2410151.7.patch | 2.1 KB | alexpott |
| #7 | 5-7-interdiff.txt | 4.74 KB | alexpott |
| #5 | 2410151.5.patch | 6.84 KB | alexpott |
| #5 | 1-5-interdiff.txt | 5.65 KB | alexpott |
| #1 | 2410151.1-test-only.patch | 489 bytes | alexpott |
Comments
Comment #1
alexpottNote that #2205271: Project namespace for dependencies did not introduce this. Dependencies could have version strings before that change.
Comment #2
alexpottComment #3
xanoNitpick: for code clarity, I suggest using
$dependent_name, because a dependent and a dependency are each other's opposites.Comment #5
alexpottre #3 gone the other way...
Comment #7
alexpottThere was an unexpected item in the bagging area...
Comment #8
keopxYou had this issue patch in the previous code :P https://www.drupal.org/node/2266991#comment-9527049
Works fine!
Comment #9
trobey commentedIt appears that this bug is also in Drupal 7.
Comment #10
trobey commentedI had a typo that generated an error similar to this issue. Also I did not not see in system_rebuild_module_data() or _system_rebuild_module_data() any call to drupal_parse_dependency(). It took a while to trace through the code to figure out that _module_build_dependencies() calls drupal_parse_dependency() and then system_modules() calls_drupal_check_incompatibility(). So I do not think I need to backport this to Drupal 7.
Comment #12
catchCommitted/pushed to 8.0.x, thanks!