Commit graph

8728 commits

Author SHA1 Message Date
Malisa Smith
7dccf09ff6 added test and assertion that profiler statistics data must be sorted 2016-07-07 12:59:16 -07:00
Jeena Lee
d47b769cf7 Add test for Profiler::get_statistics, and remove empty space around Profiler::get_statistics.
Profiler::get_statistics calculates mean, median, min, and max for a given vector of data. This commit adds a test for the calculated statistics.
2016-07-07 11:00:56 -07:00
Malisa Smith
6230911330 separate profiler statistics calculation to its own function 2016-07-07 10:18:10 -07:00
bors-servo
061cf054e7 Auto merge of #12260 - szeged:gattserverfunctions, r=jdm
Timeout for GATTServer's connect, disconnect methods.

<!-- Please describe your changes on the following line: -->
Added 30 seconds maximum timeout as specified in the bluetooth 4.2 https://www.bluetooth.org/DocMan/handlers/DownloadDoc.ashx?doc_id=286439 (Vol. 3, page 480).
With this the existing `bluetooth_device_disconnect.html` test will work correctly.
It will not show the `connected:true` message, before the connection established, and will not show the `connected: false` message, before not disconnected from the GATT server.

---
<!-- 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, there are no Web Bluetooth test API implementation yet.

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12260)
<!-- Reviewable:end -->
2016-07-05 09:02:25 -07:00
bors-servo
87c7772527 Auto merge of #12258 - izgzhen:remove-data-slice, r=Manishearth
Remove DataSlice, fix #12249

r? @Manishearth

---
<!-- 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 #12249

<!-- Either: -->
- [ ] 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. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12258)
<!-- Reviewable:end -->
2016-07-05 06:24:46 -07:00
Zhen Zhang
ab14777312 Remove DataSlice, fix #12249 2016-07-05 17:51:53 +08:00
zakorgy
441280989f Timeout for GATTServer's connect, disconnect methods. 2016-07-05 11:23:41 +02:00
bors-servo
bb916bb38b Auto merge of #12256 - nox:die-util-die, r=Ms2ger
Move some stuff from util to style

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12256)
<!-- Reviewable:end -->
2016-07-05 02:04:42 -07:00
Anthony Ramine
8ecb5962f3 Move util::str to style 2016-07-05 10:43:54 +02:00
Anthony Ramine
744b94346a Move util::tid to style 2016-07-05 10:36:38 +02:00
bors-servo
181261004d Auto merge of #12216 - servo:msg, r=jdm
Move some types from msg to script_traits.

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12216)
<!-- Reviewable:end -->
2016-07-05 00:58:51 -07:00
bors-servo
e3eeb643f0 Auto merge of #12237 - hgallagher1993:servo, r=jdm
Avoid many uses of unwrap in font_cache_thread.rs

Replaced `result.send(...blah...).unwrap()` with `let _ = result.send(...blah...);` in `components/gfx/font_cache_thread.rs`

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #12188

- [X] These changes do not require tests because @jdm said if it compiles it's good enough

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12237)
<!-- Reviewable:end -->
2016-07-05 00:06:44 -07:00
Ms2ger
77caf83098 Move webdriver_msg to script_traits. 2016-07-05 09:02:46 +02:00
Ms2ger
b8fe9e9637 Move WindowSizeData to script_traits. 2016-07-05 09:02:43 +02:00
Ms2ger
54bb138ddc Move WebDriverCommandMsg to script_traits. 2016-07-05 09:02:15 +02:00
Hugh Gallagher
267f96e731 avoid many uses of unwrap in font_cache_thread.rs 2016-07-05 07:59:25 +01:00
bors-servo
61491447e2 Auto merge of #12241 - jdm:multiple-stylesheets, r=notriddle
Don't load stylesheets in documents without browsing contexts

Per https://github.com/whatwg/html/issues/1495, this fixes the most commonly reported panic in nightlies by making us match what other browsers do.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #12047 (github issue number if applicable).
- [X] There are tests for these changes OR

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12241)
<!-- Reviewable:end -->
2016-07-04 22:09:41 -07:00
bors-servo
e21b47c2cc Auto merge of #12243 - TravisDean:else-brace-check, r=ConnorGBrewster
Add style check and test for else braces

<!-- Please describe your changes on the following line: -->
Added a regex check to enforce project style guidelines. Added unit check. Catches:
```
}
else {
```
when it should be
`} else {`

---
<!-- 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 (no core files changed)
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #12234 (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. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12243)
<!-- Reviewable:end -->
2016-07-04 16:52:19 -07:00
Travis Dean
6642358217 Add style check, test, and code fixes for an else brace check. 2016-07-04 18:38:13 -04:00
bors-servo
f9e058d5e7 Auto merge of #12240 - perlun:fix/use-if-let, r=ConnorGBrewster
Use if let rather than match

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #12236

- [ ] There are tests for these changes OR
- [X] These changes do not require tests because @jdm said so. 😉 Trivial change so as long as it compiles, "ship it".

Fixes #12236.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12240)
<!-- Reviewable:end -->
2016-07-04 13:53:05 -07:00
Per Lundberg
9a6bd6c996 Use if let rather than match
Fixes #12236.
2016-07-04 23:38:18 +03:00
bors-servo
3b0dadda52 Auto merge of #12224 - nox:die-util-die, r=Ms2ger
Remove some stuff from util

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12224)
<!-- Reviewable:end -->
2016-07-04 12:57:00 -07:00
Anthony Ramine
bf34fdde1f Move util::workqueue to style 2016-07-04 21:56:09 +02:00
bors-servo
80cb0cf821 Auto merge of #11872 - eddyb:back-to-roots, r=Ms2ger
Replace return_address usage for rooting with stack guards and convenience macros.

The existing `Rooted` and `RootedVec` users were migrated the the following two macros:
```rust
let x = Rooted::new(cx, value);
// Was changed to:
rooted!(in(cx) let x = value);
// Which expands to:
let mut __root = Rooted::new_unrooted(value);
let x = RootedGuard::new(cx, &mut __root);
```
```rust
let mut v = RootedVec::new();
v.extend(iterator);
// Was changed to:
rooted_vec!(let v <- iterator);
// Which expands to:
let mut __root = RootableVec::new();
let v = RootedVec::new(&mut __root, iterator);
```

The `rooted!` macro depends on servo/rust-mozjs#272.
These APIs based on two types, a container to be rooted and a rooting guard, allow implementing both `Rooted`-style rooting and `Traceable`-based rooting in stable Rust, without abusing `return_address`.

Such macros may have been tried before, but in 1.9 their hygiene is broken, they work only since 1.10.

Sadly, `Rooted` is a FFI type and completely exposed, so I cannot prevent anyone from creating their own, although all fields but the value get overwritten by `RootedGuard::new` anyway.
`RootableVec` OTOH is *guaranteed* to be empty when not rooted, which makes it harmless AFAICT.

By fixing rust-lang/rust#34227, this PR enables Servo to build with `-Zorbit`.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix rust-lang/rust#34227
- [x] These changes do not require tests because they are not functional changes

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11872)
<!-- Reviewable:end -->
2016-07-04 11:03:35 -07:00
Eduard Burtescu
b79a7d468e Use a stack guard and a macro for RootedVec instead of return_address. 2016-07-04 20:59:06 +03:00
Eduard Burtescu
0db1faf876 Switch to using the new rooted!/RootedGuard API for rooting. 2016-07-04 20:59:01 +03:00
bors-servo
36974f0746 Auto merge of #11875 - izgzhen:file-manager-backend, r=Manishearth
Integration and improvements of File API backends

Basically three major changes:

1. More complete origin check in `FileManagerThreadMsg`
2. Add reference counting logic to file manage store and script API
3. Integrate the support of slicing

r? @Manishearth

---
<!-- 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
- [ ] 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. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11875)
<!-- Reviewable:end -->
2016-07-04 09:15:23 -07:00
Josh Matthews
29d3cbf34a Avoid loading stylesheets in inactive documents. 2016-07-04 11:25:17 -04:00
Zhen Zhang
14d68968ed Integration and improvements of File API backends
1. More complete origin check in FileManagerThreadMsg
2. Add reference counting logic to file manage store and script API
3. Integrate the support of slicing
2016-07-04 23:02:03 +08:00
bors-servo
1e2b9773d6 Auto merge of #12218 - JRaspass:master, r=jdm
WebDriver: Fix POST /session/:session_id/elements to return multiple

Very unfamiliar with rust, but I'm trying to test servo with my Perl WebDriver module ( https://metacpan.org/pod/WebDriver::Tiny ) and fix any issues I come across. I hope to make my next commit implement find with the location strategy of link text.

---
<!-- 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 I don't believe there are WebDriver tests, I'd love to be wrong and pointed in the right direction though :-P

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12218)
<!-- Reviewable:end -->
2016-07-04 07:57:36 -07:00
Anthony Ramine
b6ca1b9b3b Remove util::debug_utils 2016-07-04 16:48:16 +02:00
Anthony Ramine
e77efb93c1 Move util::vec::byte_swap to canvas_traits 2016-07-04 16:48:15 +02:00
Anthony Ramine
a5b524d559 Move util::vec::ForgetfulSink to style::sink and simplify it 2016-07-04 16:48:14 +02:00
James Raspass
a2e3faa9e6 WebDriver: Fix POST /session/:session_id/elements to return multiple 2016-07-04 15:11:01 +01:00
Anthony Ramine
51ff916e09 Move util::print_tree to gfx_traits 2016-07-04 15:47:06 +02:00
Anthony Ramine
345eee92e8 Skip the root node in querySelectorAll
This accounts for https://github.com/whatwg/dom/issues/263.
2016-07-04 14:52:34 +02:00
bors-servo
110fd68610 Auto merge of #12196 - izgzhen:emit-change-file-select, r=Manishearth
Emit change event when files are selected

<!-- Please describe your changes on the following line: -->

r? @Manishearth

As specified in step 6 of [activation behaviour](https://html.spec.whatwg.org/multipage/forms.html#file-upload-state-(type=file)).

---
<!-- 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

<!-- Either: -->
- [ ] 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. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12196)
<!-- Reviewable:end -->
2016-07-03 20:16:39 -07:00
bors-servo
c8b048e368 Auto merge of #12050 - johannhof:brotli, r=jdm
Switch to a faster Brotli crate

<!-- 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 #11933.

<!-- Either: -->
- [x] These changes do not require tests (I hope) because no new behavior was introduced

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12050)
<!-- Reviewable:end -->
2016-07-03 18:32:15 -07:00
bors-servo
212aa4437e Auto merge of #12185 - emilio:dont-reexpire-animations, r=nox
style: Do not re-expire animations.

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

<!-- Either: -->
- [x] These changes do not have tests because they depend on weird timing conditions.

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

If we're restyling a page with animations and layout takes too long, we
might still have the expired animations from the last restyle, without these
being cleared out by layout on `tick_animations`.

Unfortunately it's hard (near to impossible?) to make a reduced test case for
this, since it heavily depends on the speed of the build and conditions that
only happen under heavy loads.

Mainly, it depends on how accurately the `TickAllAnimations` message is sent
from the constellation.

Thus, we can't just re-expire an animation, and we should re-check for it as a
previous animation.

Fixes #12171

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12185)
<!-- Reviewable:end -->
2016-07-03 12:51:15 -07:00
Emilio Cobos Álvarez
62345ae14d
style: Do not re-expire animations.
If we're restyling a page with animations and layout takes too long, we
might still have the expired animations from the last restyle, without these
being cleared out by layout on `tick_animations`.

Unfortunately it's hard (near to impossible?) to make a reduced test case for
this, since it heavily depends on the speed of the build and conditions that
only happen under heavy loads.

Mainly, it depends on how accurately the `TickAllAnimations` message is sent
from the constellation.

Thus, we can't just re-expire an animation, and we should re-check for it as a
previous animation.

Fixes #12171
2016-07-03 12:19:04 -07:00
bors-servo
b832f2b79f Auto merge of #12195 - izgzhen:fix-url-blob, r=Manishearth
Fix Blob URL origin when scheme is file

<!-- Please describe your changes on the following line: -->

r? @Manishearth

---
<!-- 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

<!-- Either: -->
- [x] These changes do not require tests because it needs future integration

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12195)
<!-- Reviewable:end -->
2016-07-03 11:59:26 -07:00
bors-servo
194fb3e199 Auto merge of #12190 - frewsxcv:mime-renaming, r=jdm
Minor MIME renaming and aliasing cleanup.

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12190)
<!-- Reviewable:end -->
2016-07-03 11:07:12 -07:00
Zhen Zhang
573610bb4f Fix Blob URL origin when scheme is file 2016-07-03 23:34:21 +08:00
Zhen Zhang
411b1b5ffa Emit change event when files are selected 2016-07-03 23:21:45 +08:00
bors-servo
b0a8ce5341 Auto merge of #12178 - frewsxcv:prefs, r=emilio
Refactor `util::prefs` operations to be methods on static struct.

<!-- 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. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12178)
<!-- Reviewable:end -->
2016-07-03 08:19:04 -07:00
bors-servo
a9c58c99fb Auto merge of #12175 - andrebeat:fix-handle-cmd-unwrap, r=ConnorGBrewster
Remove unnecessary uses of unwrap in ImageCache::handle_cmd

<!-- Please describe your changes on the following line: -->

Remove unnecessary uses of unwrap in `ImageCache::handle_cmd`.

---
<!-- 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 #12173

<!-- Either: -->
- [X] These changes do not require tests

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12175)
<!-- Reviewable:end -->
2016-07-03 07:26:53 -07:00
bors-servo
ed514d7934 Auto merge of #12159 - notriddle:fix_interpolate_cleanup_regression, r=emilio
Do not crash on partial calc interpolation

It should always be possible to interpolate between CalcLengthOrPercentage points.
____

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #12151 (github issue number if applicable).
- [ ] There are tests for these changes  (*I STILL NEED TO WRITE TESTS*)

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12159)
<!-- Reviewable:end -->
2016-07-03 06:35:01 -07:00
Corey Farwell
6c02a576cf Rename MIMEClassifier to match Rust acronym naming conventions.
e.g. `std::net::TcpStream`
2016-07-02 17:12:46 -04:00
Corey Farwell
749fe986aa Create type alias for MIME type. 2016-07-02 17:12:46 -04:00
Corey Farwell
d9c9d4ab36 Only allocate a HashMap if we need to. 2016-07-02 16:58:06 -04:00