As it is currently in HEAD:

This version is incompatible with the 7.0-dev version of Drupal core.

I just had a user think that a module was incompatible with Drupal 6.9 specifically, whereas the module wasn't compatibile with 6.x at all. This *almost* turned into a security issue, as he thought he instead had to install some older point revision of Drupal 6. As modules cannot specify a specific version of core, I'm going to suggest that the text be changed to the following:

The version of this module is incompatible with Drupal 7. To use this module, replace it with a version which is compatible with Drupal 7.

This removes the confusing language (the world typically puts version numbers after the project name), and removes the use of "core" which means nothing to outsiders (unless we reame "drupal" to "drupal core"!). Also, it gives help text to provide next steps for users who may not know about upgrading contributed modules.

Thoughts?

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

lisarex’s picture

Status: Active » Needs work

Sounds sensible to me.

deviantintegral’s picture

Status: Needs work » Needs review
Issue tags: +Newbie
FileSize
2.05 KB

The attached patch changes the text for modules to:

This module is not compatible with Drupal !api_version. To use this module, replace it with a version which is compatible with Drupal !api_version.

And for themes:

This theme is not compatible with Drupal !api_version. To use this theme, replace it with a version which is compatible with Drupal !api_version.

!api_version is the major version number exploded from the VERSION constant.

lisarex’s picture

Applied the patch and looks good.

What do folks think of revising the copy slightly to say "This module is not compatible with Drupal 7. To use this module, replace it with a version that has been created for Drupal 7." (since they may not realise modules must be upgraded to work with Drupal 7)

Otherwise, it looks great! (Screenshot attached)

deviantintegral’s picture

I'm not sure I like the word "created" as it implies a new module from scratch. The text needs to be applicable to both modules for previous Drupal versions and for future Drupal versions.

If "is compatible" isn't good, how about "works"? "This module is not compatible with Drupal !api_version. To use this module, replace it with a version which works with Drupal !api_version."

lisarex’s picture

Yep, Andrew, I'd go with your revision in #4.

lisarex’s picture

OK, rerolled with comments from #4 (but used 'that', rather than 'which')

deviantintegral’s picture

Status: Needs review » Reviewed & tested by the community

Thanks Lisa - looks great, both in screenshot and in patch form.

webchick’s picture

Status: Reviewed & tested by the community » Needs work

Cool, I like the UI improvements here. But I think it would be better to just re-use DRUPAL_CORE_COMPATIBILITY (e.g. "7.x") here:

1. It would clean up that kinda messy array_shift(explode(...)) logic that's repeated twice there.
2. In lots of places on Drupal.org, we refer to 7.x, 6.x, etc. For example, the "Filter by core compatibility" at http://drupal.org/project/modules and on the module version numbers on the project pages.
3. It clearly indicates we mean "Any version of Drupal 7" as opposed to "Drupal 7"

What say you? :)

deviantintegral’s picture

Status: Needs work » Needs review
FileSize
2.01 KB

That's fine by me. The initial rationale was that in speech, most users seem to refer to it as Drupal 5/6/7, but I agree that matching online documentation is better.

This update removes the string parsing and directly uses the DRUPAL_CORE_COMPATIBILITY constant.

lisarex’s picture

Applied patch ... looks good to me! Screenshot attached.

deviantintegral’s picture

Thanks Lisa; one more review perhaps then RTBC?

webchick’s picture

Status: Needs review » Needs work

This looks great, except for one last little nit-pick.

The old string said !core_version, the new string says !api_version. I think !core_version made more sense, as that's what we're really talking about here.

So if you could put the placeholders back to how they were, this is ready to fly.

lisarex’s picture

Status: Needs work » Reviewed & tested by the community
FileSize
1.67 KB

Per feedback from webchick in IRC, replaced !api_version with !core_version

deviantintegral’s picture

Reroll due to #491214: implement the top level Appearance / Choose Theme admin page, which renamed $description to $output. Attached screenshots to show the change on the theme selection page.

xmacinfo’s picture

... To use this module, replace it with a version that works with Drupal ...

Looks nice, but I would wrap the module name with the proper link to the module page on Drupal.org. The admin/reports/updates page already wraps module name to their project page.

We could also color code this link in green if a D7 version is available and red if not.

deviantintegral’s picture

We have a link to update existing modules and themes at the top of the page (since themes and modules may not be on drupal.org), so I think repeating the project link would be more clutter.

greg.harvey’s picture

Status: Needs review » Reviewed & tested by the community

As far as I'm concerned, #14 is good to go. This issue has been batted about for a while, most people are happy with the patch without xmacinfo's suggestion (though thanks for input =) and while I'm not actually adverse to the idea of a project link, deviantintegral's defence of current patch seems reasonable to me and we'd rather just see this committed without starting a new discussion at this late stage.

To get this in for the alpha1 release, marking R&TBC (I just applied it, it looks fine).

Status: Reviewed & tested by the community » Needs review
Issue tags: -Newbie

Re-test of module_incompatible_368006.patch from comment #14 was requested by aspilicious.

Issue tags: +Newbie

Re-test of module_incompatible_368006.patch from comment #14 was requested by aspilicious.

aspilicious’s picture

Retest, code has changed a lot

greg.harvey’s picture

Ok, but I did just successfully apply it to the latest dev snapshot of D7. =)

webchick’s picture

Issue tags: +Usability

Hm. This could use eyes from the UX team. In general, they've been on a big push to remove useless text from the UI. If this isn't clear enough as-is, they might want a briefer way of saying the same thing, as currently the string seems to repeat itself repeat itself a bit. ;)

Bojhan’s picture

Any reason why we are saying - To use this module, replace it with a version which is compatible with Drupal 7.x ? I am not sure if that is solving the problem that was proposed.

greg.harvey’s picture

Hm, with that in mind maybe it should be more like:

The downloaded version of this module is not compatible with Drupal 7.

Could "downloaded" be "local", or is that too far for non-technical users? Not sure how to hint they should go and download another version. Perhaps that does it? Or perhaps it's not even necessary to worry about it?

webchick’s picture

Hm. Do we need to get that explicit? Presumably, if they get themselves into this situation, they've had to download a module in the first place in order to do so; core certainly doesn't ship with modules incompatible with itself. :)

deviantintegral’s picture

@Bojhan: Are you suggesting we remove the suggested action entirely? The text mentions replacing it with a 7.x version as that's the version number listed on a drupal.org download page.

I think "local" is more technical and possibly confusing, as users may think local means their local machine, not the web server. I'm not sure downloaded works either as that may imply a local machine ("download" to your desktop, "upload" to the server). I agree with webchick that it's too specific.

greg.harvey’s picture

I was looking for a word like "installed", but NOT installed because the module is not installed - it's simply "available", but that feels clunky and confusing too.

But then the original issue was raised around the use of "7.x core" or something like that. So perhaps it can be as simple as this:

This module is not compatible with Drupal 7.

As webchick points out, they've already downloaded a module and got it in to a modules folder, so they can't be total idiots. Realising that the version reads 6.x-x.x (or whatever) in the adjacent column didn't ought to be beyond them. ;-)

xmacinfo’s picture

The message is essentially displayed for upgrading users, if they leave an older module in their site, a incompatibility message is displayed.

This message should be short and sweet:

“Not compatible with Drupal 7.”

lisarex’s picture

How's this?

"This version is not compatible with Drupal !core_version and should be replaced."

jhodgdon’s picture

webchick just complained on another issue that we aren't supposed to use the word DRupal in user-facing text. This patch does...

lisarex’s picture

Up in comment #12 webchick said it was OK... maybe it's Drupal on it's own that objectionable, or maybe I misunderstood #12...

webchick?

Bojhan’s picture

Oh.. well - I guess Drupal is not too bad here.

Bojhan’s picture

Status: Needs review » Reviewed & tested by the community

RTOBC

Dries’s picture

Status: Reviewed & tested by the community » Fixed

Committed to CVS HEAD. Thanks.

Status: Fixed » Closed (fixed)
Issue tags: -Newbie, -Usability

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