Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
In the 7.x version of linkchecker.install, the hook_requirements returns a status message using "http requests". This looks like a copy of Drupal's own "HTTP request status" message from the system.install file.
Alsp, this causes a conflict with Drupal's message, which results in The copy in linkchecker conflicts with the Drupal message to overwrite it, causing a status message with erroneous "Array" text.
Comment | File | Size | Author |
---|---|---|---|
#8 | remove-linkchecker-requirements-http-1306498-8.patch | 1.43 KB | dergachev |
#1 | linkchecker-1306498-1-remove_hook_requirements.patch | 1.7 KB | arithmetric |
linkchecker-status-array.png | 23.78 KB | arithmetric |
Comments
Comment #1
arithmetric CreditAttribution: arithmetric commentedAttached is a patch that removes hook_requirements() from linkchecker.install.
Comment #2
arithmetric CreditAttribution: arithmetric commentedComment #3
hass CreditAttribution: hass commentedComment #4
hass CreditAttribution: hass commented#1165160: Same requirements breaks drupal core status page (overwrites 'http requests')
http://drupal.org/node/1271780#comment-5091094
Comment #5
arithmetric CreditAttribution: arithmetric commentedI agree that it is a core bug that the system status page can be messed up if two modules use the same key.
However, since Drupal 7's system module includes a check for HTTP requests, linkchecker doesn't need to do the same thing. For the sake of coding simplicity, why not remove the duplication?
Comment #6
hass CreditAttribution: hass commentedThe status could have changed... that's why it tried again.
Comment #7
hass CreditAttribution: hass commentedI remember the reason. I'd like to show a Linkchecker status message on status page. System module only says it cannot check update status and linkchecker need to tell it cannot check any link without http requests.
Comment #8
dergachev CreditAttribution: dergachev commentedOK I mean no disrespect, but hass is almost certainly wrong on this issue.
As far as I can tell, the fact that linkchecker.install DUPLICATES code from system.install is logically wrong, and causes the following problems:
warning: strcmp() expects parameter 2 to be string, array given in /var/shared/sites/muhc/site/modules/system/system.module on line 1159.
when visiting Status Report page (at least in PHP 5.3)It might be the case that hass may been trying to workaround something buggy about core's 'http request' check (which is indeed complex and potentially buggy), but this workaround is no way to deal with that!!
I've re-rolled the patch from #1 against 6.x-2.x-dev, which fixes the problems for me.
I also notice that the 7.x-1.x branch doesn't seem to have this requirement checking, so this really seems to be only a 6.x issue.
Comment #9
hass CreditAttribution: hass commented