0 Replies Latest reply on Oct 27, 2010 11:44 PM by areohbee


    areohbee Level 6

      What's the actual and realizable difference in Lr3 if you put:



           LrSdkVersion = 2.0,

           LrSdkMinimumVersion = 2.0,


      in Info.lua, versus:


           LrSdkVersion = 3.0,

           LrSdkMinimumVersion = 2.0,




      I know what I think its supposed to be, but explicit testing reveals no discernable difference.


      One implication of this is that there is no way to indicate to Lr3 that it shouldn't try to run an Lr2-only plugin.


      Likewise, there is no way to indicate to Lr3 that it should not allow Lr3-only functions since they won't work on Lr2, and the plugin is attempting to be compatible with Lr2 by not using anything unique to Lr3.


      The results of all this is that a plugin developer has a devil of a time assuring Lr3+Lr2 plugins will work on both platforms without exhaustive testing on both platforms.


      It would be appreciated if the LrSdkVersion is set to Lr2 that all Lr3 functions bombed.

      Likewise, it would be appreciated if the LrSdkMinimumVersion is set to Lr3 that all Lr2 functions bombed, or at least generated a deprecation warning somehow.


      In fact, Since Lr2.0 does not choke on LrSdkVersion=3.0, and Lr3 doesn't behave any differently, it seems like this thing is not doing anything at all - on any platform - am I missing something?



      Bottom Line:


      LrSdkMinimumVersion - disallows Lr from running plugin if Lr version not advanced enough. Does nothing if Lr version is advanced enough.

      LrSdkVersion - does nothing on any platform (I just tried setting it to 0.0, then 9.0 - couldn't tell the difference. Happy with -250000000 too, yet can not be omitted altogether).