On Mon, May 5, 2014 at 4:12 PM, Sergey Grebnov (Akvelon) < v-seg...@microsoft.com> wrote:
> Just tried to rebase some of my work (plugman, cli) on top of master > branches w/o any success due to cordova-lib. > > What is the correct dev set up should be? Is below correct? > > cordova-cli <- https://github.com/apache/cordova-cli [master] > node_modules > cordova-lib <- > https://git-wip-us.apache.org/repos/asf/cordova-lib.git [master] (github > mirror is empty) > plugman <- https://github.com/apache/cordova-plugman [master] > You are close, but I don't think its quite right. Also, I would personally prefer to use npm link over cloning repos directly into node_modules/. I think you should have something like: - cordova-cli [ clone apache master ] - Run: npm link -g cordova-lib && npm install - now you should have a symlinked node_modules/cordova-lib - plugman [ clone apache master ] - Run: npm link -g cordova-lib && npm install - now you should have a symlinked node_modules/cordova-lib - cordova-lib [ clone apache master ] - Run npm install && npm link ..Something like that, I did it last week some commands may be slightly off. > > One of the issues I noticed is that cordova-lib repo has additional > cordova-lib folder inside, I believe src code must be in repo root, not? > The reason for the subdirectory is because there will be other npm modules in this repo in the future. > > I believe I previously saw repo healthy feature added for cordova-cli. If > not, I think this is something we need to add to make sure cordova-cli > master is always healthy. > > Thx! > Sergey > -----Original Message----- > From: brian.ler...@gmail.com [mailto:brian.ler...@gmail.com] On Behalf Of > Brian LeRoux > Sent: Friday, May 2, 2014 3:54 PM > To: dev@cordova.apache.org > Subject: Re: cordova-lib split out > > What does cordova lib do? Grab bag of properties like this? > > module.exports = { > > } > > > On Fri, May 2, 2014 at 2:44 PM, Mark Koudritsky <kam...@google.com> wrote: > > > We will see how it goes, but I think cordova-lib should be a real > > module, rather than just a prefix. Even if eventually it will be a > > thin layer that just proxies to all other submodules. Anyway, right it > > would be very difficult to split it into several cordova-lib-something > > modules without cordova-lib being a module, there are no good logical > > separation lines in current code. > > > > > > On Fri, May 2, 2014 at 5:11 PM, Brian LeRoux <b...@brian.io> wrote: > > > > > 1. node_modules is a bad idea and yep it was a joke 2. are we > > > looking to break out into something wherein the cordova-lib is > > a > > > dumb directory w/ modules inside it still? (unclear in current > > > structure) > > > > > > > > > On Fri, May 2, 2014 at 12:13 PM, Michal Mocny <mmo...@chromium.org> > > wrote: > > > > > > > On Fri, May 2, 2014 at 2:43 PM, Mark Koudritsky > > > > <kam...@google.com> > > > wrote: > > > > > > > > > Instructions for checking history in cordova-lib: > > > > > > > > > > git log <file> will show no history from before this commit for > > > > > files > > > > that > > > > > moved. To see full history use either git log --follow <file> or > > > > > git log cli_pre_lib <old file name> git log plugman_pre_lib <old > > > > > file name> > > > > > > > > > > 'cli_pre_lib' and 'plugman_pre_lib' are tags for the last commit > > > > > in cordova-cli and plugman repos made before cordova-lib was split > out. > > > > > > > > > > If you just do "git log <file>" on a file, the earliest visible > > commit > > > > will > > > > > contain the same suggestions as above, but it will also tell you > > which > > > > repo > > > > > this file lived in. > > > > > > > > > > > > > Sweet, that was a good idea. > > > > > > > > > > > > > > > > > > > > > > > > > > > > On Fri, May 2, 2014 at 2:34 PM, Mark Koudritsky > > > > > <kam...@google.com> > > > > 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 > > > > > linkwork 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. > > > > > > > > > > > > > > > > > > > > >