bors-servo
d89e4f7991
Auto merge of #7179 - connorimes:add-heartbeats, r=larsbergstrom
...
Integrate with simple Heartbeats
This PR adds Heartbeats capability to servo. Heartbeats are used for detailed performance and power/energy profiling. We will add the power/energy readings in the future.
New dependencies are introduced which need in-depth reviews. I'm the only one who has had eyes on any of this, and I have limited resources for testing cross-platform compatibility.
* https://github.com/libheartbeats/heartbeats-simple - provides native C libraries from a shared code base:
* hbs[-static] - performance monitoring
* hbs-acc[-static] - performance with accuracy monitoring
* hbs-pow[-static] - performance with power/energy monitoring (the one we're using)
* hbs-acc-pow[-static] - performance with accuracy and power/energy monitoring
* https://github.com/connorimes/heartbeats-simple-sys provides rust wrappers for the native C libraries above - one crate for each + a common crate. These link with the *-static versions of the heartbeats libraries.
* https://github.com/connorimes/heartbeats-simple-rust provides rust abstractions over the -sys crates above - one crate for each.
The new `heartbeats` module in the `profile` crate looks for environment variables telling it to use heartbeats for each ProfilerCategory and where to put log files. (Of course, if somebody knows how to iterate over the enum instead of hardcoding each one, that would be fantastic.) If the environment variables aren't set for particular categories, heartbeats aren't created or used.
An interface change is made in the `profile_traits` crate to pass both the start and end time in a `ProfilerMsg` instead of just the elapsed time. Later we will add energy readings as well.
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7179 )
<!-- Reviewable:end -->
2015-08-22 17:23:50 -06:00
bors-servo
7945c174a6
Auto merge of #7291 - pcwalton:has-layer-flag, r=mbrubeck
...
layout: Centralize the logic that determines whether fragments get layers in the fragment.
…so that it can be activated when we're forcing
the creation of extra layers due to positioned descendants that
themselves have layers.
The newly failing tests were tests that accidentally passed due to
incorrect stacking order.
Closes #7281 .
r? @mbrubeck
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7291 )
<!-- Reviewable:end -->
2015-08-22 15:56:05 -06:00
Patrick Walton
ec1c90df41
layout: Centralize the logic that determines whether fragments get
...
layers in the fragment, so that it can be activated when we're forcing
the creation of extra layers due to positioned descendants that
themselves have layers.
The newly failing tests were tests that accidentally passed due to
incorrect stacking order.
Closes #7281 .
2015-08-22 12:41:33 -07:00
Patrick Walton
fed904fff5
layout: Make position: relative
with non-auto z-index
create a
...
stacking context.
Improves imgur.com and Fast Company articles.
2015-08-22 12:22:33 -07:00
bors-servo
60140ad294
Auto merge of #7315 - frewsxcv:python-is, r=SimonSapin
...
Don't use `is` operatory to compare Python strings
`is` checks identity. `==` checks value. I can't think of a reason why
we would want the former in these scenarios.
More info:
* http://stackoverflow.com/a/1504742
* https://docs.python.org/2/reference/expressions.html#is
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7315 )
<!-- Reviewable:end -->
2015-08-22 09:26:34 -06:00
Corey Farwell
5bf262770f
Don't use is
operatory to compare Python strings
...
`is` checks identity. `==` checks value. I can't think of a reason why
we would want the former in these scenarios.
More info:
* http://stackoverflow.com/a/1504742
* https://docs.python.org/2/reference/expressions.html#is
2015-08-22 10:22:47 -04:00
Paul Rouget
0209bf1199
Update glutin window port after glutin update
2015-08-22 12:12:26 +02:00
Connor Imes
054cbf2dce
Integrate with simple Heartbeats
2015-08-22 07:45:20 +08:00
Patrick Walton
930dfbb7ad
layout: Fix merge fallout.
2015-08-21 16:08:13 -07:00
Simon Sapin
2fa2a3b5a9
Sort imports.
2015-08-21 15:59:20 -07:00
Simon Sapin
133d7c14a8
Make display: flex
experimental.
2015-08-21 15:59:20 -07:00
Kyle Zentner
0e18f645f4
Implement FlexFlow::assign_block_size().
2015-08-21 15:59:19 -07:00
Kyle Zentner
e95c15816d
Implement FlexFlow::assign_inline_sizes().
2015-08-21 15:59:18 -07:00
Kyle Zentner
0488a36862
Create FlexFlow's for 'display: flex' nodes.
...
This commit doesn't implement any flexbox behavior at all.
It just constructs FlexFlow's, which act just like the BlockFlow from
which they "inherit."
2015-08-21 15:59:18 -07:00
Kyle Zentner
45b7ee9bdb
Parse flex-direction CSS property.
2015-08-21 15:59:16 -07:00
bors-servo
1f9778fad9
Auto merge of #7237 - servo:arc-flow, r=pcwalton
...
Replace FlowRef with Arc<Flow>, now that Arc supports DST.
… and `WeakFlowRef` with `Weak<Flow>`.
r? @pcwalton
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7237 )
<!-- Reviewable:end -->
2015-08-21 15:29:35 -06:00
Simon Sapin
21d69314d4
Don’t mark flow_ref::deref_mut as unsafe.
...
See discussion in https://github.com/servo/servo/pull/7237
2015-08-21 21:16:25 +02:00
Corey Farwell
2ab43bea5d
Utilize Python context managers for opening/closing files
...
In some of these cases, files were not being closed
2015-08-21 11:15:17 -04:00
Corey Farwell
03f257697d
Cleanup Element iteration in dom/htmlcollection.rs
2015-08-20 16:43:45 -04:00
Corey Farwell
e2c700e6ad
Work around uses of #[allow(unrooted_must_root)]
...
Using this directive could cause rooting errors to be silently ignored,
so we should avoid it as much as possible
2015-08-20 13:18:05 -04:00
bors-servo
d2a8c278ea
Auto merge of #7254 - frewsxcv:own-property-keys, r=Ms2ger
...
Initial implementation of ownPropertyKeys proxy handler
Generates `SupportedPropertyNames` on DOM structs that should implement
it. Most of them are unimplemented now (which can be implemented in
later PRs), with the exception of `HTMLCollection`. Also added a couple
relevant WPT tests.
Closes #6390
Closes #2215
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7254 )
<!-- Reviewable:end -->
2015-08-20 10:00:44 -06:00
Corey Farwell
b11be4d253
Initial implementation of ownPropertyKeys proxy handler
...
Generates `SupportedPropertyNames` on DOM structs that should implement
it. Most of them are unimplemented now (which can be implemented in
later PRs), with the exception of `HTMLCollection`. Also added a couple
relevant WPT tests.
Closes #6390
Closes #2215
2015-08-20 11:58:42 -04:00
Simon Sapin
649250130b
Replace FlowRef with Arc<Flow>, now that Arc supports DST.
...
… and WeakFlowRef with Weak<Flow>.
2015-08-20 16:49:48 +02:00
Simon Sapin
2d22aa8e7e
Replace the unsound impl DerefMut for FlowRef
with an unsafe function.
...
See #6503 .
2015-08-20 16:24:26 +02:00
bors-servo
0466766b2c
Auto merge of #7238 - Wafflespeanut:workerglobal, r=Ms2ger
...
Improved field names for devtools-related channels...
(for #6924 ) - I took this because the confusion was actually caused by me while working on #6829
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7238 )
<!-- Reviewable:end -->
2015-08-20 08:17:30 -06:00
Ravi Shankar
46195f29df
Improved field names for devtools-related channels; r=Ms2ger
2015-08-20 19:38:23 +05:30
bors-servo
a5fbb2f2a6
Auto merge of #7265 - tafia:tidy-use, r=Ms2ger
...
Add alphabetical order check for use statements
close #7112
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7265 )
<!-- Reviewable:end -->
2015-08-20 07:43:56 -06:00
bors-servo
c98c1651a3
Auto merge of #7289 - tgkokk:perspective-transform-origin-combine, r=dzbarsky
...
Combine transform-origin, perspective-origin code
First PR, please tell me if anything is wrong/could use improvement.
Fixes #7194 .
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7289 )
<!-- Reviewable:end -->
2015-08-20 07:10:14 -06:00
Johann Tuffe
ec07178b6f
sort all uses
2015-08-20 20:47:12 +08:00
bors-servo
39b7508aa2
Auto merge of #7251 - nox:text-transform-length-change, r=SimonSapin
...
Correctly handle length-changing mappings in text-transform
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7251 )
<!-- Reviewable:end -->
2015-08-20 06:40:33 -06:00
bors-servo
d3c7e31722
Auto merge of #7271 - Ms2ger:xhret, r=nox
...
Remove the unused XMLHttpRequestEventTarget::eventtarget method.
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7271 )
<!-- Reviewable:end -->
2015-08-20 06:01:39 -06:00
Patrick Walton
a516042edb
layout: Don't panic if requestAnimationFrame()
is called before first layout.
...
Closes #7115 .
2015-08-20 13:17:07 +02:00
bors-servo
14b921ee29
Auto merge of #7285 - frewsxcv:bump-mozjs, r=Ms2ger
...
Bump js (rust-mozjs) to the latest commit
I need the constants added in
https://github.com/servo/rust-mozjs/pull/191 for
https://github.com/servo/servo/pull/7254
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7285 )
<!-- Reviewable:end -->
2015-08-20 02:52:40 -06:00
Theodore Kokkoris
f4178cd115
Combine transform-origin, perspective-origin code
...
Fix #7194 .
2015-08-20 09:24:29 +03:00
Patrick Walton
277cbf407e
gfx: Sort layers according to their Z-index value before handing them
...
off to the compositor.
Closes #7166 .
2015-08-19 16:30:44 -07:00
Patrick Walton
4df4d1a1a9
layout: Put iframes that form stacking contexts in the right place.
...
Improves eBay.
Closes #7282 .
2015-08-19 12:08:36 -07:00
bors-servo
5c284a546a
Auto merge of #7280 - pcwalton:style-specified-img-intrinsic-width, r=mbrubeck
...
layout: Take the style-specified width into account when computing the intrinsic inline sizes of images.
Improves Facebook Timeline.
r? @mbrubeck
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7280 )
<!-- Reviewable:end -->
2015-08-19 11:39:33 -06:00
Corey Farwell
911794715d
Bump js (rust-mozjs) to the latest commit
...
I need the constants added in
https://github.com/servo/rust-mozjs/pull/191 for
https://github.com/servo/servo/pull/7254
2015-08-19 12:52:40 -04:00
Ms2ger
f62fbbaed8
Cleanup ActorRegistry::create_shareable.
2015-08-19 14:26:19 +02:00
bors-servo
0234bbe444
Auto merge of #7279 - pcwalton:tile-image-divide-by-zero, r=mbrubeck
...
layout: Avoid a division by zero in `tile_image()`.
Fixes a crash on Facebook Timeline.
r? @mbrubeck
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7279 )
<!-- Reviewable:end -->
2015-08-19 04:41:54 -06:00
Anthony Ramine
bb3d3db333
Correctly handle length-changing mappings in text-transform
2015-08-19 12:05:31 +02:00
bors-servo
195d267e23
Auto merge of #7276 - pcwalton:inline-absolute-hypothetical-clip, r=mbrubeck
...
layout: Make inline absolute hypothetical boxes not clip their contents.
Improves the logo on ebay.com.
r? @mbrubeck
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7276 )
<!-- Reviewable:end -->
2015-08-19 03:54:10 -06:00
bors-servo
30a1339ed1
Auto merge of #7274 - pcwalton:table-minimum-width, r=mbrubeck
...
layout: Make table cells' minimum inline sizes override explicitly specified widths if the latter are too small.
Improves ebay.com.
r? @mbrubeck
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7274 )
<!-- Reviewable:end -->
2015-08-19 03:20:37 -06:00
bors-servo
15b09fc0af
Auto merge of #7272 - wilmoz:EventType, r=Ms2ger
...
Make EventTypeId reflect DOM inheritance hierarchy
https://github.com/servo/servo/issues/7205#issuecomment-132285499
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7272 )
<!-- Reviewable:end -->
2015-08-19 02:47:22 -06:00
bors-servo
70b9922eb0
Auto merge of #7260 - notriddle:issue_7169, r=Ms2ger
...
Navigate to a new page even when there's a fragment.
Closes #7169
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7260 )
<!-- Reviewable:end -->
2015-08-19 01:40:28 -06:00
Patrick Walton
66473625db
layout: Take the style-specified width into account when computing the
...
intrinsic inline sizes of images.
Improves Facebook Timeline.
2015-08-18 18:46:07 -07:00
Patrick Walton
02b15e016d
layout: Avoid a division by zero in tile_image()
.
...
Fixes a crash on Facebook Timeline.
2015-08-18 18:44:50 -07:00
Michael Howell
af31e8ed0f
Navigate to a new page even when there's a fragment.
...
Closes #7169
2015-08-18 17:35:09 -07:00
Patrick Walton
c328c38804
layout: Make inline absolute hypothetical boxes not clip their contents.
...
Improves the logo on ebay.com.
2015-08-18 16:58:18 -07:00
Patrick Walton
9d41841964
layout: Make table cells' minimum inline sizes override explicitly
...
specified widths if the latter are too small.
Improves ebay.com.
2015-08-18 14:38:49 -07:00