|
 |    |  |
 | |  |
 | |  |
 | |  |
 | |  |
 |
|
|
| Article: Modules, Compatibility, and Developer Responsibility |
|
|
Recently I have been plagued with clients that have installed modules that didn't work on their DotNetNuke versions because the module had dependencies on a specific DotNetNuke version. However, the developers never put a hard set requirement on the module installation package allowing the users to have a corrupted site.
This article takes a look at the issues behind this, the common thought processes on compatibility, and provides a built in solution that could resolve this risk all together.
Modules, Compatibility, and Developer Responsibility
-Mitchel Sellers
MCITP, MCPD, MCTS
CEO/Director of Development - IowaComputerGurus Inc.

Visit mitchelsellers.com for my mostly DNN Blog and support forum.
Visit IowaComputerGurus.com for free DNN Modules, DNN Consulting Quotes, and DNN Technical Support Services
I reccomend 3Essentials for shared hosting and BaseCamp for project management |
|
|
|
 |  |
|
|
| Re: Article: Modules, Compatibility, and Developer Responsibility |
|
|
Good article - thanks for posting it.
It sure would be nice to have a more user-friendly means of specifying the minimum DNN version that the module will work under than having to use a regular expression.
For instance, instead of the regular expression from your article, perhaps the text string '04.06.00 '
<compatibleversions>^[0-9]{1}[4-9]{1}.[0-9]{1}[6-9]{1}.[0-9]{1}[0-9]{1}$</compatibleversions> |
|
|
|
 |  |
|
|
| Re: Article: Modules, Compatibility, and Developer Responsibility |
|
|
Al,
Yes, I can understand...but something like that would require a different setting....(minversion) or something like that as the compatibleversions is designed where it must validate as true for all versions that the module can be installed on.
The only good part is that with the RegEx code, it is VERY simply to update to set it to work for whatever version you need. -Mitchel Sellers
MCITP, MCPD, MCTS
CEO/Director of Development - IowaComputerGurus Inc.

Visit mitchelsellers.com for my mostly DNN Blog and support forum.
Visit IowaComputerGurus.com for free DNN Modules, DNN Consulting Quotes, and DNN Technical Support Services
I reccomend 3Essentials for shared hosting and BaseCamp for project management |
|
|
|
 |  |
|
|
| Re: Article: Modules, Compatibility, and Developer Responsibility |
|
|
Mitch,
Thanks for the good reminder on DNN version compatibility. However, I also have issues with the choice of using a regex as a test against the currently installed DNN version. When DNN 05.00.xx is released, all existing modules using a regex similar to that in your article will no longer be installable. I've already run into this with respect to this simple regex pattern limiting installs to versions equal or greater than DNN 04.05.05 NOT allowing install in DNN 04.06.02 version. To work properly, the regex needs to group by two digit major, minor, and build then use some form of lookaround assertion to determine the match of all three groups togeter - not an easy task for a regex. Although I've written many a regex, that one has me stumped - one of these day's, I'll sit down with my regex cheat sheet and try to construct the proper expression but havn't done so yet. Anyone else?? Bill, WESNet Designs |
|
|
|
 |  |
|
|
| Re: Article: Modules, Compatibility, and Developer Responsibility |
|
|
Bill,
You bring up a very valid point, I just noticed this now.
However, I found a really easy workaround for it. Basically you use an option statement, if working with the current version (4.x for example) you use the first part of the option to validate those versions....then you add a second condition to validate all future versions of DNN. So for example, below is a TRUE script that will validate for 4.6.0 or later.
^([0-9]{1}[4]{1}.[0-9]{1}[6-9]{1}.[0-9]{1}[0-9]{1}|[0-9]{1}[5-9]{1}.[0-9]{1}[0-9]{1}.[0-9]{1}[0-9]{1})$
This will validate true for values like the following....04.06.00, 04.06.01, 05.00.00, 05.01.01, etc, providing the proper validation. If you want to test it feel free to drop it into my RegEx tester to see how it will be evaluated.
I will update my blog posting here momentarily to include the new script! -Mitchel Sellers
MCITP, MCPD, MCTS
CEO/Director of Development - IowaComputerGurus Inc.

Visit mitchelsellers.com for my mostly DNN Blog and support forum.
Visit IowaComputerGurus.com for free DNN Modules, DNN Consulting Quotes, and DNN Technical Support Services
I reccomend 3Essentials for shared hosting and BaseCamp for project management |
|
|
|
|  |
 | |  |
 | |  |
 | |  |
|  |
| |
 |
|
These Discussion Forums are dedicated to the discussion of the DotNetNuke Web Application Framework.
For the benefit of the community and to protect the integrity of the project, please observe the following posting guidelines:
1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DotNetNuke.
2. Discussion or promotion of DotNetNuke product releases under a different brand name are strictly prohibited.
3. No Flaming or Trolling.
4. No Profanity, Racism, or Prejudice.
5. Site Moderators have the final word on approving/removing a thread or post or comment.
6. English language posting only, please.
|
| |
 |
|