cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Filip Maj <...@adobe.com>
Subject Re: [Plugins] Plugin versioning
Date Tue, 19 Mar 2013 20:03:21 GMT
What Michael says seems to make the most sense.

On 3/19/13 11:44 AM, "Michael Brooks" <michael@michaelbrooks.ca> wrote:

>>
>> However, It's expensive to clone down the
>> repository just to check if the plugin works or not.
>
>
>Good point Anis, it would be expensive to clone down a plugin simply to
>disc
>
>
>> I believe we should store some sort of mapping on our discovery server.
>> Such as:
>> {
>>   cordova_version: plugin_versions
>> }
>
>
>It would be nice to avoid duplicating information (plugin source and
>discovery server).
>
>Could we consider something similar to `npm info <package>`, which returns
>the JSON of the module's package.json. If we did the same for the plugin
>configuration, then plugman can locally assess whether the plugin is
>compatible, without having the download the entire plugin.
>
>Micael
>
>On Tue, Mar 19, 2013 at 11:34 AM, Tim Kim <timkim85@gmail.com> wrote:
>
>> +1
>>
>> However, I think we may need a better property/value pair name than
>> just cordova_version:
>> plugin_versions. This is because I feel like there is a implicit idea
>>that
>> this particular plugin will work on a specific version of Cordova, but
>>for
>> all platforms. Whereas in reality, most of the plugins out there are
>>just
>> for iOS and Android. So maybe if the mapping was more like:
>>
>> {
>>   cordova_version: {
>>                               android: android_plugin_version,
>>                               blackberry: blackberry_plugin_version,
>>                               ios: ios_plugin_version
>>                             }
>> }
>>
>> I think this also takes care of if a plugin adds in another platform
>>but in
>> a later version.
>>
>>
>> On 19 March 2013 07:59, Anis KADRI <anis.kadri@gmail.com> wrote:
>>
>> > Hey all,
>> >
>> > Plugins need to be versioned to be backward compatible with previous
>> > versions of Cordova. I had a discussion with the PhoneGap:Build team
>> > yesterday and they need to be backward compatible. Ally Ogilvie also
>> > mentioned in separate thread that game developers would also need
>> something
>> > like this.
>> >
>> > We have already broken the plugin interface a number of times and we
>>know
>> > that a plugin implementation won't work across all versions of
>>Cordova.
>> > The plugin spec already supports an <engine> tag to specify which
>> versions
>> > of cordova it supports. However, It's expensive to clone down the
>> > repository just to check if the plugin works or not.
>> >
>> > I believe we should store some sort of mapping on our discovery
>>server.
>> > Such as:
>> >
>> > {
>> >   cordova_version: plugin_versions
>> > }
>> >
>> > That way when plugman tries to install a plugin it knows ahead of time
>> > (before cloning the repository) if there is a version of the plugin
>>that
>> > works with the user's version of cordova.
>> >
>> > This will probably be less needed after 3.0 when the plugin interface
>>is
>> > stable enough.
>> >
>> > Thoughts ?
>> >
>> > -a
>> >
>>
>>
>>
>> --
>> Timothy Kim
>>


Mime
View raw message