[ 
https://issues.apache.org/jira/browse/CB-4036?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13731057#comment-13731057
 ] 

Tim Kim commented on CB-4036:
-----------------------------

Hrm ya, I think I like option two. Having the defaults like you mention is a 
good idea as well. I think we may also need another attribute to point to a 
script that spits out the information needed for the version requirement. That 
way we can also cover the use case of a developer who may wish to create their 
own engine requirements and have the ability to point to a project/platform 
script that gives that kind of information. 

So something like:
<engine name="happy_mega_fun_time" version=">=1.0 
scriptTarget="./my/own/versionScript" platform="ios|android|blackberry"/>

And in somewhere in plugman, we'll have a file with all the defaults for the 
base engines and their locations for their scriptTargets as well. 

                
> <platform> tag should have a "version" attribute 
> -------------------------------------------------
>
>                 Key: CB-4036
>                 URL: https://issues.apache.org/jira/browse/CB-4036
>             Project: Apache Cordova
>          Issue Type: Improvement
>          Components: Plugman
>            Reporter: Shazron Abdullah
>            Assignee: Filip Maj
>
> This might be hole that we didn't consider.
> I know implicitly if the plugin supported an "engine" version we support what 
> the engine supports, but here could be one scenario.
> For example, with iOS 7, a plugin CDVFooBar use this awesome NSWhizBang 
> framework. Fine, with iOS 7, you have to of course build with the iOS 7 SDK, 
> and you can support iOS 6 with a Deploy Target build setting.
> It runs on iOS 7 - yay.
> It.. blows up on iOS 6 at runtime, because of course NSWhizBang framework 
> does not exist on iOS 6.
> Now you say, why don't you do Obj-C runtime checks and weak link the 
> framework? Yes, the plugin author can do that but a plugin user, by parsing 
> the plugin xml (using a tool, or optically, whatever) cannot know that the 
> plugin does NOT work on iOS 6 - and even though it "runs" on iOS 6, it does 
> nothing, which is useless and wastes a lot of time.
> So - my proposal is, to add a *"version"* attribute on the *<platform>* tag. 
> It should follow the syntax for the <engine> version attribute. 
> What would be the default if the version attribute is not there? Not sure 
> what a reasonable default is yet.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to