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.
> > > > > >
> > > > >
> > > >
> > >
> >
>

Reply via email to