incubator-callback-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jesse <purplecabb...@gmail.com>
Subject Re: Changing iOS's exec bridge
Date Thu, 02 Aug 2012 20:14:16 GMT
I will fix this in WP7 exec.
I will NOT be including the 300kb dll for JSON.net


On Thu, Aug 2, 2012 at 12:16 PM, Andrew Grieve <agrieve@chromium.org> wrote:

> Yeah, agree that putting the work-around in WP7's exec would be the best
> thing here and that long param lists are annoying. :P
>
>
> On Mon, Jul 30, 2012 at 3:12 PM, Jesse <purplecabbage@gmail.com> wrote:
>
> > Size becomes the issue.  The JSON lib is bigger than the Cordova
> framework
> > itself. In my mind the workaround is relatively simple, just other
> platform
> > APIs definers must be aware of it.
> >
> > Discussion of adding the lib [1]
> > Discussion of the issue on WP7 [2]
> > JSON.net lib [3]
> >
> > [1] https://issues.apache.org/jira/browse/CB-938
> > [2] https://issues.apache.org/jira/browse/CB-668
> > [3] http://json.codeplex.com/
> >
> >
> > On Mon, Jul 30, 2012 at 11:45 AM, Shazron <shazron@gmail.com> wrote:
> >
> > > What about including a better JSON lib than the included one? Will
> > > that be a problem?
> > >
> > > On Fri, Jul 27, 2012 at 6:11 PM, Jesse <purplecabbage@gmail.com>
> wrote:
> > > > Windows 8, WP8 at least
> > > > .net only supports basic JSON serialization without the inclusion of
> > > > the 300KB JSON.net lib.
> > > >
> > > >
> > > >
> > > > On Fri, Jul 27, 2012 at 6:05 PM, Shazron Abdullah <shazron@gmail.com
> >
> > > wrote:
> > > >> Thanks Jesse - seems like a doc issue we need to write for cross
> > > >> platform plugins. Would you know if this is a concern for other
> > > >> platforms as well besides WP7?
> > > >>
> > > >> On 2012-07-27, at 6:00 PM, Jesse <purplecabbage@gmail.com> wrote:
> > > >>
> > > >>> Okay, that all looks/sounds fine.
> > > >>> However, we have to be careful not to encourage passing multiple
> > > >>> objects in the array, in addition to multiple different object
> types.
> > > >>> We should continue to strive to make sure that everything outside
> of
> > > >>> exec is portable, so even though in iOS, exec can receive args
of
> > > >>> [{name:value}, {name:value}] the JS calling code will NOT be
> > portable.
> > > >>>
> > > >>> I worry (just a little) we are opening a door we may have to close
> > > later.
> > > >>>
> > > >>>
> > > >>>
> > > >>>
> > > >>>
> > > >>> On Fri, Jul 27, 2012 at 5:37 PM, Shazron <shazron@gmail.com>
> wrote:
> > > >>>> These changes transfer the decision that was done in JS to
the
> > > Objective-C side.
> > > >>>> The arguments are passed in as-is, if an object is passed
in as an
> > > >>>> array element, it is converted to a NSDictionary in objective-C.
> So
> > if
> > > >>>> you use the new plugin signature, you can pass in as many
objects
> as
> > > >>>> you want to the plugin method, they will be in order in the
> > arguments
> > > >>>> array as NSDictionary-s.
> > > >>>>
> > > >>>> The "extraction" occurs when we compare the plugin method
> signature
> > -
> > > >>>> if its a legacy signature, we extract the first NSDictionary
from
> > the
> > > >>>> arguments, like we did in JS. If its not a legacy signature,
we
> pass
> > > >>>> the arguments unchanged.
> > > >>>>
> > > >>>> re:
> > >
> >
> https://github.com/agrieve/incubator-cordova-ios/compare/legacy_exec#L3R63
> > > >>>>
> > > >>>>
> > > >>>> On Fri, Jul 27, 2012 at 5:26 PM, Jesse <purplecabbage@gmail.com>
> > > wrote:
> > > >>>>> Wait!
> > > >>>>>
> > > >>>>> Can we discuss the EXACT nature of the command array?
> > > >>>>> I have had to work through a similar issue on WP7, it
would be
> > > >>>>> extremely valuable if we could agree on what the args
to exec
> looks
> > > >>>>> like.
> > > >>>>>
> > > >>>>> It looks like your changes are all inside and beyond exec,
but I
> > want
> > > >>>>> to make sure.
> > > >>>>>
> > > >>>>> In the past we discussed removing the array altogether
and
> passing
> > > >>>>> named objects as args.
> > > >>>>> On WP7 it is extremely difficult to interpret arrays that
do not
> > > >>>>> contain the same types of object.
> > > >>>>> For example, if the command has args of
> > > ['what',23,{obj:literal},[1,2,3]]
> > > >>>>>
> > > >>>>> Do we still have a limitation of only passing 1 object
literal?
> > > >>>>>
> > > >>>>>
> > > >>>>>
> > > >>>>> On Fri, Jul 27, 2012 at 5:08 PM, Andrew Grieve <
> > agrieve@chromium.org>
> > > wrote:
> > > >>>>>> Committed.
> > > >>>>>> Sounds good! You update the dev guide, and I'll work
to update
> the
> > > existing
> > > >>>>>> core plugins.
> > > >>>>>>
> > > >>>>>>
> > > >>>>>> On Fri, Jul 27, 2012 at 6:22 PM, Shazron <shazron@gmail.com>
> > wrote:
> > > >>>>>>
> > > >>>>>>> Thanks Andrew, this looks good!
> > > >>>>>>>
> > > >>>>>>> Once you merge it in, I'll add the doc issues,
especially the
> > > Plugin
> > > >>>>>>> Dev Guide, we don't want people to start using
the old way. I
> was
> > > >>>>>>> thinking, a deprecation NSLog would be great if
they are using
> > the
> > > old
> > > >>>>>>> way, but that will just be too much noise at this
point...
> > > >>>>>>>
> > > >>>>>>> On Fri, Jul 27, 2012 at 2:06 PM, Andrew Grieve
<
> > > agrieve@chromium.org>
> > > >>>>>>> wrote:
> > > >>>>>>>> Shaz,
> > > >>>>>>>>
> > > >>>>>>>> I mentioned doing such a change during PGD,
but was hoping you
> > > could
> > > >>>>>>> give it
> > > >>>>>>>> a sanity check over:
> > > >>>>>>>>
> > > >>>>>>>> https://issues.apache.org/jira/browse/CB-1150
> > > >>>>>>>>
> > > https://github.com/agrieve/incubator-cordova-ios/compare/legacy_exec
> > > >>>>>>>>
> > https://github.com/agrieve/incubator-cordova-js/tree/better_exec
> > > >>>>>>>>
> > > >>>>>>>> I ensured mobile-spec and unit tests pass,
so should be good
> to
> > > go I
> > > >>>>>>> think.
> > > >>>>>>>>
> > > >>>>>>>> Andrew
> > > >>>>>>>
> > > >>>>>
> > > >>>>>
> > > >>>>>
> > > >>>>> --
> > > >>>>> @purplecabbage
> > > >>>>> risingj.com
> > > >>>
> > > >>>
> > > >>>
> > > >>> --
> > > >>> @purplecabbage
> > > >>> risingj.com
> > > >
> > > >
> > > >
> > > > --
> > > > @purplecabbage
> > > > risingj.com
> > >
> >
> >
> >
> > --
> > @purplecabbage
> > risingj.com
> >
>



-- 
@purplecabbage
risingj.com

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message