You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cordova.apache.org by Shazron <sh...@apache.org> on 2017/03/21 21:41:42 UTC

[DISCUSS] Update iOS Embedded WebView docs for Carthage

## DESCRIPTION

Carthage is supported for embedding Cordova into existing iOS projects now
(in cordova-ios@4.4.0, the next release):
https://issues.apache.org/jira/browse/CB-12050

The Docs to update are here:
http://cordova.apache.org/docs/en/6.x/guide/platforms/ios/webview.html

Doc issue:
https://issues.apache.org/jira/browse/CB-12514

## CARTHAGE

Carthage is:
https://github.com/Carthage/Carthage

In your existing project, you create a Cartfile. In it, you point it to the
Git repo for cordova-ios (among other dependencies). It will then download
the repo and build Cordova.framework in your project in a subfolder. You
would then add Cordova.framework into your project. Then in your code you
can do this:

@import Cordova;

CDVViewController* cdv = [CDVViewController new];

### PROPOSAL

Update the docs to use Carthage, replacing the existing multitude of steps.
Note that Carthage, like the docs before it, does not solve the "How do I
add plugins?" problem, it is a replacement for the existing method.

Re: [DISCUSS] Update iOS Embedded WebView docs for Carthage

Posted by Shazron <sh...@apache.org>.
I added Carthage to the iOS WebViews section of the docs for
cordova-ios@4.4.0, instead of replacing it:
http://cordova.apache.org/announcements/2017/04/26/ios-release.html

On Fri, Mar 24, 2017 at 11:26 PM, Shazron <sh...@apache.org> wrote:

> Thanks Corinne,
> That's the bet that Swift pm will be the king of the hill once it is fully
> baked and everybody moves to it (especially since it will be included with
> Xcode), but until then...
>
> Regarding doing both, I'd like to not support both -- especially since
> CocoaPods is more involved. I'll let this stew a bit for discussion and
> won't move forward just yet.
>
>
>
> On Fri, Mar 24, 2017 at 12:46 AM, Corinne <co...@gmail.com> wrote:
>
>>
>>
>> Sent from my iPhone
>>
>> > On 24 Mar 2017, at 01:11, Shazron <sh...@apache.org> wrote:
>> >
>> > Yes for plugins we have to use plugman.
>> >
>> > Why Carthage and not CocoaPods?
>> >
>> > Firstly I like that Carthage is not opinionated like CocoaPods -- you
>> have
>> > to have a Podfile, podspec, etc, and it creates a workspace that you
>> *have*
>> > to use. I was working on the goal for users to "easily add Cordova to an
>> > existing project" -- thus Carthage wins hands down (it builds the
>> > framework, you add it in, you're done). Granted, Carthage is for iOS 8+
>> > only but that is our deployment target anyway.
>> >
>> > CocoaPods is pretty heavy and I didn't like the hundreds of megabytes
>> (half
>> > gig?) you need to download before you can use it -- and I feel that
>> > Carthage is the way of the future anyway (although CocoaPods is great
>> for
>> > discovery I suppose). Not to mention potential CocoaPods
>> > Ruby/Gems/dependency hell.
>>
>> Mmm... difficult to predict the future but I'll bet on Swift package
>> manager (once it's got a proper iOS support)
>>
>> >
>> > I realize that if users need plugins they will have to install CocoaPods
>> > anyway if the plugins require CocoaPods (but that is outside the scope
>> of
>> > embedding Cordova). I don't want users to go through that hell
>> > pre-emptively just to embed Cordova.
>>
>> The doc starts with "This guide shows how to embed a Cordova-enabled
>> WebView component within a larger iOS application."
>> If the app is large chances are that it already use CocoaPods.
>>
>> What about a foc with 2 methods and let the use puck either Carthage or
>> CocoaPods?
>> >
>> > Note that we *can* use Cordova as a CocoaPod already (not directly from
>> > Apache): http://docs.phonegap.com/tutorials/develop/1-embed-webview/
>> ios/
>> >
>> >
>> >
>> >
>> > On Thu, Mar 23, 2017 at 4:29 PM, julio cesar sanchez <
>> jcesarmobile@gmail.com
>> >> wrote:
>> >
>> >> No objection, but why Carthage and not CocoaPods?
>> >>
>> >> For the plugins we have to use plugman, right?
>> >>
>> >> 2017-03-23 22:07 GMT+01:00 Shazron <sh...@apache.org>:
>> >>
>> >>> I'm going to leave this open for the rest of this week, and if no
>> >> concerns
>> >>> I will take that as lazy consensus and file an issue for changing
>> this.
>> >>>
>> >>>> On Tue, Mar 21, 2017 at 2:41 PM, Shazron <sh...@apache.org> wrote:
>> >>>>
>> >>>> ## DESCRIPTION
>> >>>>
>> >>>> Carthage is supported for embedding Cordova into existing iOS
>> projects
>> >>> now
>> >>>> (in cordova-ios@4.4.0, the next release):
>> >>>> https://issues.apache.org/jira/browse/CB-12050
>> >>>>
>> >>>> The Docs to update are here:
>> >>>> http://cordova.apache.org/docs/en/6.x/guide/platforms/ios/
>> webview.html
>> >>>>
>> >>>> Doc issue:
>> >>>> https://issues.apache.org/jira/browse/CB-12514
>> >>>>
>> >>>> ## CARTHAGE
>> >>>>
>> >>>> Carthage is:
>> >>>> https://github.com/Carthage/Carthage
>> >>>>
>> >>>> In your existing project, you create a Cartfile. In it, you point it
>> to
>> >>>> the Git repo for cordova-ios (among other dependencies). It will then
>> >>>> download the repo and build Cordova.framework in your project in a
>> >>>> subfolder. You would then add Cordova.framework into your project.
>> Then
>> >>> in
>> >>>> your code you can do this:
>> >>>>
>> >>>> @import Cordova;
>> >>>>
>> >>>> CDVViewController* cdv = [CDVViewController new];
>> >>>>
>> >>>> ### PROPOSAL
>> >>>>
>> >>>> Update the docs to use Carthage, replacing the existing multitude of
>> >>>> steps. Note that Carthage, like the docs before it, does not solve
>> the
>> >>> "How
>> >>>> do I add plugins?" problem, it is a replacement for the existing
>> >> method.
>> >>>>
>> >>>
>> >>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@cordova.apache.org
>> For additional commands, e-mail: dev-help@cordova.apache.org
>>
>>
>

Re: [DISCUSS] Update iOS Embedded WebView docs for Carthage

Posted by Shazron <sh...@apache.org>.
Thanks Corinne,
That's the bet that Swift pm will be the king of the hill once it is fully
baked and everybody moves to it (especially since it will be included with
Xcode), but until then...

Regarding doing both, I'd like to not support both -- especially since
CocoaPods is more involved. I'll let this stew a bit for discussion and
won't move forward just yet.



On Fri, Mar 24, 2017 at 12:46 AM, Corinne <co...@gmail.com> wrote:

>
>
> Sent from my iPhone
>
> > On 24 Mar 2017, at 01:11, Shazron <sh...@apache.org> wrote:
> >
> > Yes for plugins we have to use plugman.
> >
> > Why Carthage and not CocoaPods?
> >
> > Firstly I like that Carthage is not opinionated like CocoaPods -- you
> have
> > to have a Podfile, podspec, etc, and it creates a workspace that you
> *have*
> > to use. I was working on the goal for users to "easily add Cordova to an
> > existing project" -- thus Carthage wins hands down (it builds the
> > framework, you add it in, you're done). Granted, Carthage is for iOS 8+
> > only but that is our deployment target anyway.
> >
> > CocoaPods is pretty heavy and I didn't like the hundreds of megabytes
> (half
> > gig?) you need to download before you can use it -- and I feel that
> > Carthage is the way of the future anyway (although CocoaPods is great for
> > discovery I suppose). Not to mention potential CocoaPods
> > Ruby/Gems/dependency hell.
>
> Mmm... difficult to predict the future but I'll bet on Swift package
> manager (once it's got a proper iOS support)
>
> >
> > I realize that if users need plugins they will have to install CocoaPods
> > anyway if the plugins require CocoaPods (but that is outside the scope of
> > embedding Cordova). I don't want users to go through that hell
> > pre-emptively just to embed Cordova.
>
> The doc starts with "This guide shows how to embed a Cordova-enabled
> WebView component within a larger iOS application."
> If the app is large chances are that it already use CocoaPods.
>
> What about a foc with 2 methods and let the use puck either Carthage or
> CocoaPods?
> >
> > Note that we *can* use Cordova as a CocoaPod already (not directly from
> > Apache): http://docs.phonegap.com/tutorials/develop/1-embed-webview/ios/
> >
> >
> >
> >
> > On Thu, Mar 23, 2017 at 4:29 PM, julio cesar sanchez <
> jcesarmobile@gmail.com
> >> wrote:
> >
> >> No objection, but why Carthage and not CocoaPods?
> >>
> >> For the plugins we have to use plugman, right?
> >>
> >> 2017-03-23 22:07 GMT+01:00 Shazron <sh...@apache.org>:
> >>
> >>> I'm going to leave this open for the rest of this week, and if no
> >> concerns
> >>> I will take that as lazy consensus and file an issue for changing this.
> >>>
> >>>> On Tue, Mar 21, 2017 at 2:41 PM, Shazron <sh...@apache.org> wrote:
> >>>>
> >>>> ## DESCRIPTION
> >>>>
> >>>> Carthage is supported for embedding Cordova into existing iOS projects
> >>> now
> >>>> (in cordova-ios@4.4.0, the next release):
> >>>> https://issues.apache.org/jira/browse/CB-12050
> >>>>
> >>>> The Docs to update are here:
> >>>> http://cordova.apache.org/docs/en/6.x/guide/platforms/
> ios/webview.html
> >>>>
> >>>> Doc issue:
> >>>> https://issues.apache.org/jira/browse/CB-12514
> >>>>
> >>>> ## CARTHAGE
> >>>>
> >>>> Carthage is:
> >>>> https://github.com/Carthage/Carthage
> >>>>
> >>>> In your existing project, you create a Cartfile. In it, you point it
> to
> >>>> the Git repo for cordova-ios (among other dependencies). It will then
> >>>> download the repo and build Cordova.framework in your project in a
> >>>> subfolder. You would then add Cordova.framework into your project.
> Then
> >>> in
> >>>> your code you can do this:
> >>>>
> >>>> @import Cordova;
> >>>>
> >>>> CDVViewController* cdv = [CDVViewController new];
> >>>>
> >>>> ### PROPOSAL
> >>>>
> >>>> Update the docs to use Carthage, replacing the existing multitude of
> >>>> steps. Note that Carthage, like the docs before it, does not solve the
> >>> "How
> >>>> do I add plugins?" problem, it is a replacement for the existing
> >> method.
> >>>>
> >>>
> >>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@cordova.apache.org
> For additional commands, e-mail: dev-help@cordova.apache.org
>
>

Re: [DISCUSS] Update iOS Embedded WebView docs for Carthage

Posted by Corinne <co...@gmail.com>.

Sent from my iPhone

> On 24 Mar 2017, at 01:11, Shazron <sh...@apache.org> wrote:
> 
> Yes for plugins we have to use plugman.
> 
> Why Carthage and not CocoaPods?
> 
> Firstly I like that Carthage is not opinionated like CocoaPods -- you have
> to have a Podfile, podspec, etc, and it creates a workspace that you *have*
> to use. I was working on the goal for users to "easily add Cordova to an
> existing project" -- thus Carthage wins hands down (it builds the
> framework, you add it in, you're done). Granted, Carthage is for iOS 8+
> only but that is our deployment target anyway.
> 
> CocoaPods is pretty heavy and I didn't like the hundreds of megabytes (half
> gig?) you need to download before you can use it -- and I feel that
> Carthage is the way of the future anyway (although CocoaPods is great for
> discovery I suppose). Not to mention potential CocoaPods
> Ruby/Gems/dependency hell.

Mmm... difficult to predict the future but I'll bet on Swift package manager (once it's got a proper iOS support)

> 
> I realize that if users need plugins they will have to install CocoaPods
> anyway if the plugins require CocoaPods (but that is outside the scope of
> embedding Cordova). I don't want users to go through that hell
> pre-emptively just to embed Cordova.

The doc starts with "This guide shows how to embed a Cordova-enabled WebView component within a larger iOS application."
If the app is large chances are that it already use CocoaPods.

What about a foc with 2 methods and let the use puck either Carthage or CocoaPods? 
> 
> Note that we *can* use Cordova as a CocoaPod already (not directly from
> Apache): http://docs.phonegap.com/tutorials/develop/1-embed-webview/ios/
> 
> 
> 
> 
> On Thu, Mar 23, 2017 at 4:29 PM, julio cesar sanchez <jcesarmobile@gmail.com
>> wrote:
> 
>> No objection, but why Carthage and not CocoaPods?
>> 
>> For the plugins we have to use plugman, right?
>> 
>> 2017-03-23 22:07 GMT+01:00 Shazron <sh...@apache.org>:
>> 
>>> I'm going to leave this open for the rest of this week, and if no
>> concerns
>>> I will take that as lazy consensus and file an issue for changing this.
>>> 
>>>> On Tue, Mar 21, 2017 at 2:41 PM, Shazron <sh...@apache.org> wrote:
>>>> 
>>>> ## DESCRIPTION
>>>> 
>>>> Carthage is supported for embedding Cordova into existing iOS projects
>>> now
>>>> (in cordova-ios@4.4.0, the next release):
>>>> https://issues.apache.org/jira/browse/CB-12050
>>>> 
>>>> The Docs to update are here:
>>>> http://cordova.apache.org/docs/en/6.x/guide/platforms/ios/webview.html
>>>> 
>>>> Doc issue:
>>>> https://issues.apache.org/jira/browse/CB-12514
>>>> 
>>>> ## CARTHAGE
>>>> 
>>>> Carthage is:
>>>> https://github.com/Carthage/Carthage
>>>> 
>>>> In your existing project, you create a Cartfile. In it, you point it to
>>>> the Git repo for cordova-ios (among other dependencies). It will then
>>>> download the repo and build Cordova.framework in your project in a
>>>> subfolder. You would then add Cordova.framework into your project. Then
>>> in
>>>> your code you can do this:
>>>> 
>>>> @import Cordova;
>>>> 
>>>> CDVViewController* cdv = [CDVViewController new];
>>>> 
>>>> ### PROPOSAL
>>>> 
>>>> Update the docs to use Carthage, replacing the existing multitude of
>>>> steps. Note that Carthage, like the docs before it, does not solve the
>>> "How
>>>> do I add plugins?" problem, it is a replacement for the existing
>> method.
>>>> 
>>> 
>> 

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@cordova.apache.org
For additional commands, e-mail: dev-help@cordova.apache.org


Re: [DISCUSS] Update iOS Embedded WebView docs for Carthage

Posted by Shazron <sh...@apache.org>.
Yes for plugins we have to use plugman.

Why Carthage and not CocoaPods?

Firstly I like that Carthage is not opinionated like CocoaPods -- you have
to have a Podfile, podspec, etc, and it creates a workspace that you *have*
to use. I was working on the goal for users to "easily add Cordova to an
existing project" -- thus Carthage wins hands down (it builds the
framework, you add it in, you're done). Granted, Carthage is for iOS 8+
only but that is our deployment target anyway.

CocoaPods is pretty heavy and I didn't like the hundreds of megabytes (half
gig?) you need to download before you can use it -- and I feel that
Carthage is the way of the future anyway (although CocoaPods is great for
discovery I suppose). Not to mention potential CocoaPods
Ruby/Gems/dependency hell.

I realize that if users need plugins they will have to install CocoaPods
anyway if the plugins require CocoaPods (but that is outside the scope of
embedding Cordova). I don't want users to go through that hell
pre-emptively just to embed Cordova.

Note that we *can* use Cordova as a CocoaPod already (not directly from
Apache): http://docs.phonegap.com/tutorials/develop/1-embed-webview/ios/




On Thu, Mar 23, 2017 at 4:29 PM, julio cesar sanchez <jcesarmobile@gmail.com
> wrote:

> No objection, but why Carthage and not CocoaPods?
>
> For the plugins we have to use plugman, right?
>
> 2017-03-23 22:07 GMT+01:00 Shazron <sh...@apache.org>:
>
> > I'm going to leave this open for the rest of this week, and if no
> concerns
> > I will take that as lazy consensus and file an issue for changing this.
> >
> > On Tue, Mar 21, 2017 at 2:41 PM, Shazron <sh...@apache.org> wrote:
> >
> > > ## DESCRIPTION
> > >
> > > Carthage is supported for embedding Cordova into existing iOS projects
> > now
> > > (in cordova-ios@4.4.0, the next release):
> > > https://issues.apache.org/jira/browse/CB-12050
> > >
> > > The Docs to update are here:
> > > http://cordova.apache.org/docs/en/6.x/guide/platforms/ios/webview.html
> > >
> > > Doc issue:
> > > https://issues.apache.org/jira/browse/CB-12514
> > >
> > > ## CARTHAGE
> > >
> > > Carthage is:
> > > https://github.com/Carthage/Carthage
> > >
> > > In your existing project, you create a Cartfile. In it, you point it to
> > > the Git repo for cordova-ios (among other dependencies). It will then
> > > download the repo and build Cordova.framework in your project in a
> > > subfolder. You would then add Cordova.framework into your project. Then
> > in
> > > your code you can do this:
> > >
> > > @import Cordova;
> > >
> > > CDVViewController* cdv = [CDVViewController new];
> > >
> > > ### PROPOSAL
> > >
> > > Update the docs to use Carthage, replacing the existing multitude of
> > > steps. Note that Carthage, like the docs before it, does not solve the
> > "How
> > > do I add plugins?" problem, it is a replacement for the existing
> method.
> > >
> >
>

Re: [DISCUSS] Update iOS Embedded WebView docs for Carthage

Posted by julio cesar sanchez <jc...@gmail.com>.
No objection, but why Carthage and not CocoaPods?

For the plugins we have to use plugman, right?

2017-03-23 22:07 GMT+01:00 Shazron <sh...@apache.org>:

> I'm going to leave this open for the rest of this week, and if no concerns
> I will take that as lazy consensus and file an issue for changing this.
>
> On Tue, Mar 21, 2017 at 2:41 PM, Shazron <sh...@apache.org> wrote:
>
> > ## DESCRIPTION
> >
> > Carthage is supported for embedding Cordova into existing iOS projects
> now
> > (in cordova-ios@4.4.0, the next release):
> > https://issues.apache.org/jira/browse/CB-12050
> >
> > The Docs to update are here:
> > http://cordova.apache.org/docs/en/6.x/guide/platforms/ios/webview.html
> >
> > Doc issue:
> > https://issues.apache.org/jira/browse/CB-12514
> >
> > ## CARTHAGE
> >
> > Carthage is:
> > https://github.com/Carthage/Carthage
> >
> > In your existing project, you create a Cartfile. In it, you point it to
> > the Git repo for cordova-ios (among other dependencies). It will then
> > download the repo and build Cordova.framework in your project in a
> > subfolder. You would then add Cordova.framework into your project. Then
> in
> > your code you can do this:
> >
> > @import Cordova;
> >
> > CDVViewController* cdv = [CDVViewController new];
> >
> > ### PROPOSAL
> >
> > Update the docs to use Carthage, replacing the existing multitude of
> > steps. Note that Carthage, like the docs before it, does not solve the
> "How
> > do I add plugins?" problem, it is a replacement for the existing method.
> >
>

Re: [DISCUSS] Update iOS Embedded WebView docs for Carthage

Posted by Shazron <sh...@apache.org>.
I'm going to leave this open for the rest of this week, and if no concerns
I will take that as lazy consensus and file an issue for changing this.

On Tue, Mar 21, 2017 at 2:41 PM, Shazron <sh...@apache.org> wrote:

> ## DESCRIPTION
>
> Carthage is supported for embedding Cordova into existing iOS projects now
> (in cordova-ios@4.4.0, the next release):
> https://issues.apache.org/jira/browse/CB-12050
>
> The Docs to update are here:
> http://cordova.apache.org/docs/en/6.x/guide/platforms/ios/webview.html
>
> Doc issue:
> https://issues.apache.org/jira/browse/CB-12514
>
> ## CARTHAGE
>
> Carthage is:
> https://github.com/Carthage/Carthage
>
> In your existing project, you create a Cartfile. In it, you point it to
> the Git repo for cordova-ios (among other dependencies). It will then
> download the repo and build Cordova.framework in your project in a
> subfolder. You would then add Cordova.framework into your project. Then in
> your code you can do this:
>
> @import Cordova;
>
> CDVViewController* cdv = [CDVViewController new];
>
> ### PROPOSAL
>
> Update the docs to use Carthage, replacing the existing multitude of
> steps. Note that Carthage, like the docs before it, does not solve the "How
> do I add plugins?" problem, it is a replacement for the existing method.
>