Commit Graph

558 Commits

Author SHA1 Message Date
Bobby Holley
e2e8bf649e servo: Merge #15953 - Make size_of tests measure stylo and reduce the size of stylo PropertyDeclarations by 16 bytes (from bholley:size_of_stylo); r=Manishearth
Right now they don't, which means that we have four properties making PropertyDeclaration 16 bytes bigger than it should be.

I'm not sure if there's a better way to get these tests to run against stylo than to hoist them into the properties file, but I couldn't figure it out. This seems good enough.

Source-Repo: https://github.com/servo/servo
Source-Revision: f5c67fda04195bd6d8ef10a73b9158eb60dbd6d7

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b676ce616df6c86cb142864ce941c57fca3ffe52
2017-03-15 11:23:24 -07:00
lucantrop
553f1c9c63 servo: Merge #15927 - added tidiness check for "-> ()" (from lucantrop:master); r=Ms2ger
<!-- Please describe your changes on the following line: -->
I added the check, modified the tests and removed all instances of "-> ()" that were already there.

---
<!-- 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 #15925 (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: a6f89c503671726bcb0407cd84c380f3af4a7916

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 825958bdb427ce2644ceac397d0a4fd38660acbc
2017-03-13 10:01:16 -07:00
Matt Brubeck
406659df7b servo: Merge #15875 - Fix bug bootstrapping stable rust (from mbrubeck:bootstrap-stable); r=nox
<!-- 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 touch build infrastructure 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: 2ad2e095719bc489e9902a64fccddffe2c5662d2

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 470bcab7513f3ddda1526fc25b53c5d83b77ae40
2017-03-08 09:46:58 -08:00
UK992
ec9410395e servo: Merge #15230 - Mach bootstrap: Improve and support more platforms (from UK992:mach-bootstrap); r=aneeshusa
<!-- Please describe your changes on the following line: -->
r? @aneeshusa or @Wafflespeanut

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2db01a1fb1fbd61d2cb366d383b1e2c816a5080e
2017-03-04 04:47:13 -08:00
UK992
fa5cf3d7c1 servo: Merge #15753 - Fix Cargo.toml in servo_tidy_tests (from UK992:tidy); r=jdm
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #15737

Source-Repo: https://github.com/servo/servo
Source-Revision: 28bd00debc4f64ff4a9973bea0003c3fd6776299

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c3ba9a60a9c479fbc38985ad84a014f910c5822c
2017-02-27 08:56:30 -08:00
Jefry Lagrange
6f741939e8 servo: Merge #15649 - Rewrite the ban-type lint in Python (from zimio:issue-15591-rewrite-ban-type-lint); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->
Rewrite the ban-type lint in Python.

Question: Should the old ban-type lint written in rust be deleted?

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

<!-- 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: 261df34ced0bdcb8126994c8653ac101d1172085

--HG--
rename : servo/tests/compiletest/plugin/compile-fail/ban-domrefcell.rs => servo/python/tidy/servo_tidy_tests/ban-domrefcell.rs
rename : servo/tests/compiletest/plugin/compile-fail/ban.rs => servo/python/tidy/servo_tidy_tests/ban.rs
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : adf4a3a1bb9570e342bcd4233445178fcf107802
2017-02-26 09:35:12 -08:00
UK992
f5f93faeeb servo: Merge #15731 - Update servo-tidy to 0.3.0 (from UK992:tidy); r=Wafflespeanut
r? @Wafflespeanut

It's ready to publishing to PyPI.

Source-Repo: https://github.com/servo/servo
Source-Revision: 524ba6a442f3215935f0b80b8b198eef096363bb

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : d287c6e99677b67c888cd9a0b9d9ac3cd3d2b53f
2017-02-25 06:41:05 -08:00
vwvww
1c30442333 servo: Merge #15690 - Add 'use statements with extraneous spaces' tidy check (from vwvww:issue_14898); r=Wafflespeanut
Add 'use statements with extraneous spaces' tidy check

I added simple check routine for 'use statements with extraneous
spaces' and codes that breaks the check routine in rust_tidy.rs.

* Added a code that using 'use statements with extraneous spaces' code
  in rust_tidy.rs
* Added assertion code in test_tidy.py.
* check_rust function in tidy.py now recognizes the simple case in
  the 'use statements with extraneous spaces'.
* Ran tidy check on rust code and modified a
  code(tests/unit/style/parsing/inherited_text.rs) that is not passing
  on this new tidy check.

TODO: this code has to be refactored to support more general cases, such as tab or newline.

- [X] `./mach build -d` does not report any errors
- [X] ./mach test-tidy does not report any errors
- [X] These changes fix #14898 (github issue number if applicable).
- [X] These changes do not require tests because ./mach test-tidy itself is the test for the code.

Source-Repo: https://github.com/servo/servo
Source-Revision: b34fdf62341a01abb8da021f07071c5eb8b06622

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7785f02199a3c54165b88801a7e7abdaec43b78e
2017-02-22 21:19:08 -08:00
Huxley
38caddf718 servo: Merge #15665 - fixed an issue related with .DS_Store (from UnICorN21:ds_store); r=SimonSapin
<!-- 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 #15581.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2e49175de83bee2706ee876b4f3086025c49f5e3
2017-02-22 06:12:52 -08:00
Anthony Ramine
12f49cb702 servo: Merge #15670 - Kill the plugins crate and its clippy support (from nox:die-plugins-die); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 14bbe9d8729dece2d80bb651bca1c2eda13d0429

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e37e34fddb2107725548a4af0b2bb1ba21d5d70e
2017-02-21 05:15:15 -08:00
Simon Sapin
59acba3570 servo: Merge #15564 - Disable LLVM assertions by default, on supported platforms (from servo:no-gods-no-masters-no-assertions); r=Ms2ger
<!-- Please describe your changes on the following line: -->

https://github.com/servo/servo/pull/15559#issuecomment-280003926

> With an empty incremental compilation cache (or, presumably, with incremental compilation disabled), LLVM assertions add 16% to the compilation time in debug mode, 53% (!) in release mode.

---
<!-- 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 #15548 (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: 1afae52c47e754c6573f4a8b72fcc2e6994d253f

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7cbc302040099b6b6d0b09d6322b618b26ba61ac
2017-02-17 02:04:44 -08:00
Anthony Ramine
38f941302b servo: Merge #15559 - Allow disabling LLVM assertions in rustc (fixes #15548) (from servo:rustup); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 4f10a0f2e1ae545649957cc7e305c8cb81312759

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 5a783721d549881760dfac0fe76eee89b88eea70
2017-02-15 06:46:22 -08:00
Simon Sapin
bdae1693ef servo: Merge #15555 - tidy: Ignore [replace]’d packages in the duplicate package lint (from servo:tidy-ignore-replace); r=nox
<!-- 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: -->
- [ ] `./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: cc99d9400aa43673e8ce52c01607c62c1dfd118a

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 80b727552773977135a6488908f728dba6779808
2017-02-14 16:07:10 -08:00
Manish Goregaokar
259dd1c3e6 servo: Merge #14853 - Make tidy work on stylo trees (from Manishearth:stylo-tidy); r=Wafflespeanut
This adds `./mach test-tidy --stylo`, which turns off the usage of git to search for files to check (fixes #14855), and also turns off the wpt lint, making it possible to run tidy in a stylo tree.

r? @jdm @wafflespeanut

cc @bzbarsky

Source-Repo: https://github.com/servo/servo
Source-Revision: 9eaf96b73716450caba5e85b9c5d3622242f2608

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 658439d5cc20927788ca419d42a82153d81d6a7e
2017-02-08 22:21:08 -08:00
Ms2ger
c83b7e14d7 servo: Merge #15405 - Update web-platform-tests and CSS tests (from servo:wpt-20170206); r=jgraham
Source-Repo: https://github.com/servo/servo
Source-Revision: 6fe9fd226903b32cd78fc77c1efad37a2c3c8950

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e870a843ef2017d5f121b3bc0bd011cc499da07e
2017-02-07 03:35:06 -08:00
UK992
65d5697008 servo: Merge #15393 - Windows: Instructions update, removed freetype and silent some warning (from UK992:win32); r=metajack
i made some changes to Windows instruction, more unified.
Also removed freetype dependencies on Windows, by forcing to build harfbuzz from source, which is also dependent on freetype.

cc @larsbergstrom @metajack

Source-Repo: https://github.com/servo/servo
Source-Revision: e8d677f9c5caed7e8c750fad7b4fb2eae4744c93

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 31c8180d9cdb7888b32c61389b6940b9364b4aec
2017-02-05 17:33:23 -08:00
Simon Sapin
fca6258f36 servo: Merge #15390 - Option configuration to enable incremental compilation (from servo:opt-in-incremental); r=nox
https://internals.rust-lang.org/t/incremental-compilation-beta/4721

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 40483734ee0d16846b0fd0c3f2e43362fa065282
2017-02-05 06:07:13 -08:00
Gregory Szorc
c18143c779 servo: Merge #15379 - Find WPT files in Firefox repository (from indygreg:mozilla-central-embedding); r=emilio
The Servo repository is now (mostly) vendored in the Firefox Mercurial
repository. For size and duplication reasons, the tests/wpt directory is
not included in the vendored copy.

This causes problems when running `mach` from the Firefox repository
because `mach` references pip requirements files and module search
paths from WPT.

This commit adds code to detect when Servo's mach is running from a
Firefox source tree and to resolve WPT paths to the Firefox location
if appropriate. This enables `mach` to "just work" when running
from the servo/ directory in the Firefox repository.

The file looked for to identify the Firefox repository is identical
to what Firefox's `mach` script uses.

A potential issue with using Firefox's WPT files is that they may be
different from those in the Servo repository and this could lead to
differences in behavior - possibly even an error when loading/running
`mach`. However, the behavior before this commit was that Servo's
`mach` never worked in the Firefox repository (due to missing WPT
files). And post-commit it does. So this seems like a "perfect is the
enemy of good" scenario.

Source-Repo: https://github.com/servo/servo
Source-Revision: be896648de683c35537bdc38f38f3fc6ce352fa5

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ea7a1a6ff1992cd3dc17d32453fe04c32a126e19
2017-02-04 03:23:09 -08:00
Matthias Devlamynck
9b4628b77c servo: Merge #15138 - Allow running servo in software rendering mode from ./mach run (from mdevlamynck:software-flag); r=jdm
<!-- Please describe your changes on the following line: -->
This adds a flag to ./mach run to use software rendering on Linux (through the LIBGL_ALWAYS_SOFTWARE env var).

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

<!-- Either: -->
- [X] These changes do not require tests because like said in the issue "There's no way to add automated tests for this".
<!-- 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: bc5004b05ca0a54ddcbe7f308f8df8f61a4d7a99
2017-01-26 14:43:21 -08:00
Josh Matthews
0fbd723e7f servo: Merge #15181 - Make test-wpt-failure smoketest work again (from jdm:wptfail); r=SimonSapin
Having this testsuite working would have avoided the issue caused by #15064. This will need to wait until after #15164 is merged, because it picks up the failure that currently exists on master.

Source-Repo: https://github.com/servo/servo
Source-Revision: 39b4f19ebb5f9335372d4617cc345707b66eea02
2017-01-24 13:16:50 -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
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
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
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
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
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
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
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
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
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
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
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
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
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
Emilio Cobos Álvarez
430bf9b256 servo: Merge #14721 - Bindgenup (from emilio:bindgenup); r=Manishearth
<!-- Please describe your changes on the following line: -->
r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 75b3d68fa74ae1b9a090a6dc13dec3b8dca67b89
2016-12-24 16:43:57 -08:00
Josh Matthews
bf743e57d6 servo: Merge #14589 - Reduce calls into arbitrary code with the ScriptThread::documents borrow held (from servo:harden-script); r=jdm+Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 0c56499bdc5c92bac44f8c33e4781899c34d64e1
2016-12-16 08:53:27 -08:00
Xidorn Quan
143392b8b4 servo: Merge #14609 - Update atoms when build geckolib with gecko (from upsuper:auto-regen-atoms); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->
This would automatically update the generated atom-related files in-tree before calling cargo to build geckolib. With this change, `./mach build-gecko --with-gecko` should be now the easiest way to update all in-tree bindings.

This isn't really a build-time generating, because it isn't invoked from the build script, but from mach. It isn't done the other way because
1. it doesn't seem to be a common practice for build script to write anything to the src directory
2. real build-time generated atom data wouldn't need to include atoms for multiple platforms, but we still want it so that we can build geckolib independently

cc @heycam

r? @emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: 0bc84154858d76f57831affee348d0f1c573f9f1
2016-12-15 22:05:15 -08:00
Ravi Shankar
db1f297b13 servo: Merge #14601 - Raise warning when OSMesa path is not set (from Wafflespeanut:osmesa); r=emilio
In Ubuntu 14.04, I still get crashes due to non-existence of OsMesa library (#13515). It turned out that sometimes I have paths like `osmesa-src-<hash>` without `out/lib/gallium`. Now, we raise a warning whenever we don't find a proper path.

---
<!-- 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 related to 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: 44af5ea2e4ccb77f55dea5492408ebfcdeb73250
2016-12-15 07:42:30 -08:00
UK992
3552aeca2c servo: Merge #13650 - Define NATIVE_WIN32_PYTHON environment variable (from UK992:win32); r=larsbergstrom
r? @Wafflespeanut or @larsbergstrom

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

Source-Repo: https://github.com/servo/servo
Source-Revision: d6788a5048b9aeab592de651edb2513816389a48
2016-12-15 05:14:16 -08:00
Xidorn Quan
8b1ce93ce6 servo: Merge #14602 - Auto-update in-tree bindings (from upsuper:auto-copy-bindgen); r=Wafflespeanut
Automatically update the in-tree bindings after a successful geckolib build with gecko dist specified.

cc @heycam @emilio

This is very similiar to the patch that @emilio provided yesterday, so I'd ask someone else to review.

r? @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: 4d165dbf363bac3ef88dd404f3a3cd35ee2f37f0
2016-12-15 03:31:40 -08:00
Vladimir Vukicevic
84e275726b servo: Merge #14251 - Support build.rustflags in .servobuild (from vvuk:servobuild-rustflags); r=ConnorGBrewster
Add ability to specify rustflags in .servobuild.

Source-Repo: https://github.com/servo/servo
Source-Revision: 75c869d508231a216413808d80d6e02dec3ced6c
2016-12-13 16:55:12 -08:00
UK992
85a80d3a5a servo: Merge #14531 - Various Windows installer fixes and improvements (from UK992:win32-installer); r=larsbergstrom
r? @metajack or @larsbergstrom

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

Source-Repo: https://github.com/servo/servo
Source-Revision: ced1199c61ef93e56269fbe803cb6d7ee4df25c7
2016-12-12 13:07:25 -08:00
Xidorn Quan
a685fc7563 servo: Merge #14244 - Use build script to generate binding files (from upsuper:buildtime-bindgen); r=emilio
<!-- Please describe your changes on the following line: -->
This is a WIP patch to make rust-bindgen a build time dependency of style component for stylo. This should make things more automatic. I convert majority of `regen.py` to `build_gecko.rs`.

It currently doesn't work on Windows, because of servo/rust-bindgen#271 (it works when I fix the generated file manually, though). I haven't tested other platforms.

It would break servo's CI for geckolib, because:
1. it needs libclang (which is probably easy to solve)
2. it needs `MOZ_OBJDIR` to be passed in so that it can generate bindings

@Manishearth @emilio Do you agree with this change? Do you have suggestion for the issues above?

---
<!-- 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: 872ec89a9c546eb05246b5047aabfc032d140eff
2016-12-10 03:21:42 -08:00
William Lee
4269bf24d5 servo: Merge #13845 - Part of #13551 - Create packages under release/debug directories as appropriate (from birryree:package-under-target-profile-dirs); r=aneeshusa
r? @aneeshusa

This change implements fixes for #13551 for Linux and MacOS targets.

`/python/servo/package_commands.py` was modified so that:
- On MacOS, it creates all intermediate packaging directories like `dmg`, `brew`, and `brew-tmp` under `target/(release|debug)`, rather than in `target` directly.
- On MacOS, all packaging artifacts (`.dmg`, brew `.tar.gz`) are packaged under `target/(release|debug)`, rather than in `target` directly.
- On Linux, the resulting `tar.gz` Servo package is placed under `target/(release|debug)`, rather than in `target`.
- Also did some extra cleanup around path parsing in the MacOS packaging code, to use `os.path` methods rather than straight `'/'` parsing with `split` and `join` where it was applicable.

`/etc/ci/upload_nightly.sh` was modified to:
- Look for artifacts in `target/release` for `mac`, `macbrew`, and `linux` platforms, rather than just `target/`.

---

<!-- 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 #13551
- [x] These changes do not require tests because it is based on CI and packaging tools. They were manually tested for correctness.

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

…lease/debug as specified or detected. Modify macos packaging to create all packages under release/debug directory. Updated etc/ci/upload_nightly.sh to support uploading from either release/debug directory, depending on what was built

Source-Repo: https://github.com/servo/servo
Source-Revision: 4cb3404c09d0b6a5a19a2c842d2e8809fae31e87
2016-12-09 14:46:14 -08:00
William Lee
3ab1743159 servo: Merge #14051 - Adding linting checks for buildbot_steps.yml (from birryree:tidy-check-buildbot-steps); r=aneeshusa
This pull request adds some tidy checks around YAML files, and specifically `buildbot_steps.yml`.

Tidy checks added:

* YAML files are checked for well-formedness/parse-ability
* Whether a YAML file has duplicate keys
* Whether a `buildbot_steps.yml` file contains only mappings to list-of-strings.

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

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

…ing checking for correct mappings and duplicate YAML keys. Added unit tests to test_tidy.py.

Source-Repo: https://github.com/servo/servo
Source-Revision: 21ad1c210997daba82ec49e1572c7b0634b6f337
2016-12-08 17:39:44 -08:00
Simon Sapin
c2fe6c7932 servo: Merge #14397 - Upgrade to cargo 0.16.0-nightly (built 2016-12-06) (from servo:cargoup); r=SimonSapin
<!-- 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: -->
- [ ] `./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: e2d956eb62f35e6646501b058296da33ca96fe00
2016-12-06 15:42:30 -08:00
Peter
9f668b33cc servo: Merge #14452 - Commit that fixes the issue #11074 by upgrading pip whenever virtuale… (from PeterZhizhin:upgrade-pip-with-new-virtualenv); r=frewsxcv
<!-- Please describe your changes on the following line: -->
I have kind of resolved the issue #11074 by adding bool variable which is set to `True` if we had created the virtualenv and `False` otherwise.

Then it updates pip by executing `pip install --upgrade pip` in the same way as packages are updated. I am a little bit worried that I have almost duplicated the installation routine from the `for` loop but I am not sure whether I should add a function or not.

I think it is the best way of doing this because it does not need any Internet access for regular work (only for the first time you execute mach) as @larsbergstrom worried [here](https://github.com/servo/servo/pull/11149). It also doesn't add any extra latency on a no-op build.

I have checked the solution inside a docker container based on debian wheezy. Before the patch `./mach` failed to run because it wasn't able to install some packages. Now it runs successfully.

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because it changes only mach_bootstrap.py

<!-- 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: ea59e7bb68e83ac2631dcdad24f270bff68092eb
2016-12-03 21:11:48 -08:00
Sijmen Schoon
0bc288e5e9 servo: Merge #14450 - Implement tidy commit message test (from SijmenSchoon:master); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->
Makes tidy check commit messages since the latest merge, failing if one of them contains the string "WIP".

I have written a test for my changes, although it is a bit hacky.

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

<!-- Either: -->
- [x] These changes do not require tests because this would require playing with a new/existing git repo

<!-- 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: da15790e41b9404845bec9ae4dcdc127d23fa8ca
2016-12-03 14:15:22 -08:00
KimSnj
550e586794 servo: Merge #14379 - Use software rendering when running servo in headless mode (from kimsnj:run-headless); r=jdm
<!-- Please describe your changes on the following line: -->
Properly setting environment to use OsMesa in headless mode.

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because I manually ran: `./mach run -d tests/html/about-mozilla.html -z`

<!-- 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: bd5eef58a21d54f256fed0734afe8cdce4ebb226
2016-12-03 07:55:24 -08:00