Граф коммитов

98 Коммитов

Автор SHA1 Сообщение Дата
Imanol Fernandez 952fe5d9e8 servo: Merge #14618 - WebVR API Implementation (from MortimerGoro:webvr_api); r=larsbergstrom,emilio,jdm,nox,asajeffrey,cvan
<!-- Please describe your changes on the following line: -->

WebVR API Implementation with HTC Vive support on Windows. The current implementations only enables the WebVR support on Windows. In other platforms the API is available on JavaScript but navigator.vr.getDisplays() returns an empty array. This will change when we add support for more VR providers and platforms ;)

Info about the architecture:
https://blog.mozvr.com/webvr-servo-architecture-and-latency-optimizations/
---
<!-- 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 _____

Proprietary openvr.dll must be copied next to servo.exe in order to test on HTC Vive (https://github.com/ValveSoftware/openvr/tree/master/bin/win64) I have added some of the official WebVR samples for testing. Switch on your headset and run:

mach run tests/html/webvr/room-scale.html

Source-Repo: https://github.com/servo/servo
Source-Revision: 518ef39cfd429082dd8dc0d5b13e2db637d08a53
2017-01-09 06:39:45 -08:00
Simon Sapin f5e9398e12 servo: Merge #14889 - Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) (from servo:rustup); 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: -->
- [ ] 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: df895cb80c460594f220b6cf28aa5869464d05ec
2017-01-07 08:18:28 -08:00
Julien Levesy 4becda37bc servo: Merge #14796 - replace match by if let statements if possible (from jlevesy:jl-match-to-if-let); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->
Hi there,

This PR replaces `match` statements by `if let` when possible.

Thanks for reviewing

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because this PR is a code cleanup patch.

<!-- 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: d967d89fc081ae0f48850f3e29e4a9848bd837c7
2016-12-31 21:28:41 -08:00
Emilio Cobos Álvarez 0c7e0c3aa5 servo: Merge #14728 - Bunch of nitpicks (from emilio:nit); r=Wafflespeanut
I just noticed one while writing #14719, and then grepped and couldn't stop.

r? @nox

Source-Repo: https://github.com/servo/servo
Source-Revision: 7fc9047d22147cf419d2551350421e23105e6f0e
2016-12-25 11:04:21 -08:00
Alan Jeffrey 07258edab3 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

--HG--
rename : servo/components/util/Cargo.toml => servo/components/config/Cargo.toml
rename : servo/components/util/basedir.rs => servo/components/config/basedir.rs
rename : servo/components/util/lib.rs => servo/components/config/lib.rs
rename : servo/components/util/opts.rs => servo/components/config/opts.rs
rename : servo/components/util/prefs.rs => servo/components/config/prefs.rs
rename : servo/components/util/resource_files.rs => servo/components/config/resource_files.rs
rename : servo/components/util/geometry.rs => servo/components/geometry/lib.rs
rename : servo/components/util/remutex.rs => servo/components/remutex/lib.rs
rename : servo/tests/unit/util/lib.rs => servo/tests/unit/servo_config/lib.rs
rename : servo/tests/unit/util/opts.rs => servo/tests/unit/servo_config/opts.rs
rename : servo/tests/unit/util/prefs.rs => servo/tests/unit/servo_config/prefs.rs
rename : servo/tests/unit/util/remutex.rs => servo/tests/unit/servo_remutex/lib.rs
2016-12-14 16:48:42 -08:00
Jansen Jan 23b92da701 servo: Merge #13489 - Add support for fullscreen #10102 (from farodin91:fullscreen); r=jdm
<!-- Please describe your changes on the following line: -->

I'm start working on fullscreen support.
@jdm Should be the entry_point in ScriptReflow a Option if fullscreen is enabled or point on the entry_node? For example the RootNode.

---

<!-- 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 #10102  (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: 8b69e73594647319e95bd0fd36c2addabcee1e5d
2016-12-09 09:52:34 -08:00
Connor Imes 600c23a426 servo: Merge #14272 - Fix energy profiling feature (from connorimes:fix-energy-profiling-feature); r=Manishearth
<!-- Please describe your changes on the following line: -->
The `energy-profiling` feature was broken at some point when `#![deny(unsafe_code)]` was introduced to the `profile_traits` component.  This PR sets `#[allow(unsafe_code)]` on the `energy` module.
There is an additional commit (my original intention) to update the profiler logging to use the current `ProfilerCategory` enum values for (typically developer-only) performance/power analysis.

---
<!-- 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 it fixes is a compile error for a feature.

<!-- 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: 1e42e4d9cec1a46a0a3009095c6030425c0a8845
2016-11-19 02:32:00 -06:00
Anthony Ramine 6b2b23c586 servo: Merge #14040 - Remove last use of custom derive plugin (from nox:custom-derive); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: e3493cdd26f6faab0ddf6503ad19f0af169ad880
2016-11-03 06:15:25 -05:00
Anthony Ramine 4adf074ce8 servo: Merge #13675 - Clean up the parsers into a single interface (from nox:servoparser); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 928e5ad1e5ca4344e69cd8029749ecb623eabd9f

--HG--
rename : servo/components/script/parse/html.rs => servo/components/script/dom/servoparser/html.rs
rename : servo/components/script/parse/xml.rs => servo/components/script/dom/servoparser/xml.rs
rename : servo/components/script/dom/webidls/ServoXMLParser.webidl => servo/components/script/dom/webidls/ServoParser.webidl
2016-10-11 10:16:23 -05:00
Anthony Ramine d480281b15 servo: Merge #13649 - Update to Rust 1.14.0-nightly (19ac57926 2016-10-08) (from servo:rustup); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: 39d3fce1af89bf30e201dcb873d7f2ffe0ad3d42
2016-10-09 20:12:38 -05:00
UK992 f8cb9971b7 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 64c09a7eda 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
Anthony Ramine b340b7ecfa servo: Merge #12712 - Update Rust to 1.12.0-nightly (545a3a94f 2016-08-04) (from servo:rustup); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 414204c909e316ca0775881eb3a65875bf81500f
2016-08-05 07:46:27 -05:00
Glenn Watson 8181f16ecc servo: Merge #12711 - Update webrender, copy new shaders, pin ipc-channel (from servo:wr-wr-next); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: e2d4ff5b62aff7fc6f40460270af44e1ab5283d4

--HG--
rename : servo/components/script/dom/validation.rs => servo/resources/shaders/ps_blend.glsl
rename : servo/resources/shaders/box_shadow.fs.glsl => servo/resources/shaders/ps_box_shadow.fs.glsl
rename : servo/resources/shaders/debug_color.fs.glsl => servo/resources/shaders/ps_clear.fs.glsl
rename : servo/components/script/dom/validation.rs => servo/resources/shaders/ps_clear.glsl
rename : servo/resources/shaders/mask.fs.glsl => servo/resources/shaders/ps_image_transform.glsl
rename : servo/resources/shaders/debug_color.fs.glsl => servo/resources/shaders/ps_rectangle.fs.glsl
rename : servo/components/script/dom/validation.rs => servo/resources/shaders/ps_rectangle.glsl
rename : servo/ports/geckolib/gecko_bindings/sugar/mod.rs => servo/resources/shaders/ps_rectangle_transform.glsl
rename : servo/components/script/dom/validation.rs => servo/resources/shaders/ps_text.glsl
2016-08-03 07:50:06 -05:00
Eduard Burtescu 67ca178f91 servo: Merge #12586 - Update Rust to 1.12.0-nightly (9316ae515 2016-07-24) (from servo:rustup); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 0be8e6857f4f767129dd694bf1e7e86060d307a4
2016-07-26 17:18:41 -05:00
Alan Jeffrey 3502f92cc3 servo: Merge #12447 - All our Cargo.toml files should contain an MPL-2.0 license field (from asajeffrey:license-mpl-2.0); r=frewsxcv
<!-- Please describe your changes on the following line: -->

Added a `license = "MPL-2.0"` field to all our `Cargo.toml` files, and added a check to `test-tidy` that the license is present.

---
<!-- 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 #12434
- [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: 650d1d1185eecdc4c8b605bb0290ece7de839015
2016-07-14 09:33:18 -07:00
Malisa Smith 22f762f1ad servo: Merge #12327 - Profile stats (from malisas:profile-stats); r=jdm
<!-- Please describe your changes on the following line: -->
Pulled out profiler statistics calculation into its own function in time.rs, added tests for it, and simplified min and max calculation for pre-sorted data.

---
<!-- 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: b9af49f12093dfacdd3d8831efab4a58bee2e458
2016-07-07 21:08:50 -07:00
Anthony Ramine 1e92070ea4 servo: Merge #11930 - Remove some util stuff (from nox:die-util-die); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: dcc4697dde3ba8af32e233b302a16bea76af378a

--HG--
rename : servo/components/util/linked_list.rs => servo/components/layout/linked_list.rs
2016-06-29 15:37:42 -05:00
Anthony Ramine 68261846c3 servo: Merge #11871 - Update Rust to 1.11.0-nightly (ad7fe6521 2016-06-23) (from servo:rustup); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: e3e5a51ff692635e7eabd2b244a975686f1064c4
2016-06-27 09:47:34 -05:00
Simon Sapin 993d896521 servo: Merge #11816 - Make the style crate (almost) build with a stable compiler (from servo:stable-style); r=nox
<!-- Please describe your changes on the following line: -->

The bulk of this is adding cargo features to make derived implementations of `heapsize` and `serde` traits optional.

"Almost" because `std::intrinsics::discriminant_value` is currently unstable and doesn’t have any stable replacement that I know of. For now, this PR conditionally replaces it with `unimplemented!()`.

r? @nox

---
<!-- 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 <s>fix</s> are part of #11815 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not <s>require tests</s> *have tests yet* because that requires https://github.com/servo/servo/issues/11806, but I still want to land this before it bitrots. (Tests should check that the build succeeds with a stable compiler.)

<!-- 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: 0fb5d634a007f3d0424f95569ac3f83d500d054c
2016-06-22 09:43:20 -05:00
Connor Imes f0f9e9c8d6 servo: Merge #11785 - Update heartbeats-simple to 0.3.0 (from connorimes:update-hbs-0.3.0); r=metajack
Updated heartbeats-simple dependency for native changes:
-Collapse libraries into one.
-Remove overriding of some default CMake behavior.
-Windows compatibility with compiler flags, locking, and sleeping in example (thanks Jack Moffitt and Vladimir Vukicevic).

---
<!-- 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 it's just a dependency update

<!-- 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: 09a39af1c18e4319165576cce1490e99845a2b9f
2016-06-20 15:28:22 -05:00
Rahul Sharma d38a9a1c80 servo: Merge #11114 - implement related service worker interface and register method (from creativcoder:nav-sw); r=jdm
Fixes  #11091

Source-Repo: https://github.com/servo/servo
Source-Revision: cc017fc0b8619726f0c82649f41fdcf5595b19e4
2016-06-02 06:18:59 -05:00
Patrick Walton c3daa72338 servo: Merge #11398 - script: Keep the DOM-side viewport up to date when scrolling happens in WebRender (from pcwalton:webrender-viewport); r=glennw
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.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 27d1f182713077395426a53a9c91ec35c95887ee
2016-05-31 20:54:29 -05:00
Josh Matthews 7f10c47c0a 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 2bd22f97ce 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
Rohit Zambre a30beffc0e servo: Merge #11282 - Replacing CSV profiling with TSV profiling (from rzambre:csv2tsv); r=larsbergstrom
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 add to issue #10886 that has already been fixed.

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.

Source-Repo: https://github.com/servo/servo
Source-Revision: 983612751ba6a031d7a22e53bc2baabe64739f1b
2016-05-20 08:09:58 -07:00
Josh Matthews b10b472b1a 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
Anthony Ramine 1dea02cf45 servo: Merge #11215 - Do not use libc in profile on Windows (from nox:greener-than-hulk); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: db5846ed7db098083d648852a658171c5d25c636
2016-05-16 17:24:16 -07:00
Anthony Ramine 1d29d91d8f servo: Merge #11208 - Fix all Windows warnings (from nox:greener-than-hulk); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 043b375ce31e7e37c3409f17cdd73c5ed9c0d797
2016-05-16 14:38:26 -07:00
Per Lundberg 28632dc3a1 servo: Merge #11192 - Removed unused imports (from perlun:remove-unused-imports); r=Manishearth
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #11185
- [X] These changes do not require tests because it only removes dead code.

----

This fixes #11185.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2c674d0397927ef6563feb70e54f46815af55600
2016-05-15 15:41:16 -07:00
Matt Brubeck 806f7d1413 servo: Merge #11148 - Fix some warnings (from mbrubeck:warnings); r=metajack
Source-Repo: https://github.com/servo/servo
Source-Revision: d55884d73e57a924a586c26a03bc691ab5c62c39
2016-05-12 06:19:10 -07:00
Rohit Zambre e8e9371fba servo: Merge #10995 - Interval + CSV time-profiling (from rzambre:master); r=larsbergstrom
This PR fixes #10886. The -p option can be followed by either an interval number or a CSV filename.
* In the interval profiling, the profiler output would be spitted out to the terminal periodically.
Example usage: **./mach run -p 1 http://www.google.com** will print the time-profiling output to the terminal every second.

* In the CSV file profiling, a CSV file will be generate upon termination of servo.
Example usage: **./mach run -x -o out.png -p out.csv http://www.google.com** will generate out.csv upon termination of Servo.

Source-Repo: https://github.com/servo/servo
Source-Revision: d4315855aaddb9d9ed26cd730e9b75e15500c3bd
2016-05-11 17:19:53 -07:00
Matt Brubeck efac4d0261 servo: Merge #11119 - Make --profile-trace-path work without -p (from mbrubeck:trace-path); r=jdm
Currently `--profile-trace-path` has no effect if `-p` isn't also passed, because the time profiler doesn't start.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8fab68d6a9543248b1e798dfe53036e33654e8cd
2016-05-10 16:00:45 -07:00
Nick Fitzgerald c11fd6b931 servo: Merge #11098 - Update `trace-dump.{js,css}` from upstream (from fitzgen:update-trace-dump); r=jdm
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

Source-Repo: https://github.com/servo/servo
Source-Revision: 835f443865fbaa8784722ad6f950a2c8879fab31
2016-05-10 06:34:32 -07:00
Matt Brubeck b33763b392 servo: Merge #11096 - Profile time spent saving the screenshot image (from mbrubeck:profile-image-saving); r=metajack
I did this to see if it was a significant factor in automated test runs.  (Spoiler: it isn't.)

Source-Repo: https://github.com/servo/servo
Source-Revision: 7b8bb0c2485eb46303d97918d91fce73bd98fea9
2016-05-09 10:21:00 -07:00
Nick Fitzgerald 82b359a568 servo: Merge #10694 - Add a method for dumping profiles as self-contained HTML w/ timeline visualization (from fitzgen:profile-traces-to-file); r=SimonSapin
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 Gantt-chart style
timeline.

Example output HTML file: http://media.fitzgeraldnick.com/dumping-grounds/trace-reddit.html

Mostly I made this because I wanted to see what kind of data the profiler has, and thought that this might be useful for others as well. I'm happy to add tests if we can figure out how to integrate them into CI, but I'm not sure how that would work.

Thoughts?

Source-Repo: https://github.com/servo/servo
Source-Revision: b8e2fa58d61a4d77b67efa09a437ba6beb68e30e
2016-04-28 02:47:35 -07:00
Simon Sapin 2f882b0cfb servo: Merge #10857 - Simplify TOML syntax (from servo:toml); r=nox
* 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

Source-Repo: https://github.com/servo/servo
Source-Revision: 2729864af73d62719ea0fd55cef417c43bdd951e
2016-04-26 15:46:37 -07:00
Zbynek Winkler 170606fd25 servo: Merge #10706 - Turn on unused-extern-crates warning (from zwn:unused-extern-crates); r=nox
As discussed in #9256. It should solve second half of the issue.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0a3a50a1293e4e8f3e04161014d03802765140c7
2016-04-22 13:40:38 -07:00
Nick Fitzgerald 180e3f6e00 servo: Merge #10589 - Take the stdout lock when printing profile data (from fitzgen:lock-stdout-when-printing-profile); r=larsbergstrom
Acquiring the stdout lock while printing the profile data prevents other
messages printed to stdout from being interleaved with prints from elsewhere.

Source-Repo: https://github.com/servo/servo
Source-Revision: d9ffefe5620eca8d377ccdca81041328bcd48065
2016-04-15 00:34:54 +05:01
Patrick Walton 818acd332f servo: Merge #10085 - layout: Rewrite the block formatting context/float inline-size speculation code (from pcwalton:floats-inout-revamp); r=mbrubeck
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.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 1554331f06900e69f246ed9986a08aae91a0a71e
2016-03-26 06:39:41 +05:01
Ms2ger 1ab0b58897 servo: Merge #10075 - Deny unsafe code in more crates (from Ms2ger:deny-unsafe); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 8c92e3f32b9aa6a75dc8980da49359ea63f9d67a
2016-03-20 07:31:53 +05:01
Patrick Walton 10e665f8d9 servo: Merge #10064 - layout: Move overflow calculation to be a separate, sequential, bottom-up pass (from pcwalton:overflow-bottom-up); r=mbrubeck
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.

r? @mbrubeck
cc @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 8120fb5c2d170d5d9838696a7a5b871a43f57bb2
2016-03-20 00:24:27 +05:01
Anthony Ramine ace9b5c608 servo: Merge #10055 - Bump serde to 0.7 (from servo:serde); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 7a9dc577617b442ff0fe07eaa683207234c519ee
2016-03-17 17:58:36 +05:01
Connor Imes db206ff49a servo: Merge #9926 - Update heartbeats and energymon profiler dependencies (from connorimes:update-em-interface-hbs-crates); r=asajeffrey
Heartbeats now on crates.io.
Updates to energymon interface for energy profiling.
Profiling script for Android.

Source-Repo: https://github.com/servo/servo
Source-Revision: 396812b6d9c43a886d32d6d0910c1c685f333baf
2016-03-10 22:40:23 +05:01
Anthony Ramine c230b18459 servo: Merge #9885 - Bump regex and regex-syntax (from nox:bump-regex); r=ecoal95
Source-Repo: https://github.com/servo/servo
Source-Revision: 1edabe1673789aace16ae0477dbd2328fbf87e2e
2016-03-05 19:59:25 +05:01
UK992 adb691c464 servo: Merge #9863 - Fix Windows build and add AppVeyor support (from larsbergstrom:appveyor2); r=edunham
Proof of success: https://ci.appveyor.com/project/larsbergstrom/servo/build/1.0.15

Fixes #9767

Source-Repo: https://github.com/servo/servo
Source-Revision: 08b9fe0c00fc2be24f1c7ca877011f27a2a19599
2016-03-04 07:12:08 +05:01
Corey Farwell ccfd41c9c3 servo: Merge #9857 - Indicate components should not be published to crates.io (from servo:publish-false); r=ecoal95
http://doc.crates.io/manifest.html#the-publish--field-optional

Source-Repo: https://github.com/servo/servo
Source-Revision: 633f0414aaa177e439528f0fa848a41bc0fc094a
2016-03-04 01:08:14 +05:01
Martin Robinson 36406cdba8 servo: Merge #9756 - Flatten display list structure (from mrobinson:flat-display-lists-webrender); r=pcwalton
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.

Source-Repo: https://github.com/servo/servo
Source-Revision: 62814f7cb486bc267a796b7ce58c51d59240fad0
2016-03-02 05:52:08 +05:01
Anthony Ramine f98f618ac8 servo: Merge #9721 - Bump to Rust 2016-02-22 (from servo:rustup); r=larsbergstrom,nox
Source-Repo: https://github.com/servo/servo
Source-Revision: dd5f3382547069b9f5d7933959c0307c863c58ac
2016-02-23 06:46:04 +05:01
Keith Yeung ff3628a45f servo: Merge #8952 - Implement planned navigation (from KiChjang:planned-navigation); r=Manishearth
Fixes #3648.

Note that I have only implemented "mutate action URL" and "get action URL". The remaining ones can have E-less easy issues created for them.

Source-Repo: https://github.com/servo/servo
Source-Revision: fe70efe07f6d72665f10c752884e5705d5bdc600
2016-02-18 21:57:19 +05:01