incubator-callback-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Brooks <mich...@michaelbrooks.ca>
Subject Re: Playbook code merge discussion
Date Thu, 15 Dec 2011 18:07:54 GMT
Drew, thanks for bringing up the concerns issues around the PlayBook merge.

I agree with Dave, I would rather see issues in PlayBook than regression in
BlackBerry. However, as Fil pointed out, most of the concerning issues are
minor, except #3 (which Drew has already fixed). For now, try to give the
PlayBook a graceful failure (error callback).

I just want to reiterate an important point:

The core callback-blackberry maintainers need to be responsibility of
testing on both BlackBerry and PlayBook.
We can't have patches going in that fix one platform and hinder another.

Unfortunately, I don't have time to spare for the PlayBook 1.3 issues. So
thank you Drew and Fil for helping out!

Michael

On Thu, Dec 15, 2011 at 8:59 AM, Drew Walters <deedubbu@gmail.com> wrote:

> Ok, I've submitted two pull requests which resolve numbers 3 and 4 from my
> list:
>
> 3. Restore camera and capture native functionality.
>     https://github.com/callback/callback-blackberry/pull/13
>
> 4. Delete duplicate blackberry.identity and blackberry.system feature
> ids in config.xml.
>     https://github.com/callback/callback-blackberry/pull/12
>
> I tested them on OS 5 and OS 6.  I did not merge them because I did
> not test on Playbook.  They are both trivial changes but would like
> someone else to verify to make sure I haven't broken Playbook.
>
> On Wed, Dec 14, 2011 at 8:07 PM, Ken Wallis <kwallis@rim.com> wrote:
> > Gord will look to help fix some of these issues over the next few days.
>  I assume we don't have write access to Jira, so should we just put on this
> thread which issues we will take on as we take them on, so as not to
> duplicate effort?
> >
> > ----- Original Message -----
> > From: Dave Johnson [mailto:dave.c.johnson@gmail.com]
> > Sent: Wednesday, December 14, 2011 08:09 PM
> > To: callback-dev@incubator.apache.org <callback-dev@incubator.apache.org
> >
> > Subject: Re: Playbook code merge discussion
> >
> > Yes it's better if playbook has bugs rather than the smartphone having
> > regressions.
> >
> > In that light what's the fastes route to resolution?
> >
> > On Wed, Dec 14, 2011 at 4:42 PM, Drew Walters <deedubbu@gmail.com>
> wrote:
> >> What I am pointing out is regressions in the smartphone implementation
> >> because of the playbook merge. Everything I listed worked in phonegap
> 1.2.
> >> Not fixing those will break existing apps.
> >> On Dec 14, 2011 6:25 PM, "Filip Maj" <fil@adobe.com> wrote:
> >>
> >>> I don't think it's a big deal. Yeah some of the APIs are not working,
> but
> >>> frankly these same APIs have issues on the regular smartphone
> >>> implementation in callback-blackberry so I don't see the real
> difference.
> >>> If we ship one why not ship both?
> >>>
> >>> Issues are filed for both playbook and smartphone blackberry
> >>> implementations so we know what problems exist. Eventually we will get
> to
> >>> them.
> >>>
> >>> Both (smartphone and playbook) approaches work too - if you clone the
> repo
> >>> down you can build apps for either the playbook or the smartphone.
> >>>
> >>>
> >>> On 11-12-14 3:15 PM, "Drew Walters" <deedubbu@gmail.com> wrote:
> >>>
> >>> >Is anyone looking at the changes that need to be made to Blackberry
> >>> >based on the Playbook merge?  I will vote to not ship 1.3 until some
> >>> >of these issues are fixed.
> >>> >
> >>> >I'll list what I believe must be fixed before 1.3 can ship:
> >>> >
> >>> >1. Delete media.js - Done. I pushed this change and subsequent
> >>> >reordering of phonegap.js concat for dependencies.
> >>> >
> >>> >2. Re-enable console.log to write to event log - I coded up a change
> >>> >for this which saved any existing console.log definition and re-called
> >>> >after writing to event log.  I have not pushed because I'm not sure
> >>> >what the Playbook side should do.  playBookPluginManager.js is
> >>> >defining the Logger plugin to call console.log which would be an
> >>> >infinite loop if console.log is overridden with a PhoneGap.exec.
> >>> >
> >>> >3. Restore camera and capture native functionality.
> >>> >
> >>> >4. Delete duplicate blackberry.identity and blackberry.system feature
> >>> >ids in config.xml.
> >>> >
> >>> >I can live with the other differences though they will require
> >>> >developers to make changes to their projects when they update to 1.3.
> >>> >
> >>> >I'm on vacation for two weeks after this Friday so my time to make
> >>> >changes is limited.  I'm hesitant to make any change that might affect
> >>> >the Playbook implementation since I don't have a Playbook and haven't
> >>> >had a chance to setup the environment.
> >>> >
> >>> >On Wed, Dec 7, 2011 at 9:16 AM, Dan Silivestru <
> dan.silivestru@gmail.com>
> >>> >wrote:
> >>> >> I think blackberry.ui.dialog is used for the notification API.
At
> least
> >>> >> that's what it looks like to me based on this:
> >>> >>
> >>> >>
> >>> >>
> >>>
> https://github.com/callback/callback-blackberry/commit/19c0e686067e36a563
> >>> >>815435f6ed69ee562dbf9d#L13R194
> >>> >>
> >>> >> Cheers,
> >>> >>
> >>> >> Dan.
> >>> >>
> >>> >> On Tue, Dec 6, 2011 at 1:59 PM, Drew Walters <deedubbu@gmail.com>
> >>> wrote:
> >>> >>
> >>> >>> One other thing I forgot to mention.  Is "playbook" the term
we
> want
> >>> >>> to reference in the code/build/etc?  I wonder if it would be
more
> >>> >>> future proof to call this "bbx".  My understanding is that
the
> >>> >>> Playbook OS and BBX will be one in the same going forward.
 Maybe
> its
> >>> >>> jumping the gun a bit, since BBX isn't available yet, but I'd
hate
> to
> >>> >>> have to rename in a couple of months.
> >>> >>>
> >>> >>> On Tue, Dec 6, 2011 at 11:56 AM, Michael Brooks
> >>> >>> <michael@michaelbrooks.ca> wrote:
> >>> >>> > Hi Drew,
> >>> >>> >
> >>> >>> > Thanks for the summary and details on what's changed.
> >>> >>> >
> >>> >>> > All of the Playbook support was added by RIM quite a while
ago,
> but
> >>> >>>the
> >>> >>> > pull request was only merged in recently. During the merge,
I
> didn't
> >>> >>>want
> >>> >>> > to make unnecessary changes, so I held off of cleaning
up parts
> of
> >>> >>>the
> >>> >>> > codebase. Now that we've got Playbook support into the
BlackBerry
> >>> >>> > repository, we can start discussing and cleaning the codebase.
> >>> >>> >
> >>> >>> > A very important note is that we now need to support both
> BlackBerry
> >>> >>>and
> >>> >>> > Playbook. RIM will be handling most of the AIR code, but
we need
> to
> >>> >>> ensure
> >>> >>> > that JavaScript changes for one platform will not break
the
> other.
> >>> >>>So,
> >>> >>> all
> >>> >>> > callback-blackberry developers are responsible for compiling,
> >>> >>>running,
> >>> >>> and
> >>> >>> > testing both BlackBerry (handheld) and Playbook (tablet).
> >>> >>> >
> >>> >>> > framework/ext/src/library.xml:
> >>> >>> >>    - PhoneGap feature is now "com.phonegap" instead
of
> "phonegap".
> >>> >>> >
> >>> >>> >
> >>> >>> > I'd also like a justification for this change. No other
WebWorks
> >>> >>> extension
> >>> >>> > uses namespaces, so I'm confused why "phonegap" was changed
to
> >>> >>> > "com.phonegap". If there is no reason, then I would like
to see
> it
> >>> >>> changed
> >>> >>> > back to "phonegap".
> >>> >>> >
> >>> >>> > javascript/capture.js:
> >>> >>> >>    - This is a proper renaming of media.js.
> >>> >>> >>        * Problem is media.js was not deleted so both
capture.js
> and
> >>> >>> >> media.js are included and are identical.
> >>> >>> >
> >>> >>> >
> >>> >>> > Good eye. If media.js is redundant, then we should remove
it.
> >>> >>> >
> >>> >>> > javascript/console.js:
> >>> >>> >>    - console.log is now only defined if console is
undefined.
> >>> >>> >> Previously console.log was always defined.
> >>> >>> >>        * I've been testing on OS 6 and console.log
never gets
> >>> >>>defined
> >>> >>> >> since console is defined.  This results in console.log
not
> working.
> >>> >>> >> I've had to use phonegap.Logger.log instead.
> >>> >>> >
> >>> >>> >
> >>> >>> > Perhaps clobbering console.log was conflicting the the
built-in
> Web
> >>> >>> > Inspector for Playbook debugging? We should be holding
a
> reference
> >>> >>>to the
> >>> >>> > original console.log, overriding it, and then still calling
the
> >>> >>>original
> >>> >>> > reference.
> >>> >>> >
> >>> >>> > template/project/project.properties:
> >>> >>> >>    - Properties previously defined in the file are
now prefixed
> with
> >>> >>> >> "blackberry".  New properties added for "playbook".
> >>> >>> >>        * I'm confused by "blackberry.sim.password".
 Description
> >>> >>>says
> >>> >>> >> "If you leave this field blank, then you cannot deploy
to
> >>> >>>simulator".
> >>> >>> >> I believe this is misleading since the only usage
I see for it
> in
> >>> >>> >> blackberry.xml is to load the device (not simulator).
> >>> >>> >
> >>> >>> >
> >>> >>> > Agreed. propject.properties has become more complicated
and I'd
> like
> >>> >>>to
> >>> >>> see
> >>> >>> > it simplified. I think it's doable.
> >>> >>> >
> >>> >>> > javascript/webWorksPluginManager.js:
> >>> >>> >>    - Camera and Capture functionality is now handled
by
> blackberry
> >>> >>> >> javascript API instead of native plugins.
> >>> >>> >>        * This is a step backwards as the blackberry
javascript
> API
> >>> >>> >> lacks some features implemented by the native plugins.
 Just to
> >>> >>>name a
> >>> >>> >> few: specifying image size for the Camera, and audio
recording
> for
> >>> >>> >> Capture.
> >>> >>> >
> >>> >>> >
> >>> >>> > My guess is that Playbook uses the WebWorks API, but BlackBerry
> >>> >>>should
> >>> >>> not
> >>> >>> > be forced to do the same if it provides additional functionality.
> >>> >>> >
> >>> >>> > template/project/build.xml:
> >>> >>> >>    - Build has been split up into blackberry.xml and
> playbook.xml.
> >>> >>> >>    - Building a phone app now requires "ant blackberry
build"
> where
> >>> >>> >> before it was "ant build".
> >>> >>> >
> >>> >>> >
> >>> >>> > I helped the RIM guys decided on this solution. It was
the
> cleanest
> >>> >>> > approach that we could come up with at the same.
> >>> >>> >
> >>> >>> > template/project/www/config.xml:
> >>> >>> >>    - PhoneGap feature is now "com.phonegap" instead
of
> "phonegap".
> >>> >>> >>    - New permissions blackberry.media.camera,
> blackberry.identity,
> >>> >>> >> blackberry.ui.dialog, blackberry.system.
> >>> >>> >>        * I'm confused why blackberry.identity and
> blackberry.system
> >>> >>> >> were added since they already exist in the file. 
I'm also not
> sure
> >>> >>> >> what is requiring blackberry.ui.dialog.
> >>> >>> >
> >>> >>> >
> >>> >>> > I'm also confused on the duplication and where
> blackberry.ui.dialog
> >>> >>>is
> >>> >>> used.
> >>> >>> >
> >>> >>> > template/project/www/plugins.xml:
> >>> >>> >>    - "Device" is a new required plugin.
> >>> >>> >
> >>> >>> >
> >>> >>> > Yep
> >>> >>> >
> >>> >>> > There are now issues being logged on the missing Playbook
APIs.
> Until
> >>> >>> > Playbook supports every PhoneGap API, we should ensure
that it
> can
> >>> >>> > gracefully fail on the JavaScript side.
> >>> >>> >
> >>> >>> > Thanks again for posting this thread Drew!
> >>> >>> > Michael
> >>> >>> >
> >>> >>> > On Tue, Dec 6, 2011 at 7:49 AM, Drew Walters <purdrew@gmail.com>
> >>> >>>wrote:
> >>> >>> >
> >>> >>> >> I've been playing around with the latest callback-blackberry
> code
> >>> >>> >> which has been merged to include playback support
and I have run
> >>> >>>into
> >>> >>> >> some things which are worth noting/discussing/fixing.
 For
> reference
> >>> >>> >> the code change is here:
> >>> >>> >>
> >>> >>> >>
> >>> >>> >>
> >>> >>>
> >>> >>>
> >>>
> https://github.com/callback/callback-blackberry/commit/19c0e686067e36a56
> >>> >>>3815435f6ed69ee562dbf9d#template/project/www/config.xml
> >>> >>> >>
> >>> >>> >> I've listed below some things which existing BlackBerry
> developers
> >>> >>> >> will need to be made aware of in order to update their
existing
> >>> >>> >> projects to 1.3. I've also added notes prefixed with
'*' which I
> >>> >>>feel
> >>> >>> >> are defects or at least require further discussion.
> >>> >>> >>
> >>> >>> >> framework/ext/src/library.xml:
> >>> >>> >>    - PhoneGap feature is now "com.phonegap" instead
of
> "phonegap".
> >>> >>> >>
> >>> >>> >> javascript/capture.js:
> >>> >>> >>    - This is a proper renaming of media.js.
> >>> >>> >>        * Problem is media.js was not deleted so both
capture.js
> and
> >>> >>> >> media.js are included and are identical.
> >>> >>> >>
> >>> >>> >> javascript/console.js:
> >>> >>> >>    - console.log is now only defined if console is
undefined.
> >>> >>> >> Previously console.log was always defined.
> >>> >>> >>        * I've been testing on OS 6 and console.log
never gets
> >>> >>>defined
> >>> >>> >> since console is defined.  This results in console.log
not
> working.
> >>> >>> >> I've had to use phonegap.Logger.log instead.
> >>> >>> >>
> >>> >>> >> template/project/project.properties:
> >>> >>> >>    - Properties previously defined in the file are
now prefixed
> with
> >>> >>> >> "blackberry".  New properties added for "playbook".
> >>> >>> >>        * I'm confused by "blackberry.sim.password".
 Description
> >>> >>>says
> >>> >>> >> "If you leave this field blank, then you cannot deploy
to
> >>> >>>simulator".
> >>> >>> >> I believe this is misleading since the only usage
I see for it
> in
> >>> >>> >> blackberry.xml is to load the device (not simulator).
> >>> >>> >>
> >>> >>> >> javascript/webWorksPluginManager.js:
> >>> >>> >>    - Camera and Capture functionality is now handled
by
> blackberry
> >>> >>> >> javascript API instead of native plugins.
> >>> >>> >>        * This is a step backwards as the blackberry
javascript
> API
> >>> >>> >> lacks some features implemented by the native plugins.
 Just to
> >>> >>>name a
> >>> >>> >> few: specifying image size for the Camera, and audio
recording
> for
> >>> >>> >> Capture.
> >>> >>> >>
> >>> >>> >> template/project/build.xml:
> >>> >>> >>    - Build has been split up into blackberry.xml and
> playbook.xml.
> >>> >>> >>    - Building a phone app now requires "ant blackberry
build"
> where
> >>> >>> >> before it was "ant build".
> >>> >>> >>
> >>> >>> >> template/project/www/config.xml:
> >>> >>> >>    - PhoneGap feature is now "com.phonegap" instead
of
> "phonegap".
> >>> >>> >>    - New permissions blackberry.media.camera,
> blackberry.identity,
> >>> >>> >> blackberry.ui.dialog, blackberry.system.
> >>> >>> >>        * I'm confused why blackberry.identity and
> blackberry.system
> >>> >>> >> were added since they already exist in the file. 
I'm also not
> sure
> >>> >>> >> what is requiring blackberry.ui.dialog.
> >>> >>> >>
> >>> >>> >> template/project/www/plugins.xml:
> >>> >>> >>    - "Device" is a new required plugin.
> >>> >>> >>
> >>> >>>
> >>> >>
> >>> >>
> >>> >>
> >>> >> --
> >>> >> Dan Silivestru
> >>> >> +1 (519) 589-3624
> >>>
> >>>
> >
> > ---------------------------------------------------------------------
> > This transmission (including any attachments) may contain confidential
> information, privileged material (including material protected by the
> solicitor-client or other applicable privileges), or constitute non-public
> information. Any use of this information by anyone other than the intended
> recipient is prohibited. If you have received this transmission in error,
> please immediately reply to the sender and delete this information from
> your system. Use, dissemination, distribution, or reproduction of this
> transmission by unintended recipients is not authorized and may be unlawful.
>

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