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.

Files: 
CommentFileSizeAuthor
#8 remove-linkchecker-requirements-http-1306498-8.patch1.43 KBevolvingweb
PASSED: [[SimpleTest]]: [MySQL] 105 pass(es).
[ View ]
#1 linkchecker-1306498-1-remove_hook_requirements.patch1.7 KBarithmetric
FAILED: [[SimpleTest]]: [MySQL] Unable to apply patch linkchecker-1306498-1-remove_hook_requirements.patch. Unable to apply patch. See the log in the details link for more information.
[ View ]
linkchecker-status-array.png23.78 KBarithmetric

Comments

StatusFileSize
new1.7 KB
FAILED: [[SimpleTest]]: [MySQL] Unable to apply patch linkchecker-1306498-1-remove_hook_requirements.patch. Unable to apply patch. See the log in the details link for more information.
[ View ]

Attached is a patch that removes hook_requirements() from linkchecker.install.

Status:Active» Needs review

Status:Needs review» Closed (duplicate)

Status:Closed (duplicate)» Needs review

I 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?

The status could have changed... that's why it tried again.

Status:Needs review» Closed (duplicate)

I 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.

Version:7.x-1.x-dev» 6.x-2.x-dev
Status:Closed (duplicate)» Needs review
StatusFileSize
new1.43 KB
PASSED: [[SimpleTest]]: [MySQL] 105 pass(es).
[ View ]

OK 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:

  • Status Report page rendering breaks (as per above screenshot)
  • unnecessarily repeated checks to see whether drupal can issue HTTP requests
  • 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.

Status:Needs review» Fixed

Status:Fixed» Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.