ISSUE: https://issues.apache.org/jira/browse/CB-5921
PROOF OF CONCEPT: https://github.com/shazron/CB-5921 I took it onto myself to create a proof of concept on how this could work. Check out the README for the conversion details: https://github.com/shazron/CB-5921/blob/master/README.md TLDR; The essence of it is: 1. There is a workspace that contains: CordovaLib, the user's project, and N plugin framework projects 2. CordovaLib is no longer a subproject of the user's project 3. CordovaLib contains a target that will create a Cordova.framework 4. Plugins are iOS Framework projects (adding a plugin requires adding an xml line in xcworkspace, and framework refs in the user's project ) 5. Plugin JS is still installed by the CLI unless we find an alternative method 6. The CLI needs to be changed to do (4) Implementation details are in the README referenced above. BENEFITS This makes it all modular especially the plugins. Plugins are frameworks instead of static libraries because some plugins contain resource bundles that need to be included, and frameworks provide this functionality. Workspaces have been there since Xcode 4, and are used by a bunch of other package managers (Cococapods), it will be good to work well with other packaging systems if we can. Also, plugin installation is simplified. Cordova is a framework so there will be no duplicate symbol problem when linking a plugin into the user's project. POTENTIAL PROBLEMS: 1. I haven't tested this on iOS 7 devices yet though (since iOS frameworks are iOS 8 only -- but they should still work if weak linked), I'll have to find a device and report back. 2. cordova-cli platform version issues: if cordova-ios 4.x supports workspaces, and you are on a cordova-cli that doesn't know about the new template format (but you installed the new platform anyway), it won't work Send me your comments, ideas, etc... --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org For additional commands, e-mail: dev-h...@cordova.apache.org