Precisely!  I thought plugin dependancies for apps was already on the
roadmap.  Is that request still debatable?


On Mon, Mar 25, 2013 at 6:01 PM, Braden Shepherdson <bra...@chromium.org>wrote:

> I agree that this recreation is a goal, but I don't think moving plugins/
> under app/ is the right way to do it.
>
> I think the right way to do it is to specify the plugin dependencies of the
> app in app/. Currently that means in the documentation or a script, in the
> future probably in config.xml.
>
> Braden
>
>
> On Mon, Mar 25, 2013 at 4:09 PM, Filip Maj <f...@adobe.com> wrote:
>
> > I think the issue here is: how far do we want to dictate the project
> > structure for a cordova-cli-generated app?
> >
> > Merges kind of "evolved" out of an actual user who needed a viable use
> > case covered (thanks Michael Wolf!). It is where it is for really no
> > reason other than "this is a good feature to have." Consider it like a
> > first pass at an implementation. We can iterate on it to make it better.
> >
> > One thing about the app/ proposal is that the stated objective is to
> > enable shipping a single directory to be able to recreate the native
> > projects. If that is the case, wouldn't we also have to move the plugins
> > into app/ ?
> >
> > On 3/25/13 11:25 AM, "Braden Shepherdson" <bra...@chromium.org> wrote:
> >
> > >They are, right now, a kind of middle ground. If you rm -rf'd the
> > >directory, it wouldn't be all better on the next cordova prepare; that's
> > >where we hope to reach soon.
> > >
> > >On the other hand, you definitely shouldn't be having code in them -
> > >native
> > >or otherwise - that didn't come from a plugin or from www/. So they
> could
> > >be reconstructed from data stored elsewhere, which makes them mostly a
> > >build artifact, and certainly not necessary to store in your source
> > >control.
> > >
> > >Braden
> > >
> > >
> > >On Mon, Mar 25, 2013 at 2:17 PM, Brian LeRoux <b...@brian.io> wrote:
> > >
> > >> While this might be our goal it is in no way true that ./platforms ia
> > >> build artifact today or anytime soon.
> > >>
> > >> On Mon, Mar 25, 2013 at 10:55 AM, Braden Shepherdson
> > >> <bra...@chromium.org> wrote:
> > >> > The same is /not/ true of the current structure, because one
> > >>(probably)
> > >> > doesn't want to be committing build artifacts like platforms/, or
> > >>cached
> > >> > third-party data like plugins/ into your git repo.
> > >> >
> > >> > The idea here is that everything under app/ is what you would keep
> in
> > >>git
> > >> > for a team working on an app: www, config.xml, docs, samples, etc.
> > >> Putting
> > >> > that content at the top-level instead means you have lots of extra
> > >>build
> > >> > artifact cruft in your git repo, or your devs just have to know that
> > >> > platforms/ and plugins/ are in .gitignore.
> > >> >
> > >> > Braden
> > >> >
> > >> >
> > >> > On Mon, Mar 25, 2013 at 1:45 PM, Brian LeRoux <b...@brian.io> wrote:
> > >> >
> > >> >> But, if you go up one level, the same is true w/ the current
> > >> >> structure. Its just an organizational difference? (Thats a
> perfectly
> > >> >> ok answer of course. Aesthetics and symmetry are plenty convincing
> > >> >> arguments.)
> > >> >>
> > >> >> In my view ./merges isn't your app. The ./merges dir is in parts of
> > >> >> your app on a per platform basis. Hence the logic for having it
> exist
> > >> >> at the same level as ./platforms.
> > >> >>
> > >> >> Having config.xml exist in the ../www does bother me.
> > >> >>
> > >> >>
> > >> >> On Mon, Mar 25, 2013 at 10:33 AM, Braden Shepherdson
> > >> >> <bra...@chromium.org> wrote:
> > >> >> > It allows easier cloning of your app (meaning the www,
> config.xml,
> > >>and
> > >> >> any
> > >> >> > samples and so on) into a self-contained directory. It also lets
> us
> > >> keep
> > >> >> > the user's app within a single top-level directory (rather than
> www
> > >> and
> > >> >> > merges and potentially more later).
> > >> >> >
> > >> >> > Because only the www (and merges) would get pulled into the
> actual
> > >> app,
> > >> >> any
> > >> >> > docs, samples, tests, or other miscellany in the git repo won't
> be
> > >> part
> > >> >> of
> > >> >> > the app.
> > >> >> >
> > >> >> >
> > >> >> > On Mon, Mar 25, 2013 at 1:19 PM, Brian LeRoux <b...@brian.io>
> wrote:
> > >> >> >
> > >> >> >> Ok, let me try again. What is precisely problem we are solving
> by
> > >> >> >> changing the structure? To be clear, I'm not really against or
> for
> > >> it.
> > >> >> >> I just don't understand why this is important.
> > >> >> >>
> > >> >> >>
> > >> >> >> On Mon, Mar 25, 2013 at 10:06 AM, Braden Shepherdson
> > >> >> >> <bra...@chromium.org> wrote:
> > >> >> >> > +1 is still a handy means of displaying your support or
> > >>otherwise.
> > >> >> >> >
> > >> >> >> > If you do want to version the platforms/ and plugins/ folders
> at
> > >> the
> > >> >> top
> > >> >> >> > level, you can do that. If you're versioning everything, then
> > >>you
> > >> >> should
> > >> >> >> be
> > >> >> >> > checking out that master repo, rather than the master repo and
> > >>then
> > >> >> the
> > >> >> >> app
> > >> >> >> > repo inside it, so it should all work fine.
> > >> >> >> >
> > >> >> >> > Braden
> > >> >> >> >
> > >> >> >> >
> > >> >> >> > On Mon, Mar 25, 2013 at 12:37 PM, Brian LeRoux <b...@brian.io>
> > >>wrote:
> > >> >> >> >
> > >> >> >> >> (Btw this isn't a vote thread guys.)
> > >> >> >> >>
> > >> >> >> >> On Mon, Mar 25, 2013 at 9:37 AM, Brian LeRoux <b...@brian.io>
> > >>wrote:
> > >> >> >> >> > So, what if you want to version the ./platorms folder? I
> > >>don't
> > >> like
> > >> >> >> >> > it, but ppl will do.
> > >> >> >> >> >
> > >> >> >> >> > On Mon, Mar 25, 2013 at 9:10 AM, James Jong <
> > >> wjamesj...@gmail.com>
> > >> >> >> >> wrote:
> > >> >> >> >> >> +1 for app folder and cordova create <app location>
> > >> >> >> >> >> I would like to see it support a git-URL or local.  It's
> > >>nice
> > >> to
> > >> >> have
> > >> >> >> >> it all neatly in app/  but can also see arguments for having
> > >>www/
> > >> as
> > >> >> >> >> top-level.
> > >> >> >> >> >>
> > >> >> >> >> >> -James Jong
> > >> >> >> >> >>
> > >> >> >> >> >> On Mar 25, 2013, at 10:32 AM, Braden Shepherdson <
> > >> >> >> bra...@chromium.org>
> > >> >> >> >> wrote:
> > >> >> >> >> >>
> > >> >> >> >> >>> A big +1 from me for this world, Michal's option 2.
> > >> >> >> >> >>>
> > >> >> >> >> >>> I want to be able to cordova create <some-git-URL>, and
> > >>have
> > >> it
> > >> >> >> create
> > >> >> >> >> an
> > >> >> >> >> >>> empty project where the app/ directory is the git repo.
> > >> >> >> >> >>>
> > >> >> >> >> >>> Then a full project might look like this:
> > >> >> >> >> >>>
> > >> >> >> >> >>> platforms/
> > >> >> >> >> >>>    android/
> > >> >> >> >> >>>    ios/
> > >> >> >> >> >>> plugins/
> > >> >> >> >> >>>    ...
> > >> >> >> >> >>> app/
> > >> >> >> >> >>>    merges/
> > >> >> >> >> >>>        ...
> > >> >> >> >> >>>    www/
> > >> >> >> >> >>>        ...
> > >> >> >> >> >>>    README.md
> > >> >> >> >> >>>    config.xml
> > >> >> >> >> >>>    docs/
> > >> >> >> >> >>>    etc...
> > >> >> >> >> >>>
> > >> >> >> >> >>> So I can have whatever meta-information I want inside my
> > >>app/
> > >> >> (and
> > >> >> >> >> >>> therefore my git repo) - tests, docs, samples, etc. - but
> > >>not
> > >> >> inside
> > >> >> >> >> the
> > >> >> >> >> >>> www that actually ships. This makes it sane to have just
> > >>the
> > >> >> app's
> > >> >> >> >> files in
> > >> >> >> >> >>> git, but not the platforms/ or plugins/ directories.
> > >> >> >> >> >>>
> > >> >> >> >> >>> Braden
> > >> >> >> >> >>>
> > >> >> >> >> >>>
> > >> >> >> >> >>> On Sun, Mar 24, 2013 at 6:02 PM, Michal Mocny <
> > >> >> mmo...@chromium.org>
> > >> >> >> >> wrote:
> > >> >> >> >> >>>
> > >> >> >> >> >>>> So a few questions:
> > >> >> >> >> >>>>
> > >> >> >> >> >>>> 0. Do we want to support app distribution?  Sample apps,
> > >>Test
> > >> >> >> Harness,
> > >> >> >> >> >>>> working in a team, open source projects.. hint at yes,
> > >>but we
> > >> >> could
> > >> >> >> >> just
> > >> >> >> >> >>>> leave that to be done manually.
> > >> >> >> >> >>>> 1. Do we want to support app documentation? Where would
> > >>you
> > >> put
> > >> >> it
> > >> >> >> if
> > >> >> >> >> you
> > >> >> >> >> >>>> wanted to ship it along with a app?
> > >> >> >> >> >>>> 2. Do we have any apps already using the merges/ folder?
> > >>  How do
> > >> >> >> they
> > >> >> >> >> ship
> > >> >> >> >> >>>> it?
> > >> >> >> >> >>>>
> > >> >> >> >> >>>> I suspect what would happen now is app devs would
> already
> > >> need
> > >> >> an
> > >> >> >> app
> > >> >> >> >> >>>> folder to keep all the pieces, would cordova create a
> > >> workspace,
> > >> >> >> and
> > >> >> >> >> >>>> link/copy over www/ and merges/.
> > >> >> >> >> >>>>
> > >> >> >> >> >>>> If we wanted to support app distribution (such that say
> > >> cordova
> > >> >> >> create
> > >> >> >> >> >>>> <path-to-app>), we would need to support importing from
> an
> > >> app
> > >> >> >> folder
> > >> >> >> >> (for
> > >> >> >> >> >>>> the two folder merges and www reason alone).  Yet we
> > >> currently
> > >> >> >> plan to
> > >> >> >> >> >>>> unpack that app folder inside the workspace.
> > >> >> >> >> >>>>
> > >> >> >> >> >>>> -Michal
> > >> >> >> >> >>>>
> > >> >> >> >> >>>>
> > >> >> >> >> >>>> On Sun, Mar 24, 2013 at 5:22 PM, Brian LeRoux <
> b...@brian.io
> > >
> > >> >> wrote:
> > >> >> >> >> >>>>
> > >> >> >> >> >>>>> Ya no worries we'll advocate on best for the project vs
> > >>our
> > >> >> >> >> particular
> > >> >> >> >> >>>>> downstream. File path handling, while tedious, is most
> > >> >> certainly
> > >> >> >> not
> > >> >> >> >> a
> > >> >> >> >> >>>>> reason to block a reasonable change.
> > >> >> >> >> >>>>>
> > >> >> >> >> >>>>> I think this is reasonable but not convinced it is a
> win.
> > >> >> >> >> >>>>>
> > >> >> >> >> >>>>> On Fri, Mar 22, 2013 at 7:35 PM, Michal Mocny <
> > >> >> >> mmo...@chromium.org>
> > >> >> >> >> >>>> wrote:
> > >> >> >> >> >>>>>> Ah yes, I see what you are asking.  The point being
> that
> > >> >> phonegap
> > >> >> >> >> build
> > >> >> >> >> >>>>>> would need to change to work with the new structure.
> > >> >> >> >> >>>>>>
> > >> >> >> >> >>>>>> Its a fair point, and its important generally to not
> > >>harm
> > >> >> >> downstream
> > >> >> >> >> >>>>>> distributions on purpose, but I think we generally
> > >>should
> > >> do
> > >> >> >> whats
> > >> >> >> >> best
> > >> >> >> >> >>>>> for
> > >> >> >> >> >>>>>> cordova and give downstream every opportunity to
> adjust.
> > >>  With
> > >> >> >> this
> > >> >> >> >> >>>>>> particular proposal I can only image it would not be a
> > >> >> problem,
> > >> >> >> >> >>>>> especially
> > >> >> >> >> >>>>>> if they use the same tools internally (but the actual
> > >> phonegap
> > >> >> >> build
> > >> >> >> >> >>>> team
> > >> >> >> >> >>>>>> should speak here).
> > >> >> >> >> >>>>>>
> > >> >> >> >> >>>>>> -Michal
> > >> >> >> >> >>>>>>
> > >> >> >> >> >>>>>>
> > >> >> >> >> >>>>>> On Fri, Mar 22, 2013 at 10:27 PM, Tommy-Carlos
> Williams
> > >> >> >> >> >>>>>> <to...@devgeeks.org>wrote:
> > >> >> >> >> >>>>>>
> > >> >> >> >> >>>>>>> I just mean that build expects config.xml to be in
> www,
> > >> yeah?
> > >> >> >> >> >>>>>>>
> > >> >> >> >> >>>>>>>
> > >> >> >> >> >>>>>>>
> > >> >> >> >> >>>>>>> On 23/03/2013, at 1:12 PM, Michal Mocny <
> > >> mmo...@chromium.org
> > >> >> >
> > >> >> >> >> wrote:
> > >> >> >> >> >>>>>>>
> > >> >> >> >> >>>>>>>> But isn't the app incomplete without the merges
> > >>folder?
> > >> >>  Most
> > >> >> >> apps
> > >> >> >> >> >>>>>>> probably
> > >> >> >> >> >>>>>>>> don't use it, but for those that do, a zip of www
> > >>isn't
> > >> >> enough,
> > >> >> >> >> you
> > >> >> >> >> >>>>>>> already
> > >> >> >> >> >>>>>>>> need to ship more than just the www folder.
>  Creating
> > >>an
> > >> app
> > >> >> >> >> folder
> > >> >> >> >> >>>>> would
> > >> >> >> >> >>>>>>>> actually make the situation easier I think.
> > >> >> >> >> >>>>>>>>
> > >> >> >> >> >>>>>>>> project
> > >> >> >> >> >>>>>>>> - platforms
> > >> >> >> >> >>>>>>>> - ..
> > >> >> >> >> >>>>>>>> - plugins
> > >> >> >> >> >>>>>>>> - ...
> > >> >> >> >> >>>>>>>> - app(s?)
> > >> >> >> >> >>>>>>>> - www/
> > >> >> >> >> >>>>>>>> - merges/
> > >> >> >> >> >>>>>>>> - config.xml
> > >> >> >> >> >>>>>>>> - README.md
> > >> >> >> >> >>>>>>>> - docs/
> > >> >> >> >> >>>>>>>> - etc stuff that doesn't get copied into platform/
> > >> output on
> > >> >> >> build
> > >> >> >> >> >>>>>>>>
> > >> >> >> >> >>>>>>>>
> > >> >> >> >> >>>>>>>> (oh, and hey, notice the similarity in structure to
> > >> plugins?
> > >> >> >> just
> > >> >> >> >> >>>>>>> sayin..)
> > >> >> >> >> >>>>>>>>
> > >> >> >> >> >>>>>>>>
> > >> >> >> >> >>>>>>>>
> > >> >> >> >> >>>>>>>> On Fri, Mar 22, 2013 at 7:00 PM, Tommy-Carlos
> Williams
> > >> >> >> >> >>>>>>>> <to...@devgeeks.org>wrote:
> > >> >> >> >> >>>>>>>>
> > >> >> >> >> >>>>>>>>> Can I just ask a question about this?
> > >> >> >> >> >>>>>>>>>
> > >> >> >> >> >>>>>>>>> Is the config.xml supposed to be compatible with
> > >> >> >> >> >>>> build.phonegap.comat
> > >> >> >> >> >>>>>>>>> all?
> > >> >> >> >> >>>>>>>>>
> > >> >> >> >> >>>>>>>>> I ask because I could see a scenario where you
> might
> > >> want
> > >> >> to
> > >> >> >> use
> > >> >> >> >> >>>> the
> > >> >> >> >> >>>>> cli
> > >> >> >> >> >>>>>>>>> tools, but still utilise build.phonegap.com for
> > other
> > >> >> >> platforms
> > >> >> >> >> >>>> (or
> > >> >> >> >> >>>>>>> even
> > >> >> >> >> >>>>>>>>> for the ones supported by the cli).
> > >> >> >> >> >>>>>>>>>
> > >> >> >> >> >>>>>>>>> If the cli config.xml is "build" compatible, it
> makes
> > >> sense
> > >> >> >> for
> > >> >> >> >> it
> > >> >> >> >> >>>>> to be
> > >> >> >> >> >>>>>>>>> in the www folder so that the www folder can go
> > >> straight to
> > >> >> >> >> >>>>>>>>> build.phonegap.com.
> > >> >> >> >> >>>>>>>>>
> > >> >> >> >> >>>>>>>>>
> > >> >> >> >> >>>>>>>>>
> > >> >> >> >> >>>>>>>>> On 23/03/2013, at 9:15 AM, Brian LeRoux <
> b...@brian.io>
> > >> >> wrote:
> > >> >> >> >> >>>>>>>>>
> > >> >> >> >> >>>>>>>>>> I'm ok with ./merges at the same level as ./www
> but
> > >>the
> > >> >> >> >> config.xml
> > >> >> >> >> >>>>>>>>>> inside of ./www bugs me too. I think having a root
> > >> level
> > >> >> >> ./www
> > >> >> >> >> >>>> just
> > >> >> >> >> >>>>>>>>>> works well mentally in that its obvious whats
> there,
> > >> what
> > >> >> it
> > >> >> >> >> does,
> > >> >> >> >> >>>>> and
> > >> >> >> >> >>>>>>>>>> who it effects. The ./merges folder is really just
> > >> stuff
> > >> >> that
> > >> >> >> >> gets
> > >> >> >> >> >>>>>>>>>> added to ./www in the right cases so having at the
> > >>same
> > >> >> >> depth is
> > >> >> >> >> >>>> ok
> > >> >> >> >> >>>>>>>>>> (for me).
> > >> >> >> >> >>>>>>>>>>
> > >> >> >> >> >>>>>>>>>> I get where you are coming from though.
> > >> >> >> >> >>>>>>>>>>
> > >> >> >> >> >>>>>>>>>> The real sticky bit is a config file hiding with
> the
> > >> app
> > >> >> >> >> >>>>>>>>>> implementation. It seems like that would live at
> the
> > >> root.
> > >> >> >> The
> > >> >> >> >> >>>> idea
> > >> >> >> >> >>>>> of
> > >> >> >> >> >>>>>>>>>> having it inside of ./www is a simple zip and
> > >>rename of
> > >> >> ./www
> > >> >> >> >> >>>> would
> > >> >> >> >> >>>>>>>>>> result in an installable package...but logically
> > >>with
> > >> our
> > >> >> >> >> tooling
> > >> >> >> >> >>>>> and
> > >> >> >> >> >>>>>>>>>> such that would be a build artifact that just
> lives
> > >>in
> > >> >> >> >> ./platforms
> > >> >> >> >> >>>>>>>>>> after we do our magic.
> > >> >> >> >> >>>>>>>>>>
> > >> >> >> >> >>>>>>>>>> =/
> > >> >> >> >> >>>>>>>>>>
> > >> >> >> >> >>>>>>>>>>
> > >> >> >> >> >>>>>>>>>> On Fri, Mar 22, 2013 at 1:24 PM, Michal Mocny <
> > >> >> >> >> >>>> mmo...@chromium.org>
> > >> >> >> >> >>>>>>>>> wrote:
> > >> >> >> >> >>>>>>>>>>> Paraphrasing our meeting notes today:
> > >> >> >> >> >>>>>>>>>>>
> > >> >> >> >> >>>>>>>>>>> * currently www/ has to have config.xml inside
> it,
> > >> docs
> > >> >> >> inside
> > >> >> >> >> >>>> it,
> > >> >> >> >> >>>>>>>>> README
> > >> >> >> >> >>>>>>>>>>> etc
> > >> >> >> >> >>>>>>>>>>> * merges folder is already a sibling of www/ but
> > >>its
> > >> >> >> logically
> > >> >> >> >> >>>>> part of
> > >> >> >> >> >>>>>>>>> the
> > >> >> >> >> >>>>>>>>>>> app.
> > >> >> >> >> >>>>>>>>>>> * So, why not move everything that isn't the
> actual
> > >> >> assets
> > >> >> >> of
> > >> >> >> >> the
> > >> >> >> >> >>>>> app
> > >> >> >> >> >>>>>>>>>>> itself out of www?
> > >> >> >> >> >>>>>>>>>>> * Option 1: move everything out into the root.
> > >> >> >> >> >>>>>>>>>>> * harder for git versioning your app, since
> cordova
> > >> >> >> artifacts
> > >> >> >> >> >>>>>>>>>>> (platforms, plugins) are inside.
> > >> >> >> >> >>>>>>>>>>> * Option 2: make a new top level "app/" folder
> that
> > >> holds
> > >> >> >> >> merges/
> > >> >> >> >> >>>>> and
> > >> >> >> >> >>>>>>>>> www/
> > >> >> >> >> >>>>>>>>>>> and manifestes etc
> > >> >> >> >> >>>>>>>>>>> * then you can just clone/install an app into one
> > >> >> location
> > >> >> >> >> >>>>>>>>>>>
> > >> >> >> >> >>>>>>>>>>>
> > >> >> >> >> >>>>>>>>>>> And I'll throw out a third option: Create an
> "apps"
> > >> >> folder
> > >> >> >> >> which
> > >> >> >> >> >>>>> can
> > >> >> >> >> >>>>>>>>> have
> > >> >> >> >> >>>>>>>>>>> any number of named apps, like plugins.
> > >> >> >> >> >>>>>>>>>>>
> > >> >> >> >> >>>>>>>>>>>
> > >> >> >> >> >>>>>>>>>>> I think (2) should be totally doable (just change
> > >>some
> > >> >> >> default
> > >> >> >> >> >>>>> paths
> > >> >> >> >> >>>>>>> in
> > >> >> >> >> >>>>>>>>> the
> > >> >> >> >> >>>>>>>>>>> tooling) and is a strict improvement (minus the
> > >> hassle of
> > >> >> >> >> moving
> > >> >> >> >> >>>>> your
> > >> >> >> >> >>>>>>>>> files
> > >> >> >> >> >>>>>>>>>>> around the first time for app devs).  (3) I think
> > >>is
> > >> >> >> >> interesting,
> > >> >> >> >> >>>>> but
> > >> >> >> >> >>>>>>>>> is a
> > >> >> >> >> >>>>>>>>>>> bit of a departure.
> > >> >> >> >> >>>>>>>>>>>
> > >> >> >> >> >>>>>>>>>>> -Michal
> > >> >> >> >> >>>>>>>>>
> > >> >> >> >> >>>>>>>>>
> > >> >> >> >> >>>>>>>
> > >> >> >> >> >>>>>>>
> > >> >> >> >> >>>>>
> > >> >> >> >> >>>>
> > >> >> >> >> >>
> > >> >> >> >>
> > >> >> >>
> > >> >>
> > >>
> >
> >
>

Reply via email to