The drop is always movingYou know that saying about standing on the shoulders of giants? Drupal is standing on a huge pile of midgetsAll content management systems suck, Drupal just happens to suck less.Popular open source software is more secure than unpopular open source software, because insecure software becomes unpopular fast. [That doesn't happen for proprietary software.]Drupal makes sandwiches happen.There is a module for that

Drupal 7 versioned dependencies

Submitted by nk on Sat, 2010-11-13 16:30

In Drupal 6, dependencies[] = foo. In Drupal 7, dependencies[] = foo (>=2.x, <4.17, !=3.7). Meaning, we need foo module major version to be at least 2, any version up to (but not including) 4.17 aside from 3.7 which was horribly buggy. If you need to do this with core, uses system in place of foo. Also note that you can say dependencies[] = foo (>=7.x-2.x).

Commenting on this Story is closed.

Submitted by Anonymous on Sat, 2010-11-13 18:04.

such features are what makes drupal special

Submitted by Anonymous on Sat, 2010-11-13 19:29.

I was discussing such a feature with a colleague earlier this week, not knowing that it's part of D7... Awesome!

Submitted by Anonymous on Sun, 2010-11-14 22:23.

>=2.x, <4.17 !=3.7

There's a comma in-between the first two conditions, but not the second and third? Typo or is that how it works?

Also could this multiple syntax be contributed back to http://drupal.org/node/542202 since it doesn't seem to mention it?

Submitted by Anonymous on Mon, 2010-11-15 21:53.

Going by the patch that was committed from the original issue for this, it looks like the missing comma is a typo. The test code that landed in system.test all have commas, and the corresponding code itself does a split() on commas while parsing the dependencies string. I've updated the documentation page mentionend above accordingly.

Submitted by nk on Mon, 2010-11-29 04:06.

thanks