Commit Graph

1566 Commits

Author SHA1 Message Date
Nikhil Marathe
e3b4a90a6e Bug 931249 - patch 2.1 - reuse cache name between updating and installing worker. r=baku 2015-03-18 14:02:51 -07:00
Nikhil Marathe
78f3fb24db Bug 931249 - patch 2 - cachename integration. r=nsm 2015-03-18 09:46:38 -07:00
Nikhil Marathe
2b06988afc Bug 931249 - Patch 1.1 - Set baseURI when script is obtained from cache. r=khuey 2015-03-18 16:14:30 -07:00
Nikhil Marathe
dff9cac1c8 Bug 931249 - patch 1 - Scriptloader use cache if needed. r=khuey 2015-03-19 11:41:42 -07:00
Ehsan Akhgari
eec21e7426 Bug 1148854 - Part 1: Relax the assertion in ServiceWorkerManager::DispatchFetchEvent; r=nsm,jdm 2015-04-02 17:58:22 -04:00
Eddy Bruël
64d3e01c66 Bug 1092102 - Implement WorkerDebugger.isFrozen;r=khuey 2015-04-01 20:32:20 +02:00
Eddy Bruël
8e0dc8b734 Bug 1092102 - Rename Suspend/Resume to Freeze/Thaw;r=khuey 2015-04-01 11:00:19 +02:00
Ryan VanderMeulen
1c1b4aff3f Merge m-c to inbound. a=merge
CLOSED TREE
2015-03-31 15:01:26 -04:00
Ryan VanderMeulen
e765b8e962 Merge inbound to m-c. a=merge 2015-03-31 14:08:52 -04:00
Daniel Holbert
a1b139a472 Bug 1092102, followup 2: Add missing 'override' annotation to WorkerDebuggerSandboxPrivate::GetGlobalJSObject() (and 'virtual', for consistency). rs=ehsan 2015-03-31 10:41:20 -07:00
Ryan VanderMeulen
4e2b950fd0 Bug 1136780 - Disable test_fetch_event.html for frequent failures on all platforms. a=me 2015-03-31 13:23:37 -04:00
Eddy Bruël
d00b267216 Bug 1092102 - Implement WorkerDebuggerGlobalScope.createSandbox;r=khuey 2015-03-31 12:22:40 +02:00
Carsten "Tomcat" Book
1c12053f95 Backed out changeset 71abbf190d53 (bug 1092102) for static analysis build bustage on a CLOSED TREE 2015-03-31 11:14:46 +02:00
Eddy Bruël
2f0b9d1497 Bug 1092102 - Implement WorkerDebuggerGlobalScope.createSandbox;r=khuey 2015-03-31 10:19:04 +02:00
Ehsan Akhgari
31c13b72d8 Bug 1148064 - Enable interception of pings through service workers; r=nsm,smaug
Currently when sending a beacon, HttpBaseChannel::ShouldIntercept tries
to get access to the nsINetworkInterceptController interface through the
channel's notification callbacks, but in this case the notification
callback is the nsPingListener object.

This patch extends nsPingListener to make it aware of
nsINetworkInterceptController, and have it route the request for
nsINetworkInterceptController correctly to the docshell without the need
to mess with the notification callbacks.

This will be tested in bug 1147699.
2015-03-30 22:57:19 -04:00
Ehsan Akhgari
2d40ea6715 Bug 1131323 - Enable SharedWorker loads to be intercepted through service workers; r=nsm
SharedWorker's interface requestor needs to know how to forward requests
for nsINetworkInterceptController to the docshell.

This will be tested in bug 1148935.
2015-03-30 22:57:17 -04:00
Daniel Holbert
33006d41ae Bug 1092102 followup: Add missing 'override' annotation on DebuggerImmediateRunnable::IsDebuggerRunnable(). rs=ehsan 2015-03-30 10:18:07 -07:00
Titi_Alone
fb85145435 Bug 1147913 - Change NS_SOCKETTRANSPORTSERVICE_CONTRACTID to NS_STREAMTRANSPORTSERVICE_CONTRACTID in RespondWithHandler::ResolvedCallback. r=ehsan 2015-03-29 12:52:25 +02:00
Ehsan Akhgari
6a0a053602 Bug 1147699 follow-up: Disable the plugin test on Mulet
Landed on a CLOSED TREE in order to fix the test bustage.
2015-03-30 10:41:06 -04:00
Ehsan Akhgari
6a9cd1f8a1 Bug 1147699 - Part 14: Add a test for FetchEvent.request.context when intercepting loads coming from plugins; r=nsm 2015-03-30 08:42:53 -04:00
Ehsan Akhgari
ea7bfac941 Bug 1147699 - Part 13: Add a test for FetchEvent.request.context when intercepting ping loads; r=nsm
This test is temporarily disabled until bug 1148064 gets fixed.
2015-03-30 08:42:51 -04:00
Ehsan Akhgari
1ef91c9874 Bug 1147699 - Part 12: Add a test for FetchEvent.request.context when intercepting new window loads; r=nsm 2015-03-30 08:42:49 -04:00
Ehsan Akhgari
1853f19f3e Bug 1147699 - Part 11: Add tests for FetchEvent.request.context when intercepting iframes and frames; r=nsm 2015-03-30 08:42:47 -04:00
Ehsan Akhgari
10f853c059 Bug 1147699 - Part 10: Add a test for FetchEvent.request.context when intercepting font loads; r=nsm 2015-03-30 08:42:46 -04:00
Ehsan Akhgari
c7b94a91ea Bug 1147699 - Part 9: Add tests for FetchEvent.request.context when intercepting embeds and objects; r=nsm 2015-03-30 08:42:45 -04:00
Ehsan Akhgari
91890387ee Bug 1147699 - Part 8: Add a test for FetchEvent.request.context when intercepting a CSP report; r=nsm 2015-03-30 08:42:43 -04:00
Ehsan Akhgari
674440826f Bug 1147699 - Part 7: Add a test for FetchEvent.request.context when intercepting a beacon load; r=nsm 2015-03-30 08:42:41 -04:00
Ehsan Akhgari
dfb6645bd3 Bug 1147699 - Part 6: Add a test for FetchEvent.request.context when intercepting a video element load; r=nsm
Note that currently our implementation incorrectly reflects this as
'audio'.  This will be fixed later.
2015-03-30 08:42:39 -04:00
Ehsan Akhgari
64999cdc32 Bug 1147699 - Part 5: Add a test for FetchEvent.request.context when intercepting an audio element load; r=nsm 2015-03-30 08:42:37 -04:00
Ehsan Akhgari
7648ae690d Bug 1147699 - Part 4: Add a test for FetchEvent.request.context when intercepting a responsive image load; r=nsm 2015-03-30 08:42:35 -04:00
Ehsan Akhgari
e1d565c797 Bug 1147699 - Part 3: Add a test for FetchEvent.request.context when intercepting an image load; r=nsm,bzbarsky 2015-03-30 08:42:34 -04:00
Ehsan Akhgari
113a48eb7c Bug 1147699 - Part 2: Set the content policy type on FetchEvent.request based on the content policy type of the channel; r=nsm
Note that InternalRequest::SetContentPolicyType takes care of updating the
RequestContext value stored in InternalRequest too.
2015-03-30 08:42:33 -04:00
Ehsan Akhgari
03a382f926 Bug 1147699 - Part 1: Move Request::mContext to InternalRequest, and determine the mapping to nsContentPolicyType; r=nsm
As the documentation in InternalRequest.h in this patch shows, the
mapping between nsContentPolicyType and RequestContext is not complete
yet.  Because the InternalRequest object needs to know the actual
nsContentPolicyType in order for FetchDriver to be able to use that
information, we can't just store the RequestContext.  Therefore, this
patch adds both of these to InternalRequest.  Once we get to a stage
where we have a complete mapping of these values, we can store only one
of them and compute the other from it.  That requires addressing all of
the TODO comments in the InternalRequest.h documentation.
2015-03-30 08:42:31 -04:00
Eddy Bruël
52887dab0d Bug 1092102 - Implement WorkerDebuggerGlobalScope.setImmediate;r=khuey 2015-03-30 13:54:38 +02:00
Nick Fitzgerald
f3aee023be Bug 1038238 - Part 1: Make Error instances use SavedFrame objects for their
stacks; r=jorendorff
2015-03-27 13:08:46 -07:00
Andrea Marchesini
b212600c95 Bug 1148527 - Indentation fix after bug 1145631, r=ehsan 2015-03-27 18:52:19 +00:00
Timur Valeev
71db30f7ff Bug 1146365 - Add support of union type for FetchEvent.respondWith. r=nsm, r=ehsan 2015-03-24 10:37:39 +03:00
Andrew Overholt
94f82a7a06 Bug 1127552 - Add Telemetry to Fetch. r=nsm
Note when the Fetch is coming from the main thread or a worker.  Also
count Requests just passed through a Service Worker.
2015-03-27 06:47:00 -04:00
Eddy Bruël
27ad456fde Bug 1092102 - Implement WorkerDebuggerGlobalScope.enterEventLoop;r=khuey 2015-03-27 07:17:16 +01:00
Jose Antonio Olivera Ortega
9143323058 Bug 1139513 - Warn and gather data if ServiceWorker hits max workers per domain limit. r=bent, r=rvitillo 2015-03-25 13:17:00 -04:00
Jose Antonio Olivera Ortega
196e76993d Bug 1003991 - Disable https:// only load for ServiceWorkers when Developer Tools are open. r=nsm, r=miker 2015-03-24 14:15:00 -04:00
Eddy Bruël
c35b5d7565 Bug 1092102 - Implement WorkerDebuggerGlobalScope.reportError;r=khuey 2015-03-26 20:09:45 +01:00
Ehsan Akhgari
b1e83bfe4b Bug 1147367 - Add a test for checking the Request.context attribute for FetchEvents generated for fetch(); r=nsm 2015-03-25 21:28:22 -04:00
Andrea Marchesini
db1eb647df Bug 803537 - XHR crashes in workers and in debug-builds when blob URLs are used from file scheme documents, r=khuey 2015-03-25 18:09:24 +00:00
Ehsan Akhgari
e2bc3d944b Remove the unneeded variable, no bug, DONTBUILD 2015-03-24 17:35:16 -04:00
Ehsan Akhgari
ea79d1a080 Bug 1142727 - Do not intercept sandboxed iframes with service workers; r=nsm
This is temporary until we clarify what we want to do with these
iframes in the spec.
2015-03-24 16:45:14 -04:00
Nikhil Marathe
3612762bd9 Bug 1136200 - Verify request type is not no-cors if response is opaque. r=jdm 2015-03-17 08:47:03 -07:00
Nikhil Marathe
42fd8be69d Bug 1134324 - Set CORS mode and credentials on Fetch event Request. r=michal
renames fetch to fetchXHR() since fetch() is now a superpower.
2015-03-17 08:47:02 -07:00
Ehsan Akhgari
8e8719dd70 Remove the remnants of the dom.fetch.enabled pref, no bug 2015-03-23 15:46:59 -04:00
Josh Matthews
9eb14e014e Bug 1134330 - Mark fetch events as reloads appropriately. r=smaug 2015-03-23 13:36:44 -04:00
Nikhil Marathe
614f31e10e Bug 1141332 - Disable content decoding and use decoded length on intercepted channels. r=mcmanus 2015-03-17 08:48:32 -07:00
Ehsan Akhgari
33bb32f549 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Timur Valeev
38fee18c3e Bug 1136757 - Add direct Response overload for FetchEvent.respondWith(). r=jdm,nsm,ehsan
ON CLOSED TREE
Fix bug number
2015-03-20 08:44:20 -07:00
Nikhil Marathe
2e35d3d440 Backed out changeset 62b55b1f9b7e for wrong bug number ON CLOSED TREE 2015-03-20 08:43:59 -07:00
Timur Valeev
22c8e8c3da Bug 1135627 - Add direct Response overload for FetchEvent.respondWith(). r=jdm,nsm,ehsan 2015-03-18 06:17:11 +03:00
Eddy Bruël
fdb3d0ade4 Bug 1092102 - Implement WorkerDebugger.postMessage;r=khuey 2015-03-20 12:15:59 +01:00
Boris Zbarsky
54c64f20a9 Bug 1117172 part 3. Change the wrappercached WrapObject methods to allow passing in aGivenProto. r=peterv
The only manual changes here are to BindingUtils.h, BindingUtils.cpp,
Codegen.py, Element.cpp, IDBFileRequest.cpp, IDBObjectStore.cpp,
dom/workers/Navigator.cpp, WorkerPrivate.cpp, DeviceStorageRequestChild.cpp,
Notification.cpp, nsGlobalWindow.cpp, MessagePort.cpp, nsJSEnvironment.cpp,
Sandbox.cpp, XPCConvert.cpp, ExportHelpers.cpp, and DataStoreService.cpp.  The
rest of this diff was generated by running the following commands:

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObject\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(Binding(?:_workers)?::Wrap\((?:aCx|cx|aContext|aCtx|js), [^,)]+)\)/\1, aGivenProto)/g'
2015-03-19 10:13:33 -04:00
Boris Zbarsky
50b622a067 Bug 1117172 part 2. Change the non-wrappercached WrapObject methods to allow passing in aGivenProto. r=peterv
The only manual changes here are to BindingUtils.h, Codegen.py, and
StructuredClone.cpp.  The rest of this diff was generated by running the following commands:

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/WrapObject\((JSContext *\* *(?:aCx|cx)),(\s*)(JS::MutableHandle<JSObject\*> aReflector)/WrapObject(\1,\2JS::Handle<JSObject*> aGivenProto,\2\3/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(Binding(?:_workers)?::Wrap\((?:aCx|cx)), this, aReflector/\1, this, aGivenProto, aReflector/'
2015-03-19 10:13:32 -04:00
Ehsan Akhgari
356dc96d15 Bug 1144876 - Stop spamming stderr with a warning every time that we encounter a document that is not controlled by a service worker; r=nsm 2015-03-18 14:16:00 +01:00
Andrew McCreight
fa747a90b0 Bug 1137536, part 2 - Make sure every file that uses an nsCycleCollector_ function includes nsCycleCollector.h. r=smaug
This will let us remove it from headers after we split out DeferredFinalize into its own header.
2015-03-18 11:36:03 -07:00
Catalin Badea
3e5b1da158 Bug 982726 follow-up: Add exempt from worker limit pref to a test. 2015-03-18 16:56:47 +02:00
Catalin Badea
a302822ab8 Bug 982726 - Test the number of clients returned by matchAll. r=nsm 2015-03-18 16:47:17 +02:00
Nikhil Marathe
b7502bf690 Bug 1134462 - Cleanup Promise usage in fetch test SW. r=jdm 2015-03-17 08:48:31 -07:00
Nikhil Marathe
da9cdaf002 Bug 1134462 - allow null body. r=jdm 2015-03-17 08:48:30 -07:00
Nikhil Marathe
8435e04285 Bug 1134462 - Synthesize status and headers from Response returned by ServiceWorker. r=jdm 2015-03-17 08:48:30 -07:00
Daniel Holbert
2c24121797 Bug 1142841: Convert all nsRefPtr<nsIRunnable> to nsCOMPtr<nsIRunnable>. r=ehsan
This patch was generated by a script.  Here's the source of the script for
future reference:

find . \( -iname "*.cpp" -o -iname "*.h" \) | \
  xargs -n 1 sed -i "s/nsRefPtr<nsIRunnable>/nsCOMPtr<nsIRunnable>/g"
2015-03-17 09:29:17 -07:00
Eddy Bruël
01de11bc7a Bug 1092102 - Implement WorkerDebugger.initialize;r=khuey 2015-03-17 11:15:19 +01:00
Nikhil Marathe
3ffd94ea37 Bug 739173 - Support FormData in workers. r=khuey,baku 2015-01-27 15:16:21 -08:00
Nikhil Marathe
222ef66fec Bug 1131271 - Set ServiceWorker script redirect limit to zero. r=bkelly,ehsan 2015-02-09 13:47:09 -08:00
Nikhil Marathe
d50fe835f6 Bug 1130688 - Implement additional scope checking in service worker registration. r=bkelly,ehsan 2015-03-09 18:57:06 -07:00
Nikhil Marathe
89894439fb Bug 1140791 - Run fetch tests on main thread and workers. r=ehsan 2015-03-11 14:48:58 -07:00
Catalin Badea
02dc461839 Bug 1142015 - Add source for messages dispatched to a Service Worker. r=baku 2015-03-16 22:23:42 +02:00
Catalin Badea
3ab2d93fbd Bug 1143732 - Add exempt from limit for two service worker tests. r=bkelly 2015-03-16 19:57:42 +02:00
Albert Crespell
22b2a2180f Bug 1139425 - Service Worker Client uuid tests. r=baku 2015-03-16 11:20:40 +01:00
Albert Crespell
5cb6d620a6 Bug 1139425 - Service Worker Client id should return a DOMString uuid. r=baku 2015-03-13 07:15:25 +01:00
Boris Zbarsky
f8e0ebdf55 Bug 1097987 part 7. Require callers of JS::Evaluate to either use the global as the scope or pass in an explicit scopechain. r=waldo 2015-03-14 01:36:16 -04:00
Ehsan Akhgari
6541ca0b6f Bug 1133763 - Part 8: Ensure that FetchEvent.respondWith works correctly on HTTPS requests with a cloned response; r=nsm 2015-03-13 14:37:27 -04:00
Ehsan Akhgari
68ae51bd33 Bug 1133763 - Part 7: Add automated tests for using FetchEvent.respondWith on an HTTPS request; r=nsm 2015-03-13 14:37:25 -04:00
Ehsan Akhgari
81a811da5c Bug 1133763 - Part 6: Set the correct security info on intercepted channels when using the respondWith API; r=jdm 2015-03-13 14:37:24 -04:00
Jonathan Griffin
84011a87cc Bug 1116187 - Disable failing mochitest-chrome tests for B2G, r=gbrown 2015-02-06 16:30:37 -08:00
Sushrut Girdhari
d3c0163a47 Bug 1137248 - Remove FetchEvent.default and FetchEvent.forwardTo. r=baku 2015-03-02 05:32:00 -05:00
Ehsan Akhgari
890be1ec6d Bug 1141274 - Allocate shared workers and service workers from separate namespaces; r=nsm
This patch makes sure that we never reuse a WorkerPrivate belonging
to a shared worker for a service worker and vice versa.
2015-03-10 22:52:22 -04:00
Nikhil Marathe
caca74ccd6 Bug 1140788 - Set headers to immutable. r=bkelly,ehsan 2015-03-07 18:54:41 -08:00
Andrea Marchesini
ab05554f75 Bug 1141026 - BroadcastChannel should throw if it fails registering the worker feature, r=smaug 2015-03-09 13:51:47 +00:00
Nikhil Marathe
60aeafafea Bug 1133805 - Enable all serviceworker tests on all platforms except b2g. r=baku 2015-03-03 15:57:15 -08:00
Nikhil Marathe
bfaefa32a6 Bug 1053275 - Exempt ServiceWorkers from per domain thread limits. r=sicking 2015-03-03 14:30:58 -08:00
Nikhil Marathe
57039ce2c7 Bug 1133861 - Enable the Fetch API by default. r=jst 2015-02-22 01:52:10 -08:00
Ehsan Akhgari
4a2ec83e86 Bug 1037739 - Disable test_scopes.html temporarily on a CLOSED TREE 2015-03-06 10:09:05 -05:00
Ehsan Akhgari
ce6a8495a1 Bug 1137816 follow-up: Add WindowClient, added by bug 1058311 2015-03-06 09:34:50 -05:00
Ehsan Akhgari
2ff8733a59 Bug 1137816 - Add a test for interfaces exposed to service workers; r=baku 2015-03-06 08:27:24 -05:00
Ehsan Akhgari
4c972a5d64 Bug 1131353 - Make ServiceWorkerGlobalScope.close() throw InvalidAccessError; r=baku 2015-03-06 08:19:33 -05:00
Ehsan Akhgari
ed177eb47f Bug 1140120 - Remove a couple of unused test functions on ServiceWorkerContainer; r=baku 2015-03-06 08:19:32 -05:00
Catalin Badea
17af33f0f1 Bug 1058311 - Update client interface. Implement matchAll WindowClient. r=baku 2015-03-06 15:04:49 +02:00
Jan de Mooij
22989040ae Bug 1139794 - Remove __noSuchMethod__ from the console object. r=baku 2015-03-06 09:50:51 +01:00
Nikhil Marathe
0f61f58788 Bug 1139990 - Remove No activatingWorker warning. r=ehsan 2015-03-05 09:39:58 -08:00
Nikhil Marathe
8c4d11dc98 Bug 1139561 - Various small ServiceWorker test fixes. r=baku
Replace setTimeout for test_unregister with detailed checks for active worker before opening iframe
check for null reg in unregister tests
Removed current dir scope so potential fetch event slowdown does not timeout tests
use navigator.serviceWorker to receive messages
Remove leftover getRegistration() test
2015-03-03 16:00:02 -08:00
Nikhil Marathe
9889aecde9 Bug 1137477 - Replace getServiced() with matchAll() in tests. r=catalinb 2015-02-26 17:20:23 -05:00
Nikhil Marathe
e19dc5c9dd Bug 1137419 - Use correct principal for update. r=baku 2015-02-23 10:34:40 -08:00
Nikhil Marathe
7e6a0d766f Bug 1131882 - Associate ServiceWorkers with underlying ServiceWorkerInfo. r=baku
This allows controller to track state too, and provides better encapsulation.
1) Move SW setup to SWM. RuntimeService now only creates the underlying SharedWorker.
2) Require a SWInfo to create a SW. The SW holds a refptr to the info.
2015-02-19 08:40:21 -08:00
Nikhil Marathe
aafb36075f Bug 1132141 - Update storage when ServiceWorker registration fails. r=baku 2015-02-11 10:51:32 -08:00