Gaia/SMS/Scrum/FxOS-S3

From MozillaWiki
< Gaia‎ | SMS‎ | Scrum
Jump to: navigation, search

Contents

List of bugs

SMS issues handled by the SMS subteam (blocks the sprint bug 1179700)

Bugzilla link

Full Query
ID Assigned to Summary Blocking b2g Feature-b2g Whiteboard Resolution
1162030 Julien Wajsberg [:julienw] [Messages][NG] Figure out how navigation works --- No cf_feature-b2g [p(FxOS-S4)=2][p(FxOS-S3=3][p(2.2S13)=2][sms-sprint-2.2S14] FIXED
1169573 Steve Chung [:steveck] [Messages][NG] Lay out Messaging service structure --- No cf_feature-b2g [p(FxOS-S3)=2][p(2.2S14)=1] FIXED
1169576 Oleg Zasypkin [:azasypkin] [Messages][NG] Implement Conversation service: method for streaming joined threads and drafts list --- No cf_feature-b2g [p(FxOS-S5)=3][p(FxOS-S4)=3][p(FxOS-S3)=3] FIXED
1175503 Oleg Zasypkin [:azasypkin] [Messages][NG] Get rid of direct ConversationView dependencies from Compose component --- No cf_feature-b2g [p=1] FIXED
1179628 [Messages][NG] Lay out Settings service structure --- No cf_feature-b2g [p=1] WONTFIX
1179705 Oleg Zasypkin [:azasypkin] [Messages][NGA] Upgrade to latest version of threads.js --- No cf_feature-b2g [p=2] FIXED

6 Total; 6 Open (100%); 0 Resolved (0%); 0 Verified (0%);


Remaining points and burndown chart

google chart api url for Sprint FxOS-S3

Burndown chart
Remaining points
Start 12
Day 2 12
Day 3 12
Day 4 12
Day 5 10
Day 6 10
Day 7 9
Day 8 9
Day 9 8
Day 10 8
Day 11 8
Day 12 8
Day 13 7
Day 14 7
Day 15 7
Day 16 7
Day 17 7
Day 18 6
End


SMS issues handled by the SMS subteam outside of the sprint (contains whiteboard "sms-sprint-FxOS-S3")

Full Query
ID Assigned to Summary Blocking b2g Feature-b2g Whiteboard Resolution
958105 Steve Chung [:steveck] [Messages][Drafts] Creating a draft should not change the thread's timestamp --- No cf_feature-b2g [sms-most-wanted][sms-sprint-FxOS-S3] FIXED
1176976 Oleg Zasypkin [:azasypkin] [Messages][Drafts] Remove the draft saving/replacing action menu --- No cf_feature-b2g [sms-sprint-FxOS-S8 p=1][sms-sprint-FxOS-S3][sms-sprint-FxOS-S4] FIXED
1180593 Steve Chung [:steveck] [Messages][NG] Reorganize settings methods for settings service and views separately --- No cf_feature-b2g [sms-sprint-FxOS-S3] FIXED
1181136 Julien Wajsberg [:julienw] [Messages] When sending a MMS in airplane mode, the display stays in "sending" state after the error --- No cf_feature-b2g [sms-papercuts][sms-sprint-FxOS-S3] FIXED

4 Total; 4 Open (100%); 0 Resolved (0%); 0 Verified (0%);


All SMS issues tracked for this sprint (target milestone)

Bugzilla link

Full Query
ID Assigned to Summary Blocking b2g Feature b2g Resolution
1082052 Julien Wajsberg [:julienw] [Messages][Refactoring] Return a Promise from SMIL.parse --- --- FIXED
1153883 anubhav.worklinux [Messages] Use sinon to fix mozContacts.find results directly in tests --- --- FIXED
1165765 Julien Wajsberg [:julienw] Intermittent Gij Automation Error: mozprocess timed out after 330 seconds running ['make', 'test-integration', 'REPORTER=mocha-tbpl-reporter', 'TEST_MANIFEST=./shared/test/integration/tbpl-manifest.json', 'NODE_MODULE_SRC=npm-cache', 'VIRTUALENV_EXISTS=1' --- --- FIXED
1179700 SMS sprint FxOS-S3 --- --- INCOMPLETE
1180593 Steve Chung [:steveck] [Messages][NG] Reorganize settings methods for settings service and views separately --- --- FIXED

5 Total; 5 Open (100%); 0 Resolved (0%); 0 Verified (0%);


Sprint planning

Minutes are on a separate page.

Daily meetings

Day 2: July 3rd

Steve

  • bug 1169573 - [Messages][NG] Lay out Messaging service structure
    • Get some feedbacks, will reply or ask more question and update for review.
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
    • Trying to summarize our thought about the Settings service (or object)
  • bug 1167144 - [Messages] Reduce the use of Threads.active and Threads currentId in conversation view.
    • Create a small patch for some early feedback. Basically want to figure out how we deal with the active thread and current thread ID once we have the conversation service.
  • Gave some comments about the new message extraction.

Today:

  • Update messaging service prototype.
  • Reply some more thought about settings part.
  • Update the patch about reducing the use of Threads in conversation view.

Julien

  • gave feedback to Steve's patches, this is looking good !
  • moved forward the navigation (bug 1162030): now this is mostly working in non-split mode, today I'll work on split mode and ask feedback !

Today: I want to:

  • do asked reviews
  • move forward navigation

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

It was day of reviews :)

  • bug 1179088 - Stop defining non-configurable properties on windows in Gaia, again
    • Reviewed, r+'ed (landed).
  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • Received feedback, replied to questions and filed smaller bugs to proceed with the split (in background).
  • bug 1175503 - [Messages][NG] Get rid of direct ConversationView dependencies from Compose component
    • Didn't have much time for this yesterday, working on unit tests (in progress).
  • bug 1153888 - [Messages] Contacts.findBy and other Contacts.* functions should never return "null".
    • Reviewed, r+'ed (landed).
  • bug 1169573 - [Messages][NG] Lay out Messaging service structure
    • Left feedback, mostly nits, otherwise looks good.
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
    • Spent some time to see what we have in Settings and MobileOperator to better understand issue we have, replied at Bugzilla.
  • bug 1178712 - [Message]When we launch Message from a contact details view for the second time, device does not enter the compose view, but enters a view where there is only a title "message".
    • Didn't have time to investigate further, it's out of sprint, so maybe take a look when have some free time (in background).

Today:

  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Day 3: July 6th

Steve

  • bug 1169573 - [Messages][NG] Lay out Messaging service structure
    • Polish the patch with unit test for another review.
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
    • Add more thoughts on the bugzilla. In short, maybe we can split settings into simUtilsService for service part and rest of settings for view.
  • bug 1167144 - [Messages] Reduce the use of Threads.active and Threads currentId in conversation view.
    • Add some questions based on the feedbacks.
  • Gave some thought for the mozMobileMessage API v2 .

Today:

  • Update messaging service prototype.
  • Reply some more thought about settings part.
  • Update the patch about reducing the use of Threads in conversation view.

Julien

  • mostly worked on the navigation patch (bug 1162030); this is working now, I'm adding few comments and I'll ask feedback this morning.
  • read about Bevis' proposal for new MobileMessaging API and gave some feedbacks.

Today: I want to:

  • ask feedback on navigation patch
  • think about the system messages issue
  • do asked reviews
  • pick another sprint bug

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1175503 - [Messages][NG] Get rid of direct ConversationView dependencies from Compose component
    • Updated related unit tests, testing will be ready for review soon (in progress, almost ready for review).
  • bug 1178712 - [Message]When we launch Message from a contact details view for the second time, device does not enter the compose view, but enters a view where there is only a title "message".
    • No updates (in background).

Other:

  • Roughly went through Bevis's proposal, left some preliminary feedback - will ready carefully today.

Today:

  • Will pick up next sprint bug;
  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Day 4: July 7th

Steve

  • bug 1169573 - [Messages][NG] Lay out Messaging service structure
    • Polish the patch with unit test for another review, and not sure how we could start the test.
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
    • We decided to split the 2 methods into views and create settings service, mozSettings shim and mozMobileConnections shim separately.
  • bug 1167144 - [Messages] Reduce the use of Threads.active and Threads currentId in conversation view.
    • Work on the bug 958105 for draft timestamp issue first.
  • bug 958105 - [Messages][Drafts] Creating a draft should not change the thread's timestamp
    • Will give a patch to ignore the timestamp change while updateThread for draft case.

Today:

  • Update messaging service prototype.
  • Feedback for navigation work.
  • Patch for draft timestamp fix.
  • Reply some more thought about settings part.
  • Update the patch about reducing the use of Threads in conversation view.

Julien

  • mostly worked on the navigation patch (bug 1162030); added more comments, did some final changes, add comments on github, asked feedback.
  • reviewed a contributor patch for bug 1153883 (rewrite some unit tests using sinon)
  • gave more feedback to Bevis' proposal for new MobileMessaging API

Today: I want to:

  • do reviews for sprint bugs
  • think about the system messages issue
  • pick another sprint bug

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1175503 - [Messages][NG] Get rid of direct ConversationView dependencies from Compose component
    • Prepared for review (in review).
  • bug 1179705 - [Messages][NGA] Upgrade to latest version of threads.js
    • Started migration, activity shim is successfully migrated since threads has built-in Window endpoint as I wished (without fast-path though, but onmessage/postMessage is fine) :)
      (Julien) and if we need a fastpath we can implement our own fastpath endpoint, I think
      (Oleg) True :) Just wanted to note that it's good that we can migrate to new lib with minimal effort and if we want even faster solution we can implement our own endpoint as you say.
    • Streams are extracted to a separate plugin file and since there can be more plugins I'd suggest to change our lib structure. How about "lib/bridge/bridge(or core?).js" and "lib/bridge/plugins/(stream or smth new if introduced)/...js"?
      (Steve) Maybe simply move the plugins into specific folder and still leave main script in "lib/bridge/"?
      (Oleg) What folder do you have in mind?
      (Steve) "lib/bridge/plugins/" like you said?
      (Oleg) Sorry didn't get :) "still leave main script in "lib/bridge/"?" ---> Not sure what you meant here, either leave script where it's now or ...? Maybe we can talk on IRC if it's better :)
  • bug 1172902 - [Messages][NG] Use SimpleOfflineCache to cache all app resources
    • Looks like all _current_, dependencies are resolved now, will see if everything works now (in background).

Other:

  • Reading Bevis's proposal, one thing that bothers me is that outgoing messages are "transactions" and incoming messages are "some other thing", honestly don't really like that. Trying to wrap up my mind on how it can be generalized if possible at all.....
    (Julien) Aren't incoming messages also transactions?
    (Oleg) "(BVS 7/7) The difference is that for incoming message, it's not a transaction but a message temporarily stored in Gecko. The scenario is" - I'm referring to this explanation... I was imagine that we'll have single method to retrieve all "pending" transactions (including not flushed incoming messages, not downloaded MMS's), but I see it's not the case now.
    (Julien) Yep I agree with you, we need to clarify this

Today:

  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Day 5: July 8th

Steve

  • bug 1169573 - [Messages][NG] Lay out Messaging service structure
    • Working on the unit test with nullify the worker related API for testing. BTW I found that we could not freeze the service after mixin because the service and client is not set before init();
      (Oleg) yep, I fixed this, should land soon. We'll be able to only "seal" though. (bug 1179705)
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
    • Create bugs for shim and method splitting.
  • bug 1167144 - [Messages] Reduce the use of Threads.active and Threads currentId in conversation view.
    • Rebase the patch after 958105 landed.
  • bug 958105 - [Messages][Drafts] Creating a draft should not change the thread's timestamp
    • Landed, clean up the timestamp changes in inbox and conversation view.
  • Just a glance for navigation work patch, will review again today.

Today:

  • Update messaging service prototype.
  • Feedback for navigation work.
  • Update the patch about reducing the use of Threads in conversation view.

Julien

Note: today we have Mozilla's leadership in the office, with a meeting this afternoon -- not sure I'll be able to move things forward this afternoon.

  • mostly did reviews:
    • bug 1175503: get rid of dependencies between ConversationView and Compose
    • bug 958105: stop changing the thread's timestamp when it has a draft (makes other NGA code easier)
    • bug 1179705: upgrade to newer version of threads.js
  • gave feedback on bug 1180149: the edge gestures behavior was stealing focus and as a result we couldn't send a message at the first click. Was happening especially on Sony Z3C, not much on Flame.
    (Oleg) \0/ I guess the only thing that is left is some space above and at the left side of the send button we discussed some time ago, but it's not that common to tap there :)
    (Julien) yeah, I tried manually and I think only the space above could make issues (when we have a multiline message and because there is no visual separation for the button, I think it's possible that the user clicks above). Just before the meeting I wanted to see (once again) what mouse/touch handlers we have on the space above, because that's what the event fluffing is looking at.
    (Steve) IIRC etienne fixed related issue before? Didn't look into the patch yet.
    (Oleg) " IIRC etienne fixed related issue before?" - yeah, I think it's the same one :) "what mouse/touch handlers we have on the space above" - aren't that click handlers on button and attach containers to support "activate" event?
    (Julien) Etienne told me it was a silly mistake in his logic :) he was doing the logic to not steal the focus but there was a wrong ordering of the code. About "activate": yes llikely, I want to dig deeper, but this is less important now.
  • worked on bug 1181136 during transport: race condition for quick errors when sending MMS messages
  • started thinking and coding for bug 1169576 (implementation of getThreads in service)

Today: I want to:

  • handle comments for the navigation patch
  • move forward bug 1169576
  • do reviews for sprint bugs
  • think about the system messages issue

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1175503 - [Messages][NG] Get rid of direct ConversationView dependencies from Compose component
    • Received review, fixed comments, will remove CSS email recipient fix and ask for review (in progress).
  • bug 1179705 - [Messages][NGA] Upgrade to latest version of threads.js
    • Finished patch and got r+, fixed nit and waiting for green Treeherder to land (almost landed).
  • bug 1172902 - [Messages][NG] Use SimpleOfflineCache to cache all app resources
    • No updates since yesterday (in background).

Other:

  • Few more questions on Bevis's proposal;
  • Looking into Julien's patch for "bug 1162030 - [Messages][NG] Figure out how navigation works"
    • Sorry for the delay! It's quite big new piece of code - so trying to understand and left for today to have fresh mind, looking at the moment :)
      (Julien) no problem, it's both big, new, and important :) That's why I tried to leave comments as much as possible too.
      (Oleg) Comments are good :)

Today:

  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Day 6: July 9th

Steve

  • PTO for some urgent matters, will be online with very limited bandwidth.
  • bug 1169573 - [Messages][NG] Lay out Messaging service structure
    • Still on unit test, will try to finish it today.
      (Julien) you can tell if you want that I take over :)
      (Steve) Oh, it's fine, just need to rewrite part of the tests imported from message_manager_test
      (Julien) OK !
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
  • bug 1167144 - [Messages] Reduce the use of Threads.active and Threads currentId in conversation view.
    • Restart the patch after draft issue resolved
  • Review the navigation patch and an issue that failed to update the correct status.

Today:

  • Update messaging service prototype.
  • Feedback for navigation work.
  • Update the patch about reducing the use of Threads in conversation view.

Julien

Note: major part of the day was spent with Mozilla's leadership that was in the office...

  • did a first implementation for bug 1169576 (implementation of getThreads in service), but I need mozMobileMessage layout before moving forward.
  • did a simple patch for bug 1181763 that impacts our send button (event fluffing bug) and asked review

Today: I want to:

  • handle comments for the navigation patch
  • do reviews for sprint bugs
  • think about the system messages issue
  • move forward bug 1169576

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1175503 - [Messages][NG] Get rid of direct ConversationView dependencies from Compose component
    • Prepared for the next round of review (in review).
    • Filed "bug 1181490 - [Messages][Recipients] Email recipient is misaligned in "edit" mode".
  • bug 1179705 - [Messages][NGA] Upgrade to latest version of threads.js
    • Landed (landed).
  • bug 1176976 - [Messages][Drafts] Remove the draft saving/replacing action menu
    • Added spec provided by Jenny, want to provide patch for the short term solution i.e. remove dialogs :) One more step forward NewMessage split (in progress).

Other:

  • Few more questions on Bevis's proposal;
  • Finished looking into "bug 1162030 - [Messages][NG] Figure out how navigation works" and left some feedback, mostly nits and questions.

Today:

  • Looks like there is no any unassigned/actionable sprint bug for now, will pick up "bug 1176976";
    (Julien) the more I think of this, the more I think that if we don't have the dialogs anymore, maybe we don't need to run beforeLeave before changing the URL in the navigation patch. But maybe we can refine all this later too.
    (Oleg) Yeah, let's how it looks like when I remove them to make patch less risky :)
  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Day 7: July 10th

Steve

  • Not in office due to Typhoon, but will still online with some update as much as I can.
    (Julien) stay safe !
    (Oleg) You should like working from home as much as I do :D
  • bug 1169573 - [Messages][NG] Lay out Messaging service structure
    • Patch update for review with test added, I also change the way of returning error because I feel the error from shim should be treat as error as well. The original way of the error return will be in service promise resolve and it seems wrong semantically.
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
  • bug 1180593 - [Messages][NG] Reorganize settings methods for settings service and views separately
    • Start to split the getSimNameByIccId/getOperatorByIccId to view.
  • bug 1167144 - [Messages] Reduce the use of Threads.active and Threads currentId in conversation view.
    • will move to background
  • Review the navigation patch and an issue that failed to update the correct status.

Today:

  • Update messaging service prototype.
  • Feedback for navigation work.
  • Settings method clean up.
  • Update the patch about reducing the use of Threads in conversation view.

Julien

  • especially worked on navigation (bug 1162030): fixed easy comments, and reworked how setReady is used.
  • did a last review for bug 1175503 (dependencies between Compose and ConversationView)
  • did a last review for bug 1153883 (use of sinon in our contacts test)

Today: I want to:

  • handle comments for the navigation patch
  • do reviews for sprint bugs
  • think about the system messages issue

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1175503 - [Messages][NG] Get rid of direct ConversationView dependencies from Compose component
    • Got r+, landed (landed).
  • bug 1176976 - [Messages][Drafts] Remove the draft saving/replacing action menu
    • Tried to generalize related code as much as possible, have several questions, so prepared WIP patch and asked for feedback (awaiting feedback).

Other:

  • Finished looking into and left some feedback, mostly nits and questions.

Today:

  • Look into Julien's replies/clarifications in "bug 1162030 - [Messages][NG] Figure out how navigation works".
  • Will pick up next bug if I have free cycles;
  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Day 8: July 13th

Steve

  • bug 1169573 - [Messages][NG] Lay out Messaging service structure
    • Reply some feedback and try to give a test about the returning promise from service method.
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
  • bug 1180593 - [Messages][NG] Reorganize settings methods for settings service and views separately
    • Ongoing; splitting the getSimNameByIccId/getOperatorByIccId to view.
  • Review the navigation patch.

Today:

  • Update messaging service prototype.
  • Feedback for navigation work.
  • Settings method clean up.

Julien

Note: tomorrow is french holiday.

  • especially worked on navigation (bug 1162030):
    • fixed activities: now I save a draft and recall it from inside the composer.
  • gave a first feedback on bug 1176976 (remove draft dialogs)
  • gave a first feedback on bug 1169573 (MessagingService layout)

Today: I want to:

  • move forward the navigation patch -- I really hope to be ready for a first review, but maybe that will be too much work.
  • think about the system messages issue

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1176976 - [Messages][Drafts] Remove the draft saving/replacing action menu
    • Received feedback, trying to cover drafts functionality with more tests (needed some refactoring in test infrastructure to support new view-acessors paradigm), will fix comments and ask for review (in progress).
  • bug 1169573 - [Messages][NG] Lay out Messaging service structure
    • Reviewed, left some comments at GitHub.

Today:

  • Will pick up next bug if I have free cycles;
  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Day 9: July 14th

Steve

  • bug 1169573 - [Messages][NG] Lay out Messaging service structure
    • Update the patch for another review. will give a test about the returning promise from service method.
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
  • bug 1180593 - [Messages][NG] Reorganize settings methods for settings service and views separately
    • Ongoing; splitting the getSimNameByIccId/getOperatorByIccId to view.
  • Give some thought for navigation patch.

Today:

  • Update messaging service prototype.
  • Settings method clean up.

Oleg

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1176976 - [Messages][Drafts] Remove the draft saving/replacing action menu
    • Fixed comments, finishing integration tests, still thinking about "draft saved banner" issue with separated views (in progress).

Today:

  • Will pick up next SW bug if I have free cycles;
  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Julien

  • Holiday in France

Day 10: July 15th

Steve

  • bug 1169573 - [Messages][NG] Lay out Messaging service structure
    • Update the patch based on Oleg's review.
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
  • bug 1180593 - [Messages][NG] Reorganize settings methods for settings service and views separately
    • Seems we can also polish the l10n async query and apply notification helper for bug 1170461 in this issue. Will give a patch for it today.

Today:

  • Update messaging service prototype.
  • Settings method clean up.

Julien

  • still worked on navigation (bug 1162030):
    • fixed issues I broke friday
    • prepared how to run font-fit at the right moment
    • created a small patch in bug 1183133 with the navigation patch + change manifest.webapp to startup at the inbox split view

Today: I want to:

  • do the asked reviews
  • move forward the navigation patch -- I really hope to be ready for a first review today
  • think about the system messages issue

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1176976 - [Messages][Drafts] Remove the draft saving/replacing action menu
    • Moved forward with tests, but was stricken by two issues (one is that if you save draft with hidden, but not empty subject - it will be shown again when recovered from draft (fixed in the patch) + "bug 1183595 - [Messages][Drafts] Subject with spaces isn't handled correctly when recovered from draft");
    • Also has some difficulties with testing thread drafts - thread node is removed and added again when draft is updated/discarded, so there is intermittent issue with thread node that is stale - don't have good solution for now.
    • So having said, I'm leaning toward extracting integration tests parts into dedicated follow-up, in the meantime switched to SW experiments, will be back to this issue later on, when have some new ideas (in background).
  • bug 1172902 - [Messages][NG] Use SimpleOfflineCache to cache all app resources
    • Rebased on the latest Julien's navigation patch to see how it works now (with resolved Gecko dependencies), so preliminary result is that it looks even slower with SimpleOfflineCache :) Maybe because of too much not concatenated resources, will see what is actually happening here + looks like our internal link (app://theme.gaiamobile.org) to the theme file doesn't work (gaia-header is white, without theme) - will check what is wrong here.
      (Julien) do you use https to access the app? Or app://?
      (Oleg) app://, maybe we need to switch to the hosted version of sms for testing (via developer mode, as app:// is gonna die some time later and it doesn't have that decent support from Gecko as https does).
      (Julien) OK so I think it's quite expected that app:// is faster than SW; app:// works by having the whole archive in memory so it's really quick once the archive is loaded. But for sure we need to have SW at least as fast as app://... so if it's not, I think you should file a bug.
      (Oleg) Yeah, also I think the key is to reduce amount of files/resources we load and switch to more aggressive lazy loading, SW should also back us up so that lazy loading should be fast.
      (Julien) that sure would help too, but isn't this 2 different issues ?
      (Oleg) Yes, but I just don't believe that with SWW middleware intermediate step we can achieve the same performance :) Only with render cache of course - will dig that too.
      (Julien) I think it all depends how SWW is stored and handled in Gecko. It's difficult to do everything together (migrate to NGA + change lazy loading logic, etc)... We'll see.
      (Oleg) Ah, no-no, I just discussing :) Improved lazy loading is not the goal right now :)
      (Julien) I mean, if we need to do lazy loading do have same performance... it will be likely in September or October :)
      (Oleg) Yeah, it needs careful re-thinking of what we need right at the beginning and what, how and when exactly we can load more stuff :)

Other:

  • Reviewed "bug 1169573 - [Messages][NG] Lay out Messaging service structure";
  • "bug 1114554 - Implement Notification ServiceWorker API" - is landed! We can start experimenting with it once it reaches PVT (it claims to support B2G IIRC)

Today:

  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Day 11: July 16th

Steve

  • bug 1169573 - [Messages][NG] Lay out Messaging service structure
    • In review.
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
  • bug 1180593 - [Messages][NG] Reorganize settings methods for settings service and views separately
    • Patch created for review including the fix for bug 1170461 that polish the use the l10n.

Today:

  • Update messaging service prototype.
  • Settings method clean up.
  • Layout for mozSettings/mozConnections shim

Julien

  • still worked on navigation (bug 1162030):
    • fixed last issues (I think)
    • started unit tests -- especially the "framework" so that we can test stuff around window.location. (because window.location and its properties are not "configurable). You'll tell me how it is.
  • discussed with vivien about system messages; we agreed the best path forward is to implement them for service workers (and then we'll still need the "openWindow" API but Vivien told me it was nearly ready). At least implementing for service workers means nothing will break for the apps that don't migrate.

Today: I want to:

  • do the asked reviews or redirect :p
  • move forward the navigation patch -- today is unit tests day (and fixing other tests if necessary)

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1176976 - [Messages][Drafts] Remove the draft saving/replacing action menu
    • Not much updates, updating unit tests when have some spare time (in background).
  • bug 1172902 - [Messages][NG] Use SimpleOfflineCache to cache all app resources
    • Played with Messages app + SW, it feels slow, but hard to say why :) So I've create simple app with reduced cases to see where is weak spot. App is instrumented with performance markers that can be analyzed by Raptor (see "benchmark-app" section at https://github.com/azasypkin/sw-tests for the app description and Raptor results). As of now even empty SW registration adds up too much for the coldLaunch. NI'ed Fernando to understand what is going on (in progress).
(Julien) I think it is expected to have some level of slowness: we're moving from C++ context to JS context and then back to C++ context. But not that much !
(Oleg) Yeah, but not with empty SW, it's edge case but still shows that the latency can be somewhere else inside Gecko - just a guess though :)
(Julien) yep right, if we don't have a listener for "fetch"...

Other:

  • "bug 1114554 - Implement Notification ServiceWorker API" - just realized that we still need clients.openWindow to get rid of "notification" system message entirely, so we're not there yet to tinker with it :(
    (Julien) And I'm not sure whether SW can be stopped. Maybe we'll still have to handle a system message -- hopefully it will be also in SW ;)
    (Oleg) Why do you want to stop SW?
    (Julien) I mean it could be stopped by Gecko...
  • Roughly looked into recent intermittents in drafts integration tests ("bug 1179604 - Intermittent apps/sms/test/marionette/drafts_test.js | Messages Drafts Messages Drafts Test Suite Thread draft is correctly saved") - integration test failures became awful some time ago - nothing is clear, quite disappointed :) But it may be the same issues I face in "bug 1176976 - [Messages][Drafts] Remove the draft saving/replacing action menu" - so I'll hopefully find the way to fix them properly.

Today:

  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Day 12: July 17th

Steve

  • bug 1169573 - [Messages][NG] Lay out Messaging service structure
    • Addressed the last suggestion and rebase.
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
  • bug 1180593 - [Messages][NG] Reorganize settings methods for settings service and views separately
  • bug 1180591 - [Messages][NG] mozSettings shim Implementation
    • Give a WIP for mozSettings shim, simply for get/set/add Observer(I'm fine if we agree that we don't cache any changeable value in settings service) methods.

Today:

  • Land messaging service.
  • Layout for mozSettings/mozConnections shim

Julien

  • still worked on navigation (bug 1162030):
    • worked a lot on unit tests. Focussing on fixing existing ones (fixed the tests for navigation and conversation). Fixed some issues in navigation.js in the process.
    • today I'll fix the next ones + create new tests for the new use cases
    • Also I had a look at integration tests, I think I missed some use cases (forward especially); I'll look on a phone to see if this works in real-life.
  • Briefly looked at other review requests from Steve (MessagingService + SettingsService)

Today: I want to:

  • move forward the navigation patch -- today is more tests day
  • do some reviews asked some days ago

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1176976 - [Messages][Drafts] Remove the draft saving/replacing action menu
    • Still working on tests in background, pushed the latest changes to Github (in background).
  • bug 1172902 - [Messages][NG] Use SimpleOfflineCache to cache all app resources
    • Received feedback from Fernando and Francisco, digesting, will check the issue with "DOMContenLoaded" and file a bug if needed, it's fired for the hosted apps, need to check why it didn't work for me with raptor runs... (in progress)

Other:

  • Flashed both v18D and v18D_v3 to verify that "bug 1166211 - [Messages] There are black artifacts visible when user navigates to another panel right after dialog dismissal" is fixed - and yes we don't have this issue anymore!
    (Julien) yay, I need to flash then :)
  • Reviewed "bug 1180593 - [Messages][NG] Reorganize settings methods for settings service and views separately"
  • Talked to Wilson about our case when service hosted inside SharedWorker wants to access another service hosted in iframe, looks like we have "built-in" solution with BroadcastChannelAPI, commented on the bug.
    (JUlien) but how do you create the iframe ?
    (Oleg) Manually? We need several JS files (like utils) for some shims, I guess creating iframe manually is the only way to do this since we don't have "importScripts" in window context, or what you mean?
    (Julien) OK. still not completely clear in my head but we'll work it out :) Yep!
    (Oleg) Need to confirm though if channel is shut down when handshake is completed, will be a mess if it's still kept alive together with MessageChannel.
  • Talked to Eli to have raptor result tables in markdown-compatible format, so that it's easy to insert them as GitHub comments :) I believe it's accepted.
  • Created simple enable-sw/disable-sw PR for the Julien's addpref tool: https://github.com/julienw/config-files/pull/4. But now I see some new SW related prefs added, hesitating to add them since everything works without toggling them anyway :)
    (Julien) disabled prefs is for features in development; if we don't need them, don't toggle them :)

Today:

  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Day 13: July 20th

Steve

  • bug 1169573 - [Messages][NG] Lay out Messaging service structure
    • Landed. Will do some experiment in bug 1184865 for testing our shim/service in real code.
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
  • bug 1180591 - [Messages][NG] mozSettings shim Implementation
    • Got some feedbacks and reply for some comments,

Today:

  • Layout for mozSettings/mozConnections shim
  • Start to experiment for messaging service in conversation view

Julien

  • still worked on navigation (bug 1162030):
    • worked a lot on unit tests. Nearly finished fixing unit tests. I had to fix the "forward message" case so I had to add new code.
    • also fixed bug 1082052 (SMIL.parse returns a promise) because it made some new code easier
    • started looking at integration tests -- I think I have issues coming from the fact I removed aria-hidden handling (because my panels are "display: none" when not displayed now); but as a result during the transition both are "visible" and integration tests are sometimes "clicking" too soon. So I think I'll add back aria-hidden and see if this fixes it.
    • today I'll fix the latest unit tests + create new tests for the new use cases
    • I'll also fix the integration tests.

Today: I want to:

  • move forward the navigation patch -- today is yet more tests day
  • do some reviews asked some days ago

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1176976 - [Messages][Drafts] Remove the draft saving/replacing action menu
    • Fixed/added all unit tests I needed, few integration tests left (in background).
  • bug 1172902 - [Messages][NG] Use SimpleOfflineCache to cache all app resources
    • Found out that "DOMContentLoaded" was not fired because script that registers this listener is "async" and when SW is involved, "DOMContentLoaded" is fired before the script registers listener - so there is no issue here :) Will review Francisco's PR with new benchmarks (in progress).
      (Julien) in Navigation patch I have something like "if (document.readyState === 'interactive' or 'complete') ... else addEventListener('DOMContentLoaded')"
      (Oleg) Yep, maybe I'll something like this in tests if it's useful to know when it's fired.
  • bug 1169576 - [Messages][NG] Implement Conversation service: method for streaming joined threads and drafts list
    • Picked up this bug from Julien's PR, first trying to test window (ConversationClient) -> SharedWorker (ConversationService) -> iframe (mozMobileMessageShim) communication (with BroadcastChannel). First part seems to work (haven't tested streams yet), couldn't make second work - will dig deeper today (in progress).
    • To start using service in a SharedWorker we need 3 steps: 1. create shared worker; 2. call SharedWorker.port.start() and 3. pass SharedWorker.port to the client, talked to Wilson, maybe #2 and #3 steps can be done by the bridge and we just pass SharedWorker instance like we do with Iframe or BroadcastChannel - will think more today if need control on that in the app.
      (Steve) mozMobileMessageService -> shim?
      (Oleg) Ah, yeah, sorry, fixed
      (Oleg) For now, I've created views/shim_host.html that loads required files (Utils, EventDispatcher, Fx Mocks) and shims, then it initializes it - not sure if it can be final state - but now it's easy to test shims with such setup.
      (Julien) I think it's good enough for now :)

Other:

  • Left feedback for "bug 1180591 - [Messages][NG] mozSettings shim Implementation".

Today:

  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Day 14: July 21st

Steve

  • bug 1184865 - [Messages][NG] Replace some methods in MessageManager with messaging service in conversation view.
    • Trying to connect the message service/shim and utilize it in conversation view. The first step is using the BridgeServiceMixin in message shim, and will try to setup the client side in service correctly. Please let me know if you're already working on this(because we might have conflict while changing this part).
      (Oleg) There is a chance that you'll need something like shim_host.html that I've introduced in my patch and updated bridge lib - you can look at my wip and we can sync.
      (Steve) Good to know, Thanks!
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
  • bug 1180591 - [Messages][NG] mozSettings shim Implementation
    • Add unit tests for another review.

Today:

  • Layout for mozSettings/mozConnections shim
  • Start to experiment for messaging service in conversation view

Julien

  • still worked on navigation (bug 1162030):
    • worked a lot on unit tests again. Created new unit tests for new code. Tried to find my way with the focus handling -- I'll try to make this a separate bug.
    • I saw that on my PR some tests in privacy-panel are failing, but they don't on master... I looked at them and I don't see how they can work actually... grrr... actually I see that on last try they don't fail anymore so I'll likely stop looking at this :p
    • fixed some remaining bugs
  • Sent an update about the current status to dev-gaia
  • Spent some time with taskcluster people because it looks like that when a PR has a lot of commits we don't see all of them in gaia try...

Today: I want to:

  • first I need to do some long-standing reviews -- including yours
  • move forward the navigation patch: continue creating new tests, work on the focus handling to make it more explicit and less heuristic.

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1176976 - [Messages][Drafts] Remove the draft saving/replacing action menu
    • No updates (in background).
  • bug 1172902 - [Messages][NG] Use SimpleOfflineCache to cache all app resources
    • Reviewing Francisco's PR for the benchmark apps (in progress).
  • bug 1169576 - [Messages][NG] Implement Conversation service: method for streaming joined threads and drafts list
    • Was investigating Bridge issues that prevented us from doing SharedWorker -> Iframe communication and verified fixes: https://github.com/gaia-components/threads/pull/52. BrodcastChannel handshake didn't work correctly and it wasn't possible to transfer MessagePort through BroadcastChannel so communication with iframe is done purely via BroadcastChannel. We either need to be careful and have instance-based broadcast channel name like we had previously in ActivityShim or implement something like manager that can pass MessagePort to iframe directly. Per Wilson we should not have performance problems using BroadcastChannel instead of MessageChannel, but will see.
      (Julien) Is it a bug that we can't passe MessagePort using BroadcastChannel ? Or is it expected ?
      (Oleg) It's expected since it's not 1-to-1 and we can have multiple message listeners (eg. in different tabs) so it's not really possible to transfer port ownership to multiple places.
    • Finally connected all pieces and showing threads in inbox loaded via that complex service/shim chain :) And it's notably slower than master - need to measure what happens here. (in progress).
      (Julien) one possibility is: should we send the threads by chunks ?
      (Oleg) I suspect so, but will check.
    • One side inconvenience is that in worker we import "asyncStorage" so it's not that easy to use mock to test in browser like we did with references in html files that is being removed during build - will think, maybe I can find something.
      (Julien) One possibility is to feed the indexeddb using a separate js file ?
      (Oleg) Didn't get the idea, but highly interested! :)
      (Julien) I mean, real asyncStorage is taking the data from IDB. So maybe we can just put in IDB what we want :)
    • One more note: it was a bit hard to debug our 3-hops setup - bridge for client, bridge for service and bridge for shim, so asked Wilson to introduce better logs that are tagged by context (Worker, Window and etc) and path name (script path for the worker and location path for the window). It's much better now but still difficult to debug both window, shared worker (only via logs) and iframe at the same time :)

Other:

  • Reviewed "bug 1082052 - [Messages][Refactoring] Return a Promise from SMIL.parse".
  • Organized DraftService bugs a bit, going to work on this in this quarter.

Today:

  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Day 15: July 22nd

Steve

  • bug 1184865 - [Messages][NG] Replace some methods in MessageManager with messaging service in conversation view.
    • Sync with Oleg's idea about the iframe for shim
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
  • bug 1180591 - [Messages][NG] mozSettings shim Implementation
    • Left some minor question/thoughts on github.
  • Faced some integration test problem while removing the Threads dependency... Will take some time to figure out.

Today:

  • Layout for mozSettings/mozConnections shim
  • Still working on messaging service in conversation view(could be only the retrivalMMS method since settings shim/service is not ready).
  • Review Oleg's patch about first conversation service method migration.

Julien

  • still worked on navigation (bug 1162030):
    • worked on a separate bug (bug 1185983) to make Compose focus handling saner -- so that I can simplify things in the navigation patch. I have one case that doesn't work properly still, should be fixed today (I hope :p).
  • did some long standing reviews:
    • bug 1055357 to remove role=search in our composer (from a contributor)
    • bug 1167144: reduce use of Threads.active from Steve (will be very useful then, when activeThread will be fetched with a service)
    • had a quick look at bug 1180591 for the settings shim

Today: I want to:

  • move forward the navigation patch: continue creating new tests, work on the focus handling to make it more explicit and less heuristic.
  • more reviews for other app than SMS

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1176976 - [Messages][Drafts] Remove the draft saving/replacing action menu
    • No updates (in background).
  • bug 1172902 - [Messages][NG] Use SimpleOfflineCache to cache all app resources
    • Reviewed PR, will merge today (almost landed).
  • bug 1169576 - [Messages][NG] Implement Conversation service: method for streaming joined threads and drafts list
    • Prepared more or less good looking WIP and asked for early feedback. PR contains second commit just for you to be able to run it in browser if you want (awaiting feedback) :)
    • Will see how we can improve performance and pin point intermittent issues I see in browser in the meantime. + unit tests
      (Steve) What kind of intermittent issues did you faced? Only in browser mode?
      (Oleg) Sometimes when I refresh browser with ctrl-f5 nothing works in my shim_host vs bridge setup... Yeah, I've only seen this in browser, but haven't tested heavily on device yet. I was first suspecting that it's something related to SharedWorker - but need to investigate.
      (Julien) no message in the logs ?
      (Oleg) There is message like "no response", when bridge request is timed out - happens usually when it can't connect to other party or other party doesn't respond at all. Will reach out to Wilson if/when I find more details. And it seems we can't pass Errors (and mozMobile entities, as we know) to other end since some (all?) are not "structure clonable"... But that's minor, just in case you notice "data clone error" entries in logs that don't have neither origin nor line number.
      (Julien) so we can't do Promise.reject(new Error) in services ?
      (Oleg) I'll better double check and let you guys know :)
      (Julien) I think this should be handled by the threads library if it's not possible, it's a too common case :/ but yeah better dble check.

Other:

  • Reviewed "bug 1180591 - [Messages][NG] mozSettings shim Implementation";
  • Was waiting for the screening with candidate, but it has been eventually cancelled due to urgent candidate's family reasons.

Today:

  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Day 16: July 23rd

Steve

  • bug 1184865 - [Messages][NG] Replace some methods in MessageManager with messaging service in conversation view.
    • Ongoing, but it might conflict with Oleg's patch if we set iframe in index.html. Maybe we will have several iframes before markup splitting and place the iframe html under view folder directly? Then we can have less efforts once we need to split the markup. Or I should add the iframe to conversation's markup directly(but not runnable).
      (Julien) I don't follow what is your alternative here :) It seems to me that all of what you say is correct so I don't understand the "or" ;)
      (Steve) I mean, we already split the conversation markup in conversation view folder but not in used now. Maybe I can just append the iframe here and test it manually in local(And still use original message manager method in master).
      (Julien) I'd be glad if we can use the same code in both split and non-split modes :)
      (Steve) Ok, will try
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
  • bug 1180591 - [Messages][NG] mozSettings shim Implementation
    • Left some minor question/thoughts on github.
  • bug 1160049 - [Messages] Attach menu should not dismiss when user cancel the replace attachment request
    • Take a look since it's 2.5 blocker, should not be difficult to fix.
  • Still reviewing Oleg's conversation service/client.

Today:

  • Layout for mozSettings/mozConnections shim
  • Still working on messaging service in conversation view(could be only the retrivalMMS method since settings shim/service is not ready).
  • Review Oleg's patch about first conversation service method migration.

Julien

  • still worked on navigation (bug 1162030):
    • finished the separate bug (bug 1185983) to make Compose focus handling saner (in review).
    • finished unit tests (including new tests)
    • now I need to focus on integration tests. I think the failures comes from the fact that they do actions or checks before the end of a transition now. Hopefully I can ask a new review today !! (but today is brantina + Rik's leaving party day, so the afternoon will be short..)

Today: I want to:

  • do the asked reviews (sorry that I did none yesterday :/)
  • move forward the navigation patch: integration tests.

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1176976 - [Messages][Drafts] Remove the draft saving/replacing action menu
    • Finally found a way to fix drafts tests and fixed them all! Only one thing left in this patch - is to decided how to deal with "draft saved" banner shown in Inbox, will find a way today (in background).
  • bug 1172902 - [Messages][NG] Use SimpleOfflineCache to cache all app resources
    • Merged Francisco's PR, but benchmarks with SWW started to crash app/b2g-browser, so investigating (in progress).
  • bug 1169576 - [Messages][NG] Implement Conversation service: method for streaming joined threads and drafts list
    • Not much updates since yesterday. Received some feedback already, but haven't looked yet (awaiting feedback)

Other:

  • Spent some amount of time to learn how to run new raptor on my machine - I have several problems: it works only with Node v0.12 - so had to upgrade first, then there were problems with running it since it now uses marionette, but it was failing because of globally installed node-gyp - so after removing that I was able to successfully run it. Want to remeasure benchmarks as this new raptor is supposed to give more accurate numbers + want to confirm that it works well with installed hosted app and see how different "app:// + SWW" vs "hosted + SWW" app.
    (Julien) I had issues with node 0.12 locally -- maybe also because of my node-gyp then? What was your issue, was it a compilation error ?
    (Oleg) Raptor was failing on run stage with "Error: Module did not self-register."
    (Julien) I mean, your issue with node-gyp ? My issue was with "ffi-prebuilt" and I had an error when compiling this module. I'll try removing node-gyp because I'd be happy to use node 0.12.
    (Oleg) Ah, let me remember... IIRC sockit-to-me was not able to compile - it tried to use node-gyp-0.10.4 (my old node version) or something. :rwood also had problem with node-gyp - removing helped. Let me insert some details from #raptor channel. So yeah I've removed node-gyp, gyp deb package as well (suggested by Eli) and then reinstall node-gyp with "npm install -g node-gyp". I also had some permissions issues on my machine - so it may be different :) Also I've seen node-gyp related warnings when I was reinstalling @mozilla/raptor - like "gyp WARN EACCES user "root" does not have permission to access the dev dir "/home/azasypkin/.node-gyp/0.10.40"" Sorry for messy explanation :)
    (Julien) thanks for the pointers, I'll dig a little from my side as well :) I think node-gyp should definitely be used from node_modules... but not sure if this is possible !
  • After upgrading to Node v0.12 integration tests still can be run locally (heard that only Node v.010 + npm v2 worked for some people), I'm happy :)
  • Btw, looks like we have new bridge documentation: http://gaia-components.github.io/threads/docs/out/index.html

Today:

  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Day 17: July 24th

Steve

  • bug 1184865 - [Messages][NG] Replace some methods in MessageManager with messaging service in conversation view.
    • Update the WIP and make retrieveMMS to use the new message client/service/shim. Got some sim card problem that could not verify on real device, will try to make the mockMobileMessage works at least.
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
  • bug 1180591 - [Messages][NG] mozSettings shim Implementation
    • Left some minor question/thoughts on github.
  • bug 1160049 - [Messages] Attach menu should not dismiss when user cancel the replace attachment request
    • Commit a small patch to fix the regression.
  • Still reviewing Oleg's conversation service/client, add some comments for first impression.

Today:

  • Layout for mozSettings/mozConnections shim
  • Still working on messaging service in conversation view. Try to make the retrivalMMS works on nightly and verify on real device.
  • Review Oleg's patch about first conversation service method migration.

Julien

  • still worked on navigation (bug 1162030):
    • handled review comments for the separate bug (bug 1185983) to make Compose focus handling saner (in review).
    • finished integration tests -- but I noticed one was intermittent so I'll try to fix it today.
    • what's next for this bug: look at some suggestions you made (URL stuff); I found bug 483304 yesterday and wanted to investigate.. Looks like it's been fixed in v41, fortunately for us ;) \0/ I still want to investigate with weird characters to be sure !

Today: I want to:

  • do the asked reviews (sorry that I did none yesterday again :/)
  • move forward the navigation patch and ask review
  • then likely read my late mail

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1176976 - [Messages][Drafts] Remove the draft saving/replacing action menu
    • Finished patch and asked for the first review round (in review).
  • bug 1172902 - [Messages][NG] Use SimpleOfflineCache to cache all app resources
    • Investigated the issue with crashing b2g app / desktop. Filed "bug 1186949 - Nightly crashes when user navigates to the page that registers ServiceWorker" - that stops me from capturing measurements with updated raptor.
    • Spent some time trying to build Fx Desktop debug build to have more detailed crash information, but without success - a bunch errors that look like related to GTK - will find out (in background).
      (Julien) they'e moving to GTK3 these days, so maybe you need to install dev libraries for GTK3 (instead of GTK2 until few days ago)
      (Oleg) Yeah, just read that thread, will try to do something with it
  • bug 1169576 - [Messages][NG] Implement Conversation service: method for streaming joined threads and drafts list
    • Spent some time drafting unified ConversationSummary object for thread and draft - will update PR later today (awaiting feedback, in progress).

Other:

  • Reviewed "bug 1185983 - [Messages] Focus handling is messy when entering Conversation or NewMessage views".
  • Skimming through new Threads docs to give feedback: http://gaia-components.github.io/threads/docs/out/index.html - Wilson is almost ready to rename lib to the Bridge! :)
  • Noticed startup crash in Contacts when was trying Julien's patch (wanted to check new activity with number, but no luck :)) - so raised alert to Francisco.

Today:

  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Day 18: July 27th

Steve

  • bug 1184865 - [Messages][NG] Replace some methods in MessageManager with messaging service in conversation view.
    • Gave a patch that could run on device. Not sure if it's my problem but still highlight 2 main problem on the bugzilla
  • bug 1179628 - [Messages][NG] Lay out Settings service structure
    • Will move on since settings shim landed.
  • bug 1180591 - [Messages][NG] mozSettings shim Implementation
    • Landed on master
  • bug 1160049 - [Messages] Attach menu should not dismiss when user cancel the replace attachment request
    • Update for the latest suggestions. But the GIJ error on treeherder looks weird - It will still failed with latest master in my local run(only test the failed test file).
  • Still reviewing Oleg's conversation service/client. Looking the new comments and the result form raptor makes me sad  :( I'm afraid that we will definitely need to reduce the access of bridge by changing the shims to do batch return. And seems the delay of the bridge return from the cold launch is still a serious issue.
    (Julien) that's why we need to have either a DB in the first worker or the render cache.
    (Steve) Yeah, both could avoid us to do the unnecessary thread fetch by API

Today:

  • Layout for mozSettings/mozConnections shim
  • Figure out the problem in messaging service.
  • Review Oleg's patch about first conversation service method migration.
  • Review Julien's navigation patch

Julien

  • still worked on navigation (bug 1162030):
    • fixed last integration tests and unit tests -- in review \o/ \o/
  • landed bug 1185983 (which was prerequisite for navigation patch) about focus handling
  • reviewed Steve's patch for bug 1167144 (reduce usage of Threads.active)
  • reviewed mozSetting shim (bug 1180591)
  • started reviewing bug 1176976 about removing the draft "save/discard" menus, but was too long to finish.

Today: I want to:

  • do reviews
  • read bug mail
  • handle comments for the navigation patch
  • prepare tomorrow's planning

If all this moves forward well, I could:

  • continue the prototype caching the thread list to a single db (including contacts/drafts/etc).
  • I'd like to work on the deduplication logic for network alerts, it seems important for users (bug 1067938)

Oleg

Sorry guys, won't be able to attend standup today.

  • bug 1155534 - [Messages][NG] Extract NewMessage view from Conversation view
    • No updates (in background).
  • bug 1176976 - [Messages][Drafts] Remove the draft saving/replacing action menu
    • Reading review comments (in review).
  • bug 1172902 - [Messages][NG] Use SimpleOfflineCache to cache all app resources
    • Finally was able to build Fx Desktop so that I can provide crash details more easily.
  • bug 1169576 - [Messages][NG] Implement Conversation service: method for streaming joined threads and drafts list
    • Updated PR with some more thoughts about ConversationSummary (awaiting feedback, in progress).
    • Played with raptor vs split views - added comments with results, investigating how we can improve that.

Other:

  • Reviewed "bug 1185983 - [Messages] Focus handling is messy when entering Conversation or NewMessage views".

Today:

  • Will handle review/feedback/need-info requests;
  • Will work on review comments and assigned bugs.

Demos

Retrospective

Previous sprints' actions

From 2.1S3:

  • Look into VM with gaia dev environment
    Nothing more done in this sprint

From 2.1S5:

  • in planning for sprint N, we pick some items we want to do in sprint N+1 to ask early questions to UX and Designers (esp refresh bugs, but also bugs with UX changes)
  • we'll add screenshots of panels in Wiki, with the various cases for these panels, to help analyzing change impacts and not forgetting things
    Oleg started this: https://wiki.mozilla.org/Gaia/SMS/Current_App_State

From 2.2S4:

  • undercommit in the sprints.
  • use bugs and github's PR for spec definition and changes

From 2.2S14:

  • move more discussions to #gaia
  • figure out 2.5 features for SMS

What was good in the last sprint

  • Discovered several important issues in NGA-toolkit libs so that they were fixed
  • Have a testable patch that can verify our structure over bridge library.

What was bad in the last sprint

  • Our estimations were quite bad for this sprint
    (Julien) Yeah I think we could do a *3 operation on our estimations. For each estimation we do, we need to step back and look again to know if it's realistic.
    (Oleg) And we don't have to afraid small p1 tasks even if they seem too trivial in attempt to split p2+ ... probably. I found that during this sprint every my p2+ task could be split into smaller ones. The only thing is that it may be difficult for reviewer when some parts can't be tested on device or browser. Like we had with layout of services - but I still think it was better to do layout first even knowing that it can't be tested.
    (Julien) if you detect during development that the task can be split, do you do it then ?
    (Oleg) For some I did :) This sprint will do for everything I suspect can be split.
    (Steve) Yeah, try to spilt as small as possible
    (Julien) for the navigation patch I feel I could do it more.
    (Oleg) I'd say navigation patch is more like an exception, personally I think it's not that easy to split such patch, so I believe it's fine (mainly because there is no point in navigation patch until you see it works for all cases, but some cases should be fixed first :), so that's why I suspect it's big). It's easier for services - I like that we have one meta for implementation and one-bug-per-method or at least for small group of methods.
    (Julien) yep, for services, try to separate with use cases; and even in one use case we can separate the work for separate services. Maybe separate commits in one PR is good enough instead of separate bugs ? (like they do in Gecko). About Navigation patch: there was some preparation work I could do in a separate patch, but now it's quite too late (and I found these preparation work after I did the big part of the patch too :p)
    (Steve) I'm fine if we need to do separated commit in one bug, but we might need to handle the whiteboard more carefully the it contains sufficient information for our estimation history.
  • I didn't do timely reviews because of the navigation patch; it's difficult for me to find the balance between working on a big patch and doing reviews. Did you find it was an issue for you ?
    (Oleg) Mostly for the sprint being completed in time, but for me personally slow reviews were not problem because my new tasks didn't depend on ones being reviewed. Or you've asked something different? :)
    (Steve) yeah.. especially while working on the huge patch and it's not easy to doing the review efficiently. But I think it's acceptable.
    (Julien) Oleg: that was my question :) ok then, but I think we still should not lag as much for sprint bugs reviews.

Any questions

  • Agenda or clear goal for the workweek in next week?
    (Oleg) Yeah, we need agenda :)
    (Julien) I think we'll present what we did so far, and try to work a little more closer together. So part of the workweek will be sharing information, and other part will be working together (and hopefully resolve issues or questions we have, eg performance).

Actions for next sprint

  • split patches as much as we can when we develop it, and split bugs as much as we can when planning them. (what do you think ?)
    (Oleg) Sounds good, also "split patches as much as we can even that some parts are not used/clear (don't know how to express better)"
    (Steve) Let's try it in the new sprint :)