Commit Graph

4 Commits

Author SHA1 Message Date
Chiu-Hsiang Hsu
8f06b1787e servo: Merge #13076 - Remove unnecessary clone from ServiceWorkerManager::prepare_activation (from wdv4758h:serviceworker_manager); r=jdm
remove unnecessary for `scope_url`

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #12999
- [X] These changes do not require tests because it should works when it compiles

Source-Repo: https://github.com/servo/servo
Source-Revision: a0f45c6850b68f40244fe92c7d2af3f6929940bf
2016-08-27 14:50:42 -05:00
Rahul Sharma
a653a92a58 servo: Merge #12582 - Make the service worker send custom response (from creativcoder:sw-fetch); r=jdm
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [X] These changes do not require tests because "refactor".

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 3d976cc5932e550e74e186776a1be3aef432232f
2016-07-26 22:54:56 -05:00
Rahul Sharma
cea6ee04af servo: Merge #12518 - Remove expect calls in service worker manager thread (from creativcoder:swm-fix); r=nox
<!-- Please describe your changes on the following line: -->

An intermittent timeout was seen in #12516 , caused by panic of ServiceWorkerManager thread on reception of messages from resource thread. This PR amends things to not have the ServiceWorkerManager thread panic in such situation.
cc @jdm

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix ##12516 (github issue number if applicable).

<!-- Either: -->
- [X] These changes do not require tests because its an "intermittent fix"

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 07a0c2f1dc87fc21a4ed96d251390a4bff165bda
2016-07-21 10:17:47 -05:00
Rahul Sharma
cbf85cb5a1 servo: Merge #11727 - Integrate service worker manager thread (from creativcoder:swmanager); r=jdm
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes are part of #11091

<!-- Either: -->
- [X] There are tests for these changes at my [gh-pages](https://github.com/creativcoder/gsoc16/tree/gh-pages) branch to test  the instantiation of service workers by their manager, but will need to discuss how that would integrate into master.

Changes:
- Introduces a `ServiceWorkerManager`, which maintains an map of registered service workers as well as a map of active workers keyed by their `scope_url`.
- Adds the initialization of ServiceWorkerManager, at the `script::init()`, which makes it available as a single entity listening for requests from different script threads.
- Adds a timeout thread in `serviceworkerglobalscope`, which terminates the workers, after a timeout of 60 secs, thereby removing it from the active workers list.
- Adds the matching of scope urls, in longest prefix way rather than path structural way, according to [spec](https://slightlyoff.github.io/ServiceWorker/spec/service_worker/#scope-match-algorithm).
- Make ServiceWorkerManager, the holder of network sender, instead of script thread, so it can send `CustomResponse`.

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 513811f6b40d522bc425c2588320b889614f2973
2016-07-18 09:50:59 -07:00