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 <[email protected]> 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 <[email protected]> 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:[email protected]] > > Sent: Wednesday, December 14, 2011 08:09 PM > > To: [email protected] <[email protected] > > > > 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 <[email protected]> > 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" <[email protected]> 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" <[email protected]> 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 < > [email protected]> > >>> >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 <[email protected]> > >>> 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 > >>> >>> <[email protected]> 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 <[email protected]> > >>> >>>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. >
