Commit Graph

55 Commits

Author SHA1 Message Date
Dowon Cha
6ae17b7c11 servo: Merge #14895 - Added Websocket to RequestMode enum (from dowoncha:request-websocket); r=jdm
Added Websocket to RequestMode enum
---
<!-- 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 #14785  (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because matching the enum should have default control flow.

<!-- 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: 8fff2f29d0da97a35bece887506964f5fb4b33d6
2017-01-08 08:57:52 -08:00
Raghav
78d93bf941 servo: Merge #14716 - Implement HSTS fetch step (from mrnayak:hsts); r=jdm
Implemented step nine of the main fetch. If current URL scheme is 'HTTP' and
current URL's host is domain and if current URL's host matched with Known
HSTS Host Domain Name Matching results in either a superdomain match with
an asserted includeSubDomains directive or a congruent match then we
change request scheme to 'https'. This change has been made in method.rs

A test case to validate this has been added in fetch.rs. For asserting
https scheme, a https localhost was required. For this purpose I have
created a self-signed certificate and refactored fetch-context and
connector.rs to programmatically trust this certificate for running this
test case.

This should fix https://github.com/servo/servo/issues/14363
<!-- 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 fix #14363

<!-- Either: -->
- [X] There are tests for these changes

<!-- 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: c7991d596f7453d09c2b2a98eecce72f182a4e24
2016-12-29 00:35:09 -08:00
Matt McCoy
1a78945e45 servo: Merge #14741 - Reuse the http connector pool between fetches (from mattnenterprise:use-http-connection-pool); 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 fix #14697

<!-- Either: -->
- [x] There are tests for these changes

<!-- 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: 7e3c9e21978b638b8f17192500251843f3743d1c
2016-12-27 07:59:22 -08:00
Keith Yeung
7b89ae41e0 servo: Merge #14491 - Add domain and path checks for secure cookies eviction (from KiChjang:cookie-checks); r=jdm
Fixes #14477.

Source-Repo: https://github.com/servo/servo
Source-Revision: b13afccb8a4e922f66c77a92914e6505c62ae483
2016-12-23 15:26:46 -08:00
Corey Farwell
ce98bea9e9 servo: Merge #14526 - Attempt at refactoring and simplifying 'set cookies' operations on resource thread (from frewsxcv:cookies); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: bde8dce756902b1b3ad2cff4a5b5bed1f3325852
2016-12-15 15:54:39 -08:00
Ms2ger
aa52a6d5a2 servo: Merge #14465 - Make the fetch target non-optional (from servo:http); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 1b2daae453e9276977059fd51c9b733e6400f35c
2016-12-15 14:02:42 -08:00
Alan Jeffrey
965a687125 servo: Merge #14592 - Remove the util crate (from asajeffrey:util-goodbye); r=mbrubeck
<!-- Please describe your changes on the following line: -->

This PR removes the `util` crate.

* Replaced the `spawn_named` and `clamp` functions by appropriate uses of `std:🧵:Builder::spawn`, `std::cmp::min` and `std::cmp::max`.
* Moved `opts`, `prefs` and `resource_files` into a new `config` crate.
* Moved `remutex` and `geometry` into their own crates.

---
<!-- 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 do not require tests because they are refactorings

<!-- 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: 4eb653817f87e5fb47de34356f558eb76ecbca9f
2016-12-14 16:48:42 -08:00
Ms2ger
f647a7bc08 servo: Merge #14570 - Remove some dead code related to the old network stack (from servo:resource-thread); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 385d9bc1fa41e11560e2a7c26e9916350b0a66e2
2016-12-14 07:31:41 -08:00
Raghav
71c43d7ffd servo: Merge #14445 - Redesign CookieStorage and Implement Leave Secure Cookie Alone (from mrnayak:netSecurity); r=jdm
CookieStorage has been refactored to use HashMap with the base domain as the key. Values of hashmap are vector of cookies.
CookieStorage now has max_per_host which restricts maximum cookies that can be added per base domain.
Cookie eviction does not take place if max_per_host is not reached.
Cookie eviction logic implemented here does following steps
1) Evict all expired cookies
2) Remove oldest accessed non-secure cookie If any
3) When no non-secure cookie exists, remove oldest accessed secure cookie if new cookie being added is secure. Else ignore new cookie

---
<!-- 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] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- 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: b05c27cb58e8d625f4f436b6e9e1f0c29e908f21
2016-12-04 15:30:46 -08:00
Ms2ger
a14f79beb1 servo: Merge #14360 - Remove the legacy networking stack (from servo:fetch); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 1321c0704dead3421221cb7581fa261a82603f87
2016-11-24 03:20:05 -08:00
Ms2ger
3026c601a7 servo: Merge #14275 - Remove the dependency of fetch on filemanager_thread::UIProvider (from servo:fm-ui); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: d287f58d3fdc1fb00c3f7f7a205cd40524f0b4b3
2016-11-21 18:28:19 -06:00
Emilio Cobos Álvarez
592972be51 servo: Merge #14246 - Urlmageddon (from emilio:servo-url); r=SimonSapin
<!-- Please describe your changes on the following line: -->

Still needs a bunch of code in net to be converted in order to get more
advantage of this for images and stuff, but meanwhile this should help quite a
bit with #13778.

Still wanted to get this in.

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 22aebdf5d41a3509cd6515ccf5edcdf33715a76d
2016-11-17 15:34:47 -06:00
Ms2ger
4a6d530995 servo: Merge #14138 - Pass a borrowed fetch context to fetch() (from servo:fetch-context); r=KiChjang
Source-Repo: https://github.com/servo/servo
Source-Revision: 9d1c1f434d74665b7cd1ed14ef3733fe3d03deeb
2016-11-08 23:40:38 -06:00
Ms2ger
ff43bb321c servo: Merge #13961 - Move remaining users of the legacy networking stack to fetch (from servo:sync-fetch); r=jdm
Fixes #13931.
Fixes #13714.

Source-Repo: https://github.com/servo/servo
Source-Revision: 56f4a691dbe3f885b029b7a76924f6018f0894af
2016-11-02 10:59:18 -05:00
Ms2ger
c12da65b1b servo: Merge #13750 - Implement blob url support in the fetch stack (from servo:fetch-blob); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: d692cf1085b264cb5787017b11d77f59793ecc21
2016-10-14 07:20:05 -05:00
Corey Farwell
4e51e0083d servo: Merge #13680 - Migrate user agent string to Cow<'static, str> (from frewsxcv:user-agent-cow); r=nox
In most scenarios, where the user of Servo will not override the default
user agent, the user agent can be a `&'static str`. But since we allow
for customization, we currently use a `String` to represent the user
agent. This commit migrates the user agent to be represented as a
`Cow<'static, str`, which (at the cost of ergonomics) prevents
unnecessary allocations whenever cloning the user agent string in the
scenario the user doesn't override the user agent.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4dcd223e8370816f8d0a424d9e31492aa4755f47
2016-10-11 04:04:20 -05:00
Corey Farwell
d77ea9cde2 servo: Merge #13411 - Migrate mime_classifier top-level string to enum (from frewsxcv:mime); r=jdm
I made this branch months ago and forgot about it. Instead of just throwing the changes away, I rebased off origin/master and opened this pull request. If these changes aren't desired, no feelings hurt, just close this. If they are desired, let me know if there are any changes you want me to make and I'll also need to rewrite/squash the commits.

Source-Repo: https://github.com/servo/servo
Source-Revision: b1d8eff467d3c324e0cc729b06983931000c2680
2016-10-08 15:40:47 -05:00
Corey Farwell
7a3f1074bb servo: Merge #13652 - Fix capitalization for enum variants (from frewsxcv:variant-naming); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 3768ea2cc735a90e22d716d94100305382d17f1b
2016-10-08 14:55:24 -05:00
Bryan Gilbert
d555d3411d servo: Merge #13281 - Update basic auth cache to key off of origin instead of url (from gilbertw1:basic-auth-cache-clean); r=jdm
This pull request's primary purpose is to store basic auth credentials based on the url origin instead of the entire url. This fixes an issue where servo continuously prompts the user for credentials any time a basic auth secured resource is requested even though the user has already entered auth credentials for a different resource from the same origin.

The test associated with this PR hides image redirects behind a python handler that requires basic authentication. The reference page loads two images by directly specifying the image to load, while the test page loads the two images using the basic auth redirect handler with only the first image tag providing auth credentials.

I'd like to point a few specific items for review:
* url::Origin does not derive ```Hash```, so I am using ```ascii_serialization``` as the cache key. This seems like a stable enough representation.
* I've updated the http loader to store credentials not only on Success responses, but Redirect responses as well. I stumbled on this because nginx was redirecting 'test' -> 'test/' in my testing, and other browsers were storing the credentials on the redirect response vs. prompting for credentials a second time.
* In the test I'm using a timeout to load the second image (without authentication), otherwise the order that the images were loaded was unpredictable.

---
<!-- 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 related to these changes
- [x] These changes fix #12095  (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

Source-Repo: https://github.com/servo/servo
Source-Revision: e5b998791749819540c1c7a59d07058c8978978b
2016-09-16 11:05:52 -05:00
UK992
a6ebcb8483 servo: Merge #13205 - Tidy: Fix ordering use statements with braces (from UK992:tidy-sort); r=Wafflespeanut
This hack fixes https://github.com/servo/servo/issues/7412 and matches behavior with rustfmt.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3117787fd2a8b7748cfde1e9b8c5be3c00f2c599
2016-09-08 22:19:19 -05:00
Anthony Ramine
6bb66d30be servo: Merge #12828 - Update serde to 0.8 (fixes #12659) (from nox:serde); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 9abe9e450b54ef9151bbee1aa0bd2dedb685fa7a
2016-08-12 12:23:10 -05:00
Zhen Zhang
e8917cb354 servo: Merge #12684 - Add cancellability to file manager load and related refactoring (from izgzhen:cancel-file-manager); r=Manishearth
Fixes #12589.

r? @Manishearth

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #12589
- [x] There are tests for these changes OR

Source-Repo: https://github.com/servo/servo
Source-Revision: b2f69f363574d5dea3cb96d4ef00c1d4e56bdd63
2016-08-02 16:57:46 -05:00
ddh
8dd5ee7bbc servo: Merge #12502 - Added devtools support to fetch for XHR (from avadacatavra:devtools); r=jdm
<!-- Please describe your changes on the following line: -->

Added devtools support for fetch for XHR, but devtools can't show the request in the XHR tab. I've attached a picture of an XHR request in devtools.

<img width="694" alt="screenshot 2016-07-19 11 07 55" src="https://cloud.githubusercontent.com/assets/11877868/16944480/210b0e8a-4da1-11e6-8288-48005ede33f6.png">

---
<!-- 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 #11774  (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because I don't know how to automate devtools testing for this

<!-- 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: b5fe7db8b451f86777fb5c8d1f086319be8170c2
2016-07-29 11:44:20 -05:00
Anthony Ramine
c5e70ccc97 servo: Merge #12612 - Remove use of util::opts from net crate (from nox:die-opts-die); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: d8991496c6ddcce3c93ba36d36619a3200626c1f
2016-07-27 03:31:03 -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
Aneesh Agrawal
b5ffcd7dcc servo: Merge #12464 - Remove fn start_sending_sniffed (from aneeshusa:cleanup-start-sending-sniffed); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->

This function was not used, but more importantly encodes the bad
practice of a raw `.unwrap()` and therefore should not be used.

---
<!-- 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 reference #12462 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because they are a cleanup

<!-- 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: 90f1e53fd25dff25d18e9755c5cd1026aa4b21ca
2016-07-15 13:22:49 -07:00
Zhen Zhang
cecf692829 servo: Merge #12440 - Put Blob URL online (from izgzhen:blob-online); r=Manishearth
This PR connects the resource requests with file manager thread, including:

+ `script_thread` load request
+ `image_cache_thread` load request
+ XHR load request (the responding part code yet not implemented due to unfamiliarity with fetch standard, but the infra is here)

One notable change is the introduction of "long-live validity", to handle the case specified in WPT test FileAPI/blob/Blob-XHR-revoke.html.

r? @Manishearth

<!-- 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 fix #10539
- [x] There are tests for these changes

<!-- 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: 0e5893dc0d66faaca1c16101aa1f04a6cfb0b9c1
2016-07-15 06:39:23 -07:00
Corey Farwell
a8fa1bc48e servo: Merge #12190 - Minor MIME renaming and aliasing cleanup (from frewsxcv:mime-renaming); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 194fb3e199922ef0e1ce7943036800ecac5bbfe3
2016-07-03 11:07:12 -07:00
Corey Farwell
335e26946e servo: Merge #12178 - Refactor util::prefs operations to be methods on static struct (from frewsxcv:prefs); r=emilio
<!-- 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: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because _____

<!-- 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: b0a8ce5341f5148e36523fee0b0fcbc2684c0a68
2016-07-03 08:19:04 -07:00
Josh Matthews
13595b1154 servo: Merge #11932 - Print out useful SSL-related information on SSL error page (from jdm:servoorg-cert); r=asajeffrey
Make certificate error pages more useful. Attempt to identify known cases where upgrading OpenSSL would be useful.

<img width="553" alt="screen shot 2016-06-29 at 12 29 30 pm" src="https://cloud.githubusercontent.com/assets/27658/16460435/4d07d5e2-3df5-11e6-94ab-cf061c0e64cc.png">

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

Source-Repo: https://github.com/servo/servo
Source-Revision: 305eda66dd732ffcc4127c8d5b948d07702cb1c7
2016-06-29 16:47:57 -05:00
Dan Robertson
d6c8ce05ba servo: Merge #10826 - Add webdriver commands for (Get|Add)Cookie (from danlrobertson:cookies); r=asajeffrey
Add the webdriver commands for GetCookie and AddCookie. In addition the basic messages for sending cookie data back and forth from the resource thread needed to be created and the handlers for those messages were created as well.

Do we plan to have some sort of test suite for the webdriver at some point? At this point I primarily test my PRs with basic shell scripts with a lot of `curl` and `jq`.

Source-Repo: https://github.com/servo/servo
Source-Revision: 054bb381e94b82fad4e502bc0f3229f39195c713
2016-06-26 03:19:14 -05:00
Sagar Muchhal
22450cc083 servo: Merge #11544 - Implement private browsing for mozbrowser (from jdm:privatebrowsing); r=asajeffrey
<!-- Please describe your changes on the following line: -->
Support the `mozprivatebrowsing` attribute on mozbrowser iframes. This separates the non-private and private sessions in terms of cookies, HSTS lists, cached HTTP credentials, HTTP connection pools, and web storage. The private session is shared between all private mozbrowsers, and lasts until shutdown.

---
<!-- 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] There are tests for these changes

<!-- 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: 6166d8e74ffae4878709ce45221d3a9d31258534
2016-06-20 14:32:17 -05:00
Zhen Zhang
22c826316d servo: Merge #11717 - Add filepicker (from izgzhen:filepicker); r=Manishearth
Add filepicker

Add file picker based on tinyfiledialog to the file manager implementation.

Changes:
- [x] Add the picker invocation code
- [x] Rewrite unit test to accommodate the change
- [x] Patch up `htmlinputelement` to make things work

<!-- 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 related to #11131.

<!-- Either: -->
- [x] There are tests for these changes OR

<!-- 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: 0cfae3a3e756c5719b5ab58dde9d0eacc7f197be
2016-06-14 07:27:47 -05:00
Manish Goregaokar
01735eb080 servo: Merge #11556 - Make fetch happen (from Manishearth:make-fetch-happen); r=jdm
<!-- Please describe your changes on the following line: -->
Moves XHR over to the fetch backend.

Previous PR: https://github.com/servo/servo/pull/114

---
<!-- 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
- [ ] `./mach test-tidy` does not report any errors (Will fix later)

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- 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: 0c11e8340b26aa86faf9ea40aae253392b338ba3
2016-06-11 19:30:28 -05:00
Abelardo E. Mendoza
8e11795849 servo: Merge #11497 - send a reply when thread is done exiting (from ab22:11467-resource-threads-race-with-shutdown-to-write-out-data); r=Ms2ger
<!-- 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 fix #11467

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because: in this case if code compiles then it's good enough.

<!-- 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: 351b851e21ab34f30280b506e48c2d61aa115f1a
2016-06-01 06:46:58 -05:00
Anthony Ramine
b589b04372 servo: Merge #11413 - Support content blocking (from nox:content-blocker); r=nox+jdm+Ms2ger
This is @jdm's rebased work from https://github.com/servo/servo/issues/9749#issuecomment-211115746 with a small addition with regard to cross-origin blocking. Mainly opening this for review and for further discussions.

Source-Repo: https://github.com/servo/servo
Source-Revision: e63ded6d720174699ee45e87f6be01335f2feebd
2016-05-30 06:39:36 -05:00
Josh Matthews
5f71922341 servo: Merge #11472 - Report blank lines that follow an open brace (from jdm:wip); r=mbrubeck
This automates something that I find myself frequently commenting on in PRs.

---
<!-- 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] There are tests for these changes OR

<!-- 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: 3ec20d9cf517c67f4d280e8958cc58c4c2b4fbb2
2016-05-27 18:14:25 -05:00
Cullen Rhodes
44dc9f68ea servo: Merge #11329 - Report use statements that use {} with only one entry (from c-rhodes:11320); r=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 --faster` does not report any errors
- [X ] These changes fix #11320  (github issue number if applicable).

Either:
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because _____

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: 2f9796fa696e9514280777398467696dd4f004b3
2016-05-27 07:11:17 -05:00
Rahul Sharma
3186ec21b5 servo: Merge #10498 - Adding default config directories (from creativcoder:default-profile-dir); r=SimonSapin
Fixes #10338

Source-Repo: https://github.com/servo/servo
Source-Revision: affc110fa0aac70d2e676d75bd5e54875ad8d941
2016-05-25 02:52:10 -05:00
Zhen Zhang
3287476575 servo: Merge #11225 - Implement file related functionalities in htmlinputelement and related (from izgzhen:patch-input-element-file); r=Manishearth
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy --faster` does not report any errors
- [x] These changes is related to #11131
- [x] These changes do not require tests because it is a partial implementation

1. Improve the `filemanager_thread` by adding type string and create `SelectedFile`
2. Fill several gaps in `htmlinputelement` implementation related to file type
3. Improve the `File` interface to accommodate the above changes
4. Integrate changes introduced by PR #11189

Source-Repo: https://github.com/servo/servo
Source-Revision: 7cea4eb01ce3b84ca276ca417d933fb122005b51
2016-05-23 01:10:46 -07:00
Zhen Zhang
87ef24d5ce servo: Merge #11189 - Refactor resource thread code (from izgzhen:refactor-resource-thread); r=nox
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors

- [x] These changes do not require tests because it is refactoring

Source-Repo: https://github.com/servo/servo
Source-Revision: bcea0ada27de694cd0c465d04fd35eba70503d62
2016-05-19 19:15:08 -07:00
Josh Matthews
45497d1279 servo: Merge #11239 - Add timeline markers for HTTP requests, JS evaluation, and HTML parsing (from jdm:time-profile); r=nox
Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [ ] `./mach build -d` does not report any errors (didn't try to compile past a rustc upgrade on airplane wifi)
- [X] `./mach test-tidy --faster` does not report any errors
- [X] These changes fix #11218 (github issue number if applicable).

Either:
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because we don't have testing infrastructure for profiling.

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: 96a86bd952c4c0e41d6164fbd16244ea4420106a
2016-05-18 06:07:10 -07:00
Matt Brubeck
0a643f8f57 servo: Merge #11115 - Use openssl-verify to check certificate + hostname (from mbrubeck:openssl-verify); r=jdm
Fixes #4954.  r? @jdm

This is based on hyperium/hyper#472, though it doesn't re-use that code directly because Servo configures its own OpenSSL context.

Source-Repo: https://github.com/servo/servo
Source-Revision: 40be84df26ce3ce80851e751374154c015506921
2016-05-10 15:00:48 -07:00
Daniel
2ab4a6a072 servo: Merge #10800 - read cookie_jar, hsts_list, auth_cache, and local_data from file if profile_dir option is present (from DDEFISHER:read_profile_dir_from_file); r=frewsxcv
Last step in Persistent sessions student project

"check for the presence of the profile directory command-line option in the ResourceThread constructor and look for files that will contain serialized versions of the previous steps. If they exist, populate the appropriate fields with deserialized versions of the file contents."

Also populated local_data in StorageManager constructor

I am not sure if the handling of decoding and encoding the Option Tm type was done in the cleanest way here.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7a582b4bf9bdaeff34c8c813a92f35226ced72f5
2016-04-25 18:10:40 -07:00
Simon Sapin
b7019c2535 servo: Merge #9840 - Update to rust-url 1.0 (from servo:url-1.0); r=asajeffrey
**Do not merge yet:** rust-url 1.0 is not published yet and may still get breaking changes. The goal of this PR for now is to demonstrate API usage.

Depends on:

* <s>https://github.com/servo/rust-url/pull/176</s>
* <s>https://github.com/alexcrichton/cookie-rs/pull/42</s>
* <s>https://github.com/hyperium/hyper/pull/740</s>
* https://github.com/cyderize/rust-websocket/pull/70
* https://github.com/jgraham/webdriver-rust/pull/28

Source-Repo: https://github.com/servo/servo
Source-Revision: 84ab7e9fe8f4a6528995eff3eb6e814cb724c364
2016-04-23 11:28:31 -07:00
Daniel
740ca759d9 servo: Merge #10661 - write cookie_jar, hsts_list, auth_cache to file if profile_dir option is present (from DDEFISHER:master); r=jdm
For Persistent sessions student project

"if the profile directory command-line option is present when the ResourceThread is instructed to exit, serialize the data contained in cookie_storage, hsts_list, and the new HTTP authorization cache, and write the serialized data in separate files inside the profile directory."

and

"perform the same serialization on shutdown for local_data in storage_thread.rs, which represents the LocalStorage API."

Source-Repo: https://github.com/servo/servo
Source-Revision: 75d99eec0ff02718f1ec8d1b6fd58fff7c2d6fb3
2016-04-21 03:21:56 +05:00
Josh Matthews
334df4c358 servo: Merge #9942 - Moving the error handling out of network loader (from jdm:load_error); r=ms2ger
Rebase of #8851. Fixes #8678. Fixes #9944.

Source-Repo: https://github.com/servo/servo
Source-Revision: f051028ee8cd93168b1abe3742929d43d19cb002
2016-04-20 21:49:22 +05:00
Corey Farwell
2a0843fd97 servo: Merge #10725 - A few minor net component cleanups (from frewsxcv:net-cleanup); r=KiChjang
Source-Repo: https://github.com/servo/servo
Source-Revision: bebc1dc859192d7fdcfc53e550cbf51343f4375a
2016-04-20 05:00:59 +05:00
Corey Farwell
ca1aaad0a2 servo: Merge #10672 - Improvements to network preferences, HTTP redirection limiting (from frewsxcv:net-network); r=KiChjang
Source-Repo: https://github.com/servo/servo
Source-Revision: 80662f1e4e3054415700f1d82896bd76626b022d
2016-04-19 03:36:25 +05:00
Corey Farwell
b95b1cd50e servo: Merge #10640 - Cleanup code regarding mimesniff 'apache bug' (from frewsxcv:apache-flag); r=KiChjang
Source-Repo: https://github.com/servo/servo
Source-Revision: 6edcad206d0888da1ba845e80d020c488c747131
2016-04-18 23:46:12 +05:00