searching for reviewer(billm)
8b1ef926af1c77f31dd32f5112e04b9a00a098d1: Bug 1312880 - Remove sync message when starting up RemoteAddonsChild. r=billm
Mike Conley <mconley@mozilla.com> - Fri, 28 Oct 2016 10:16:00 -0400 - rev 320105
Push 20749 by ryanvm@gmail.com at Sat, 29 Oct 2016 13:21:21 +0000
Bug 1312880 - Remove sync message when starting up RemoteAddonsChild. r=billm MozReview-Commit-ID: LHNXZOphynk
fe339dd59a0188e201cf24498723a624f13f2146: Bug 1303196 - Part 1: Add the DocGroup and TabGroup Objects, r=billm
Michael Layzell <michael@thelayzells.com> - Thu, 06 Oct 2016 17:23:08 -0400 - rev 319859
Push 20749 by ryanvm@gmail.com at Sat, 29 Oct 2016 13:21:21 +0000
Bug 1303196 - Part 1: Add the DocGroup and TabGroup Objects, r=billm MozReview-Commit-ID: ILXWUlPPeHM
2a18e840e4b8ac08fffe201e678a98eb45e9f8b1: Bug 1312549 - use equality comparison rather than ordered comparison in ~GeckoChildProcessHost; r=billm
Nathan Froyd <froydnj@mozilla.com> - Tue, 25 Oct 2016 23:08:11 -0400 - rev 319441
Push 20744 by cbook@mozilla.com at Wed, 26 Oct 2016 14:58:52 +0000
Bug 1312549 - use equality comparison rather than ordered comparison in ~GeckoChildProcessHost; r=billm clang has recently made |x $RELATIONAL_OP 0|, where |x| is a variable of pointer type, to be an error. On Windows, GeckoChildProcessHost::mChildProcessHandle is a HANDLE, which is really just a pointer. So the comparison |> 0| in ~GeckoChildProcessHost is invalid. Fortunately, we can use an equality comparison here and it amounts to the same thing.
4f7f541d40ec6064018b95f0f5afe9189bffcb8d: Ensure the hang monitor is enabled in the GPU process. (bug 1311716, r=billm)
David Anderson <danderson@mozilla.com> - Mon, 24 Oct 2016 01:07:54 -0700 - rev 319157
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Ensure the hang monitor is enabled in the GPU process. (bug 1311716, r=billm)
c0a8fecacb46f22d16205470dfdeb5e6aea815f8: Bug 1287007 - Fix timing issue in browser_ext_windows_create_tabId.js r=billm
Rob Wu <rob@robwu.nl> - Fri, 21 Oct 2016 01:35:03 +0200 - rev 319142
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Fix timing issue in browser_ext_windows_create_tabId.js r=billm When tabs.onUpdated is called before the promise of windows.create resolves, the test fails. This test failure was observed on almost every try run with non-e10s, and sometimes (rarely) with e10s. MozReview-Commit-ID: 3znCP1uAUSB
f10221d238ac3f5bb4e0f2a00591291d4ee4cee9: Bug 1287007 - Work-around for test failure in test_ext_cookies.html r=billm
Rob Wu <rob@robwu.nl> - Wed, 12 Oct 2016 19:13:46 +0200 - rev 319141
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Work-around for test failure in test_ext_cookies.html r=billm There is a timing-sensitive bug in window.create and/or cookies API. I haven't figured out the exact details, but created a minimal test case and reported it at bugzil.la/1309637 Without this patch, the test will fail as described in that bug report. MozReview-Commit-ID: DiJOao8h8Q7
434598e8b200a661b6a4dafb667ad9299ed92396: Bug 1287007 - Fix timing issue in browser_ext_contextMenus.js r=billm
Rob Wu <rob@robwu.nl> - Wed, 12 Oct 2016 01:10:33 +0200 - rev 319140
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Fix timing issue in browser_ext_contextMenus.js r=billm MozReview-Commit-ID: D7No2zFUWjf
3915db2d27b13a14d1647ceb5370d6cbc04582e5: Bug 1287007 - Fix timing issue in browser_ext_tabs_onUpdated.js r=billm
Rob Wu <rob@robwu.nl> - Sat, 01 Oct 2016 01:07:22 +0200 - rev 319138
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Fix timing issue in browser_ext_tabs_onUpdated.js r=billm Reload about:blank tab after opening it and registering the `tabs.onUpdated` event. This is needed because about:blank loads very fast, before the callback of `tabs.create` is invoked. This effect is amplified by the fact that the APIs are now proxied. MozReview-Commit-ID: DgPtIqHSUDx
e6a612e71387531f50d8fab977f3c6151cf2f561: Bug 1287007 - Remove contextMenusInternal.onClicked r=billm
Rob Wu <rob@robwu.nl> - Sat, 01 Oct 2016 00:46:19 +0200 - rev 319137
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Remove contextMenusInternal.onClicked r=billm contextMenusInternal.onClicked is already inlined in context_menus.json. It should be removed because otherwise the `browser.contextMenusInternal.onClicked` API would be generated. MozReview-Commit-ID: LAKd2IGM5GU
2b6e6f6614091834bcadaca619909b2a2033fa5c: Bug 1287007 - Make browser_ext_tabs_executeScript.js reliable r=billm
Rob Wu <rob@robwu.nl> - Thu, 15 Sep 2016 15:53:03 -0700 - rev 319135
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Make browser_ext_tabs_executeScript.js reliable r=billm The ProxyMessenger registers a listener whenever the first addon starts. Although the map does not have any listeners any more at the end of the test, the listener itself is not removed because the message-manager-close notification is not sent for them. So do not count these persistent message managers in the test. The actual message managers of interest are those associated with the (closed) tab. Note: When the test is run in isolation, it may still fail due to bugzil.la/1293583. See bug for work-around if you want to test. MozReview-Commit-ID: IiDHhmvQPcv
437ef72ca3543d70dd1e106830ec5fee02e03d97: Bug 1287007 - Make window.close in extension pages async r=billm
Rob Wu <rob@robwu.nl> - Tue, 13 Sep 2016 20:26:18 -0700 - rev 319134
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Make window.close in extension pages async r=billm Test coverage by tabs.onRemoved + window.close() in: toolkit/components/extensions/test/mochitest/test_ext_tab_teardown.html MozReview-Commit-ID: 7asg2XGrTaQ
919c8b9e2ab4ef7aa51f7cf91c6c738a77e592e2: Bug 1287007 - Remove .contentWindow from ProxyContext r=billm
Rob Wu <rob@robwu.nl> - Tue, 13 Sep 2016 16:02:03 -0700 - rev 319133
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Remove .contentWindow from ProxyContext r=billm MozReview-Commit-ID: ASNigrM07yz
851e08a1f368c42fcbe0f1522f22e36690dba0ae: Bug 1287007 - Enable proxying of most APIs. r=billm
Rob Wu <rob@robwu.nl> - Mon, 12 Sep 2016 21:19:53 -0700 - rev 319131
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Enable proxying of most APIs. r=billm MozReview-Commit-ID: KrI42XrsVVG
44c68913ebf56daf3aef3454c615597fef3d62b9: Bug 1287007 - Fix timing issue in test_ext_storage.js r=billm
Rob Wu <rob@robwu.nl> - Tue, 13 Sep 2016 00:45:00 -0700 - rev 319130
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Fix timing issue in test_ext_storage.js r=billm MozReview-Commit-ID: 63Ra7ThuHuf
f2f75e6e2d607e8a123e2444c2fd9fe9a4e276c8: Bug 1287007 - Fix "onclick" in contextMenus, to child. r=billm
Rob Wu <rob@robwu.nl> - Mon, 12 Sep 2016 18:26:03 -0700 - rev 319129
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Fix "onclick" in contextMenus, to child. r=billm Main thing: Making contextMenus implementation webext-oop compatible. Preparation: - Add getParentEvent to ChildAPIManager to allow use of remote events. - Introduce `addon_parent_only` to "allowedContexts" to only generate a schema API in the main process. - Do not fill in `null` for missing keys if the schema declares a key as `"optional": "omit-key-if-missing"`. This is needed for the second point in the next list. Drive-by fixes: - Ensure that the "onclick" handler is erased when a context closes. - Do not clear the "onclick" handler in `contextMenus.update` if the onclick key has been omitted (parity with Chrome). - Remove some unnecessary `Promise.resolve()` - Add extensive set of tests that check the behavior of the contextMenus APIs with regards to the onclick attribute in various scenarios. MozReview-Commit-ID: A5f3AUQzU8T
4c43afedf60f8852f0a1729123af998da103f50b: Bug 1287007 - Move part of browserAction and pageAction to child r=billm
Rob Wu <rob@robwu.nl> - Sun, 11 Sep 2016 04:18:35 -0700 - rev 319128
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Move part of browserAction and pageAction to child r=billm And remove redundant `Promise.resolve()` because it is the default for async functions. setIcon is not supported on Android, so there was no need to change mobile/android/components/extensions/ext-pageAction.js. MozReview-Commit-ID: 94ebaJFxLAi
09fa6078095c96453fb793ee97755cc3c66a986c: Bug 1287007 - Set parent cloneScope to child cloneScope r=billm
Rob Wu <rob@robwu.nl> - Sun, 11 Sep 2016 03:10:21 -0700 - rev 319127
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Set parent cloneScope to child cloneScope r=billm This is only to help with migration. This change allows all APIs to behave identical regardless of whether the API is proxied. Change cloneScope to be a getter because cloneScope is `this.contentWindow`, which may be nulled when the context navigates away (but stays in the bfcache). Any API that is not proxied must have an identical clone scope to make sure that properties such as toJSON (in the native messaging stringifier) and ArrayBuffer (in webRequest as requestBody) are visible to the caller. MozReview-Commit-ID: 9aT3SUBieHK
54c25251246826c4bca1af8208ddbb0dcb4da0b2: Bug 1287007 - Track message manager / browser swaps r=billm
Rob Wu <rob@robwu.nl> - Fri, 09 Sep 2016 23:04:04 -0700 - rev 319126
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Track message manager / browser swaps r=billm Neither the message manager nor the XUL browser is guaranteed to be constant during a ProxyContext's lifetime. Add a new class to follow the `<browser>` belonging to the current docshell and update the ProxyContext properties as needed. NOTE: The `BrowserDocshellFollower` class assumes that docshells are swapped using `newBrowser.swapDocShells(oldBrowser)`. If this assumption turns out to be false, then the tracker will lose track of the `<browser>`. See bugzil.la/1301837 for more details. Also, renamed `messageManager` to `currentMessageManager` because the `messageManager` property is overwritten by the `setContentWindow` hack in WannabeChildAPIManager in ExtensionChild.jsm. browser/components/extensions/test/browser/browser_ext_currentWindow.js provides test coverage for this feature once the `test` API goes through a ChildAPIManager instead of directly through a WannabeChildAPIManager. Why? Because that test calls `test.onMessage.addListener` in the script that is loaded in a popup page. Popups are loaded in two stages: First the content is preloaded in a `<browser>`, and then when the popup is shown a new `<browser>` is created and the docshells are swapped. When the script runs while the popup script is being preloaded, the `ParentAPIManager` receives the IPC message with the target set to the `<browser>` used for preloading. When the API response is ready, `target.messageManager.sendAsyncMessage` is called. Meanwhile the docshells have been swapped, the message manager is gone and this fails. With this patch, the message manager is correctly tracked and this test passes. MozReview-Commit-ID: C5Z0ZJRXKyw
709a07bf036212cc6f667eca11b1ae9d585c79d0: Bug 1287007 - Use frame script to initialize background/popup page r=billm
Rob Wu <rob@robwu.nl> - Thu, 08 Sep 2016 20:41:43 -0700 - rev 319125
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Use frame script to initialize background/popup page r=billm MozReview-Commit-ID: 8Di1nTnwpbU
fca5d1ec8c26491ea887e2e6f80cac8a3e32419b: Bug 1287007 - Only close extension tabs upon shutdown r=billm
Rob Wu <rob@robwu.nl> - Thu, 08 Sep 2016 19:02:56 -0700 - rev 319124
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Only close extension tabs upon shutdown r=billm In one of the previous patches, the viewType of popup changed from "popup" to "tab". As a result it was closed by the `page-shutdown` event handler in ext-tabs.js. This prevents that from happening. Also added a test that checks whether the options page type is a tab, to prevent future regressions. MozReview-Commit-ID: 3Qcf08PgNqb
817299c12d6d608a2e5c6a2badc2f952414e43ab: Bug 1287007 - Set the principal in ChildAPIManager r=billm
Rob Wu <rob@robwu.nl> - Wed, 07 Sep 2016 20:35:39 -0700 - rev 319123
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Set the principal in ChildAPIManager r=billm The `browser.downloads.download` API takes a "url" parameter. The schema file at downloads.json defines the type to be "url". This means that the parameter is checked with `context.checkLoadURL(url)` in Schemas.jsm. This method uses the principal of the object that was passed to `Schemas.inject`. Currently, this works just fine because the `schemaWrapper` in Extension.jsm returns the context's principal. But when we move to using the ChildAPIManager, the principal is not defined and Schemas.jsm will fall back to a Null principal. As a result, the test_ext_downloads_download.js fails because the blob:-URL with the extension origin cannot be loaded by a null principal. To fix this, the context's principal must be set. MozReview-Commit-ID: FmpqYfPemyY
37414d1fd5efe1e5771d50f23f0797fdc967ac3c: Bug 1287007 - Remove dead code r=billm
Rob Wu <rob@robwu.nl> - Tue, 06 Sep 2016 15:50:50 -0700 - rev 319122
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Remove dead code r=billm MozReview-Commit-ID: LtuKY5DjB68
f9da44ff592d2a570c2f501b9e8588351d105aee: Bug 1287007 - Use child's Extension instead of the process' r=billm
Rob Wu <rob@robwu.nl> - Tue, 06 Sep 2016 15:31:33 -0700 - rev 319121
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Use child's Extension instead of the process' r=billm MozReview-Commit-ID: 9o8tOuUbchn
e3514b399ec46ced8c47c24ed69d15b9cac9c591: Bug 1287007 - Fix test_ext_api_permissions.js r=billm
Rob Wu <rob@robwu.nl> - Wed, 07 Sep 2016 17:10:33 -0700 - rev 319120
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Fix test_ext_api_permissions.js r=billm "extension.views" will only be available in content, so use the "proxy-context-load" event to detect new views. MozReview-Commit-ID: K86Be5IDk42
6b9a398be651f28216e4693a6151776d73f44156: Bug 1287007 - Use IPC to share viewType, tabId and windowId r=billm
Rob Wu <rob@robwu.nl> - Tue, 06 Sep 2016 15:25:10 -0700 - rev 319119
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Use IPC to share viewType, tabId and windowId r=billm Accessing <browser> in ContentChild does not work when extensions run in a separate process. MozReview-Commit-ID: EK0aOYeGaZ5
3d18af0cc52663e03e7c81d3646cc3baf8d2b3f1: Bug 1287007 - Fix timing issue in browser_ext_tabs_getCurrent.js r=billm
Rob Wu <rob@robwu.nl> - Tue, 06 Sep 2016 14:45:58 -0700 - rev 319118
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Fix timing issue in browser_ext_tabs_getCurrent.js r=billm browser.test.sendMessage does not have enough time to finish before tabs.remove since test moved to ChildAPIManager for extension pages, causing the test to time out. MozReview-Commit-ID: 1mmGZOi9fzm
9746d5da8a517c1e3d47d3a87f867c82ed1c576a: Bug 1287007 - Move extension context initialization to ExtensionContent r=billm
Rob Wu <rob@robwu.nl> - Mon, 05 Sep 2016 23:50:11 -0700 - rev 319117
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Move extension context initialization to ExtensionContent r=billm This is a simple move of ExtensionContext creation logic to ExtensionChild. Before the change, ExtensionContext was initialized as follows: 1. (ext-backgroundPage.js) Create background page 2. (Extension.jsm) document-element-inserted observed. 3. (Extension.jsm) new ExtensionContext + unload observer. After this commit: 1. (ext-backgroundPage.js) Create background page 2. (ext-backgroundPage.js) emit extension-browser-inserted event 3. (Extension.jsm) Pass global to ExtensionContent + unload listener. 4. (ExtensionContent.jsm) document-element-inserted observed. 5. (ExtensionChild.jsm) new ExtensionContext The next step is to use frame scripts and synchronize state. MozReview-Commit-ID: K6mPdq7KQ2T
f86e5930ef497a5cdce73f04d3f16fa73871d144: Bug 1287007 - Move extension.getViews to child r=billm
Rob Wu <rob@robwu.nl> - Wed, 07 Sep 2016 22:54:07 -0700 - rev 319116
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Move extension.getViews to child r=billm MozReview-Commit-ID: SG2pmulzaP
1ed5b81ab606d9c1c9cf737b9d6ffbb50378799f: Bug 1287007 - Move background page API logic to child r=billm
Rob Wu <rob@robwu.nl> - Mon, 05 Sep 2016 22:34:44 -0700 - rev 319115
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Move background page API logic to child r=billm MozReview-Commit-ID: iGROahhkhn
cb7fa050a6bf4cf499a165b2b9ebe7f33c06f518: Bug 1287007 - Rename "context.type" to "context.viewType" r=billm
Rob Wu <rob@robwu.nl> - Mon, 05 Sep 2016 22:26:56 -0700 - rev 319114
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Rename "context.type" to "context.viewType" r=billm "viewType" is more easily searchable and not as ambiguous as "type". MozReview-Commit-ID: 8sG4qagFCBu
642f1b1afa902ddf5f9043bcd799feede7e67396: Bug 1287007 - Introduce ChildAPIManager to addon code r=billm
Rob Wu <rob@robwu.nl> - Mon, 05 Sep 2016 18:57:38 -0700 - rev 319113
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Introduce ChildAPIManager to addon code r=billm This is the bare minimum to separate the generation of addon_parent and addon_child APIs. Now it is possible to have methods with the same name but different implementations in the parent and child. Many APIs are not compatible with the proxied API implementation, so they temporarily fall back to directly invoking the parent API, just as before this commit. MozReview-Commit-ID: fwuZUvD8tY
d6ac05fb1b56cfc90ba785a9c65095bf71cf6dc7: Bug 1287007 - Do not neuter error messages from the same principal r=billm
Rob Wu <rob@robwu.nl> - Mon, 05 Sep 2016 17:04:28 -0700 - rev 319112
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Do not neuter error messages from the same principal r=billm With an upcoming change that introduces another ProxyContext, errors from a different scope may bubble up. These messages should be reported, not replaced with "An unexpected error occurred". MozReview-Commit-ID: ByUktVkhDyx
5df860aa9c9ca508841e1a0c7d96ab389fda8ea3: Bug 1287007 - Move ExtensionContext to separate file r=billm
Rob Wu <rob@robwu.nl> - Mon, 05 Sep 2016 00:15:18 -0700 - rev 319111
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Move ExtensionContext to separate file r=billm This is just a mechanical change, literally nothing more than cutting ExtensionContext from Extension.jsm, pasting it in ExtensionChild.jsm and adding the minimal imoort boilerplate. MozReview-Commit-ID: 5uVt1IOdEFU
bfb7562c240678e3a77695c5e370d2ebe73b7c48: Bug 1287007 - Fix cross-process browser.storage.local serialization r=billm
Rob Wu <rob@robwu.nl> - Sun, 04 Sep 2016 19:19:17 -0700 - rev 319110
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Fix cross-process browser.storage.local serialization r=billm - Lazily initialize file IO-specific stuff in ExtensionStorage.jsm, and limit this work to the main process. - Add local versions of the `storage.local.get` and `storage.local.set` implementations that perform sanitization (without the change, values are improperly serialized over IPC). - Copied the `backgroundScript` test from xpcshell/test_ext_storage.js to mochitest/test_ext_storage_content.html because they should behave identical. Before this patch the test failed due to IPC serialization issues, now the test passes. Note that the old test also passes with the changes. MozReview-Commit-ID: 8J8CCdwMACN
32d29dd44c656b3faf85c21ab097c96a0623c3bd: Bug 1287007 - Derive context.principal from sandbox r=billm,kmag
Rob Wu <rob@robwu.nl> - Fri, 30 Sep 2016 19:16:34 +0200 - rev 319109
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Derive context.principal from sandbox r=billm,kmag `context.principal` should be equal to the principal of the sandbox, so that if a new sandbox is created using `Cu.Sandbox(principal)`, that objects can be shared between the new sandbox and `context.cloneScope` (= `context.sandbox`) without issues. Without this change, using `context.jsonStringify` on an object from a content script would trigger the following error: > Error: Permission denied to access property "toJSON" This scenario is covered by the test toolkit/components/extensions/test/mochitest/test_ext_storage_content.html in the next commit. MozReview-Commit-ID: E4Jt8TDwNAZ
3ca8f3e64eebe2b6cdcf5a3ddab89572db4d9e18: Bug 1287007 - Allow local implementations to call remote implementations r=billm
Rob Wu <rob@robwu.nl> - Sun, 04 Sep 2016 02:29:48 -0700 - rev 319108
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Allow local implementations to call remote implementations r=billm - Add callParentFunctionNoReturn / callParentAsyncFunction to ChildAPIManager to implement remote calls. - Add in-process browser.test implementation that uses this. - Add tests to verify that the browser.test.assert* methods with the `allowAmbiguousOptionalArguments` schema attribute are working with objects that cannot be passed as-is over IPC. (except test.sendMessage, because stringifying the arguments has an observable impact on test behavior) MozReview-Commit-ID: 6cFVgmFfU93
7292a34a169eec162d65b515a2c306cdb7bd0872: Bug 1287007 - Mark all browserAction methods as async r=billm
Rob Wu <rob@robwu.nl> - Fri, 02 Sep 2016 14:22:09 -0700 - rev 319107
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Mark all browserAction methods as async r=billm E.g. browser.browserAction.enable(...).then(...) now works as expected. Removed a Promise.resolve() because that is the default. MozReview-Commit-ID: 4Shxtn0rjYH
1edf5fa29a435f02b78980580543261afbd8db24: Bug 1287007 - Require "async" in schemas to match name r=billm
Rob Wu <rob@robwu.nl> - Fri, 02 Sep 2016 03:37:55 -0700 - rev 319106
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Require "async" in schemas to match name r=billm In the pageAction and browserAction schemas, several methods are declared with `"async": true` but without a specified callback in the `"parameters"` object, so callbacks are not allowed. However, when a callback is proxied, the `ParentAPIManager` will mirror the call by passing in an extra callback to the proxied API - and break. This patch fixes the issue by removing uses of async:true. Also for consistency between the browserAction and pageAction methods, the methods that were not declared as async have also been marked as async. MozReview-Commit-ID: JQqzmTUAotB
930d8616be95fcaaf7ca1e03682e0053bff5d8eb: Bug 1287007 - Fix timing issue in browser/page action tests r=billm
Rob Wu <rob@robwu.nl> - Fri, 02 Sep 2016 16:33:32 -0700 - rev 319105
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Fix timing issue in browser/page action tests r=billm MozReview-Commit-ID: 9L0ttaq42Ga
b91a39e959ffb29b8da8d41684181d17f92fef80: Bug 1287007 - Refactor test_ext_schemas_api_injection.js r=billm
Rob Wu <rob@robwu.nl> - Fri, 02 Sep 2016 05:36:33 -0700 - rev 319104
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Refactor test_ext_schemas_api_injection.js r=billm When the background API move to a separate implementation, then the schema APIs will be generated (and ChildAPIManager will just delegate the implementation to the parent process). The purpose of the test is to verify that nested namespaces and null-feturn values work, so just use the base classes instead of a concrete implementation for BaseContext / SchemaAPIManager instead of setting up a full extension. MozReview-Commit-ID: CB5s7Ae24zS
fbbeab9bd95bca3c7f97e3cadebd42d93c7610bb: Bug 1287007 - Improve errors for non-existing remote APIs r=billm
Rob Wu <rob@robwu.nl> - Thu, 01 Sep 2016 21:14:31 -0700 - rev 319103
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Improve errors for non-existing remote APIs r=billm Currently, if the remote implementation is missing, the next unhelpful error message is logged to the console: "TypeError: findPathInObject(...) is not a function" or "TypeError: findPathInObject(...) is undefined", etc. This commit makes the message more useful: "WebExtension API tabs.create not found (it may be unimplemented by Firefox)" MozReview-Commit-ID: FhPEYKSjnLm
5e6462c7563d934c4bc780a567663bba4d8f0f47: Bug 1287007 - Fix some flaws in ProxyAPIImplementation r=billm
Rob Wu <rob@robwu.nl> - Thu, 01 Sep 2016 21:10:18 -0700 - rev 319102
Push 20736 by cbook@mozilla.com at Mon, 24 Oct 2016 14:57:45 +0000
Bug 1287007 - Fix some flaws in ProxyAPIImplementation r=billm - removeListener: There is no set.remove, use set.delete. - Async callbacks: Do not unconditionally turn the result in a SpreadArgs because it causes the result to unconditionally be wrapped in an array (+test). MozReview-Commit-ID: LqwtBsHWJJr
59c8202c08279f0e0f2907fd00acfcdcc92bc20f: Bug 1264073 - Remove assertion in SharedMemoryBasic that we didn't initialise fast enough. r=billm
George Wright <george@mozilla.com> - Fri, 21 Oct 2016 12:53:00 -0400 - rev 319071
Push 20735 by ryanvm@gmail.com at Mon, 24 Oct 2016 00:05:23 +0000
Bug 1264073 - Remove assertion in SharedMemoryBasic that we didn't initialise fast enough. r=billm
6610a1df05704dea38cfc11604c705d8a8a5cb19: Bug 1309799 - Change IPC profiler label format to share strings. r=billm
Kan-Ru Chen <kanru@kanru.info> - Thu, 20 Oct 2016 14:06:14 +0800 - rev 319014
Push 20734 by ryanvm@gmail.com at Sun, 23 Oct 2016 17:18:19 +0000
Bug 1309799 - Change IPC profiler label format to share strings. r=billm MozReview-Commit-ID: FZtb8qLpKYI
e6d4412c0cc4f92329c3f5f3deceb36a99408f10: Bug 1309799 - Make error message more stable. r=billm
Kan-Ru Chen <kanru@kanru.info> - Thu, 20 Oct 2016 22:26:52 +0800 - rev 319013
Push 20734 by ryanvm@gmail.com at Sun, 23 Oct 2016 17:18:19 +0000
Bug 1309799 - Make error message more stable. r=billm MozReview-Commit-ID: IzhAfo7eYCC
7ae23ee055f527372579e69ecefedef05e604941: Bug 1309799 - Generate StringFromIPCMessageType and use it in MessageChannel::MaybeHandleError. r=billm
Kan-Ru Chen <kanru@kanru.info> - Thu, 13 Oct 2016 14:18:45 +0800 - rev 319012
Push 20734 by ryanvm@gmail.com at Sun, 23 Oct 2016 17:18:19 +0000
Bug 1309799 - Generate StringFromIPCMessageType and use it in MessageChannel::MaybeHandleError. r=billm MozReview-Commit-ID: HSuAAM0JdjS
c4eee1d6a915416807a52071b863831b00be9390: Bug 1312080 - Tell the BackgroundHangMonitor for force paint in the content process to wait after the next paint, even if we weren't interrupting JS. r=billm"
Mike Conley <mconley@mozilla.com> - Fri, 21 Oct 2016 14:56:46 -0400 - rev 319002
Push 20734 by ryanvm@gmail.com at Sun, 23 Oct 2016 17:18:19 +0000
Bug 1312080 - Tell the BackgroundHangMonitor for force paint in the content process to wait after the next paint, even if we weren't interrupting JS. r=billm" MozReview-Commit-ID: 1Rk2VN1pR3C
24bfff012930afecfee8f33833c7987a6a835624: Bug 1312080 - Repeated calls to BackgroundHangMonitor::NotifyWait shouldn't unnecessarily wake the BackgroundHangThread. r=billm
Mike Conley <mconley@mozilla.com> - Fri, 21 Oct 2016 14:56:32 -0400 - rev 319001
Push 20734 by ryanvm@gmail.com at Sun, 23 Oct 2016 17:18:19 +0000
Bug 1312080 - Repeated calls to BackgroundHangMonitor::NotifyWait shouldn't unnecessarily wake the BackgroundHangThread. r=billm MozReview-Commit-ID: 5NLVIFJ9fmJ
fcadf6ec5ccf67c480047de89b5d063116938fea: Bug 1311825: Pass by reference in fromObjectVariant and related methods. r=billm
David Major <dmajor@mozilla.com> - Thu, 20 Oct 2016 15:37:26 -0500 - rev 318911
Push 20732 by ryanvm@gmail.com at Fri, 21 Oct 2016 21:17:52 +0000
Bug 1311825: Pass by reference in fromObjectVariant and related methods. r=billm MozReview-Commit-ID: GIhK1zRMsYb
48071b5d0cb211139be1ce7af508861cc79ac442: Bug 1310880 - Add a specialized BackgroundHangMonitor for content process force paints. r=jchen,billm
Mike Conley <mconley@mozilla.com> - Wed, 19 Oct 2016 14:33:13 -0400 - rev 318695
Push 20727 by cbook@mozilla.com at Thu, 20 Oct 2016 14:51:54 +0000
Bug 1310880 - Add a specialized BackgroundHangMonitor for content process force paints. r=jchen,billm MozReview-Commit-ID: CccuQRDuaW2