Want to have this as a discussion starter. We've previously established that: 1. Releases for plugman & CLI will not be tied to platform releases 2. Releases to plugins will not be tied to platform releases
That's not to say we shouldn't sometime co-ordinate them with platform releases, but I think there would need to be a compelling reason to couple them. I'm wondering if it makes sense to not tie platform releases together either? E.g. Allow an update to cordova-ios separately from cordova-blackberry10. Possible Advantages: - Releases will (hopefully) occur more frequently. Don't need to wait for synchronization with other platforms to do a release. Possible Disadvantages: - Might make for too many releases & spam our users with release notes too often - Might make us lazy and release platforms too infrequently - Might make version numbers for platforms not correspond date-wise with version numbers of other platforms (e.g. 3.1 ios != 3.1 android) Other considerations: cordova-js is a common piece here. Perhaps that could be pulled out as well? Option 1: Bundle the exec bridge, platform bootstrap & plugin loader with the platform, and have the rest available as a plugin. Option 2: Bundle exec bridge + platform bootstrap with the platform, bundle the plugin loader with plugman, put the rest in a plugin For reference, the only non-exec-bridge / start-up code I can see is: ./cordova.js <--- hooks addEventListener + has exec bridge logic ./common/argscheck.js <--- strictly a helper for plugins ./common/base64.js <--- exec bridge depends on this ./common/builder.js <--- should be folded into modulemapper.js ./common/channel.js <--- start-up code needs this ./common/init.js <--- start-up code ./common/modulemapper.js <--- start-up code ./common/pluginloader.js <--- loads plugins on start-up ./common/urlutil.js <--- recently added helper for plugins ./common/utils.js <--- mostly misc stuff that may be mostly unused? There's also: ./windows8/windows8/commandProxy.js which I assume is exec bridge releated. I think that argscheck & urlutil would be well-suited as stand-alone plugins that other plugins depend on.