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

8335 Коммитов

Автор SHA1 Сообщение Дата
Anthony Ramine 07c7adaf87 servo: Merge #15133 - Various events-related improvements (from nox:events); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: ef6e0bf72dad5db5e85963fff53bb1d577aee01c
2017-01-21 06:16:47 -08:00
Anthony Ramine ada71b902e servo: Merge #15132 - Improve the end (from nox:load-fixes); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 1b68f7946858ccd25132fe5e04923f23e269c6b0
2017-01-20 15:25:38 -08:00
Anthony Ramine 1f3445f08e servo: Merge #15128 - Simplify how we handle script scheduling and delaying the load event (from nox:load-fixes); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 830fe189adfa93a09af5e4018a110a718a8a95cd
2017-01-20 13:41:32 -08:00
Aneesh Agrawal 1f43cccad3 servo: Merge #15029 - Check all constellation files for panics (from aneeshusa:check-whole-constellation-for-panics); r=asajeffrey
Teaches the `etc/ci/check_no_panic.sh` script to handle directories,
so it can check all constellation files for panics.

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

r? @asajeffrey
There are currently 4 `unwrap()`s in `components/constellation/timer_scheduler.rs`; I'm not sure how you want to handle those.

---
<!-- 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
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #14976 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because it adds more testing coverage

<!-- 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: f9505c7fafcbabd24cfa613493ecacd3e29d273e
2017-01-20 12:10:32 -08:00
Nazım Can Altınova 6df0e3167c servo: Merge #14646 - Support origins in CSSOM stylesheets (from canaltinova:origin-clean); r=jdm
<!-- Please describe your changes on the following line: -->
I still need to pass the origin clean flag to constructors. `style::stylesheets::Stylesheet` has an origin field but I don't think that's relevant.
I can get href in htmllinkelement.rs like this:
```rust
let element = self.upcast::<Element>();
let href = element.get_string_attribute(&local_name!("href"));
```
But I'm not sure how to proceed after here.
@Manishearth any opinions?

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

<!-- 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: 15c542d3a10d2764fda14f8e54054eeb113bff1a
2017-01-20 11:12:59 -08:00
Ms2ger f271bf7b53 servo: Merge #15127 - Privatize RootedTraceableSet (from servo:RootedTraceableSet); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 5cd04259334270daa93743aaa6a72c039082bf5e
2017-01-20 10:17:38 -08:00
Simon Sapin 21e15515ca servo: Merge #15099 - Remove usage of phf_macros (from servo:phf-no-macros); r=jdm
It’s a compiler plugin that uses unstable compiler APIs that are not on a path to stabilization.

With this changes, there is one less thing that might break when we update the compiler. For example: https://github.com/sfackler/rust-phf/pull/101

<!-- 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: eade32ed16569806a849e74a395d92a2dbd980a0
2017-01-20 08:59:26 -08:00
Ms2ger c8cd8ecea4 servo: Merge #15117 - Fix and annotate some FileAPI test failures (from servo:fileapi); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: e6f661c984e4762a91a38d481bd50c0151411079
2017-01-20 08:03:41 -08:00
Ms2ger 50f1421ce8 servo: Merge #15125 - Support dictionaries in unions (from servo:unions-dictionaries); r=nox
Fixes #11612.

Source-Repo: https://github.com/servo/servo
Source-Revision: be3f35878af1d9210abc65358c99782c119ceaa6
2017-01-20 07:08:09 -08:00
Aneesh Agrawal 7867bd9341 servo: Merge #14974 - Use Salt for mach bootstrap (from aneeshusa:add-mach-bootstrap); r=metajack
<!-- Please describe your changes on the following line: -->

This is currently WIP, but allows Salt for `mach bootstrap`. Not looking for review yet, just posting for visibility. You can run `./mach bootstrap` and Salt will run, letting you know what changes it would make for bootstrapping (doesn't actually run yet though).

Currently, this reads from saltfs using gitfs, meaning it always tracks the master branch. (Note that this is blocked on https://github.com/servo/saltfs/pull/577 landing; in the meantime, I've included a small workaround in this PR to pull from my updated saltfs branch, which will need to be removed.) In the future, the relevant Salt code may be merged in tree as part of Docker support for TC, and the bootstrapper should be updated to read from in tree.

Also, our Windows machines have not been Salted, so the existing Windows bootstrappers are retained.

TODO:
- [x] Hook into existing bootstrapping code less hackily
- [x] Actually bootstrap instead of always using `test=True` mode (includes sudo)
- [x] Default to interactive mode (test first, then ask), with a force flag
- [x] Don't require running from the repository root directory
- [x] Make it easy to add support for other distros

---
<!-- 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
- [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 they should be verified manually

<!-- 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: 1f76aa6ef7ec7db0a0c40223874a72e8f4059deb
2017-01-19 20:58:19 -08:00
Bobby Holley ffb83d6686 servo: Merge #15119 - Add style performance statistics to Servo (from bholley:traversal_stats); r=emilio
Gecko bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1331856

Source-Repo: https://github.com/servo/servo
Source-Revision: f8418a328435b114f6d8bb41c378a5bf0dfa4428
2017-01-19 15:27:34 -08:00
Pavel Potocek d8e5f53d57 servo: Merge #15083 - Fix #14497: WeakMediaQueryListVec assumes its contents are still alive (from potocpav:issue-14497); r=KiChjang
<!-- Please describe your changes on the following line: -->
First time contributor here. Noticed this issue is easily solved, so I did it. I am very unsure about how things work here: Is a test needed? What should it look like? Should the "unwrap" be avoided (making bigger changes to the code)?

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

- [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: 29d4f7d467a1e50b7bcff651743fd5b5bfac2c66
2017-01-19 14:10:33 -08:00
ddh bba84e16bc servo: Merge #15104 - added lets encrypt authority x3 to trusted roots pem (from avadacatavra:letsencryptauth); r=SimonSapin
<!-- Please describe your changes on the following line: -->
servo gave an ssl error on servoexperiments.com because it didn't have the Let's Encrypt X3 authority (https://letsencrypt.org/certificates/)

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ X] These changes do not require tests because webpage couldn't load before, can now :)

<!-- 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: 3a8167350b2544859745b1b89c96ca262b510e12
2017-01-19 12:03:26 -08:00
Anthony Ramine a13b47dbcd servo: Merge #15098 - Mark the page source as loaded only after parsing is done (from nox:load-fixes); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 6272cb5a519d2b5e92ac7112c177043970feedaa
2017-01-19 07:32:45 -08:00
Ms2ger d57a68187f servo: Merge #15108 - Don't try to get the global of an object while it's being destroyed (from servo:callbackobject-drop); r=KiChjang
Fixes #15070.
Fixes #15097.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2c816a2e9dfe3eb6952fd61f5a96cf26668ad9c8
2017-01-19 03:05:17 -08:00
UK992 132fb1d5fd servo: Merge #15035 - Tidy: Report invalid listed ignored directories and files (from UK992:tidy-validate-ignore); r=Wafflespeanut
r? @Wafflespeanut

Source-Repo: https://github.com/servo/servo
Source-Revision: f4c6d0009209d83fdb66f8a7348065edf75a22ff
2017-01-19 01:12:06 -08:00
Dexter Haslem e4d25d668e servo: Merge #15107 - convert less interesting debug! logs to traces (from DexterHaslem:15100-convert-debug-to-traces); r=cbrewster
<!-- Please describe your changes on the following line: -->
converted some debug! invocations to trace!

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because only logging changed

<!-- 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: b8df502491b880cb942badee4ddbf7ec65b174fb
2017-01-18 21:29:59 -08:00
Manish Goregaokar 65bdc5d4d0 servo: Merge #15089 - Reduce allocator churn when parsing property declaration blocks (from Manishearth:less-vec); r=SimonSapin
fixes #15060

cc @emilio

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 5e888b5504a9daad86663837ca9e996d63a48821
2017-01-18 17:41:05 -08:00
Vladimir Vukicevic be8f0e0ee8 servo: Merge #15096 - Implement downloadable fonts on Windows (from vvuk:custom-font-files); r=emilio
This PR implements downloadable font support for Servo.  It depends on new changes in webrender and dwrote, and adds a dependency on the `truetype` crate for pulling out basic font information.  The original DirectWrite API does not provide an easy way to query font information direct from a `FontFace` (which is what you create from a `FontFile`).  There are new DirectWrite APIs starting with Windows 10 that allow for this, but they are Win 10+ only, and `winapi-rs` does not yet have bindings for those versions of the interfaces (specificially, `IDirectWriteFontFace3`).  The way to do this with DW is to go through a lot of pain in creating a custom collection and enumerator, add your font to your custom collection, then query the collection for its properties.

Instead, we just parse the truetype tables directly to pull out the few bits of information that we need.  The `truetype` crate is ok, but I discovered some bugs (an update needs to get pushed to crates.io before this will build).  It might be more worthwhile to just implement the tiny bit of truetype parsing that we need ourselves in Servo.

I'm guessing there are existing tests for downloadable fonts...

---
<!-- 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: 1a7404e38c0f0e9c58487299956bec78589191c7
2017-01-18 16:09:51 -08:00
Ms2ger 820079fcfc servo: Merge #15095 - Omit the 'ServoUrl()' wrapping in ServoUrl's Debug implementation (from servo:debug-servourl); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 0cca7ca85dc611952eeabd5b799e6c933dab7557
2017-01-18 11:17:05 -08:00
Permutator 731d66d2f4 servo: Merge #14839 - Make offset parent queries less buggy (from Permutatrix:iss-12939); r=emilio
<!-- Please describe your changes on the following line: -->
Offset parent queries, which are used in the getters for HTMLElement's `offsetParent`, `offsetTop`, `offsetLeft`, `offsetWidth`, and `offsetHeight`, are pretty busted. The most egregious bug is that, as reported in #12939, inline elements are treated as if they're not present in the document. This PR fixes that and all of the other bugs I could trace directly to the offset parent query code, but `offsetTop` and `offsetLeft` are still unreliable in certain circumstances for reasons I haven't looked into (#13708). Inline elements with no content are still treated as not present due to #13982, so #13944 isn't fixed with this PR, either.

---
<!-- 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 #12939 and fix #12595

<!-- 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: b08d4a7d395e41a344085d4cf79801c62019c976
2017-01-18 10:03:37 -08:00
Emilio Cobos Álvarez 6e5f74d476 servo: Merge #15053 - Return the intrinsic image dimension when the image is not rendered (from emilio:image-width); r=jdm
See individual commits for details.

r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: ba59ee662752891f9f9b452c1f4b847fad9f64ac
2017-01-18 08:43:19 -08:00
Connor Brewster f9efa88d2f servo: Merge #15091 - Ensure FrameState consistency (from cbrewster:frame_state_consistency); r=asajeffrey
<!-- Please describe your changes on the following line: -->
As we begin to add more state to `FrameState`, we need to make sure that when we do replacements and when we finish traversals that the state is properly updated. This also fixes an issue where we were not updating the `url` of the `FrameState` when navigating with replacement enabled (I wonder if it would be possible to write a test to detect this. The url only matters when reloading a document after it was discarded by the max session history).

---
<!-- 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: 68fa988bf32fab97a2d6ad3231de81c3bcb1939d
2017-01-18 07:47:54 -08:00
Glenn Watson 66e90835ac servo: Merge #15094 - Update WR (driver stall workaround, shared clips, dwrote update) (from glennw:update-wr-driver-stalls); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: c1238291e9c71b4e2ea24604d9714395832992fb
2017-01-18 06:52:04 -08:00
Emilio Cobos Álvarez 119f1f2d8d servo: Merge #15077 - Media query parsing and evaluation in stylo using nsMediaFeatures (from emilio:stylo-medialist); r=heycam,Manishearth,upsuper
<!-- Please describe your changes on the following line: -->

Reviewed in the bug.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1755ad7b75e056a534e12f375a6677f5c069f4c2
2017-01-18 05:39:57 -08:00
Anthony Ramine bbf4aad179 servo: Merge #15072 - Refactor some things related to script loading (from nox:load-fixes); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 80c6383140cfcac0a9ee7363e0a49f1a061a5c84
2017-01-18 02:17:17 -08:00
Xidorn Quan c374fd6e7e servo: Merge #15090 - Fix initial value of -moz-user-{input,focus} (from upsuper:moz-user-input); r=Wafflespeanut
Source-Repo: https://github.com/servo/servo
Source-Revision: 90522d93793edbf5d8e755791b6a1f473a3182e1
2017-01-18 01:22:00 -08:00
Manish Goregaokar 971a8aa41e servo: Merge #15065 - Use Box<CalcLengthOrPercentage> in specified values to avoid bloating inline sizes (from Manishearth:box-calclop); r=heycam
For #15061

CalcLOP is a large struct, and gets used quite often. While #15063 reduces its size a bit,
it will still be much larger than any of the other variants in the `specified::Length*` types,
so it will still bloat sizes, especially for specified values that contain many lengths.

This change boxes it in the length types, so that it just takes one word.

r? @heycam

Source-Repo: https://github.com/servo/servo
Source-Revision: f010fb58fdb4526a76581ba6536f807f2b2a4955
2017-01-17 11:49:52 -08:00
Paul Rouget 53573083db servo: Merge #15074 - Remove browserhtml dependency from components/servo (from paulrouget:removeBhtmlFromComponent); r=Ms2ger
Fix #15066

Source-Repo: https://github.com/servo/servo
Source-Revision: a73fd01f01945d88a565c4c65f4049d64dc89bf0
2017-01-17 10:56:22 -08:00
Ms2ger 9daf6ebddb servo: Merge #15073 - Apply minor dependency updates (from servo:always-be-updating); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 06f66abd4a4769bc0528b77a6d7f336900e2edef
2017-01-17 10:00:46 -08:00
Xidorn Quan 3cf38c31b7 servo: Merge #15071 - Fix typo in glue code for page-break-after (from upsuper:page-break-after); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 4b3fbc005966295b8fd6c368e4bba63fc03c45db
2017-01-17 09:05:33 -08:00
Cameron McCormack 710803def2 servo: Merge #15069 - Update geckolib build-time bindgen build script for recent regex changes (from heycam:bindgen-regex-update); r=emilio
`./mach build-geckolib --with-gecko ...` is broken due to regex's API changing a bit.

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: b4980f9037805c04eed4387cd1f848c29f9ac557
2017-01-17 08:13:47 -08:00
Martin Robinson 68043687bf servo: Merge #14979 - Only create scrolling overflow regions when necessary (from mrobinson:scroll-roots-when-necessary); r=emilio
Only create scroll roots for overflow regions when the overflow region
is actually larger than the container size. This prevents creating
scrolling roots for elements that do not have overflow scroll as a
side-effect of the way their height and width is defined. For example,
tables should never respect overflow:scroll since their height and
width should always be large enough to prevent overflow. This also
decreases the size and complexity of the display list in many other
circumstances.

As part of this change, transformed overflow calculation is moved from
display list construction to layout. This should mean that overflow is
handled more accurately earlier.

Fixes #14574.

<!-- 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 #14574 (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: 3ab514302f964a76938b8c87b4f27edb00d0f537
2017-01-17 07:18:42 -08:00
Josh Matthews 6562864142 servo: Merge #15078 - Disable test-unit on TravisCI (from servo:jdm-patch-1); r=Ms2ger
Due to #15076, I want to make sure that the TravisCI status is meaningful as much as possible.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5fca03418fb4c04d2282b5ae1cac862eafe7afe8
2017-01-17 05:58:00 -08:00
Ms2ger 5ab6df8ab7 servo: Merge #14936 - Implement the incumbent global (from servo:incumbent-global); r=jdm
Fixes #10963.

Source-Repo: https://github.com/servo/servo
Source-Revision: 463a8bbdb63ba37db788d577517ed6b9e689fb0e
2017-01-17 04:45:29 -08:00
Ravi Shankar 9ffe122fd3 servo: Merge #15063 - Cleaning up CalcLengthOrPercentage (from Wafflespeanut:calc); r=heycam
<!-- Please describe your changes on the following line: -->

We don't really need enum variants in `CalcLengthOrPercentage`. Given that we already have the information (whether it's `vw`, `ch`, etc.) in the struct fields, we could just store `Option<CSSFloat>` there, and modify our `ToCss` implementation a bit.

cc #15061

r? @Manishearth or anyone interested

---
<!-- 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's a refactor

<!-- 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: a70af60eec11fa0a19cfd889c56b09dc834b35af
2017-01-17 02:18:15 -08:00
Ms2ger f65f07eed7 servo: Merge #15048 - Update mozjs_sys (from servo:update-mozjs); r=jdm
Fixes #15025.

Source-Repo: https://github.com/servo/servo
Source-Revision: 363f590019e495fffab0cc0fa0464e05d2fc96e8
2017-01-16 19:26:52 -08:00
Xidorn Quan 19d4b8027d servo: Merge #15056 - Never blockify display: none (from upsuper:blockify-none); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 7c1112408e2d73d291bcb7c38cd935a07f83f045
2017-01-16 18:01:43 -08:00
Florian Merz 9de12614ae servo: Merge #15047 - gfx: Don't mutate the same point multiple times while translating it … (from emilio:click-regression); r=notriddle,emilio
…to other stacking context space.

I don't know how neither review or a test caught this.

r? @pcwalton  or @notriddle

Fixes #15015

Source-Repo: https://github.com/servo/servo
Source-Revision: a4551d0ceea8f2aceb68775452ea3010760f2825
2017-01-16 15:46:05 -08:00
Ms2ger 720fdf561d servo: Merge #15044 - Remove the dependency on the num crate (from servo:remove-num); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 2fa4df8ae8cd6f90bbd86b71bfd8b9f582eb3751
2017-01-16 14:51:33 -08:00
Manish Goregaokar 5b9059bd76 servo: Merge #15040 - stylo: support 1-arg CSS.supports() (from Manishearth:stylo-supports); r=heycam
r=heycam in https://bugzilla.mozilla.org/show_bug.cgi?id=1331316

Source-Repo: https://github.com/servo/servo
Source-Revision: b9c6f9f76e4e9170837484394600b9c9c6065059
2017-01-16 13:56:51 -08:00
Emilio Cobos Álvarez 706baa3dd4 servo: Merge #15018 - gfx: Use proper freetype bindings (from emilio:freetype); r=jdm
<!-- Please describe your changes on the following line: -->

Needs https://github.com/servo/rust-freetype/pull/48, and https://github.com/servo/webrender/pull/716

Source-Repo: https://github.com/servo/servo
Source-Revision: c8c38249a3ee38e72e4a427b05ab96b95d08f8fa
2017-01-16 13:01:59 -08:00
Emilio Cobos Álvarez b973c771f4 servo: Merge #15031 - Bug 1331272: style: Unify restyle-damage display: none checks (from emilio:stylo-display-none-pseudo); r=bholley
They were formerly different because we used the element check to cull the
traversal.

Now this is no longer true, so we can just unify them.

Also, update a no-longer up-to-date comment on that.

r? @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: e01417e936b93694b3038095827cc3e3cf3e0e82
2017-01-16 12:07:02 -08:00
Josh Matthews 7c098e953e servo: Merge #15020 - Do not use the script element's line number for external scripts (from jdm:external_script_line); r=Ms2ger
This was yielding incorrect line numbers when looking at JS backtraces in gdb.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: ecd1d2dbc9a94c88c718cb311603d35a4f667356
2017-01-16 11:11:46 -08:00
Josh Matthews 57f96ae1b3 servo: Merge #14994 - Make WebIDL callbacks permanently rooted (from jdm:callback_rooting); r=Manishearth,Ms2ger
This replicates the same model that Promise uses right now, because it requires less thinking than coming up with something else.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: e891277dd5a52bc3a2b76dfd78da9b82b4c11b40
2017-01-16 10:16:44 -08:00
Ms2ger cf4c07e65f servo: Merge #15046 - Remove libloading from the list of packages that can have duplicated versions (from servo:libloading); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 44fa478d7bb87fea52ef4af78267738316f22587
2017-01-16 07:43:45 -08:00
Cameron McCormack fc848e7b5a servo: Merge #15039 - stylo: Regenerate bindings (from heycam:bindings-update-17); r=emilio
<!-- Please describe your changes on the following line: -->

Bindings update for the sync I'll pushed based on https://treeherder.mozilla.org/#/jobs?repo=try&revision=42b2ac6142ddec57f60f4c3c05ec7c7d5aba9533, assuming there's nothing wrong.

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 57d6b8ec45e83ad76fd6976392c69b20edb162e5
2017-01-16 06:48:07 -08:00
Ms2ger 560ad3ebfb servo: Merge #15042 - Update regex (from servo:update-regex); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: bb540cab632593841611ad470c87d2093af75158
2017-01-16 05:59:18 -08:00
Ms2ger ab86fac4da servo: Merge #15041 - Update js (from servo:update-js); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 9cd1b861ecfe73e135c4e2b3574860db71b905f7
2017-01-16 02:24:06 -08:00
Xidorn Quan 76cc18679d servo: Merge #15038 - Store blink value for text-decoration-line (from upsuper:text-decor-blink); r=emilio
The spec does say user agents may not blink, but it doesn't say this
value can be ignored during parsing.

<!-- 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: ee082d83634503834f145a1c3d01dee4aa154714
2017-01-16 01:22:13 -08:00
Simon Sapin 5d7b58fd1a servo: Merge #14995 - Enable codegen-units=4 in debug mode (from servo:codegen-units); r=mbrubeck
We previously had this and removed it because it caused runtime slowdowns
(discussion in #11102), but that was in release mode.

Debug mode is already very slow at runtime.
In my opinion, debug mode is mostly for the edit-compile-test cycle
which is currently dominated by compile times, so sacrificing runtime for compile time makes sense.

I’ve observed a ~30% improvement of compile times with this. This figure is consistent between a very fast desktop with 4 cores / 8 threads and a not-as-fast laptop with 2 cores / 4 threads.

<!-- 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: ad1b11771b93ced67b409436c7bf0f493ec4663a
2017-01-15 13:23:55 -08:00
Glenn Watson 6a852c3dac servo: Merge #15030 - Update WR (version bump, mac fix) (from glennw:update-wr-mac); r=Wafflespeanut
Source-Repo: https://github.com/servo/servo
Source-Revision: 747e130295bc6dce8448a69bfdb01d2216f71738
2017-01-15 09:42:26 -08:00
tyler e844d9a158 servo: Merge #15026 - Max session fix (from tydus101:max-session-fix); r=jdm
<!-- Please describe your changes on the following line: -->
Converted document discarding from an opt into a pref. Updated testing docs and changed all uses to pref api.

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because current test suite is sufficient

<!-- 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: d09bf70d220262e2c199abf61b4b78b7137d6665
2017-01-14 15:08:56 -08:00
Nikhil Shagrithaya 5db0fa64ca servo: Merge #15028 - Minor spelling corrections (from cynicaldevil:correction); 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: -->

<!-- Either: -->

<!-- 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: 89c020f25887961570b9ec7c4ebf592e021c0ea8
2017-01-14 13:54:01 -08:00
Manish Goregaokar b872a8d810 servo: Merge #14999 - stylo: Hook property parsing into Gecko prefs (from Manishearth:stylo-prefs); r=heycam
r=heycam, https://bugzilla.mozilla.org/show_bug.cgi?id=1297322

This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14999)
<!-- Reviewable:end -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 4c401e47dc6ed36a40ccd0bcf85cb8697397f71f
2017-01-14 09:23:05 -08:00
Matthias Devlamynck 37fcd17201 servo: Merge #15023 - Moved tidy's BLOCKED_PACKAGES to the config file (from mdevlamynck:tidy-config); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->
Moved tidy.py's BLOCKED_PACKAGES to servo-tidy.toml.

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

<!-- Either: -->
- [X] These changes do not require tests because this is a refactor and the existing tests have been adapted.

<!-- 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: 7eb811b837545c295506c25207c891126b6db0ff
2017-01-14 08:31:30 -08:00
Anthony Ramine 1d607c4b20 servo: Merge #15024 - Kill beforescriptexecute and afterscriptexecute (fixes #12446) (from nox:load-fixes); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: ed7c34a79a32815b1d44e1b8112d2bd28803420c
2017-01-14 07:17:40 -08:00
Anthony Ramine ba727f122e servo: Merge #15011 - Various script loading fixes (from nox:load-fixes); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: c2d2c38b0f329fb2e7d0d975780f5a09a2870607
2017-01-14 06:18:31 -08:00
Hiroyuki Ikezoe b710db7a67 servo: Merge #15022 - Animation name fix (from hiikezoe:animation-name-fix); r=heycam
<!-- Please describe your changes on the following line: -->
This is a PR of the counter part of https://bugzilla.mozilla.org/show_bug.cgi?id=1330824 .

All of patches have been reviewed by @heycam and @mystor.

---
<!-- 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 this change is for Stylo.

<!-- 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: 655a9fd7ce27f1f985099a21d9f17209edac4ffb
2017-01-13 21:26:53 -08:00
Prudhvi Rampey d6dbb327cf servo: Merge #15016 - Documents now fully deactivate when a freeze message is sent (from prampey:doc-deactivate); r=cbrewster
<!-- Please describe your changes on the following line: -->
Documents now fully deactivate when a freeze message is sent

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because minimal 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: 2fb9a345d6341f57ab4cfdd9a1ae68b2bbd5f9a2
2017-01-13 14:15:44 -08:00
Manish Goregaokar 06f9b106e9 servo: Merge #14968 - stylo: Store servo computed values for animation properties (from Manishearth:stylo-keyframes); r=heycam,birtles
Servo counterpart of https://bugzilla.mozilla.org/show_bug.cgi?id=1317208

r=heycam,birtles

Source-Repo: https://github.com/servo/servo
Source-Revision: a46e630b00de3072b0555c605bee35afd9a82da3
2017-01-13 13:25:39 -08:00
Simon Sapin bd33b26e5b servo: Merge #15013 - Add config to do desktop notifications by running an abitrary command (from servo:notify-command); r=emilio
<!-- Please describe your changes on the following line: -->

I now have an usual setup where I use a (fast) remote machine for building, and I’m adding a hack to forward end-of-build notifications back to my laptop. This is the motivation for this change, but I kept it general enough that it could be used in other situations.

---
<!-- 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: 414e2e907d3bb83de1f4ab4ae1050145cb6eadcb
2017-01-13 11:49:16 -08:00
mrnayak 5f13df6afe servo: Merge #14940 - Handle crossorigin in Link (from mrnayak:link-cross); r=jdm
Implemented Step three and handled step four of obtain the resource part
of 4.2.4 The link element.
Link to spec : https://html.spec.whatwg.org/multipage/semantics.html#concept-link-obtain

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

<!-- 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: 9afd96024fc9cb3ea822e8d549f008e03177949b
2017-01-13 10:22:10 -08:00
Aneesh Agrawal 4a4f05025d servo: Merge #15005 - Fix git author setting for brew upload (from aneeshusa:fix-git-author-setting-for-brew-upload); r=jdm
<!-- Please describe your changes on the following line: -->

The fix from #14935 wasn't quite right.

cc @paulrouget

---
<!-- 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
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix servo/saltfs#575 properly (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because they should be tested by running the mac-nightly builder

<!-- 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: dc93a72997aefaeb04cdc058b01fdd2eb14cef8f
2017-01-13 06:33:56 -08:00
Anthony Ramine 9439a8bc84 servo: Merge #15009 - Don't fire a load event on inline scripts (from nox:load-fixes); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 89c210f2c8974f5575047fdab6f2b7bc640c684b
2017-01-13 04:51:50 -08:00
Fabrice Desré bd0b6a2290 servo: Merge #15003 - Update browser.html to pick up the fix in browserhtml/browserhtml#1263 (from fabricedesre:update-browserhtml); r=jdm
<!-- Please describe your changes on the following line: -->
This is the result of running `cargo update -p browserhtml` to pick up the fix for issue #14919

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because there are no reftests for b.html

<!-- 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: e6736d067c80fe8613b1882814d596ba1323b870
2017-01-12 22:44:00 -08:00
Xidorn Quan 72d9cc04b0 servo: Merge #15002 - Fix filling of two vector fields for geckolib (from upsuper:background-fields); r=Manishearth
<!-- Please describe your changes on the following line: -->
This fixes a crash of stylo when you do the following:
```javascript
p.setAttribute("style", "background-blend-mode: multiply");
alert(getComputedStyle(p).backgroundBlendMode);
p.setAttribute("style", "background-blend-mode: normal, normal");
alert(getComputedStyle(p).backgroundBlendMode);
```

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 93d7298a90c400456e3cea8428ad1c1f3254cc22
2017-01-12 21:49:04 -08:00
Bobby Holley 4b2f7a516c servo: Merge #14997 - stylo: Various crash fixes (from bholley:bug_1329845); r=heycam
Corresponding gecko bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1329854

Source-Repo: https://github.com/servo/servo
Source-Revision: cc8bee8f8990e9bb23171fe65a259978749a9d2f
2017-01-12 19:23:17 -08:00
Michael Howell 779c5cda4b servo: Merge #14989 - Fix the incrmental reflow behavior of text-overflow (from notriddle:ellipsis_reflow); r=emilio
This patch allows Servo to incrementally reflow truncated fragments correctly.

* The untruncated version of a fragment is preserved, and when incrementally reflowing, the untruncated version is what gets reflowed. If it needs truncated, it will get truncated again.
* The ellipsis fragments are skipped when incrementally reflowing a line. If it is still needed, it will be recreated.

---

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 6a04aea4a5a0da583e8cc7fc0f76c9bfea857538
2017-01-12 17:31:19 -08:00
Simon Sapin bb3c282f8e servo: Merge #14992 - Upgrade to rustc 1.16.0-nightly (2782e8f8f 2017-01-12) (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: 38fccce3ba512bbf7100574e225d73f538fad5f0
2017-01-12 16:07:54 -08:00
Simon Sapin e704ae41fb servo: Merge #14991 - Update to cargo 0.17.0-nightly (6291619 2017-01-12) (from servo:cargoup); r=nox
<!-- Please describe your changes on the following line: -->

With the previous cargo (and servo’s current rustc, which is newer), `./mach cargo check` warns:

```
warning: --crate-type=metadata is deprecated, prefer --emit=metadata
```

---
<!-- 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: a379b17b4aefc10172b0c455743f5f1f710f6fea
2017-01-12 14:41:35 -08:00
Alan Jeffrey d4bb688708 servo: Merge #14990 - Remove reflow status from browsing context (from asajeffrey:script-remove-browsing-context-reflow); r=emilio
<!-- Please describe your changes on the following line: -->

This PR removes the reflow status from each browsing context. Previously, we were only using it to avoid reflowing on traversal, which is rare enough it doesn't seem worth the complexity.

This is a first step towards #14843.

---
<!-- 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 reflows aren't visible from script

<!-- 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: cad78b9c6f3d13d73a780fd71eaab580639631dc
2017-01-12 13:22:59 -08:00
Ms2ger 6fb4ee2d8b servo: Merge #14984 - Remove unused needsRooting field from JSToNativeConversionInfo (from servo:needsRooting); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 6e26197c069d8dc3e186e48e5a04ed6298b43066
2017-01-12 08:43:06 -08:00
Ms2ger b8ed186412 servo: Merge #14983 - Update js (from servo:update-js); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 550df86ac88ff12ad3964d08b6a678ae0d1b4436
2017-01-12 07:48:13 -08:00
Glenn Watson c8d066971a servo: Merge #14977 - Update WR (shutdown api, clip mask segment optimization, render target sizing) (from glennw:wr-update-1); r=KiChjang
Source-Repo: https://github.com/servo/servo
Source-Revision: 88f02b30824b5ba0be82b0856042e24cad2eb725
2017-01-12 01:28:35 -08:00
Shing Lyu 83f364121f servo: Merge #14937 - Read firefox path from environment variable for performance test (from shinglyu:stylo-perf); r=Manishearth
<!-- Please describe your changes on the following line: -->
This is for Stylo performance testing (at least before we got Talos running)

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
- [x] These changes do not require tests because independent from servo itself

<!-- 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: da25e881459084395b3f8e5891d08de0645b5f0b
2017-01-11 23:14:48 -08:00
Josh Matthews fdd55e0fb8 servo: Merge #14973 - Disable test-stylo on TravisCI (from servo:jdm-patch-1); r=wafflespeanut
Nobody knows what to do about #14723 and Travis always showing failed builds isn't useful.

Source-Repo: https://github.com/servo/servo
Source-Revision: 14aa666a5a485f32fcbf60a2d249d3e4adcc50c8
2017-01-11 20:01:09 -08:00
karenher 00d91ba7e3 servo: Merge #14963 - Report meaningful line numbers for inline script errors (from jdm:script_current_line); r=asajeffrey
Rebased from #14661.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #12744 and partially #9604
- [X] There are tests for these changes

Source-Repo: https://github.com/servo/servo
Source-Revision: eb72c0ec7bc1e3547aa09fbe2ad800310f42989b
2017-01-11 18:11:52 -08:00
Nazım Can Altınova 0ef272bad5 servo: Merge #14964 - Remove unnecessary try!'s (from canaltinova:ok-try); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->
These try!'s are unnecessary here. We can remove them.

---
<!-- 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's just refactoring

<!-- 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: 6447a9783892d6ed585cf75b056ef81f0aba504c
2017-01-11 15:47:04 -08:00
Florian Merz 873f716138 servo: Merge #14291 - Position insertion point in input field with mouse (from fiji-flo:text-input-select); r=pcwalton
<!-- Please describe your changes on the following line: -->
Implements cursor positioning in input elements (text/password) via mouse. The related issue is #10083 but is only covered partly.
This PR does **not** cover:
* positioning in textarea elements via mouse
* text selection in input/textarea elements via mouse

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because I can't think of a way to test mouse interaction in the current test pipeline.

<!-- 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: 68a8e1bf2b57afe9bf6c4fb295bdc5dca099a9f6
2017-01-11 14:19:10 -08:00
ioctaptceb d6124c7d01 servo: Merge #14924 - Webgl blend func tests (from ioctaptceb:webgl-blendFunc-tests); r=jdm
<!-- Please describe your changes on the following line: -->
Add a function that validates the conditions for [Constant Color Blend](https://www.khronos.org/registry/webgl/specs/latest/1.0/#CONSTANT_COLOR_BLEND) in the WebGL specs. ./mach run -r tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/misc/webgl-specific.html

---
<!-- 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: 783829eccc44e1c239a4d1aa807b000b755eeea6
2017-01-11 13:23:08 -08:00
Manish Goregaokar f2812e688c servo: Merge #13972 - ImageMaps: Implemented support for parsing coord attribute to a shape… (from shravan-achar:master); r=Manishearth,emilio,jdm
<!-- Please describe your changes on the following line: -->

Image Maps: (Part 1) Implemented support for parsing coord attribute to a shape object.
                       Implemented a hit_test method to see if a point is within the area. Tests for constructors                      and hit_test included

---

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

… object in HTMLAreaElement

Source-Repo: https://github.com/servo/servo
Source-Revision: f6940f686cce249626e4fe32cc0fe5e0dcd40dd6
2017-01-11 12:25:46 -08:00
Ms2ger c4c86ad9c1 servo: Merge #14961 - Move DevicePixel to script_traits (from Ms2ger:DevicePixel); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 5d3847dddc9bb7907abfa5d38a7927d6c656fbc1
2017-01-11 11:31:15 -08:00
Charles Vandevoorde 079733547a servo: Merge #14911 - Handle properly alternate stylesheet (from charlesvdv:alternate-stylesheet); r=cbrewster
<!-- Please describe your changes on the following line: -->
Alternate stylesheet are now fetched and then desactivated instead of ignoring them.

I don't know if tests are required to check if the stylesheet is correctly loaded and disabled ?
<!-- 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 #14881 (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: cfc74e20603e7395a743b3b3c202db6db840da4d
2017-01-11 10:34:04 -08:00
Anthony Ramine 043b853e17 servo: Merge #14959 - Introduce PendingScript (from nox:pending-script); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: d1bc1a4f1b66ab9f63fa37f649eaf79035e12f8e
2017-01-11 09:37:23 -08:00
Xidorn Quan 975ce8225f servo: Merge #14956 - Extend supported geometry box value for geckolib (from upsuper:geometry-boxes); r=Manishearth
<!-- 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
- [ ] 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: e440a016051703632cac1de6b88ff9e0c94e9017
2017-01-11 08:35:24 -08:00
Ms2ger 4cb0c1862f servo: Merge #14929 - Update image (from servo:update-image); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 12c71c57d178ee5bfd383063ddebb4763006eaf4
2017-01-11 05:37:45 -08:00
Xidorn Quan 75b88db85d servo: Merge #14939 - Add aliases for geckolib for supported properties (from upsuper:add-aliases); r=emilio,Manishearth
<!-- Please describe your changes on the following line: -->
This fixes ~7.5k failures in style system mochitests.

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
- [x] These changes do not require tests because it is for geckolib only

<!-- 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: 04a3242dc54c670dcdafcf1f0ac5373f2ed612f3
2017-01-10 16:18:58 -08:00
Anthony Ramine 6b019344cb servo: Merge #14943 - Introduce ExternalScriptKind to simplify HTMLScriptElement::prepare (from nox:external-script-kind); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: c784bc69443ee6f4f3bd54474ac0e03a2bb92a6f
2017-01-10 09:38:07 -08:00
Ms2ger 9c0a9101b5 servo: Merge #14942 - Fix some warnings (from servo:warnings); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: b5b5533d675db5e015f0596568c369c6cfc6ebb9
2017-01-10 08:00:43 -08:00
Ms2ger 25854451c6 servo: Merge #14938 - Various cleanup around gfx_traits (from servo:gfx-traits); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: f674a9db8b7164dae667875c5cf19b3aabb18ef2
2017-01-10 07:02:23 -08:00
Martin Robinson 1798734219 servo: Merge #14603 - Rework the way scroll roots are collected (from mrobinson:collect-scoll-roots); 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 they should not change behavior.

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

Collect scroll roots during the collect_stacking_context phase instead
of during display list construction. This will be useful in order to
collect containing block scroll roots as well as to give scroll roots
sequential ids in the future. This change also pulls stacking context
children out of the StackingContext struct itself, which should reduce
very slightly the memory used by the finished display list. This also
simplifies the DisplayListBuilder because it no longer has to maintain
a stack of ScrollRootIds and StackingContextIds and can instead just
rely on the program stack.

Source-Repo: https://github.com/servo/servo
Source-Revision: dabb79c7878fce31b8b979dd5fcfdfb8713a9d80
2017-01-10 04:48:31 -08:00
Anthony Ramine 5754480f7d servo: Merge #14928 - Unify text insertion when parsing HTML and XML (from nox:insert); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: f54dd0112bd9e51b21e9a5ee38bb2cfc0326e071
2017-01-10 03:51:47 -08:00
Hiroyuki Ikezoe acccadb9f2 servo: Merge #14879 - Stylo: Store animation properties into gecko's struct (from hiikezoe:animation-properties); r=heycam
<!-- Please describe your changes on the following line: -->
This is the counter part of https://bugzilla.mozilla.org/show_bug.cgi?id=1328786

All patches get reviewed by r=@heycam.
---
<!-- 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's for stylo.

<!-- 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: 43a537a1ba8d62a39e062a21df9d5c771631411b
2017-01-10 02:57:23 -08:00
Glenn Watson 63fc85cd4b servo: Merge #14933 - Update WR (external events, nested clips bug, non-square texture pages) (from glennw:update-wr-pages); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 0246671312a4b5d0ff7c4b538ba0e1ec832b0059
2017-01-10 01:54:46 -08:00
Paul Rouget b252a1118f servo: Merge #14935 - Add git author (from paulrouget:gitAuthor); r=aneeshusa
fix https://github.com/servo/saltfs/issues/575

Source-Repo: https://github.com/servo/servo
Source-Revision: 124301cf484818a87ab0b3e0c4ef34645be66174
2017-01-09 23:43:12 -08:00
Manish Goregaokar c0c991c60c servo: Merge #14932 - Expand ~ in --with-gecko for ./mach build-geckolib (from Manishearth:abspath); r=jdm
Otherwise `~/foo` expands to `/local/folder/~/foo`.

Source-Repo: https://github.com/servo/servo
Source-Revision: ed3f53211ca91a90258c9bc2b8abceddb34e6847
2017-01-09 22:41:10 -08:00
Ms2ger f0271e5f4e servo: Merge #14925 - Some cleanup around JS callbacks (from servo:callback); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: b0a6808956cd861ab5435a6d2a698aa6f5bf096d
2017-01-09 21:09:57 -08:00
Xidorn Quan 3120858b70 servo: Merge #14920 - Correctly handle unserializable shorthand (from upsuper:shorthand-variable); r=emilio
get_shorthand_appendable_value doesn't always return a serializable value. This change makes it handle that case correctly.

This change also updates step number in property_value_to_css to reflect the latest spec.

---
<!-- 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 stylo [bug 1329533](https://bugzilla.mozilla.org/show_bug.cgi?id=1329533)

<!-- 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: 867df7f3d7a89b48de76106601cbc5e474acb9dd
2017-01-09 20:10:32 -08:00
bd339 d8164c36b4 servo: Merge #14868 - Fix loss of response type information in Fetch API (from bd339:iss14068); r=jdm
<!-- Please describe your changes on the following line: -->
Avoids mapping response types that are distinct according to [the spec](https://fetch.spec.whatwg.org/#concept-response-type) to fewer response types. Also updates test expectations to match that we now pass tests that check the response type.

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

<!-- 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: f1c82be0e61df679db25199ac3e7afc4be5d141f
2017-01-09 18:36:38 -08:00
Bobby Holley e445eee20a servo: Merge #14907 - Give up on hoisting ElementData into the frame and eliminate the concept of consuming styles (from bholley:eliminate_consume); r=emilio
Servo PR for the work in https://bugzilla.mozilla.org/show_bug.cgi?id=1325734

Source-Repo: https://github.com/servo/servo
Source-Revision: 2a2a89b7e401e72a4d8d6199c483d7ab09ff5c1e
2017-01-09 17:26:50 -08:00
Glenn Watson ce12233751 servo: Merge #14818 - Update WR (first phase of z-buffer optimizations / improvements) (from glennw:zb); r=pcwalton
Source-Repo: https://github.com/servo/servo
Source-Revision: 851d6230f3836dccdad932d553488c2420b4dbb3
2017-01-09 11:56:40 -08:00
Simon Sapin 59c175b443 servo: Merge #14789 - Support @supports (from Manishearth:supports); r=SimonSapin
fixes #14786

cc @heycam @upsuper
r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 50bba770d6073bba6e6e219dbc3687087a864a42
2017-01-09 10:54:38 -08:00
Ms2ger 2ae1c9c70c servo: Merge #14927 - Use the typed array APIs in ImageData (from servo:ImageData-data); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 9482467addebf6469f86331b34aaf7aab72fa0eb
2017-01-09 09:29:46 -08:00
Frederick F. Kautz IV 9bbc61a923 servo: Merge #14917 - Renaming default_features to default-features as per Cargo's Manifest Format (from fkautz:pr_out_renaming_default_features_to_default_features_as_per_cargo_s_manifest_format); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 93ac10d9b1d34e85f9c1b4ba809b20ad6d9d0f90
2017-01-09 07:35:28 -08:00
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
Martin Robinson 30ffe184f5 servo: Merge #14926 - Move some methods from display_list_builder.rs (from mrobinson:move-display-list-builder-methods); r=emilio
These methods are not only used during display list construction, so
they are a better fit for the flow structs themselves. This does
not introduce any behavior change, but should make it easier to fix

<!-- 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 they are a simple refactor.

<!-- 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: 23265321988113b290aff190f859be2290a81545
2017-01-09 04:31:30 -08:00
Cameron McCormack 6fc96abe8f servo: Merge #14922 - Don't inherit all properties for eagerly computed pseudos if there are no matching rules (from heycam:pseudo-inherit); r=emilio
<!-- Please describe your changes on the following line: -->

When we resolve style for an eagerly computed pseudo-element, such as an anonymous box, if there are no matching rules we currently just clone the parent's style.  We should only do that if `inherit_all` is true, otherwise we should inherit only the inherited properties from the parent.

I was going to use `.unwrap_or_default()` on the result of looking up `precomputed_pseudo_element_decls`, but that didn't seem to work since that map lookup returns a reference and not a `Vec` itself.

r? @emilio

---
<!-- 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 https://bugzilla.mozilla.org/show_bug.cgi?id=1329121

<!-- 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: ebd4a8b3ee1aab910ef714420a814912fec31e30
2017-01-09 02:46:09 -08:00
Cameron McCormack a36ca4a02b servo: Merge #14923 - Update cssparser to 0.7.2 (from heycam:cssparser-up); 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
- [ ] `./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: 13826970c4d9fbbd67cdf9dfb39e8a847cf06541
2017-01-09 00:58:19 -08:00
Cameron McCormack bd3880c9ef servo: Merge #14909 - stylo: update bindings (from heycam:bindings-update-16); r=Manishearth
Bindings update for https://treeherder.mozilla.org/#/jobs?repo=stylo&revision=5a96506c9435a414d37308298f526d25ea402607.

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 6a9e2fd7fb2b985909efeb71ed050c19bb2818d3
2017-01-08 19:13:36 -08:00
Konstantin Veretennicov 26a529e35c servo: Merge #14914 - docs: alphabetize glossary entries (from kveretennicov:patch-1); r=cbrewster
<!-- Please describe your changes on the following line: -->

Moves "Script" after "Renderer".

---

<!-- Either: -->
- [X] These changes do not require tests because it's a trivial documentation edit

<!-- 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: 183c4772e7b93bd6cd9b48a729a043421eb6bc65
2017-01-08 11:38:45 -08:00
Dowon Cha 2ae98c7628 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
Nazım Can Altınova 81472c45ea servo: Merge #14913 - Refactor box longhands (from canaltinova:box-longhands); r=Manishearth
<!-- Please describe your changes on the following line: -->
Converted some longhands into `vector_longhand` to reduce some repeated codes.
Also some of longhands with same `SpecifiedValue` and `computed_value::T` changed. Re-exported SpecifiedValue instead of computed_value::T. Normally a computed_value can't have a parse function.

---
<!-- 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 they're not changing the behavior of the longhands.

<!-- 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: 0d5e021537a18d1e5668c099305cebf754e93007
2017-01-08 06:24:02 -08:00
Nikhil Shagrithaya fc73f1abd9 servo: Merge #14648 - Implemented XMLHttpRequest.send(Document) (from cynicaldevil:xmlhttpreq-send); r=KiChjang
<!-- 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 #9490 .

<!-- Either: -->
r? @KiChjang

`XMLHttpRequest/send-entity-body-document.htm` is not working atm, I get this output:
```
$ ./mach test-wpt tests/wpt/web-platform-tests/XMLHttpRequest/send-entity-body-document.htm
Running 1 tests in web-platform-tests

Ran 1 tests finished in 0.0 seconds.
  • 1 ran as expected. 1 tests skipped.
```
<!-- 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: 87cce8180a3feba92086da0e96ccea09fa177d98
2017-01-08 00:21:14 -08:00
mrnayak ad30e3c8d0 servo: Merge #14865 - Implement Subresource Integrity (from mrnayak:sri-fetch); r=jdm
Implemented response validation part of https://w3c.github.io/webappsec-subresource-integrity/.
Implemented step eighteen of the main fetch. If a request has integrity metadata, then following steps are performed
1) Wait for response body
2) If the response does not have a termination reason and response does not match request’s integrity metadata, set response and internalResponse to a network error.

Dependency updated: html5ever-atoms from 0.1.2 to 0.1.3. This will not completely fix #14523, It will implement changes related to response validation. Request validation algorithm implementation needs CSP.

I did not update any WPT-Test. In my local system, I found some assertion issue dependent on the order of execution of test-case. It would be helpful if someone could do "try" build on these changes to get wpt results.

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

<!-- 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: f958dafcaeed643f1232a23f5c2d4f6ba141bfea
2017-01-07 23:14:37 -08:00
Keith Yeung bf609ffef2 servo: Merge #14712 - Implement CSSKeyframeRule.style (from KiChjang:css-keyframe-rule-style); r=Manishearth
Fixes #14636.

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: cdf14730ff4c17afdfdcc0cefbd0683a4324ba8e
2017-01-07 22:18:11 -08:00
Cameron McCormack 3f6f95c27d servo: Merge #14905 - stylo: support content property (from heycam:content); r=Manishearth
This is the Servo-side of https://bugzilla.mozilla.org/show_bug.cgi?id=1315155, which @Manishearth has already reviewed.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5d796a5453c9a005798ed72007c406b14742631c
2017-01-07 17:56:17 -08:00
Nazım Can Altınova dae3a40a78 servo: Merge #14899 - Fix serialization of timing-function (from canaltinova:transition-timing); r=Manishearth
<!-- Please describe your changes on the following line: -->
`transition-timing-function` and `animation-timing-function` properties corrected to reflect [the spec](https://drafts.csswg.org/css-transitions/#serializing-a-timing-function). It was converting function keywords to `cubic-bezier` or `steps` functions directly. But we needed to store it to use in the serialization step.

---
<!-- 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 #14822 (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: 496447a363ca4fc5d6789241ccb0b94134917b9a
2017-01-07 16:50:27 -08:00
Emilio Cobos Álvarez 7749257de9 servo: Merge #14904 - Allow sharing non-common style affecting attribute selectors (from emilio:non-common-attrs); r=bholley
Something I just noticed while re-reading that code is that we prevent sharing among siblings with different non-common attributes, even though we already have the infra to match those selectors:

```rust
    if !match_same_not_common_style_affecting_attributes_rules(element,
                                                               candidate_element,
                                                               shared_context) {
        miss!(NonCommonAttrRules)
    }
```

Source-Repo: https://github.com/servo/servo
Source-Revision: 2225ccd46416443b1e196a14f5ff1b5dff5001d0
2017-01-07 15:28:15 -08:00
Manish Goregaokar 3c11f552db servo: Merge #14893 - Support property aliases (from Manishearth:alias); r=emilio
Aliases now get forwarded to their "original" property name at parse time. CSSOM continues to provide access through alias getters.

We'll need to probably add `${"-webkit-foo -moz-foo" if gecko else ""}` all over the place. Might want to come up with a convenient attibute name for that (`gecko_prefix="mw"`) or something.

r? @heycam or @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: d14158a592faa40fa027540578cd2c680cd8caf4
2017-01-07 13:56:19 -08:00
Prudhvi Rampey d9c7e77e13 servo: Merge #14891 - Cleaned up ripples due to MutJS to JS type change (from prampey:bluetooth-cleanup); r=jdm,emilio
<!-- Please describe your changes on the following line: -->
Changed all Mutable JS values to JS values in the following files and fixed any differences that might have been caused due to type change.

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because minimal type changes made.

<!-- 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: f94ce710179f34f645b9ea779bab2082593d1de8
2017-01-07 12:01:21 -08:00
Anthony Ramine a8ae8f9091 servo: Merge #14867 - Properly insert text in document when parsing (from nox:a-base-de-popopopop); r=metajack
Source-Repo: https://github.com/servo/servo
Source-Revision: f313e8baffe5a41d839c3e0de28e8cd6e7a4773a
2017-01-07 10:57:36 -08:00
Jure Podgoršek 80f56a2927 servo: Merge #14896 - Tidy assignments (from g1smo:tidy-assignments); r=jdm
<!-- Please describe your changes on the following line: -->
I've added a new tidy rule (no = in the beginning of line) + tests for it. Also cleaned up a few rust source files to accord with the new rule.

---
<!-- 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 #14890 (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: b6c137b36f8b9f9cc5c0105bb94a4edeaf7d09be
2017-01-07 09:40:46 -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
Ms2ger 105925fae7 servo: Merge #14883 - Avoid generating literal nulls in DOM bindings (from servo:null-bindings); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 90877490307eba2885dab3943ecf629dbe4e33b2
2017-01-07 06:33:30 -08:00
Emilio Cobos Álvarez 85d19a99d2 servo: Merge #14833 - style: Isolate the soon-to-be style-backend-specific code from the media_query module (from emilio:mq-refactor); r=heycam,bz
The idea here is having (for convenience) different `Expression` and `Device` representations for Gecko.

Both will be implemented in rust, but will use `nsMediaFeatures` as a source of media features instead of the Servo bits.

Does it sound good?

r? @heycam or @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: fdddeb1c9229b6f9bc202cb2df1a3701eec47e05
2017-01-07 05:03:41 -08:00
Matt Brubeck f0128374f5 servo: Merge #14874 - Update url, num_cpus, heapsize, webdriver (from mbrubeck:always-be-updating); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 3b2a066088491743ddc6900c01ac59726d8927d8
2017-01-06 23:34:20 -08:00
UK992 251f5719c3 servo: Merge #14850 - Appveyor: Use ccache on Windows GNU builds (from UK992:appveyor-ccache); r=larsbergstrom
r? @larsbergstrom

Locally tested:

First run: (Build time: 26:27)
```
cache directory                     C:/github/servo/.servo/.ccache
primary config                      C:/github/servo/.servo/.ccache/ccache.conf
secondary config      (readonly)    C:/building/msys64/mingw64/etc/ccache.conf
cache hit (direct)                     0
cache hit (preprocessed)               0
cache miss                           953
called for link                        5
called for preprocessing               9
compile failed                         6
preprocessor error                    30
unsupported source language            1
autoconf compile/link                 43
no input file                          6
files in cache                      2523
cache size                         443.0 MB
max cache size                       5.0 GB
```

Second run: (Build time: 15:30)

```
cache directory                     C:/github/servo/.servo/.ccache
primary config                      C:/github/servo/.servo/.ccache/ccache.conf
secondary config      (readonly)    C:/building/msys64/mingw64/etc/ccache.conf
cache hit (direct)                   922
cache hit (preprocessed)              31
cache miss                           953
called for link                       10
called for preprocessing              18
compile failed                        12
preprocessor error                    60
unsupported source language            2
autoconf compile/link                 86
no input file                         12
files in cache                      2523
cache size                         443.0 MB
max cache size                       5.0 GB

```

Source-Repo: https://github.com/servo/servo
Source-Revision: 6d4ccab2b71c8eedcf05ed5402195538d626f8c8
2017-01-06 09:05:34 -08:00
Ms2ger f8d08d35f2 servo: Merge #14840 - Implement the entry global (from servo:entry-global); r=nox
Partial fix for #10963.

Source-Repo: https://github.com/servo/servo
Source-Revision: 85d3bbd9994eedd1cca96b239b880a6c2d5aadea
2017-01-06 05:15:11 -08:00
Alan Jeffrey b3d789b81f servo: Merge #14860 - Index the session past correctly when discarding (from asajeffrey:constellation-index-past-correctly-when-discarding); r=cbrewster
<!-- Please describe your changes on the following line: -->

Oops, indexed from the wrong end when discarding documents in #14312.

---
<!-- 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 we're not testing document discarding

<!-- 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: 7f9fd0ec1fe70b491d18e99f68988c1381615810
2017-01-06 03:53:35 -08:00
Xidorn Quan f6c20ab641 servo: Merge #14878 - stylo: Add :-moz-browser-frame pseudo-class (from upsuper:bug1329076); r=heycam
This is the servo part of [bug 1329076](https://bugzilla.mozilla.org/show_bug.cgi?id=1329076) which has been reviewed by @heycam.

Note that it adds some documents on top of the patches on MozReview.

r? @heycam

Source-Repo: https://github.com/servo/servo
Source-Revision: 540efc3e8819f127b18b5ea8d85da6d8282a52be
2017-01-06 02:35:42 -08:00
Xidorn Quan df3cfd5bdf servo: Merge #14872 - stylo: Map more Gecko state bits to Servo state bits (from upsuper:bug1328806); r=bholley
This is the servo part of [bug 1328806](https://bugzilla.mozilla.org/show_bug.cgi?id=1328806) which has been reviewed by @bholley on Bugzilla.

r? @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: 83428ecef703e4bea9814b7969252d3d3c441885
2017-01-06 00:09:32 -08:00
Josh Holmer 2862f2990e servo: Merge #14871 - Use tinyfiledialogs from crates.io (from shssoichiro:14862-tinyfiledialogs-from-crates-io); r=jdm
Use the crates.io version of tinyfiledialogs instead of pulling directly from the git repository.

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

<!-- Either: -->
- [X] These changes do not require tests because no code was changed

<!-- 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: 94d62a2afbbbb08d0225dd45fd8a8480d4bdf98d
2017-01-05 22:49:19 -08:00
UK992 ce7a545f6b servo: Merge #14877 - Package: Create ZIP on Windows and fix MacOS nightlies (from UK992:mach-package); r=Wafflespeanut
Fix https://github.com/servo/servo/issues/14852

r? @Wafflespeanut

Source-Repo: https://github.com/servo/servo
Source-Revision: 698491b8872d9f364e47b4e249851ad35f552a4b
2017-01-05 21:45:31 -08:00
Paul Rouget 55fe4d2c1f servo: Merge #14403 - Fix brew formula update (from paulrouget:fixBrew); r=aneeshusa
Fix https://github.com/servo/saltfs/issues/535

I decided to merge update_brew within upload_nightly.

I hope this will fix the brew formula upadte.

Source-Repo: https://github.com/servo/servo
Source-Revision: 207f9a5d3bb59cfc20b4455531325a3eb5a5ccf3
2017-01-05 19:59:18 -08:00
Alan Jeffrey 31c11f55f7 servo: Merge #14559 - Implement browsing context discarding (from asajeffrey:script-track-document-and-bc-discarding); r=cbrewster
<!-- Please describe your changes on the following line: -->

Implement browsing context discarding (https://html.spec.whatwg.org/multipage/browsers.html#discard-a-document).

* When a pipeline is closed, inform the script thread whether the browsing context is to be discarded.
* In script threads, synchronously discard any similar-origin documents and browsing contexts.
* When a browsing context is discarded, it loses the reference to the active document, but the window keeps it, so we need to move the `Document` pointer from `BrowsingContext` to `Window`.
* Fix the webIDL for Window to make parent and top optional (the spec says they can return null when the browsing context is discarded).

---
<!-- 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 #14411
- [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: 8b274f25d3fcbd92dddb83cd96b59a6d51c69d1b
2017-01-05 18:20:12 -08:00
Matt Brubeck 56f82bda4d servo: Merge #14866 - Stylo: Disable regex feature of env_logger (from mbrubeck:stylo-env-logger); r=bholley
To reduce binary size.  See [bug 1328497](https://bugzilla.mozilla.org/show_bug.cgi?id=1328497) for details.  r? @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: f8389443323805481f753ab4b10762b72d56dcd4
2017-01-05 15:54:10 -08:00
Ms2ger 586577dcaa servo: Merge #14864 - Remove some unsound JSVal handling in JsTimerTask::invoke (from servo:timers); r=jdm
We were using Handles to *copies* of the traced values, rather than the
originals.

Source-Repo: https://github.com/servo/servo
Source-Revision: c3cf4386b04dd3609ada0824c32b0517f840d185
2017-01-05 14:00:50 -08:00
charlesvdv 6505872a96 servo: Merge #14863 - Allow cli prefs to have numerical value (from charlesvdv:prefs); r=jdm
I'm not sure as I'm new with servo but shouldn't the new function ```parse_opt_prefs``` be in ```prefs.rs``` instead of ```opts.rs``` ?

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

<!-- 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: 42e28bf7e59e0c7fab7163326d7374d1c4e268d1
2017-01-05 12:09:01 -08:00
Ms2ger d17bdf7044 servo: Merge #14859 - Simplify CallSetup (from servo:CallSetup); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 839b7fe8ef57501ec876d66728e8d6ea9c1757f6
2017-01-05 07:33:46 -08:00
Alan Jeffrey 94a31a8931 servo: Merge #14351 - An in-memory RNG that shares its file descriptor (from asajeffrey:servo-rand-share-fds); r=emilio
<!-- Please describe your changes on the following line: -->

This PR implements an in-memory random number generator that only uses an OS RNG for (re)seeding. The OS RNG is shared, so there's only one file descriptor for `/dev/urandom` being used.

The PR also implements a tidy check that we don't accidentally introduce an RNG. Rather annoyingly, there are a lot of transitive dependencies on `rand`, notably hash maps in `std`.

This PR makes it possible to use uuids for identifiers such as pipeline and frame ids.

---
<!-- 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 it's fixing a resource issue

<!-- 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: 36ddf763f66b1b971db07649ff5c69b2e9fd5f91
2017-01-05 06:32:23 -08:00
Xidorn Quan a5effe547c servo: Merge #14857 - Add support for -moz-top-layer (from upsuper:moz-top-layer); r=emilio
<!-- 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
- [ ] 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: 65497b493ae011d4787f5ca9a7e178d3e17fde8a
2017-01-05 04:45:40 -08:00
Hiroyuki Ikezoe 41946d7274 servo: Merge #14851 - animation-iteration-count property is a number instead of integer (from hiikezoe:float-iteration-count-rebased); r=emilio
<!-- Please describe your changes on the following line: -->
This is a revised PR  for #14732.
@emilio?
---
<!-- 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] 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: 1d9bbfa07b5aef22a318808e3796872ee12e665c
2017-01-05 03:44:20 -08:00
Eric Anholt eaf4d76084 servo: Merge #14847 - webgl: implement bufferData (from anholt:webgl-bufferdata); r=emilio
<!-- Please describe your changes on the following line: -->

Adds support for the other overload of bufferData, fixing many conformance tests.  In the process I had to fix the webidl codegen in the overload-distinguished-by-an-object case.  Also includes a little fix for glEnable() validation.

---
<!-- 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: 4216c16879efb6e87b3ba3b7b4d5c2aeb8e2739d
2017-01-05 02:11:29 -08:00
Boris Zbarsky d934174175 servo: Merge #14848 - Stop using global initial styles for stylo; the initial styles need to be per-document (from bzbarsky:initial-styles); r=bholley
<!-- 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 https://bugzilla.mozilla.org/show_bug.cgi?id=1298588

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests on the servo side because behavior is unchanged.  Gecko-side tests probably exist.

<!-- 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: 143dfc879e609603839502d61bc064fba96cc80f
2017-01-04 21:01:38 -08:00
Alan Jeffrey 71d121887c servo: Merge #14312 - Implement discarding Document objects to reclaim space (from asajeffrey:script-discard-documents); r=cbrewster
<!-- Please describe your changes on the following line: -->

This PR implements document discarding. Active documents are kept alive strongly, but inactive documents are only kept alive weakly. When a document is GCd, it is marked as discarded, and if it is every reactivated, a reload of the URL is triggered.

Note that this PR is pretty aggressive about discarding, and can any inactive document (other than those being kept alive by other same-origin pipelines). We might want to damp it down a bit.

Also note that this interacts with browser.html in that the reloading triggered by reactivating a document triggers mozbrowser events.

To test this, I added a `-Zdiscard-inactive-documents` debug flag, which discards all inactive documents, even ones which are reachable through other same-origin pipelines.

---
<!-- 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 #14262.
- [X] These changes do not require tests because we should be able to use the existing tests with `-Zdiscard-inactive-documents`.

<!-- 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: 16b0da5004fd730de87883daa35a78b6af01f042
2017-01-04 13:58:57 -08:00
Josh Matthews a996fde1ee servo: Merge #14845 - Avoid restyling elements that aren't in a document (from jdm:restyle-ood); r=emilio
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #14480
- [X] There are tests for these changes

Source-Repo: https://github.com/servo/servo
Source-Revision: 2fe914e2fa68f44db903bc3de55d9823a44cdf0d
2017-01-04 12:19:00 -08:00
Ravi Shankar 09c2667a16 servo: Merge #14738 - Properly dispatch keypress event (from Wafflespeanut:keypress); r=jdm
<!-- Please describe your changes on the following line: -->

This was an attempt to fix #14659. It turned out that the problem wasn't what I thought it was. So, I didn't fix that. On the brighter side, this fixes two related issues.

- Previously, we were unable to launch `keypress` events from `input` and `textarea` elements, because [we'd been cancelling](1327ebd52f/components/script/dom/htmlinputelement.rs (L1120-L1124)) the key events, so that they don't trigger window navigation - #8400). I've introduced an enum to represent an additional state to an event's cancellation.
- [According to the spec](https://w3c.github.io/uievents/#keypress-event-order), `keypress` (if available) should be dispatched immediately after `keydown`, and it should be followed by `input`. Canceling `keypress` should also cancel `input`. But, we'd been dispatching `input` before `keypress`. We now dispatch `input` once the `keypress` event is on the respective elements.

---
<!-- 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's a refactor?

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

r? @jdm or anyone interested

Source-Repo: https://github.com/servo/servo
Source-Revision: 6f9ff7b8bf66cbeb7d539c6728db05f05aa8f85c
2017-01-04 10:52:06 -08:00
Emilio Cobos Álvarez a6aefada7d servo: Merge #14844 - style: Simplify Debug impl for PropertyDeclaration reusing to_css (from emilio:to-css-simplification); r=SimonSapin
These two functions appear in the data from bug 1328497, and the second part of one is identical to the other.

I think the way to fix this is another one (either using static arrays to get
the interesting data, or making rust generate the equivalent code).

Source-Repo: https://github.com/servo/servo
Source-Revision: 96fd0837d3de70b1f0d8f2bff0253b0220e7e5ce
2017-01-04 09:37:48 -08:00
Josh Matthews 21f4c47f0f servo: Merge #14841 - Track stylesheet load's document instead of using element's current document (from jdm:stylesheet_document); r=emilio
For cases where a stylesheet load finishes in a different document than it started, we need to be more careful about which document we report the completion to. In this case we actually have separate requests for each document involved, but they previously used the same element to determine which document to interact with.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 384e905be23cd10e7bc352da1171b9af9e6eaddc
2017-01-04 07:26:04 -08:00
Bobby Holley b830eea173 servo: Merge #14835 - Switch to crates.io for atomic_refcell (from bholley:external_atomic_refcell); r=Manishearth
r? @Manishearth

See #14828 for backstory.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1e927ca88bf6622d5a87db75863f76976a1df56c
2017-01-03 19:20:59 -08:00
Manish Goregaokar decaa4de10 servo: Merge #14827 - Add spec links to all CSS properties (from Manishearth:spec-doc); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 61f6454b9ccc053aa39ad4db4fc8ffb0c0432513
2017-01-03 14:28:29 -08:00
Bobby Holley 3e7b592e7b servo: Merge #14828 - Reimplement AtomicRefCell with pure atomics (from bholley:faster_atomic_refcell); r=Manishearth
While reviewing @bzbarsky's patches in [1], I started typing out some lore about how mutable AtomicRefCell borrows are actually cheaper than immutable ones, so we should prefer them where possible. But then I decided that this was a really dumb state of affairs and that we should just fix AtomicRefCell instead, and implement a proper AtomicRef{,Mut}::map while we were at it. So here we are.

This PR adds a from-scratch implementation of AtomicRefCell that aims to be 100% sound, even in unrealistic overflow scenarios. We should probably get this on crates.io eventually, but I want to land it landed in-tree first.

With this implementation, each operation (borrow or release) is one atomic instruction, and all borrow/release pairs (mutable or immutable) take 12 ns on my machine, which is what I'd expect. This is a 50% improvement over the previous implementation in the immutable case.

There may be some places where we could get away with Ordering::Release instead of Ordering::AcqRel, but it didn't seem worth it to try to reason it out.

r? @Manishearth

CC @emilio @SimonSapin @heycam @upsuper

[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1298588

Source-Repo: https://github.com/servo/servo
Source-Revision: 57b2c2609eb05ab06291137904703565a25a1cca
2017-01-03 12:24:45 -08:00
Ms2ger db3e1b39e3 servo: Merge #14831 - Rustfmt script_traits and net_traits (from servo:rustfmt-traits); r=nox
CC #8553.

Source-Repo: https://github.com/servo/servo
Source-Revision: 68ecb0484739ffacc4e76b4cbf54bcf20e5cca2b
2017-01-03 08:11:09 -08:00
Cameron McCormack 6243c29b80 servo: Merge #14830 - stylo: update bindings (from heycam:bindings-update-15); r=emilio
Bindings update for https://treeherder.mozilla.org/#/jobs?repo=stylo&revision=8ebbde564daf4f7019d874e4b888bd670c81e6cc.

r? @emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: 672f099c95f8b5b98b762beb2a36957e32713940
2017-01-03 06:08:30 -08:00
Anthony Ramine 864dd6aa8e servo: Merge #14686 - Improve dead_code handling a bit (from nox:dom); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 2694463b08f8f37b8a5351fa3199b3283b90cb3d
2017-01-03 05:13:23 -08:00
faineance 50d34566d3 servo: Merge #14706 - Allow passing --nocapture argument to test-unit mach command (from faineance:test_unit_no_capture); r=Wafflespeanut
This adds the ` --nocapture` argument to the test-unit mach command.
Defaulting to false, when given it passes `-- --nocapture` to cargo test to show stdout during test-unit runs.

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

<!-- 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: 955e2851bf715f2d7ec7898fdf9730b24fe69115
2017-01-03 00:36:13 -08:00
Ravi Shankar 460bbac31c servo: Merge #14829 - Fix browserhtml path (from Wafflespeanut:browserhtml); r=UK992
<!-- Please describe your changes on the following line: -->

I'd missed something in #14817, which now prevents us from running `./mach run -r -b`. @UK992 pointed this in the PR, but it got merged soon 😐

---
<!-- 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's a fix for mach

<!-- 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: 128aac921f4373b618418125ea6f7c6ac3797181
2017-01-02 23:44:19 -08:00
Matt McCoy 57552872cf servo: Merge #14784 - Updating http_network_or_cache_fetch to better match the fetch API spec (from mattnenterprise:fetch-api-updates); r=jdm,KiChjang
<!-- 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 #14742

<!-- 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: 987b640c54c86c020dc4948be2a41fd58e8ade02
2017-01-02 11:30:51 -08:00
Florent FAYOLLE cc093decbd servo: Merge #14825 - Remove useless call to map() in constellation.rs (from fflorent:master); r=jdm
Remove a little bit useless call to map() in constellation.rs :)

Context: https://github.com/servo/servo/pull/14724/files#r94317893

---
<!-- 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 [this remark](https://github.com/servo/servo/pull/14724/files#r94317893)

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because these are minor 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: b65eefe7d2f3a46e03c1c3ef6d893f8e3200ae77
2017-01-02 10:35:04 -08:00
Teodor Szente 57d6ec419b servo: Merge #14817 - Remove duplicate code in mach (from teosz:master); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->
Move get_browserhtml_path to command_base

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because removing the duplicate code doesn't affect the behavior itself

<!-- 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: 2bf71800ef82ed0dad8668bad6f506d3744f1833
2017-01-02 06:41:00 -08:00
Emilio Cobos Álvarez 121224a608 servo: Merge #14819 - Document most of the remaining parts of the style system, make docs-by-default for the whole style system (from emilio:no-missing-docs); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 87847324a0815e2214fd34da89bbefa4222b1197
2017-01-02 04:10:56 -08:00
Simon Sapin be2705247b servo: Merge #14689 - Update to rustc 1.16.0-nightly (4ecc85beb 2016-12-28) (from servo:rustup); r=Manishearth
<s>**This is not ready to land** since there is no corresponding Nightly build of Rust yet.</s> Update: we got a Nightly build on 2016-12-29: http://rusty-dash.com/nightlies

I made these changes to check that https://github.com/rust-lang/rust/pull/38566 fixes https://github.com/rust-lang/rust/issues/38535 (which it does, yay!) so I might as well publish them, we’ll need them soon enough.

---
<!-- 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: 9bdd0f401a89398fb2ecd4f6b54691a7c93b2e53
2017-01-02 03:03:40 -08:00
Simon Sapin b9674a7721 servo: Merge #14821 - More docs in style (from servo:docs-in-style); r=emilio
Follow up to #14802.

r? @emilio

---
<!-- 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
- [ ] `./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: 32eca899e6784a5ae440b2544a1b92bb238a7406
2017-01-02 02:08:01 -08:00
Cameron McCormack b9d0a6a0ad servo: Merge #14790 - stylo: update bindings (from heycam:bindings-update-14); r=Manishearth
Bindings update for https://treeherder.mozilla.org/#/jobs?repo=stylo&revision=68a742b057d75c060fc7e37b8ab89bbffbbb9e2e.

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: e995af9cff24801e3c2441f00cf65157b7c61b2c
2017-01-01 19:20:37 -08:00
Xidorn Quan 2b9b2c6976 servo: Merge #14769 - Update helper functions of StyleComplexColor (from upsuper:complex-color-update); r=heycam
<!-- Please describe your changes on the following line: -->
The definition of `StyleComplexColor` in the Gecko side was updated in [bug 1063162](https://bugzilla.mozilla.org/show_bug.cgi?id=1063162). The helper functions need update as well.

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: bbe70c7c5f07a67c48523221cb5d9ba12cbb2151
2016-12-31 22:33:47 -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 b5757b5057 servo: Merge #14802 - Document more style modules (from emilio:no-missing-docs); r=Wafflespeanut
Source-Repo: https://github.com/servo/servo
Source-Revision: 2ebcad10f58151a1c531d80794a0211ba12cbeb0
2016-12-31 15:34:51 -08:00
Eric Anholt fe6309141e servo: Merge #14809 - webgl: Validate enums for blendEquation (from anholt:webgl-blend-enums); r=emilio
Improves a conformance test that tried passing in desktop GL enums for
blending.

---
<!-- 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: b29b33c84c366e38bbb0d2e887469f814bc4d876
2016-12-31 14:21:20 -08:00
Nazım Can Altınova 48031a5745 servo: Merge #14757 - Fix `overflow` serialization with CSS-wide keywords (from canaltinova:overflow); r=Manishearth
<!-- Please describe your changes on the following line: -->
Overflow does not behave like a normal shorthand. CSS-wide keywords were handled in their `to_css_declared` method. So I had to bypass this check to make it work.

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

<!-- 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: 62ff467be855f222829ec961a104a0fdd3e083b0
2016-12-31 11:26:21 -08:00
Emilio Cobos Álvarez 89013f9ba5 servo: Merge #14801 - style: Document and force documentation in a big chunk of the style crate (from emilio:no-missing-docs); r=mbrubeck,Manishearth,Wafflespeanut
Style no forced docs for the properties code and similar, but I ran out of time, and I think it's a nice improvement.

I'd appreciate a fast-ish turn-around time because this is pretty much prone to bitrot.

Source-Repo: https://github.com/servo/servo
Source-Revision: bd67163438317daa711b2411ce302aaf5bf4136a
2016-12-31 03:19:02 -08:00
Matt Brubeck 199f5d426d servo: Merge #14798 - Fix rowspan handling for rows that span to the end of the rowgroup (from mbrubeck:rowgroup); r=notriddle
This fixes `rowspan="0"` to behave as described in [the HTML spec](https://html.spec.whatwg.org/multipage/tables.html#attributes-common-to-td-and-th-elements):

> For this attribute, the value zero means that the cell is to span all the remaining rows in the row group.

It also prevents any `rowspan` from overlapping into another rowgroup, as required by [HTML § 4.9.12](https://html.spec.whatwg.org/multipage/tables.html#table-processing-model):

> Row groups cannot overlap each other. Similarly, column groups cannot overlap each other. A cell cannot cover slots that are from two or more row groups.

r? @notriddle or @pcwalton

---

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

Source-Repo: https://github.com/servo/servo
Source-Revision: c2ac495188efb5d2af75a0158a5f72614d5f6062
2016-12-30 21:56:00 -08:00
Emilio Cobos Álvarez c6f610c9b9 servo: Merge #14793 - stylo: Support at-import (from emilio:stylo-at-import); r=heycam,Manishearth
Reviewed upstream by @heycam  and @Manishearth in:

https://bugzilla.mozilla.org/show_bug.cgi?id=1304792

Source-Repo: https://github.com/servo/servo
Source-Revision: 569e61e7ff6231ff62b8dc402c3e33b6072af6d8
2016-12-30 19:12:55 -08:00
Matt Brubeck f536061dca servo: Merge #14800 - Fix an unused variable warning in net_tests (from mbrubeck:warnings); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 30b67a8d7a2435c00177e4731531a2c5fbf54084
2016-12-30 17:28:06 -08:00
Raghav ebf6723fe2 servo: Merge #14794 - Refactor HSTSList to use HashMap (from mrnayak:hsts-refactor); r=emilio
Refactored HSTSList to use HashMap, where the key of HashMap is the base domain. Every time when we check if a host is secure, we find the base domain of the host and get a vector of HSTS entries associated with the base domain.

While this will not give O(1) look up time, we would have a smaller list to iterate for every lookup. I have added one unit test to validate `HashMap` changes.

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

<!-- 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: b06f4aec67ff93b1d667a5817084b0952e56664e
2016-12-30 10:33:40 -08:00
Emilio Cobos Álvarez e33a6984d2 servo: Merge #14739 - style: Cleanup and refactor how media types are represented (from servo:stylo-mq); r=Manishearth
This is necessary for the upcoming work in Stylo, given I plan to make MediaType
different for Servo and Gecko, and the Unknown variant doesn't fit in MediaType
to be fair, the device is never going to have any unknown media type.

Source-Repo: https://github.com/servo/servo
Source-Revision: d3875f6ec52fdb6bbe49719af6bff299c792ae0b
2016-12-30 06:05:43 -08:00
Ms2ger 0c2495a286 servo: Merge #14792 - Stop allowing unsafe code around thread_local (from servo:tl-unsafe); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 608511ddc3440bfa92b8cb001b5e9f10bc291150
2016-12-30 03:04:12 -08:00
Cameron McCormack 537718af60 servo: Merge #14776 - stylo: Don't persist styles on elements not in the document (from heycam:not-in-doc-persist); r=emilio
<!-- Please describe your changes on the following line: -->

This is the Servo half of https://bugzilla.mozilla.org/show_bug.cgi?id=1324983, which @emilio has already reviewed.

Source-Repo: https://github.com/servo/servo
Source-Revision: b49eb6f56664e5e8db326466726ccf3b58397168
2016-12-29 19:00:30 -08:00
UK992 76bfd8c1e3 servo: Merge #14737 - Package: Various improvements (from UK992:package-prefs); r=Wafflespeanut
Fixes https://github.com/servo/servo/issues/11966
Fixes https://github.com/servo/servo/issues/12707

Also adds simple mechanism to set os specific prefs, by adding  like `os:macosx,os:windows;` before pref name.

Source-Repo: https://github.com/servo/servo
Source-Revision: b5f3d7dd413886037de8f1bc435ede34a98421b3
2016-12-29 10:28:37 -08:00
Xidorn Quan 97376dcc30 servo: Merge #14768 - Upgrade libbindgen to 0.1.5 (from upsuper:upgrade-bindgen); r=emilio
0.1.4 is known to be broken on Windows, and earlier version may not work properly in various platforms.

r? @emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: ab623de2617c5a5414f4a0ac7cd66627214f82d5
2016-12-29 04:49:16 -08:00
Ms2ger 303d98f96d servo: Merge #14647 - Support the 'current' global object (from servo:current-global); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 885d152e92b20bdaeb0d0ad20affd269fc3b55d3
2016-12-29 01:38:19 -08:00
Raghav f2c2d3f13a 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
Xidorn Quan 51301d6bd9 servo: Merge #14771 - Add support of text-combine-upright for stylo (from upsuper:text-combine-upright); r=Wafflespeanut
<!-- 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 it is just a trivial change for stylo only

<!-- 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: 49bdef98bff28771b189073f5f0d487fe9529b86
2016-12-28 21:19:26 -08:00
Prudhvi Rampey 5952b8fef9 servo: Merge #14762 - Error handled canvas closing (from prampey:error-handle); r=jdm
<!-- Please describe your changes on the following line: -->
Correctly handled error when Canvas doesn't close properly, with a descriptive warning.

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because minor changes don't require tests.

<!-- 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: c6ea1ec91f4a0b79b4fcdfa05a9b492fa6c9a798
2016-12-28 13:49:02 -08:00
Raghav 15835c76a2 servo: Merge #14760 - Update links to DOM Parsing specification (from mrnayak:update-links); r=jdm
Changed links from https://domparsing.spec.whatwg.org/ to
https://w3c.github.io/DOM-Parsing/.

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

<!-- Either: -->
- [X] These changes do not require tests because these are link 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: 149facbb3c6da82d445aa29b694097d451711bbb
2016-12-28 12:05:23 -08:00
Nick Price a0af6e8d8c servo: Merge #14746 - Default is top-to-bottom if unset, not bottom-to-top (from DominoTree:fix-linear-gradient); r=emilio
<!-- Please describe your changes on the following line: -->
Reverse linear gradient direction if not explicitly specified to match expected default behavior

---
<!-- 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 #14745 (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: adb3e12b72a3d11cbe0973321cbe8009c2555c7a
2016-12-28 10:46:53 -08:00
Sumant Manne 9dc5259c01 servo: Merge #14718 - Rewrote websocket array buffer handling to typed array API (from dpyro:websocket-typed-arrays); r=jdm
<!-- Please describe your changes on the following line: -➜
Replaced existing code for handling `BinaryType::Arraybuffer` from `JS_NewArrayBuffer` to `Uint8Array::create`.

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

<!-- Either: -->
- [X] These changes do not require tests because they replace an existing implementation

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

I am not certain the test suite will adequately verify my implementation as I am not familiar with the architecture. It compiles and passes the current tests.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0f600db3ae5f1464b5d8fed169e6d50974715013
2016-12-28 09:43:51 -08:00
mati865 eb3464f50e servo: Merge #14346 - Use MSVC toolchain if PLATFORM is defined (from mati865:master); r=UK992,larsberg
<!-- Please describe your changes on the following line: -->
`VSInstallDir` exists only when Visual Studio is installed.
`VS140COMNTOOLS` is defined by installing either Visual Studio or [Visual C++ Build Tools](http://landinghub.visualstudio.com/visual-cpp-build-tools)

It will allow to build MSVC based Servo without having to install whole Visual Studio (few GiB).

EDIT: Another (maybe cleaner) solution would be reverting 63ec96a57d

---
<!-- 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
- [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 `VS140COMNTOOLS` variable is already used in [mach.bat](https://github.com/servo/servo/blob/master/mach.bat)

<!-- 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: 7f2da7483b2d0c71a227fb8707eea00b0602d977
2016-12-28 07:37:45 -08:00
Xidorn Quan 02804e87c7 servo: Merge #14754 - Skip invoking bindgen if no header changes (from upsuper:skip-bindgen); r=emilio
This can avoid doing bindgen when build script is called for updating other files, e.g. properties.

This uses a global modified time, so there is a chance that some of the files which can be skipped but not skipped. But given that we do all three files in parallel, that would unlikely affect the actual runtime.

Using lots of `Mutex` could be an issue, but it doesn't seem to be in practice. Since only one thread would hold the lock of `ADDED_PATHS`, there is never a competitor for the lock of `LAST_MODIFIED`.

r? @emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: 9e0d269353d9380cb5cd12170679f2e82ab8c9f7
2016-12-28 04:51:53 -08:00
Hiroyuki Ikezoe ff5e2c7915 servo: Merge #14747 - Interpolate colors with premultiplied alpha (from hiikezoe:color-interpolation2); r=emilio
We need to clamp each interpolated values because some cubic-bezier functions
produce values that are out of range [0, 1].

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

<!-- 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: f9d971771c62f244c338be1cb34e0aa191d64206
2016-12-28 02:06:38 -08:00
Shing Lyu 72f401280b servo: Merge #14124 - Flexbox trace (from shinglyu:flexbox-trace); r=glennw
<!-- Please describe your changes on the following line: -->
This is a follow up for #13740, so r? @jdm

The first patch enables JSON serialization for flexbox flows, the second one fixed format incompatibilities for the layout viewer.

The 3rd and 4th patches are just layout viewer UI enhancements, we could split that to a spearate PR if you prefer.

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because it's a trivial debug tool

<!-- 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: 58fec2f05a21eb69899c8ec21e4b95000cfed2f2
2016-12-28 00:33:31 -08:00
Xidorn Quan eb533a55dd servo: Merge #14753 - Avoid write atoms files when not necessary (from upsuper:atom-gen-update); r=Wafflespeanut
This would avoid rebuilding style component even if nothing is changed when using "mach build-geckolib --with-gecko".

The `FileAvoidWrite` class is a simplified version of [the same class used in Gecko's build system](https://dxr.mozilla.org/mozilla-central/rev/dccfc624915b1bebe7975076e9b42bd46684cbc6/python/mozbuild/mozbuild/util.py#202).

r? @Wafflespeanut

Source-Repo: https://github.com/servo/servo
Source-Revision: 81ca858678953105ee97f482eb3900729fa4d696
2016-12-27 23:05:43 -08:00
Bobby Holley b7870a05af servo: Merge #14751 - style: Add a special, explicit path for lazy style resolution and use it for getComputedStyle (from heycam:transient); r=heycam
<!-- Please describe your changes on the following line: -->

This is the Servo-side part of @bholley's final patch of https://bugzilla.mozilla.org/show_bug.cgi?id=1324627, which I've already r+ed.

Source-Repo: https://github.com/servo/servo
Source-Revision: f36b5531cb7a28036bdb29cf5619ec0da1030849
2016-12-27 19:55:01 -08:00
Matt McCoy 51491e585b 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
Roman Zaynetdinov 9ee4872251 servo: Merge #14727 - Use typed array in TextDecoder::Decode (from zaynetro:textdecoder-use-typedarray); r=jdm
<!-- Please describe your changes on the following line: -->

Use typed array API in TextDecoder::Decode

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

<!-- Either: -->
- [x] These changes do not require tests because no new methods were introduced

<!-- 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: eb64edec848f570bc89ac87cb185ecd87c16e005
2016-12-27 06:56:15 -08:00
deror1869107 f1c309882f servo: Merge #14744 - Move frame from constellation (from deror1869107:move_frame_from_constellation); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->

Move frame from constellation

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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 93e3c3f4241d09521005725699cf1ed1e2ba8f46
2016-12-27 00:24:14 -08:00
Nazım Can Altınova e483a0c5b6 servo: Merge #14703 - Add gecko glue for perspective/transform properties (from canaltinova:perspective-transform); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->
To be able to add glue for these properties,  we needed to change their structs. They are moved from effects to box and added stylo glue.
This PR covers these properties:
- perspective
- perspective-origin
- backface-visibility
- transform-box
- transform-style
- transform-origin

---
<!-- 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 they are stylo 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: a6d206eb6687da31c957094bbed380c9e47daac4
2016-12-26 21:48:52 -08:00
Cameron McCormack cfd016aebe servo: Merge #14743 - stylo: update bindings (from heycam:bindings-update-13); r=emilio
Bindings update corresponding to https://treeherder.mozilla.org/#/jobs?repo=stylo&revision=94459122fed6b6fbfa5c73c6b1eed0e75d09e357/.

r? @emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: 87acac1ea01ade095be66435eea9b33f68d28b0b
2016-12-26 19:25:32 -08:00
Matt Brubeck 61cae9bbf7 servo: Merge #14518 - Fix inline layout of table cells impacted by rowspan (from mbrubeck:rowspan2); r=notriddle
This is part of the fix for #11297. This PR fixes the inline layout of table cells impacted by row-spanning cells from previous rows. A separate PR to follow will fix the table block size calculations to account for rowspan.

This PR doesn't yet include any test changes. If it doesn't cause any existing tests to pass, I will add a new test to it.

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 9d320d5a34fe9911266940eb1ce96204d345b678
2016-12-26 10:09:09 -08:00
UK992 04302a98c4 servo: Merge #14715 - Tidy: Check Cargo.lock for packages with same version and different sources (from UK992:tidy-check-lock); r=SimonSapin
<!-- Please describe your changes on the following line: -->
r? @Wafflespeanut

cc @SimonSapin

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

<!-- 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: 37a5e29147f0dc489888377d6f7bb53282dc04f9
2016-12-26 08:57:04 -08:00