Commit graph

102 commits

Author SHA1 Message Date
UK992
93a103ba73 Reorder use statements 2016-09-09 04:55:19 +02:00
Anthony Ramine
7ad51dcd7a Update serde to 0.8 (fixes #12659) 2016-08-12 18:37:27 +02:00
Anthony Ramine
f88302ebf3 Update Rust to 1.12.0-nightly (545a3a94f 2016-08-04) 2016-08-05 14:45:32 +02:00
Glenn Watson
db8c3ef727 Update cargo.lock for wr2, pin ipc-channel. 2016-08-03 10:44:10 +02:00
Eduard Burtescu
3d8eab424c Update Rust to 1.12.0-nightly (9316ae515 2016-07-24) 2016-07-26 19:35:51 +02:00
Alan Jeffrey
62e95c5a61 All our Cargo.toml files should contain an MPL-2.0 license field. 2016-07-14 10:26:34 -05:00
Malisa Smith
1a1d8daede added spaces around - sign 2016-07-07 13:29:58 -07:00
Malisa Smith
854cb5839f added comment to profiler get_statistics function 2016-07-07 13:19:45 -07:00
Malisa Smith
e1092b8b1d simplifying min and max calculation for profiler get_statistics function 2016-07-07 13:08:20 -07:00
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
Anthony Ramine
5a576e873e Move util::time::duration_from_seconds to profile::time 2016-06-29 18:00:24 +02:00
Anthony Ramine
38a79e4506 Update Rust to 1.11.0-nightly (ad7fe6521 2016-06-23)
I also properly bump any dependency related to the serde_macros removal
from webrender_traits
2016-06-27 14:13:44 +02:00
Simon Sapin
ea73c8efac Make it possible to build the style_traits crate with a stable compiler.
Testing this on CI to make sure we don’t regress it is blocked on #11806
2016-06-22 15:40:53 +02:00
Connor Imes
101aa0d030 Update heartbeats-simple to 0.3.0 2016-06-20 11:25:01 -05:00
Rahul Sharma
15a2064c0d implement related sw interface and register method 2016-06-02 04:09:39 +05:30
Patrick Walton
a86f77e36d script: Keep the DOM-side viewport up to date when scrolling happens in
WebRender.

This happens asynchronously, just as it does in non-WebRender mode.

This functionality is a prerequisite for doing proper display-list-based
hit testing in WebRender, since it moves the scroll offsets into Servo
(and, specifically, into the script thread, enabling iframe event
forwarding) instead of keeping them private to WebRender.

Requires servo/webrender_traits#55 and servo/webrender#277.

Partially addresses #11108.
2016-05-31 14:12:51 -07:00
Josh Matthews
3cb8af20c2 Remove empty lines following braces. 2016-05-27 13:32:05 -04:00
Cullen Rhodes
40acd24e8f Report use statements that use {} with only one entry 2016-05-27 10:18:44 +01:00
Rohit Zambre
7591e1327a replacing commas with tabs; changing from CSV to TSV profiling 2016-05-19 15:07:18 -07:00
Josh Matthews
9e8cf19e51 Add timeline markers for HTTP requests, JS evaluation, and HTML parsing. 2016-05-18 08:02:42 -05:00
Anthony Ramine
7bc768f358 Do not use libc in profile on Windows 2016-05-17 01:12:10 +02:00
Anthony Ramine
8eb363528b Fix all Windows warnings 2016-05-16 23:26:12 +02:00
Per Lundberg
2f7ed1d73e Removed unused imports
This fixes #11185.
2016-05-15 22:24:26 +03:00
Matt Brubeck
d560ae79b4 Fix some warnings 2016-05-11 21:03:12 -07:00
Rohit Zambre
ca3084d241 added infrastructure to handle interval and CSV time profiling alongside html-timeline-profiling 2016-05-11 11:27:07 -07:00
Matt Brubeck
c4f9576368 Make --profile-trace-path work without -p 2016-05-10 14:03:10 -07:00
bors-servo
835f443865 Auto merge of #11098 - fitzgen:update-trace-dump, r=jdm
Update `trace-dump.{js,css}` from upstream

Part of making the trace-dump.js code unit testable was moving it out to another
repo. This brings in all the changes made while writing unit tests, and making
the code more unit testable.

Unfortunately, there are a lot of whitespace changes; here is the diff ignoring whitespace: https://pastebin.mozilla.org/8870346

Fixes #10905.

r? @jdm

<!-- 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/11098)
<!-- Reviewable:end -->
2016-05-10 06:34:32 -07:00
Nick Fitzgerald
d9ef29f62f Update trace-dump.{js,css} from upstream
Part of making the trace-dump.js code unit testable was moving it out to another
repo. This brings in all the changes made while writing unit tests, and making
the code more unit testable.
2016-05-09 13:22:09 -07:00
Matt Brubeck
9b23cf537e Profile time spent saving the screenshot image 2016-05-09 09:43:13 -07:00
Nick Fitzgerald
9fbb5c720e Add a method for dumping self-contained HTML timeline profiles
This commit adds the `--profiler-trace-path` flag. When combined with `-p` to
enable profiling, it dumps a profile as a self-contained HTML file to the given
path. The profile visualizes the traced operations as a gant-chart style
timeline.
2016-04-27 18:35:17 -07:00
Simon Sapin
83b3ebf6ac Simplify TOML syntax
* Sections like `[dependencies.foo]` can be entries in a `[dependencies]`
  section with the `{key = value}` syntax.
* Per-target dependencies can be expressed with more general `cfg(…)`
  conditions instead of exact target triples:
  https://github.com/rust-lang/cargo/pull/2328
2016-04-26 23:51:36 +02:00
Zbynek Winkler
b021874ba0 Silence unused-extern-crates false positives.
Added #[allow(unused_extern_crates)] to silence false positives

 * bitflags, lazy_static and matches because macro_use
 * alloc_jemalloc because builtin crate

See https://github.com/rust-lang/rust/issues/30849
2016-04-22 22:20:05 +02:00
Nick Fitzgerald
1997d034fa Take the stdout lock when printing profile data
Acquiring the stdout lock while printing the profile data prevents other
messages printed to stdout from being interleaved with prints from elsewhere.
2016-04-14 12:28:00 -07:00
Patrick Walton
b29719e36b layout: Rewrite the block formatting context/float inline-size
speculation code.

The old code tried to do the speculation as a single bottom-up pass
after intrinsic inline-size calculation, which was unable to handle
cases like this:

    <div>
        <div style="float: left">Foo</div>
    </div>
    <div>
        <div style="overflow: hidden">Bar</div>
    </div>

No single bottom-up pass could possibly handle this case, because the
inline-size of the float flowing out of the "Foo" block could never make
it down to the "Bar" block, where it is needed for speculation.

On the pages I tried, this regresses layout performance by 1%-2%.

I first noticed this breaking some pages, like the Google SERPs, several
months ago.
2016-03-25 18:39:16 -07:00
bors-servo
8c92e3f32b Auto merge of #10075 - Ms2ger:deny-unsafe, r=jdm
Deny unsafe code in more crates.

<!-- 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/10075)
<!-- Reviewable:end -->
2016-03-20 08:00:53 +05:30
Patrick Walton
5ea8c34276 layout: Move overflow calculation to be a separate, sequential,
bottom-up pass.

Right now, the only reason that overflow calculation works is that we
rely on script inducing extra reflows that are sent for display. This
was preventing #10021 from landing.

This change regresses layout performance by about 1% in my tests.

Fixes #7797 properly.
2016-03-18 22:11:51 -07:00
Ms2ger
08083f1c9d Deny unsafe code in more crates. 2016-03-18 14:43:03 +01:00
Anthony Ramine
f7af675861 Update log to 0.3.5 2016-03-16 23:36:04 -07:00
Connor Imes
f31e8841fb Heartbeats now on crates.io.
Updates to energymon interface for energy profiling.
Profiling script for Android.
2016-03-09 15:47:37 -06:00
Anthony Ramine
c5af2f27c3 Bump regex and regex-syntax 2016-03-05 15:51:51 +01:00
bors-servo
08b9fe0c00 Auto merge of #9863 - larsbergstrom:appveyor2, r=edunham
Fix Windows build and add AppVeyor support

Proof of success: https://ci.appveyor.com/project/larsbergstrom/servo/build/1.0.15

Fixes #9767

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.svg" height="40" alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9863)
<!-- Reviewable:end -->
2016-03-04 07:41:08 +05:30
UK992
5d24f7c6b7 Fix build on Windows 2016-03-03 16:17:19 -06:00
Corey Farwell
75353e19a7 Indicate components should not be published to crates.io.
http://doc.crates.io/manifest.html#the-publish--field-optional
2016-03-03 15:04:44 -05:00
Martin Robinson
e7019f2721 Flatten display list structure
Instead of producing a tree of stacking contexts, display list
generation now produces a flat list of display items and a tree of
stacking contexts. This will eventually allow display list construction
to produce and modify WebRender vertex buffers directly, removing the
overhead of display list conversion.  This change also moves
layerization of the display list to the paint thread, since it isn't
currently useful for WebRender.

To accomplish this, display list generation now takes three passes of
the flow tree:

        1. Calculation of absolute positions.
        2. Collection of a tree of stacking contexts.
        3. Creation of a list of display items.

After collection of display items, they are sorted based upon the index
of their parent stacking contexts and their position in CSS 2.1
Appendeix E stacking order.

This is a big change, but it actually simplifies display list generation.
2016-03-01 14:50:07 -08:00
Anthony Ramine
dab9b4700c Bump to Rust 2016-02-22 2016-02-23 02:43:57 +01:00
Keith Yeung
ace5b7a2e8 Implement planned navigation 2016-02-18 06:37:32 -05:00
rohan.prinja
1f02c4ebbb task -> thread 2016-01-10 17:58:13 +09:00
Johannes Linke
6b215f38ee Fix a bunch of clippy lints 2016-01-02 23:27:15 +01:00