Hey

I'm definitely a fan of pre-compiled libraries for plugins. The main
reason I like JARs instead of Java files is because of the following:

* Cleaner projects
* Installation is extremely easy for non-Activity plugins (drop in the
libs directory)

The downsides on Android:

* You can't verify a JAR - Have to trust that the JAR isn't sketchy,
signatures can mitigate this, but not eliminate it
* JARs can't transport assets, assets would have to be transported separately

Overall, if you sign the JARs and allow for a mechanism for our users
to check the signature of the JAR, I'm cool with this approach.  We
should remember that our users aren't the type of people who will
check a Java file to make sure the plugin does what it says it does,
and it would be nice to be able to have a tool to give them some
assurance that the plugin does only what they think it does.

Joe


On Fri, Feb 22, 2013 at 1:30 PM, Michael Brooks
<mich...@michaelbrooks.ca> wrote:
> Great responses everyone. We've now got a decent overall of the iOS and WP
> landscape, not to mention use-cases of other projects such Google Maps.
>
> tl;dr: IMHO, those three things listed above is where we should put our
>> effort to make plugins easier, then see where that gets us. I think it will
>> drive us the furthest forward. Then go back an reevaluate whether or not to
>> provide precompiled libs to see if it truly makes life easier for the user,
>> or if it complicates life for the user.
>
>
> Marcel, this is the feedback that I was hoping to see! Thanks a bunch for
> the analysis.
>
> The project is always driven by what gives ours users the most value. So,
> it makes sense to not lose sight of our goal - offering plugins to users.
> If the first phase is source-code only, then so be it.
>
> The intention of packaging plugins as libraries is entirely around making
> the users' life less painful. I was reminded of this problem last night,
> when I had to compile a 2 year old OS X library because the developer did
> not publish the .framework. Unsurprisingly, it failed to build because
> Xcode no longer bundles the necessary libraries. Similarly, if I needed to
> a use a JPG or MP3 library, I would not want to include the source code in
> my project simply because it takes too long to compile (assume it does
> compile).
>
> Michael
>
> On Fri, Feb 22, 2013 at 12:38 PM, Marcel Kinard <cmarc...@gmail.com> wrote:
>
>> So if I back up for a moment and look at the bigger picture, it looks like
>> what you are going for is to make it easier for Cordova users to pick up
>> plugins, either base ones or third-party ones. There are many ways to do
>> that, providing precompiled code is one way.
>>
>> If I were to step into the shoes of a relatively new Cordova user who
>> wanted to pick up a plugin for my app, I don't think the compilation is
>> difficult enough to warrant some workaround such as providing libraries. My
>> [admitedly, limited] understanding is that as a Cordova user I always need
>> to use the device SDK to build my app. Therefore the compiler is right
>> there and it's not difficult to invoke (i.e., iOS always needs compilation).
>>
>> While still in the shoes of that Cordova user, what appears to be more
>> challenging in that role is figuring out what files are needed, where to
>> put them, and what to edit (i.e., config.xml). Basically, getting the
>> environment and content setup for the SDK to run against. After that,
>> running the SDK/compiler is easy. So for this difficulty, the kinds of
>> helps could include:
>> - docs: overall on how to install/remove plugins, and plugin-specific docs
>> on their specific requirements/quirks
>> - tooling: a CLI (i.e., plugman) that could make it as easy as npm
>> - verification: help me as a user understand if the plugin is in there
>> correctly, (i.e., smoke test or something like 'rpm -V')
>>
>> tl;dr: IMHO, those three things listed above is where we should put our
>> effort to make plugins easier, then see where that gets us. I think it will
>> drive us the furthest forward. Then go back an reevaluate whether or not to
>> provide precompiled libs to see if it truly makes life easier for the user,
>> or if it complicates life for the user.
>>
>> The library idea is neat, it ought be captured in Jira while these other
>> things are worked on first.
>>
>> -- Marcel Kinard

Reply via email to