Thanks Mark, I'll take a look now. One quick note: at the hangout we raised the option of placing everything in cordova-lib.git repo inside a top-level node_modules dir. There was some debate if that was a good idea, bad idea, or just a joke.. Right now, we think it may help with dev workflow, but had some concerns it may actually mask dependency bugs. So we decided not to do it until we experiment to understand more of the implications. It would be useless at this point anyway, and we can add it once there are more top-level node modules (as Mark says). That would have no impact on releases or end users, it would just change our dev instructions a bit.
-Michal On Fri, May 2, 2014 at 2:34 PM, Mark Koudritsky <[email protected]> wrote: > Hi All, > > Cordova-lib is here. And since there is no way to do it gradually without > eternally chasing changes between repos, I'm landing it on master in a big > heavy chunk (as well as on branch named cordova-lib). > > Cordova lib is here: > https://git-wip-us.apache.org/repos/asf/cordova-lib.git > > when cloning cordova lib please make sure to run > npm link in cordova-lib > and > npm link cordova-lib in cordova-cli and cordova-plugman repos > > The new code structure is based on what was discussed during the hangout > with minor changes and is as follows: > > cordova-cli.git/ > > - > > package.json > - > > bin/cordova[.cmd] > - > > src/cli.js > - > > doc/help.txt > - > > spec/cli.spec.js > - > > cordova.js - a proxy for cordova-lib/src/cordova/cordova.js below, for > compatibility, will go away later, when downstream tools start using > crdova-lib. > > > > cordova-plugman repo has a structure very similar to cordova-cli. > > cordova-lib.git/ > > - > > cordova-lib/ > - > > cordova-lib.js - The future Cordova API surface. For now only > contains proxy shims to cordova.js and plugman.js > - > > src/cordova/<almost all of cordova-cli code> > - > > src/plugman/<almost all of plugman code> > - > > src/<common code> (for now only CordovaError) > - > > templates/* > - > > spec-plugman/ > - > > spec-cordva/ > - > > Specs are not in the same dir because they interact with each > other. This will be solved later, then they can be combined > into a single > spec dir. > - > > cordova-future-moduleX/ - will live as sibling of cordova-lib/. We can > later move them to live under cordova-lib/node_modules/ if npm link work > becomes a burden for dev workflow. > > > > Some points: > > - code that does require('cordova/something') will break. > > - README files will need some attention. > > - npm-shrinkwrap.json files were deleted and will need to be re-created > again. >
