cool. I don't think we're using fetch/platforms directly.
-a On Tue, Sep 24, 2013 at 11:35 AM, Brian LeRoux <b...@brian.io> wrote: > Kewl. I'm down and happen to really like Q. Not sure everyone will agree. > Maybe next time a heads up to the list so we can discuss arch changes like > this. > > > On Mon, Sep 23, 2013 at 8:13 PM, Braden Shepherdson > <bra...@chromium.org>wrote: > >> Whoops, I forgot to mention, I created and pushed a cordova-3.1.x branch of >> both tools before merging this; fixes for the 3.1.0 release should be in >> there. I don't intend to launch the refactored code to NPM until we've had >> at least a week of trying it out. >> >> Braden >> >> >> On Mon, Sep 23, 2013 at 2:08 PM, Braden Shepherdson <bra...@chromium.org >> >wrote: >> >> > tl;dr: Plugman and CLI now uses Q.js[1] Promises internally instead of >> > callbacks. This has significantly clarified and shortened the code. The >> > public API (plugman.fetch, cordova.platform, etc.) HAVE NOT changed! >> > >> > If you use CLI on the command line, nothing has changed. >> > >> > If you downstream CLI and/or Plugman, but use cordova.foo and >> plugman.foo, >> > nothing has changed (except possibly that a few calls are a bit more >> async >> > than before, so code that cheats and pretends they're sync might fail >> now). >> > >> > If you downstream either one, but require internal modules like fetch.js >> > or platform.js directly, you should stop doing that and use plugman.fetch >> > etc. instead. If you want to continue calling them directly, you'll need >> to >> > port to use promises. >> > >> > If you've been working on Plugman or CLI and I just broke everything, >> feel >> > free to yell at me on IRC (#cordova, shepheb) or Gtalk (braden at google >> > dot com) or email. It's not hard to port things to handle promises (see >> > below), and their basic use is not hard to understand (see the >> tutorial[1]). >> > >> > If you really do need to port something, and you used to do a function >> > call like this: >> > >> > whateverFunc(args..., function(err){ >> > if (err) { >> > foo >> > } else { >> > bar >> > } >> > }); >> > >> > the correct call is now: >> > >> > whateverFunc(args...).done(function() { >> > bar >> > }, function(err) { >> > foo >> > }); >> > >> > >> > [1] Q.js tutorial at https://github.com/kriskowal/q >> > >> > >>