Hey folks. Sorry I'm late to the party, but why is `--copy-from` not sufficient?
Kindly, Dmitry -----Original Message----- From: Carlos Santana [mailto:csantan...@gmail.com] Sent: Friday, December 4, 2015 10:09 AM To: dev@cordova.apache.org Subject: Re: [DISCUSS] CLI Templates Michael we will love to hear your feedback, and we can improve on top of what's initially there. On Fri, Dec 4, 2015 at 1:04 PM Carlos Santana <csantan...@gmail.com> wrote: > Michael > Links to PRs where available for a while on the proposal. > > https://github.com/apache/cordova-lib/pull/339 > https://github.com/apache/cordova-cli/pull/226 > > > On Fri, Dec 4, 2015 at 11:33 AM Michael Brooks > <mich...@michaelbrooks.ca> > wrote: > >> I'd love to see a pull request rather than a straight up merge, since >> the template discussion was more involved. Also, I'm really looking >> forward to seeing your work on this! >> >> On Thu, Dec 3, 2015 at 9:47 AM, Carlos Santana <csantan...@gmail.com> >> wrote: >> >> > I will be working later today with James from my team on merging >> > initial implementation of --template. it will update a few repos >> > (cli, lib, doc) >> > >> > Anyone oppose? >> > >> > >> > On Fri, Nov 13, 2015 at 1:50 PM Carlos Santana >> > <csantan...@gmail.com> >> > wrote: >> > >> > > alias, deprecate and later remove >> > > >> > > On Fri, Nov 13, 2015 at 1:49 PM Carlos Santana >> > > <csantan...@gmail.com> >> > > wrote: >> > > >> > >> I agree, --template is the new --copy-from :-) >> > >> >> > >> >> > >> On Fri, Nov 13, 2015 at 1:48 PM Shazron <shaz...@gmail.com> wrote: >> > >> >> > >>> Well, we could deprecate --copy-from, and alias --template to it. >> But >> > >>> we shouldn't have both, it should just be one implementation. >> > >>> >> > >>> On Fri, Nov 13, 2015 at 10:45 AM, Carlos Santana < >> csantan...@gmail.com >> > > >> > >>> wrote: >> > >>> > In some way we we are enhancing --copy-from >> > >>> > >> > >>> > I'm OK to the copy blindly even plugins and platforms, I was >> trying >> > to >> > >>> > avoid people creating templates when is not need it if they >> already >> > >>> have >> > >>> > platforms and plugins >> > >>> > But I'm OK if we want to allow it, but I would not documented >> > >>> > :-) >> it >> > >>> just >> > >>> > happens to work >> > >>> > >> > >>> > but I don't like the "--copy-from" name, I want to use >> "--template" >> > >>> that >> > >>> > takes path, giturl, and npm name >> > >>> > >> > >>> > >> > >>> > On Fri, Nov 13, 2015 at 1:41 PM Carlos Santana < >> csantan...@gmail.com >> > > >> > >>> wrote: >> > >>> > >> > >>> >> What dynamic nature you want ? >> > >>> >> >> > >>> >> I think using yeoman is bad idea, we tried at work at is a >> > >>> >> huge >> > >>> dependency >> > >>> >> in terms of foot print and number of dependencies. >> > >>> >> We then learned that just using the inquirer npm package >> > >>> >> gave us >> > what >> > >>> we >> > >>> >> wanted to create an interactive experience in the CLI >> > >>> >> >> > >>> >> At least the first implementation I want to keep it simple, >> > >>> >> but >> you >> > >>> >> brought a good point about dynamic. >> > >>> >> >> > >>> >> I will update proposal, add that if user passed any of the >> optional >> > >>> >> arguments for create like app-id, app-name, or app-version >> > >>> >> they >> > >>> replace the >> > >>> >> ones in the template. >> > >>> >> >> > >>> >> I will double check with James to see if already implemented >> this in >> > >>> his >> > >>> >> current PR, if not then will added. >> > >>> >> >> > >>> >> It terms of dynamic I think after we get the first >> > >>> >> implementation >> > >>> out, I >> > >>> >> would like to enhance on top of it with allowing the >> > >>> >> template to >> > have >> > >>> >> scripts that can run >> > >>> >> like before_create and after_create, then the template can >> specify >> > >>> this in >> > >>> >> the scripts object of the package.json and cordova cli just runs. >> > >>> This way >> > >>> >> template owner can run what ever they want even inquirer to >> > >>> >> ask >> > >>> questions >> > >>> >> to user for additional things to setup with the template. >> > >>> >> >> > >>> >> >> > >>> >> [1]: >> > >>> >> https://na01.safelinks.protection.outlook.com/?url=https%3a% >> > >>> >> 2f%2fwww.npmjs.com%2fpackage%2finquirer&data=01%7c01%7cdblot >> > >>> >> sky%40microsoft.com%7c9fb3634d35ba45cd7a7508d2fcd60177%7c72f >> > >>> >> 988bf86f141af91ab2d7cd011db47%7c1&sdata=cGhgCrxXQToX3DsPn2Om >> > >>> >> UCsTQtcWl11IjuPpgRdFlco%3d >> > >>> >> >> > >>> >> >> > >>> >> >> > >>> >> >> > >>> >> >> > >>> >> On Thu, Nov 12, 2015 at 1:56 PM Parashuram N < >> > panar...@microsoft.com> >> > >>> >> wrote: >> > >>> >> >> > >>> >>> ReactNative init does use yeoman - that is a good idea !! >> However, >> > >>> does >> > >>> >>> that mean that we need to depend on Yeoman also ? Does it >> > >>> >>> make >> > sense >> > >>> to >> > >>> >>> simply have a separate yeoman generator ? >> > >>> >>> >> > >>> >>> >> > >>> >>> >> > >>> >>> >> > >>> >>> On 11/12/15, 10:10 AM, "Gorkem Ercan" >> > >>> >>> <gorkem.er...@gmail.com> >> > >>> wrote: >> > >>> >>> >> > >>> >>> > >> > >>> >>> >How about adding support for some more dynamic generation. >> > >>> >>> >Can we add yeoman as an option something like $cordova >> > >>> >>> >create >> > myApp >> > >>> >>> >--template=yo:m >> > >>> >>> >to invoke the generator m ? >> > >>> >>> >-- >> > >>> >>> >Gorkem >> > >>> >>> > >> > >>> >>> >On 10 Nov 2015, at 19:52, Carlos Santana wrote: >> > >>> >>> > >> > >>> >>> >> Parashuram >> > >>> >>> >> >> > >>> >>> >> I would say that if they have "platforms" and "plugins" >> > >>> >>> >> it's >> not >> > >>> >>> >> consider a >> > >>> >>> >> template, its consider a cordova project ready to be use >> > >>> >>> >> no >> need >> > >>> to >> > >>> >>> >> run >> > >>> >>> >> create on it. >> > >>> >>> >> >> > >>> >>> >> As far as cp-from, it's doesn't copy much only www and >> > >>> config.xml, I >> > >>> >>> >> didn't >> > >>> >>> >> want to change it's behavior for backwards >> > >>> >>> >> compatibility. I >> > think >> > >>> it >> > >>> >>> >> will >> > >>> >>> >> be good to mark it deprecated for a certain period of >> > >>> >>> >> time, >> > >>> >>> >> >> > >>> >>> > >> > >>> >>> >+1 for deprecating the copy-from. >> > >>> >>> > >> > >>> >>> >> >> > >>> >>> >> On Tue, Nov 10, 2015 at 5:19 PM Parashuram N < >> > >>> panar...@microsoft.com> >> > >>> >>> >> wrote: >> > >>> >>> >> >> > >>> >>> >>> Yes, they would. However, there could be cases where >> > >>> >>> >>> folks >> > would >> > >>> like >> > >>> >>> >>> to >> > >>> >>> >>> have templates that have changes stuff in platforms, or >> added >> > >>> custom >> > >>> >>> >>> plugins or hooks. I think that instead of adding extra >> > >>> >>> >>> code >> to >> > >>> >>> >>> prevent all >> > >>> >>> >>> these things, we keep things simple, and copy over >> everything. >> > >>> The >> > >>> >>> >>> templates can then decide what they want to do, and >> > >>> >>> >>> most of >> > them >> > >>> will >> > >>> >>> >>> not >> > >>> >>> >>> bundle plugins or platforms. >> > >>> >>> >>> >> > >>> >>> >>> -----Original Message----- >> > >>> >>> >>> From: Steven Gill [mailto:stevengil...@gmail.com] >> > >>> >>> >>> Sent: Tuesday, November 10, 2015 2:16 PM >> > >>> >>> >>> To: dev@cordova.apache.org >> > >>> >>> >>> Subject: Re: [DISCUSS] CLI Templates >> > >>> >>> >>> >> > >>> >>> >>> If the plugins and platforms are listed in config.xml, >> wouldn't >> > >>> they >> > >>> >>> >>> just >> > >>> >>> >>> get fetched on prepare? >> > >>> >>> >>> >> > >>> >>> >>> On Tue, Nov 10, 2015 at 2:09 PM, Parashuram N >> > >>> >>> >>> <panar...@microsoft.com> >> > >>> >>> >>> wrote: >> > >>> >>> >>> >> > >>> >>> >>>> I think it should copy platform and plugins folders, >> > >>> >>> >>>> if >> those >> > >>> are a >> > >>> >>> >>>> part of the template. I think the guidance should be >> > >>> >>> >>>> that >> most >> > >>> >>> >>>> templates should not include a platform or a plugin >> > >>> >>> >>>> folder, >> > but >> > >>> if >> > >>> >>> >>>> they do - for reasons like custom plugins, etc, then >> > >>> >>> >>>> we >> should >> > >>> let >> > >>> >>> >>>> that happen. The only enhancement from --copy-from >> > >>> >>> >>>> would be >> > >>> that we >> > >>> >>> >>>> also >> > >>> >>> >>> support npm and git URLs. >> > >>> >>> >>>> >> > >>> >>> >>>> -----Original Message----- >> > >>> >>> >>>> From: Carlos Santana [mailto:csantan...@gmail.com] >> > >>> >>> >>>> Sent: Tuesday, November 10, 2015 1:26 PM >> > >>> >>> >>>> To: dev@cordova.apache.org >> > >>> >>> >>>> Subject: Re: [DISCUSS] CLI Templates >> > >>> >>> >>>> >> > >>> >>> >>>> Parashuram >> > >>> >>> >>>> >> > >>> >>> >>>> The template doesn't any special structure, the >> > >>> >>> >>>> current >> hello >> > >>> app in >> > >>> >>> >>>> npm is already a template >> > >>> >>> >>>> >> > >>> >>> >>>> Will add comment in PR about having fixtures in tests >> > >>> >>> >>>> for >> > >>> different >> > >>> >>> >>>> uses cases with different type of templates >> > >>> >>> >>>> >> > >>> >>> >>>> The code copies everything except plugins and >> > >>> >>> >>>> platforms >> > >>> directories, >> > >>> >>> >>>> maybe it needs some comments to make it more clear >> > >>> >>> >>>> >> > >>> >>> >>>> It should copy dot files like .gitignore, >> > >>> >>> >>>> .editorconfig, >> > >>> .bowerrc >> > >>> >>> >>>> Very >> > >>> >>> >>>> important at least for me .gitignore, it helps when >> > >>> >>> >>>> folks >> ask >> > if >> > >>> >>> >>>> they >> > >>> >>> >>>> should ignore platforms and plugins from source >> > >>> >>> >>>> control and >> > the >> > >>> >>> >>>> answer >> > >>> >>> >>>> is always YES. If they are asking then it means they >> > >>> >>> >>>> need >> the >> > >>> >>> >>>> advise. >> > >>> >>> >>>> >> > >>> >>> >>>> >> > >>> >>> >>>> On Tue, Nov 10, 2015 at 3:27 PM Parashuram N >> > >>> >>> >>>> <panar...@microsoft.com> >> > >>> >>> >>>> wrote: >> > >>> >>> >>>> >> > >>> >>> >>>>> +1 to the proposal. >> > >>> >>> >>>>> >> > >>> >>> >>>>> Is there a structure of a sample template ? Also, the >> > >>> >>> >>>>> code >> > >>> seems to >> > >>> >>> >>>>> copy everything from npm or the gitURL, though in the >> > proposal >> > >>> you >> > >>> >>> >>>>> say that dot file and hooks/platforms should not be >> copies. >> > >>> Should >> > >>> >>> >>>>> we talk about that in the proposal too ? >> > >>> >>> >>>>> >> > >>> >>> >>>>> -----Original Message----- >> > >>> >>> >>>>> From: Raymond Camden [mailto:raymondcam...@gmail.com] >> > >>> >>> >>>>> Sent: Tuesday, November 10, 2015 12:01 PM >> > >>> >>> >>>>> To: dev@cordova.apache.org >> > >>> >>> >>>>> Subject: Re: [DISCUSS] CLI Templates >> > >>> >>> >>>>> >> > >>> >>> >>>>> Yeah, nothing to add here but +1. >> > >>> >>> >>>>> >> > >>> >>> >>>>> Oh, the only thing I'd add is that I wish there was a >> > >>> >>> >>>>> way >> to >> > >>> >>> >>>>> *permanently* set a template. I hate the default >> > >>> >>> >>>>> Cordova >> > >>> template >> > >>> >>> >>>>> (sorry >> > >>> >>> >>>>> ;) and would love to make the CLI always use my own >> > particular >> > >>> >>> >>> template. >> > >>> >>> >>>>> >> > >>> >>> >>>>> On Tue, Nov 10, 2015 at 1:52 PM, Ryan J. Salva >> > >>> >>> >>>>> <rsa...@microsoft.com> >> > >>> >>> >>>>> wrote: >> > >>> >>> >>>>>> I love it! >> > >>> >>> >>>>>> >> > >>> >>> >>>>>> >> > >>> >>> >>>>>> rjs >> > >>> >>> >>>>>> >> > >>> >>> >>>>>> Ryan J. Salva | Principal Program Manager Lead >> > >>> >>> >>>>>> Visual >> > Studio >> > >>> >>> >>>>>> Tools for Apache Cordova rsa...@microsoft.com >> > >>> >>> >>>>>> 206 612 5079 mobile >> > >>> >>> >>>>>> >> > >>> >>> >>>>>> >> > >>> >>> >>>>>> >> > >>> >>> >>>>>> -----Original Message----- >> > >>> >>> >>>>>> From: Carlos Santana [mailto:csantan...@gmail.com] >> > >>> >>> >>>>>> Sent: Tuesday, November 10, 2015 7:49 PM >> > >>> >>> >>>>>> To: dev@cordova.apache.org >> > >>> >>> >>>>>> Subject: [DISCUSS] CLI Templates >> > >>> >>> >>>>>> >> > >>> >>> >>>>>> From the Face2Face meeting updating the cordova cli >> > >>> >>> >>>>>> to >> work >> > >>> with >> > >>> >>> >>>>>> templates sounded like a good feature to add to the >> > >>> >>> >>>>>> CLI >> > >>> >>> >>>>>> >> > >>> >>> >>>>>> I finally got around to this and created the >> > >>> >>> >>>>>> proposal and >> > got >> > >>> >>> >>>>>> James >> > >>> >>> >>>>> Dubee from our team to take a stab at implementation. >> > >>> >>> >>>>>> >> > >>> >>> >>>>>> CLI-Template proposal [1] >> > >>> >>> >>>>>> >> > >>> >>> >>>>>> [1]: >> > >>> >>> >>>>>> >> > >>> https://github.com/cordova/cordova-discuss/blob/master/proposal >> > >>> s/C >> > >>> >>> >>>>>> LI >> > >>> >>> >>>>>> -T >> > >>> >>> >>>>>> >> > >>> https://na01.safelinks.protection.outlook.com/?url=emplates.md& >> > >>> dat >> > >>> >>> >>>>>> a= >> > >>> >>> >>>>>> 01%7c01%7cpanarasi%40microsoft.com >> > >>> %7ce586e8f64dae4418c1b708d2ea158 >> > >>> >>> >>>>>> 9e >> > >>> >>> >>>>>> >> > >>> d%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=kctEUezjtECUIvZQ >> > >>> cih >> > >>> >>> >>>>>> bu >> > >>> >>> >>>>>> uydWn7HfTJO8c7W0LTz98U%3d >> > >>> >>> >>>>>> >> > >>> >>> >>>>>> --Carlos >> > >>> >>> >>>>> >> > >>> >>> >>>>> >> > >>> >>> >>>>> >> > >>> >>> >>>>> -- >> > >>> >>> >>>>> >> > >>> =============================================================== >> > >>> ===== >> > >>> >>> >>>>> == ===== Raymond Camden, Developer Advocate for >> MobileFirst >> > at >> > >>> IBM >> > >>> >>> >>>>> >> > >>> >>> >>>>> Email : raymondcam...@gmail.com Blog : >> > >>> >>> >>>>> >> > >>> >>> >> > https://na01.safelinks.protection.outlook.com/?url=www.raymondcamde >> > n >> > >>> >>> >>>>> .c >> > >>> >>> >>>>> om&data=01%7c01%7cpanarasi%40microsoft.com >> > >>> >>> %7c92e5feab0e524d2dbc8008d >> > >>> >>> >>>>> 2e >> > >>> >>> >>>>> >> > >>> a09af88%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=xMtq2oC%2b >> > >>> %2b%2 >> > >>> >>> >>>>> fB >> > >>> >>> >>>>> bNlOcIKlStSkgUUuiGDKbq7KuNMHLiVU%3d >> > >>> >>> >>>>> Twitter: raymondcamden >> > >>> >>> >>>>> >> > >>> >>> >>>>> >> > >>> --------------------------------------------------------------- >> > >>> ----- >> > >>> >>> >>>>> - To unsubscribe, e-mail: >> dev-unsubscr...@cordova.apache.org >> > >>> >>> >>>>> For additional commands, e-mail: >> dev-h...@cordova.apache.org >> > >>> >>> >>>>> >> > >>> >>> >>>>> >> > >>> >>> >>>>> >> > >>> --------------------------------------------------------------- >> > >>> ----- >> > >>> >>> >>>>> - To unsubscribe, e-mail: >> dev-unsubscr...@cordova.apache.org >> > >>> >>> >>>>> For additional commands, e-mail: >> dev-h...@cordova.apache.org >> > >>> >>> >>>>> >> > >>> >>> >>>> >> > >>> >>> >>> >> > >>> >>> > >> > >>> >>> >> > >>> >> >-------------------------------------------------------------------- >> >- >> > >>> >>> >To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org >> > >>> >>> >For additional commands, e-mail: >> > >>> >>> >dev-h...@cordova.apache.org >> > >>> >>> > >> > >>> >>> >> > >>> >> >> > >>> >> > >>> >> --------------------------------------------------------------------- >> > >>> To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org >> > >>> For additional commands, e-mail: dev-h...@cordova.apache.org >> > >>> >> > >>> >> > >> >