>
> 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 <timki...@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.ka...@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
>

Reply via email to