R6 v/s R5 and Backward Compatibility

Hehe, I know IBM says it’s backwards compatible. But twice I’ve encountered a problem. 1st time, a LS agent written in R5 and when in R6 recompiled, I couldn’t even save the agent becuase of errors. Recently 2nd occurence, the agent would save just fine. But when accessed in WebQOpen event, the browswer would show “This version is not supported”. But when saved with an R5 designer, it worked just fine.

Subject: RE: R6 v/s R5 and Backward Compatibility

IBM makes every effort to see to it that applications developed in previous versions of Notes continue to work. You haven’t described anything that fails to meet those criteria.

While you didn’t say what it was that caused your LotusScript code to not compile, I suspect you ran into a conflict with a new reserved word or method name, such as NotesDocument.Lock. I’d like to point out that the code continued to work even though it was using a reserved word as a variable or subroutine or fieldname, whatever.

Expecting the code to recompile identically in Notes 6, goes beyond what IBM has committed to provide. What would you rather, given the choice: (1) have to rename a subroutine – only if you have some other reason to edit the code – because there’s a new built-in function with the same name, or (2) not have the new built-in function available to use? I think there would be many more complaints from developers if IBM froze LotusScript at its current level of functionality, rather than adding anything that might prevent someone’s code from recompiling. If you can suggest a way to avoid this dilemma, please do so!

As for your other problem, once again the code worked until you recompiled it, and once again I suspect your problem is a conflict with a new built-in function, property or method. Since you apparently didn’t take the trouble to track down the error to the line it was occurring on, it’s hard to say.

Subject: RE: R6 v/s R5 and Backward Compatibility

Thank you for your response. You are correct I don’t have the exact details of that scenario. In the future I’ll be aware of reserved words and rule that out first. Is there a list of the words that used to work in R5 but are now reserved in R6? If so, then I could make a tool that will do a scan of my db’s to look for such words.

Subject: RE: R6 v/s R5 and Backward Compatibility

Such a tool already exists. Ives Teamstudio “Analyzer” product lets you define rules to flag design elements based on words they contain. I supplied them with a set of test cases that include Notes 5/6 compatibility tests. You can download my test cases in the downloads area of their website: www.teamstudio.com.