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
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
<!-- 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
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
<!-- 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
<!-- 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
<!-- 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
<!-- 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
<!-- 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
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
<!-- 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
<!-- 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
<!-- 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
<!-- 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
<!-- Please describe your changes on the following line: -->
r? @Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 75b3d68fa74ae1b9a090a6dc13dec3b8dca67b89
<!-- 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
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
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
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
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
<!-- 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
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
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
<!-- 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
<!-- 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
<!-- 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
<!-- 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
<!-- Please describe your changes on the following line: -->
This patch enables us to run `./mach test-perf --submit` in CI to submit the result to perfherder. r? @aneeshusa
---
<!-- 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 too many manual setup required to test it
<!-- 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: 7d66bd710cee081155487ef36fe5b490e181c780
cc @metajack
The plan here is to run this on the error summary of the logs after each WPT/CSS run, as `./mach filter-intermittents wpt-errorsummary.log --output filtered-errorsummary.log --auth /path/to/authfile`
The `filtered-errorsummary.log` file will be a buildbot artifact for this run, and can be used for updating test results.
We change WPT/CSS runs to not cause test failures on Buildbot; instead; the test failure will be caused by this job.
We should at some point add a separate highfive task which ccs the appropriate bugs and tracks consistent failures. (We can change mach filter-intermittents to output a second file of intermittents matched to bug numbers to make this easy)
A small issue with this is that this simple task might mask failures of the WPT harness itself. We have a separate test that tests if the test harness works though. (This test will fail if the log files it requires don't exist, perhaps that's enough to solve the problem)
r? @larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: 4021d057c941f38ca9f9ef9bb03f91d1b54f01c0
<!-- Please describe your changes on the following line: -->
r? @bholley
Source-Repo: https://github.com/servo/servo
Source-Revision: e97804986ad259083981db7d4f7995d822d693b5
Running it in components/servo isn't guaranteed to work because there's no Cargo.lock checked in there. Followup to #14254.
Source-Repo: https://github.com/servo/servo
Source-Revision: 73cbe61d563c0f5031518ef72e2492ac12f327f9
<!-- Please describe your changes on the following line: -->
Related to #14172
Needed this for `./mach cargo-update -p webrender` to work properly when replacing with a local copy
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because it's not adding any new logic
<!-- 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: cc06363ce7309150197ac897606a4ca855ecd4c4
This PR is intended to add basic support for all CSSOM interfaces, with the ability to index `document.styleSheets` and css rule lists, and serializing individual css rules. Handling individual interface methods for CSSRule subclasses can probably be done with easy/medium bugs.
Mutation safety isn't dealt with here; if the css rule list is mutated the CSSOM will be in an inconsistent state. I intend to deal with this via zero sized tokens, see https://groups.google.com/forum/#!topic/mozilla.dev.servo/AnxJoVmtMXQ . I'll handle that when I start making the CSSOM mutable. (Getting the immutable bit landed first opens this up for easy bugs)
This doesn't really change style aside from adding an extra arc in the CSS rule list as discussed in the linked thread. So far this same design can be used by stylo as well when the time comes.
f? @SimonSapin @emilio
cc @upsuper
part of #11420
Todo:
- [x] Stubs for rest of the CSSRule subclasses
- [x] <s>ToCSS impls for CSSRules.</s> May make into easy bugs and stub out in this PR https://github.com/servo/servo/issues/14195
- [x] Cache CSSStyleSheet on the relevant node
Source-Repo: https://github.com/servo/servo
Source-Revision: afc60bee2809059b8b754a1c6d6d10c1d36326fb
<!-- Please describe your changes on the following line: -->
In addition to minor changes for Windows, this forces Windows Python to
be used for all Windows builds (instead of using Windows Python only for
pc-windows-msvc builds).
---
<!-- 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 testing the tests is too meta for me
<!-- 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: 17bf6aed21cb966c52382e7cef23d2bd66144874
<!-- Please describe your changes on the following line: -->
Since tidy is a package, it shouldn't contain our WPT lint. This PR changes the file list generator (we already have) into an object, and allows tidy to run custom python lint scripts (specified in the config file) under the context of `LintRunner`. The errors are then chained into our mechanism.
r? @frewsxcv (cc @jdm @edunham @aneeshusa and anyone else interested in reviewing it)
---
<!-- 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: 290a1696dc6b16c421a40dc08abdc072a2fb4cf2
--HG--
rename : servo/python/tidy/servo_tidy_tests/dir_check/only_webidl/test.webidl => servo/python/tidy/servo_tidy_tests/lints/not_script
<!-- Please describe your changes on the following line: -->
r? @aneeshusa (or anyone else really).
Source-Repo: https://github.com/servo/servo
Source-Revision: 77c1f6fb553d3dbe7890d15dd1c29c16d400bf61
<!-- Please describe your changes on the following line: -->
Check that JSON keys are ordered, and that there's no duplicates (for `resources/prefs.json` and `resources/package-prefs.json`).
---
<!-- 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] 🆕 `./mach test-tidy --self-test` does not report any errors
- [x] These changes fix#12283
<!-- 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: 94d0c485e10138e0d5b2bd8b41b6a922a22a059f
<!-- Please describe your changes on the following line: -->
Properly set the software rendering environment variables and use `-z` to run the performance test in headless mode. Also changed some logging format to improve the readability and reduce log size.
---
<!-- 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#13903 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because need manual test
<!-- 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: f5a3d68513456b991313dfac19b94d630cc326be
I tested out building a release with the flag and added a `debug_assert!(false)` in `fn main` and it panicked.
<!-- 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#14009 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because they are manually tested
<!-- 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: dbce416ad436b9a3a007181fbd5d0f158cd7d9e4
to CI upload, swaps semicolons for dashes
<!-- Please describe your changes on the following line: -->
This fixes#12128 by moving the datetimestamping responsibility from the python packaging script to the CI build shell script.
---
<!-- 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#12128 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because they are part of CI build
<!-- 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: 4c5d84d81a45a2f85ceca88ca69374b464722cd1
<!-- 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#13954 (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: 291f393723d22a582bb9a49ef7294ec14eca2127
<!-- Please describe your changes on the following line: -->
Disallow an extraneous space in a function call between
the function name and the opening parenthesis in Rust
code, while ignoring macro declarations.
---
<!-- 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 --all` does not report any errors
- [x] `./mach test-tidy --self` does not report any errors
- [x] These changes fix#13980
<!-- Either: -->
- [x] There are tests for these changes, these are written in
- `python/tidy/servo_tidy_tests/rust_tidy.rs`
- `python/tidy/servo_tidy_tests/test_tidy.py`
- [ ] 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: ccefef5be43b6d174933196fd7552cbbfbdf53d6
A huge update for the Android build system, which makes the Android target build again.
There are still some runtime issues, see #13154. CC & created by @larsbergstrom.
Fixes#12562.
Source-Repo: https://github.com/servo/servo
Source-Revision: b9330151b980c838887c2da73481882947cc2922
<!-- 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#13552 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because needs to 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: af48de91fbc31a0bbb5c1fc5900fdb3e1519db5c
<!-- Please describe your changes on the following line: -->
As discussed in #13938, disabling tidy check on untracked file to reduce noise
---
<!-- 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#13938 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because mocking `git` calls for the unit test is probably not worth the effort.
<!-- 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: afa55dcf5573d6b535a8e9681d42fe51e1ff01d1
We weren't running the style unit tests.
The parse_longhand macro is useful for all tests.
Source-Repo: https://github.com/servo/servo
Source-Revision: a2e42fa13bd9ac0244ea33d4746fb395a7f87f5e
This gets us back to a pristine local copy and allows us to start experimenting with webdriver tests.
Source-Repo: https://github.com/servo/servo
Source-Revision: 80447a79c43c03cc13f041899b369c639ff621ce
<!-- Please describe your changes on the following line: -->
This patch restores the layout trace viewer removed in e7510ab90c , with some changes that makes it work with https://github.com/servo/servo/pull/13214
Sorry for the minified 3rd party CSS frameworks, it was from the original version and I haven't got time to replace them with hand-crafted CSS.
---
<!-- 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 is a stand-alone debugging 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: 0af9be94298c676f5bf7881847880e6f43955602
Currently there's no way to run rust benchmark tests using mach. We can support it pretty easily, which I found useful when writing performance tests.
r? @Wafflespeanut
Source-Repo: https://github.com/servo/servo
Source-Revision: 887507b6f86bf4e763f49f12b48ee94029fc9e13
test-geckolib used to do things, but almost all of geckolib has been moved to the style crate, with the tests in `tests/unit/stylo`. (`./mach test-stylo) Now test-geckolib does nothing.
Fixes#13721
r? @jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 2bb7cc227bf2a3260e3b9c4f3953ca55d93629fe
We currently run bindgen's autogenerated `#[test]` blocks directly on the structs files.
That is, after generating them, we run `rustc --test` on them. This works fine for now, but
if you want to refer to types defined outside of these files (e.g. in https://bugzilla.mozilla.org/show_bug.cgi?id=1309165),
the tests are broken.
This puts a `cargo test -p style` in `./mach test-stylo`. I disabled doctests because they were failing (unable to find the `ns!()` and `atom!()` macros), and I couldn't figure out why -- will investigate in a later bug.
r? @emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 7e192ce6442c69b38f1d86326464b3879fcb0368
<!-- Please describe your changes on the following line: -->
r? @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
- [X] These changes fix#13644
<!-- 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: c1cc2bbbaebf13710bee1cb426484c2eed155f7c
<!-- Please describe your changes on the following line: -->
minimal SVG element implementation
---
<!-- 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#12974 (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: dad3b4785a73aa6ddea5ed50ee4ef01bd4049c8d
r? @nox
Fixes#13591
This fixes the problem with rebuilding all of CEF on the linux-rel builders by ensuring it gets the same `RUSTFLAGS`. Proof:
```
[larsberg@larsberg servo2]$ ./mach build-cef -r
Compiling embedding v0.0.1 (file:///Users/larsberg/servo2/ports/cef)
Finished release [optimized] target(s) in 35.42 secs
[Warning] Could not generate notification! Optional Python module 'pyobjc' is not installed.
CEF build completed in 0:00:38
[larsberg@larsberg servo2]$
```
Source-Repo: https://github.com/servo/servo
Source-Revision: 9c2610146ae3a61e1da917a9fd5e3902bd267d4a
<!-- Please describe your changes on the following line: -->
As part of #13127.
cc @aneeshusa
---
<!-- 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
<!-- 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: 19a5a30113c3b58d69b6010c79db35b9bd8978c9
<!-- Please describe your changes on the following line: -->
Have tidy ensure that the there are no extra files in the webidls folder #13427
---
<!-- 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#13427 (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: 3a5fd8b49a45b4647e9823d3e10243d9f4b2277b
--HG--
rename : servo/python/tidy/servo_tidy_tests/empty_file.rs => servo/python/tidy/servo_tidy_tests/dir_check/only_webidl/test.webidl
rename : servo/python/tidy/servo_tidy_tests/test_ignored/whee/test.rs => servo/python/tidy/servo_tidy_tests/dir_check/webidl_plus/test.rs
rename : servo/python/tidy/servo_tidy_tests/empty_file.rs => servo/python/tidy/servo_tidy_tests/dir_check/webidl_plus/test.test
rename : servo/python/tidy/servo_tidy_tests/empty_file.rs => servo/python/tidy/servo_tidy_tests/dir_check/webidl_plus/test.webidl
rename : servo/python/tidy/servo_tidy_tests/empty_file.rs => servo/python/tidy/servo_tidy_tests/dir_check/webidl_plus/test2.rs
Refactored file line loop in `check_license()` to skip when a blank line is encountered. Only difference should be a very very small performance boost.
Also changed the name of a test from the mispelling `test_licence()` to `test_license()`
---
- [ ] `./mach build -d` does not report any errors (I'm not able to download the rust compiler on my laptop due to me probably just needing to update openssl: `Error downloading Rust compiler: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590). The failing URL was: https://static-rust-lang-org.s3.amazonaws.com/dist/2016-09-21/rustc-nightly-x86_64-apple-darwin.tar.gz`)
- [X] `./mach test-tidy` does not report any errors
<!-- Either: -->
- [X] There are no added tests for this since `test_license()`, `test_shebang_license()` and `test_apache2_incomplete()` should suffice in this case. Though I'd be more than happy to add a test if requested.
Source-Repo: https://github.com/servo/servo
Source-Revision: a83ef43be0773a52a5e40d05127fbc8814d6caa5
See https://github.com/servo/servo/issues/13344
---
<!-- 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#13344 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because refactoring without logic changes, 0 is falsey as None
<!-- 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: 0e950c0ba5ba96ab629a21e8bdeba0795e320316
<!-- 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#11983 (github issue number if applicable).
- [x] There are tests for these changes (./mach package)
<!-- 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: 7fbd35efab8d7c999846d4953515d02e6e9f0872
<!-- Please describe your changes on the following line: -->
If we keep the windows subsystem, we don't get any kind of log output. We should keep the normal console subsystem for dev builds.
Source-Repo: https://github.com/servo/servo
Source-Revision: 31415588a384427392324ba03b6c65206ff09620
- [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).
Source-Repo: https://github.com/servo/servo
Source-Revision: 9acd7f390a1abe8bd91c0dbeb2c3d7862d4cc2d8
<!-- 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: ce6d7a735f8b59a219bb20c9ffe930c52d527dbd
Another crack at making it possible to test geckolib properties.
In the previous PR I added support for a testing mode but neglected to use it in the style unit tests.
Using it brought out some bugs with properties that exist in both gecko and servo but have different names. Added the ability to disable them.
Hopefully this isn't too unweildy.
r? @emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 13c4393516df0d3415ed28d107f3744d56b59623
<!-- 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
- [X] These changes fix#12792 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because it is low-risk
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
in **testing_commands.py**, I linked the new command to **test_perf.sh**
in **test_perf.sh**, it prepares tp5n.zip and virtual environment
then runs **test_all.sh**
Source-Repo: https://github.com/servo/servo
Source-Revision: 99435663f8e986d1851e4aec683dbbad7d53c0a7
<!-- Please describe your changes on the following line: -->
The old specification URL is
https://slightlyoff.github.io/ServiceWorker/spec/service_worker/, which has
been replaced by the new one at https://w3c.github.io/ServiceWorker/.
---
<!-- 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#13408 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because all the changes are in commented parts of the code.
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
The old specification URL is
https://slightlyoff.github.io/ServiceWorker/spec/service_worker/ has
been replaced by the new one at https://w3c.github.io/ServiceWorker/.
Source-Repo: https://github.com/servo/servo
Source-Revision: d00639c55f9a342765483d347a3c29d4647f7411
This turns on all properties (including stylo-only ones) when the style unit tests are compiled. This lets us test the parsing of gecko-only properties.
These tests can't go in tests/stylo since this introduces dependencies on `Gecko_*` symbols. This method lets us test parsing and serialization of geckolib properties compiled in Servo mode (e.g. using Servo atoms, Servo URLs)
r? @emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 28bce69d248995cc6ec83a2b4ada9cf17a888bb5
<!-- Please describe your changes on the following line: -->
Add report in tidy for code which have a space after the `(` like `some_function( argument)`
---
<!-- 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#13350 (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: 2ba804e6db52637fbe23fbecfd0e65b4db1a49e2
@canaltinova needs this for his mask work -- we need a way to test stylo code (or style code that's conditionally compiled out for gecko)
We can add this to the CI as well.
r? @emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 66c736194d1a6d3af1303a070aa96fec4534187c
--HG--
rename : servo/ports/geckolib/sanity_checks.rs => servo/tests/unit/stylo/sanity_checks.rs
Fixes https://github.com/servo/servo/issues/12914
I've made this few weeks ago, its an example how could everything looks like.
It downloads and setup all needed dependencies for MSVC.
It's has version in case if some dependencies need to be updated.
Zip files and folder in zip need to be named ``<dep>-<version>``.
Also if cmake already exist in PATH, it won't download it again.
I want opinion on that, if this is right approaches and how to improve it.
cc @vvuk
Source-Repo: https://github.com/servo/servo
Source-Revision: daa30e60f1a7af87ee88aae4fd6e47e210ee9a76
--HG--
rename : servo/python/tidy/servo_tidy_tests/shebang_license.py => servo/python/servo/bootstrapper/__init__.py
<!-- Please describe your changes on the following line: -->
Add android support for Webbluetooth.
Also adjust to the changed device 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
- [ ] These changes fix #__ (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because there is no test api yet.
<!-- 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: 057bcddd0f63a97b8cd1954310878c423d02e056
<!-- Please describe your changes on the following line: -->
Stylo doesn't use Servo's virtualenv, so we need to integrate it into Gecko's build before doing this.
---
<!-- 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. -->
This reverts commit 95e3f8333a116f9bd62fb071d08fcef269697804.
Source-Repo: https://github.com/servo/servo
Source-Revision: fe9d9096ec3e78e2d5d53d32f181dc519512a40a
<!-- Please describe your changes on the following line: -->
Remove mako zip
---
<!-- 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#12958 (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. -->
r? @SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: e4362356d29ab5b18cb6316a3a510dfa31f9ba7c
<!-- 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#13141 (github issue number if applicable).
<!-- Either: -->
- [x] These changes do not require tests because it's a cleanup 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: e699d9bfad6ce5e1b0cf31d5a6d06512e267f41a
Fix index error ``list index out of range``, when file is empty.
r? @Wafflespeanut
---
- [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: c3ce9f2c909cd75c8f424bcef4036d0e29476546
--HG--
rename : servo/python/tidy/servo_tidy_tests/test_ignored/whee/foo/bar.rs => servo/python/tidy/servo_tidy_tests/empty_file.rs
Published a new tidy after config file fixes landed, as requested in https://github.com/servo/servo/issues/10636#issuecomment-210658297. This commit makes the repo match what I published, is all.
---
<!-- 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
- [X] These changes do not require tests because **I changed one character in a string. If this breaks stuff, we're !#@$#@!$'d.**
<!-- 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: c4f34e9019e8324440d46a51e3df3bd150507199
<!-- 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#12402 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because is description
<!-- 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: d807cc2727130a5e2f4f8a05925f7f0bb2243537
This fix problem with false reporting about missing license in every toml file, that is not Cargo.toml
r? @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
Source-Repo: https://github.com/servo/servo
Source-Revision: 8a5e1b70b7decb251e691ace114e033419a53764
--HG--
rename : servo/python/tidy/servo_tidy_tests/test.toml => servo/python/tidy/servo_tidy_tests/Cargo.toml
<!-- 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] These changes do not require tests because it's just a cleanup
<!-- 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: eec56ca50e2d6624b31f23a870936c02e2674573
<!-- Please describe your changes on the following line: -->
Trying to solve #12961 and following the suggestion in it.
Already run test-unit and no red appeared.
---
<!-- 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
- [x] These changes fix#12961 (github issue number if applicable).
<!-- Either: -->
- [x] These changes do not require tests because it's a cleanup of `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: 581e69f8ba1b949dcb5bfa215241d27e3460ee89
This is wip workaround for https://github.com/servo/servo/issues/10841
Adds ``servo-tidy.toml`` with configs and ignored dirs, files and packages.
This will allow to set custom configuration per repo.
It's an example how could config file looks like.
I want opinion on that, if this is right approaches and how to improve it.
cc @edunham
Source-Repo: https://github.com/servo/servo
Source-Revision: 1c9650cc90090784c63f5af55628ffe6b57c25ed
<!-- Please describe your changes on the following line: -->
<img width="396" alt="screen shot 2016-07-04 at 8 43 44 pm" src="https://cloud.githubusercontent.com/assets/9086315/16572663/30a6dd6c-4228-11e6-9098-68c49900b14e.png">
cc @aneeshusa
---
<!-- 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 are a temporary solution for #12052 (github issue number if applicable).
<!-- 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: 5a5c16776c738fc31bd93c8c45297b53087f9d20
<!-- Please describe your changes on the following line: -->
Currently, x86_64 toolchain would always pick the amd64 MSVC linker, which will fail to link when it runs in an environment configured for building x86 program (has `PLATFORM=X86` in environment variable).
This commit picks the proper host triple according to the environment variable when using the MSVC backend.
---
<!-- 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 build system 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: 28767cdb6725be83dcf50b9682a49de01229a287
This is the base PR for MSVC builds of servo and dependent crates. It's got replacements in the Cargo.toml to pull in the right versions, to make sure that crates were properly converted to CMake for all other platforms, not just Windows. (Servo builds with MSVC 2015 with this PR; also with 2013, though a manual change in rust-mozjs to select a different set of bindings is needed.)
This PR isn't quite ready yet, but I want bors-servo to do builds.
Source-Repo: https://github.com/servo/servo
Source-Revision: ec53136863f20b80caf165d2f15e8a77d614536e
<!-- Please describe your changes on the following line: -->
Imported error from socket using `from` since it's the only thing we need.
The exception is [different ](https://docs.python.org/2/library/socket.html#socket.error) from the other exceptions as it could be a string or a tuple with error number.
---
<!-- 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#12764
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests they execute before the test runner is installed. Can't test the bootstrapping code.
<!-- 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: 9785e520aec4d8a821659d4811713ee43bfe82af
<!-- Please describe your changes on the following line: -->
Fix for #12766. Couldn't reproduce the exact error.
I explicitly raised urllib2.URLError to get to the print and then tried using many different variable types for e.reason and src but it still didn't throw a coercion error.
So, as @Wafflespeanut said,
> Instead of appending, we can format the values, which (I'm pretty sure) will fix this error.
which is what i've done.
---
<!-- 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#12766, hopefully.
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests they execute before the test runner is installed. Can't test the bootstraping code.
<!-- 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: 75f6cf47c493a916272119cf41b0f16791ec8966
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix#12775.
r? @larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: b4695541ae50fec1047476155d14fd40bb551de9
./mach test-tidy should also check .html files, to avoid patches containing badly formatted new test cases go unnoticed
---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix#12421
- [X] There are tests for these changes (./mach test-tidy failed without the changes to .hrml files)
Source-Repo: https://github.com/servo/servo
Source-Revision: 93004ce57999947f51067d680c6fde056741331a
<!-- Please describe your changes on the following line: -->
The goal is to make use of `LengthOrPercentage` for word spacing in `ShapingOptions`, but since it makes use of `f32` which doesn't implement `Hash`, we're going for `NotNan<f32>` from [ordered-float](https://github.com/reem/rust-ordered-float/), which supports hashing. Instead of implementing `Hash` for `LengthOrPercentage` and thereby the inner types like `CSSFloat`, `CalcLengthOrPercentage`, etc., we convert it to `(Au, NotNan<f32>)`.
---
<!-- 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: -->
- [ ] 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: 3b676bc85dc66ed0e80756204f347bf1842b01a0
<!-- Please describe your changes on the following line: -->
The "$(some_command arg1 arg2)" form is preferred to the
`some_command arg1 arg2` form because it nests unambiguously.
Add a lint for this to tidy.
---
<!-- 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: aa900b91aa9417b6aa032b4eff878f2916c480f0
This fixes following error when running runservo.sh:
$ ./runservo.sh
Unrecognized option: '-'.
$
---
<!-- 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. -->
s/-S--pref/-S --pref/
Source-Repo: https://github.com/servo/servo
Source-Revision: 82f1970e25dcacb05758abcfc3ef3008c169a1e4
<!-- Please describe your changes on the following line: -->
A development of #12108, creates a .tar.gz package using the `tarfile` and `gzip` modules, without external dependencies. Fixes#11981.
Also this fixes the issue when the existing `resources/` directory didn't allow to create a new package and failed with "File exists" error.
---
<!-- 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#11981 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because "more general approach to reproducibility testing is needed"
<!-- 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: 1086df67e04ce97fed080ba7c79ed8e1615202eb
<!-- 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
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix#12705 (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. -->
Enable multiprocess and sandbox for Mac and Linux when running
browserhtml.
Source-Repo: https://github.com/servo/servo
Source-Revision: 3dce4c62ca55409dfac9dea6ecc674c0020eab6c
<!-- Please describe your changes on the following line: -->
This changes tidy to check shell scripts for the proper shebang and
options. It does not check that variables are formatted correctly. It
also adds a check for the MPL 2.0 license in shell scripts.
---
<!-- 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#12158 (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: 4bc629b369242d16675161ab6af8141dab0bb556
<!-- 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] These changes do not require tests because geckolib :-(
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
r? @bholley
cc @heycam
Source-Repo: https://github.com/servo/servo
Source-Revision: cbf71a2cf39e792f75309e68f7cabe862d4a70eb
<!-- Please describe your changes on the following line: -->
Add a python3 license template. #11107 uses python3 exclusively so we need this.
---
<!-- 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 covered by test-tidy self test
<!-- 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: 9d795c3a3eeb34ef1f380053954bbffb63e31386
<!-- 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: -->
- [ ] These changes do not require tests because they must be manually tested
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Currently fonts are using incorrect metrics and the app uses the console
subsystem. This patch adds aliases so that font metrics are found and
instructs the linker to use the windows subsystem.
NOTE: This is not yet ready to merge. The RUSTFLAGS isn't getting set right.
Source-Repo: https://github.com/servo/servo
Source-Revision: 44ed0f29a41652ff888bedaddb303da8d9187da6
<!-- 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 require manual testing
<!-- 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: 2746c476d3114d987b153d93bed2d302ba2e52a5
<!-- Please describe your changes on the following line: -->
When working with WPT tests, I find it convenient to compare the results of different browsers / engines. By installing a few more Python packages, we can easily test against Firefox from a Servo checkout.
As noted in the updated README.md, this change allows you to check WPT tests in Firefox by adding `--product firefox` to the `./mach test-wpt` command.
r? @jgraham
---
<!-- 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 only the set of test harness packages is 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: f5d589876b53f2a65e001525487dc6acb5aec088
Fix https://github.com/servo/servo/issues/12564
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix#12564
- [X] There are tests for these changes
Source-Repo: https://github.com/servo/servo
Source-Revision: 2e3bc57e99578ba1977d62800b3fbd187554f89e
<!-- Please describe your changes on the following line: -->
Add a test-tidy lint for dependency licenses. Note that #12507 should land first.
---
<!-- 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 don't test our lints
<!-- 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: de4eaa4f21c53a1d1da7d58ef2cda8ef28989fb6
<!-- Please describe your changes on the following line: -->
This commit adds the append method for the Headers API. @malisas and I are both contributors.
There are a few TODOs related:
- The script needs to parse the header value for certain header names to decide the header group it belongs
- There are possible spec bugs that could change what a valid header value looks like (related: [issue page](https://github.com/whatwg/fetch/issues/332))
There are WPT tests already written for the Headers API, but they will fail as the Headers API is not fully implemented.
---
<!-- 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 tests for the Headers API already exists, but this commit does not implement the interface fully. The tests will fail.
<!-- 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: 03fa7f0ba533acc44100639ad85625810618df3a
<!-- Please describe your changes on the following line: -->
Update mozlog to 3.3 so we can have correct reftest screenshots displayed with --log-html.
The original mozlog update bugs are listed as follows:
https://bugzilla.mozilla.org/show_bug.cgi?id=1287019https://bugzilla.mozilla.org/show_bug.cgi?id=1287480
---
<!-- 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#12401 and #12403 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because this is just a PyPI package version bumping
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Update mozlog to 3.3.
Source-Repo: https://github.com/servo/servo
Source-Revision: 73cfab0016fd761da24d6280154fda6561b417fe
This is just a temporary fix to get `mach test-wpt`, `mach update-manifest` etc. working properly again. A proper fix will likely involve a proper refactoring of the `suite_for_test` 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
- [X] These changes fix#12481
- [X] These changes have been tested to work locally
r? @ConnorGBrewster cc @jdm
<!-- 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: f5c60e8c5aec34a1a6ff6c61f1174a7c93158159
Trying to simply build `servo`, I've reached a very early error. I cloned the `servo` repo, installed the dependencies specified on the [README](https://github.com/servo/servo#prerequisites). I'm running on a Debian Jessie [`Linux my machine 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-2+deb8u3 (2016-07-02) x86_64 GNU/Linux`].
Then I run.
```
./mach build --dev
```
I only get the following message.
```
Pip failed to execute properly:
```
Looking in already existing issues, the only one I could find is #12062 which is about missing space on hard drive but this doesn't seem to be my problem.
I've looked more into the problem and found that pip was having problem. Here is the error message.
```
Downloading from URL 99e69cdcef/html5lib-0.999999999.tar.gz (md5)=8578e4e3a341436cb9743a9e4a299239 (from https://pypi.python.org/simple/html5lib/)
Running setup.py (path:/tmp/pip-build-mFVe16/html5lib/setup.py) egg_info for package html5lib
html5lib requires setuptools version 18.5 or above; please upgrade before installing (you have 5.5.1)
Complete output from command python setup.py egg_info:
----------------------------------------
Cleaning up...
Command python setup.py egg_info failed with error code 1 in /tmp/pip-build-mFVe16/html5lib
Exception information:
Traceback (most recent call last):
File "/home/woshilapin/Projects/woshilapin/servo/python/_virtualenv/local/lib/python2.7/site-packages/pip/basecommand.py", line 122, in main
status = self.run(options, args)
File "/home/woshilapin/Projects/woshilapin/servo/python/_virtualenv/local/lib/python2.7/site-packages/pip/commands/install.py", line 290, in run
requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
File "/home/woshilapin/Projects/woshilapin/servo/python/_virtualenv/local/lib/python2.7/site-packages/pip/req.py", line 1230, in prepare_files
req_to_install.run_egg_info()
File "/home/woshilapin/Projects/woshilapin/servo/python/_virtualenv/local/lib/python2.7/site-packages/pip/req.py", line 326, in run_egg_info
command_desc='python setup.py egg_info')
File "/home/woshilapin/Projects/woshilapin/servo/python/_virtualenv/local/lib/python2.7/site-packages/pip/util.py", line 716, in call_subprocess
% (command_desc, proc.returncode, cwd))
InstallationError: Command python setup.py egg_info failed with error code 1 in /tmp/pip-build-mFVe16/html5lib
```
I found that adding the following line in the file `python/requirements.txt` seems to solve the problem (I've build `servo` without errors and `./mach test-tidy` pass too).
```
setuptools >= 18.5
```
Since I'm very new to `servo`, I didn't propose a Pull Request because I'm not sure this is right way of fixing it or maybe I'm doing something wrong. But I'd be happy to create the Pull Request if that's a valuable solution.
Source-Repo: https://github.com/servo/servo
Source-Revision: 0fa10df64ae928bccb05ea7c182eeffbed3af8a8
<!-- Please describe your changes on the following line: -->
Added a `license = "MPL-2.0"` field to all our `Cargo.toml` files, and added a check to `test-tidy` that the license is present.
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix#12434
- [X] There are tests for these changes
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 650d1d1185eecdc4c8b605bb0290ece7de839015
<!-- Please describe your changes on the following line: -->
Print a warning and dispatch to the correct test suite, when non-WPT test paths are given to `mach test-wpt` or non-CSS paths to `mach test-css`
---
<!-- 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#10883 (github issue number if applicable).
<!-- Either: -->
- [X] These changes do not require tests because improving mach test script 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: 84fbd8946f0671cc4c1475bfbfa7ee02fce42cf7
This makes it much easier to run rustfix on servo
(rustfix is still pretty buggy though)
Source-Repo: https://github.com/servo/servo
Source-Revision: 74925460952ac070ff5e365b6fe6b886fd81861b
<!-- Please describe your changes on the following line: -->
Given #12319 removes the direct dependency of geckolib to gcc, geckolib is now compilable without gcc, and thus builds within MozillaBuild.
This changeset also changes the triple to use the MSVC backend rather than GNU for Windows . I'm not sure whether this change is necessary, but given we use MSVC to compile Gecko on Windows, I think we would eventually need this anyway. Triples for MinGW64 and Cygwin are unchanged, so that existing build targets should not be broken.
Servo itself is still not buildable with MozillaBuild. To make that work, some changes to mozjs are necessary as well.
It is probably worth some infra coverage to avoid regression.
---
<!-- 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 (on MinGW)
- [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 only changes build system
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
r? @bholley
Source-Repo: https://github.com/servo/servo
Source-Revision: 184b1ba91b5e73d4bbeacc9093f31f4c8570c0f4
Throws a tidy error when duplicated keys are present.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix#12283 (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: 638eb80110cf07ec2f07e43fd64a48042fe2925b
<!-- 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#11815 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because CI already runs `./mach build-geckolib`
<!-- 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: e50e4f99bf4668d183226251d8ea55fa36f72fe0
It contains several fixes to make `./mach build-geckolib` work on Windows.
Source-Repo: https://github.com/servo/servo
Source-Revision: 35a23bfef394fe451879f09979167b048a7bdc88
We didn't have a test for json parsing so lets start with that
---
<!-- 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
- [ ] 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: 34e53b1dca2202b1644e44258d67e52334e15bc4
<!-- 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#12225 .
I did not add a test for this, instead I added a directory with an empty file inside the ignored directory, and checked whether this file was being ignored or not.
<!-- 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: 9c00331634c2c753637a873f600b9804e6145e62
--HG--
rename : servo/python/tidy/servo_tidy_tests/test_ignored/whee/test.rs => servo/python/tidy/servo_tidy_tests/test_ignored/whee/foo/bar.rs
Fixes a "can't find crate for `std`" error in mach build. Regression from #11945. r? @larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: beff8ee68f9116971e8d14b182a574ef9f42a994
<!-- 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] These changes do not require tests because tooling
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
---
This not only makes us more consistent with the rest of the codebase but also:
* Makes us repeat less code like common flags and all that stuff.
* Reduces the noise of the build: You only get the output of the commands on
failure or when you pass the -v flag.
* Makes you able to select a single kind of build or multiple in the same
place.
I've basically kept the regen.sh script because of the LIBCLANG_PATH checks, but
at least from Linux I don't need them anymore. Also, that logic could be moved
to the new script.
The whole point of this isn't only making it prettier and easier to use, but
also allowing me to write more complex logic in the binding generator scripts,
that I will probably need to integrate the DOM enum types we need for animations
and such easily (can't be just an include, because that pulls in another header
with the same name bringing a lot of DOM and IDL churn).
For reference, here's a successful regen round with the script:
```
./regen.py --target all /home/emilio/projects/moz/stylo/gecko/obj-x86_64-pc-linux-gnu/
[BINDGEN] structs::release in "/home/emilio/projects/moz/stylo/gecko/obj-x86_64-pc-linux-gnu/"... OK
[RUSTC]... OK
[RUSTC_TEST]... OK
test result: ok. 168 passed; 0 failed; 0 ignored; 0 measured
[BINDGEN] structs::debug in "/home/emilio/projects/moz/stylo/gecko/obj-x86_64-pc-linux-gnu/"... OK
[RUSTC]... OK
[RUSTC_TEST]... OK
test result: ok. 169 passed; 0 failed; 0 ignored; 0 measured
[BINDGEN] bindings::None in "/home/emilio/projects/moz/stylo/gecko/obj-x86_64-pc-linux-gnu/"... OK
```
---
r? @bholley
Maybe @jgraham and/or @Wafflespeanut want to take a look to criticize my (lack of) pythonism ;-)
Source-Repo: https://github.com/servo/servo
Source-Revision: e78459e6670b218970dfebb189a0c8ef7614951f
<!-- Please describe your changes on the following line: -->
Added mach subcommand (build-stable) to build servo and its dependencies using a stable version of rustc.
---
<!-- 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#11806 (github issue number if applicable).
<!-- Either: -->
- [X] These changes do not require tests because they're in the build process. I've manually tested both build and build-stable several times and in different orders and it seems to work. If the mach subcommands are tested automatically somewhere, I'll be happy to add a test, but I couldn't find it.
This is an example of output I get, which is what I'd expect:
```plain
[gpoesia@gabriel-notebook servo]$ ./mach build
looking for rustc at /home/gpoesia/dev/servo/.servo/rust/2016-06-24/rustc-nightly-x86_64-unknown-linux-gnu/rustc/bin/rustc
Downloading Rust compiler...
Downloading Rust compiler: 100.0%
Extracting Rust compiler...
Rust compiler ready.
Downloading Host rust library for target x86_64-unknown-linux-gnu...
Downloading Host rust library for target x86_64-unknown-linux-gnu: 100.0%
Extracting Rust stdlib for target x86_64-unknown-linux-gnu...
Rust x86_64-unknown-linux-gnu libs ready.
Build completed in 0:00:01
[gpoesia@gabriel-notebook servo]$ ./mach build
Build completed in 0:00:02
[gpoesia@gabriel-notebook servo]$ ./mach build-stable
looking for rustc at /home/gpoesia/dev/servo/.servo/rust/rustc-1.9.0-x86_64-unknown-linux-gnu/rustc/bin/rustc
Rust compiler already downloaded. Use |bootstrap-rust --force| to download again.
Rust lib for target x86_64-unknown-linux-gnu already downloaded. Use |bootstrap-rust --force| to download again.
Compiling log v0.3.6
Compiling tenacious v0.2.1
Compiling traitobject v0.0.1
Compiling azure v0.4.6 (https://github.com/servo/rust-azure#4d72934a)
Compiling crossbeam v0.2.9
/home/gpoesia/dev/servo/.cargo/registry/src/github.com-1ecc6299db9ec823/tenacious-0.2.1/src/lib.rs:1:1: 1:42 error: #[feature] may not be used on the stable release channel
/home/gpoesia/dev/servo/.cargo/registry/src/github.com-1ecc6299db9ec823/tenacious-0.2.1/src/lib.rs:1 #![feature(plugin_registrar, box_syntax)]
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/gpoesia/dev/servo/.cargo/registry/src/github.com-1ecc6299db9ec823/tenacious-0.2.1/src/lib.rs:3:1: 3:27 error: #[feature] may not be used on the stable release channel
/home/gpoesia/dev/servo/.cargo/registry/src/github.com-1ecc6299db9ec823/tenacious-0.2.1/src/lib.rs:3 #![feature(rustc_private)]
^~~~~~~~~~~~~~~~~~~~~~~~~~
error: aborting due to 2 previous errors
Build failed, waiting for other jobs to finish...
error: Could not compile `tenacious`.
To learn more, run the command again with --verbose.
Build completed in 0:00:03
[gpoesia@gabriel-notebook servo]$ ./mach build-stable
looking for rustc at /home/gpoesia/dev/servo/.servo/rust/rustc-1.9.0-x86_64-unknown-linux-gnu/rustc/bin/rustc
Rust compiler already downloaded. Use |bootstrap-rust --force| to download again.
Rust lib for target x86_64-unknown-linux-gnu already downloaded. Use |bootstrap-rust --force| to download again.
Compiling js v0.1.3 (https://github.com/servo/rust-mozjs#707bfb4f)
Compiling serde_item v0.2.0
Compiling encoding-index-tradchinese v1.20141219.5
Compiling angle v0.1.0 (https://github.com/servo/angle?branch=servo#d0a2db05)
/home/gpoesia/dev/servo/.cargo/registry/src/github.com-1ecc6299db9ec823/serde_item-0.2.0/src/lib.rs:3:43: 3:74 error: #[feature] may not be used on the stable release channel
/home/gpoesia/dev/servo/.cargo/registry/src/github.com-1ecc6299db9ec823/serde_item-0.2.0/src/lib.rs:3 #![cfg_attr(not(feature = "with-syntex"), feature(rustc_private, plugin))]
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
error: aborting due to previous error
Build failed, waiting for other jobs to finish...
error: Could not compile `serde_item`.
To learn more, run the command again with --verbose.
Build completed in 0:00:37
[gpoesia@gabriel-notebook servo]$
```
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Github issue: #11806
Building with current stable rust (1.9.0) still fails because of
feature pragmas in some dependencies (e.g. serde_item).
Source-Repo: https://github.com/servo/servo
Source-Revision: 1e1db061c039d6e7635310c0c728cfb959322249
--HG--
rename : servo/resources/shaders/debug_color.fs.glsl => servo/ports/stable-rust/src/lib.rs
<!-- Please describe your changes on the following line: -->
Added a regex check to enforce project style guidelines. Added unit check. Catches:
```
}
else {
```
when it should be
`} else {`
---
<!-- 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 (no core files changed)
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix#12234 (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: e21b47c2cc14897380a8c4ef2dfa650b1dd48ab5
<!-- Please describe your changes on the following line: -->
Updating packaging so that packages use '-' instead of a ':'
r? @ConnorGBrewster
---
<!-- 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] These changes fix#11984 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] `./mach test-tidy` does not report any errors
- [X] These changes do not require tests because they are updating packaging
<!-- 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: bb18e99597554b104b071adc96521895f550286d
<!-- Please describe your changes on the following line: -->
Shebang is missing and therefore `./runservo.sh` does not work under some environments.
I've chosen to use `/usr/bin/env sh` instead of `/bin/sh` or `/usr/bin/sh` to auto-select the right `sh` executable depending on the environment.
---
<!-- 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 does not affect servo itself but rather the resulting package under some environments.
<!-- 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: 1ed06777ee1e69c8b56715c897a5bd66ad9e235e
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy --faster` does not report any errors
- [X] These changes fix#11241 (github issue number if applicable).
Either:
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____
Not 100% sure of a good way to test this, so I'm submitting as is for feedback. Manually testing it appears to work fine.
Source-Repo: https://github.com/servo/servo
Source-Revision: 5478e605aef93cc384b709688cc68e3ed854a68b
<!-- Please describe your changes on the following line: -->
I had to run `install_name_tool` on some dylibs for their deps and not just on the servo binary itself. I have checked and Servo.app runs on machines without extra things installed (ex. harfbuzz).
---
<!-- 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#11907 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because fixing mac packaging.
<!-- 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: f6db3518ca9d81ea8fd938586252e690755d7445
<!-- Please describe your changes on the following line: -->
This creates Servo.app and puts it in a dmg along with a symlink to `/Applications`.
---
<!-- 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 creating packager
<!-- 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: 7b2080c5b7c933f74c0d92249a66f8602340ebbe
--HG--
rename : servo/resources/prefs.json => servo/resources/package-prefs.json
- [X] `./mach test-tidy` does not report any errors
- [X] These changes do not require tests because they only change Mach code
This is needed for the moment because of a bug in virtualenv (reported upstream).
r? @metajack (you were the one who suggested that we check this. I did it in a slightly simpler way since I realized we over-complicated things a bit when talking about it the other day.)
Source-Repo: https://github.com/servo/servo
Source-Revision: 887376b225d1969b04b8893afffaa4d65ea6ba1a
<!-- 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 not testable
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Follow up of https://github.com/servo/servo/pull/11735. `.enabled` is missing in the python scripts.
Source-Repo: https://github.com/servo/servo
Source-Revision: 86d65b60647c185e656e3ae607a3762e667974ad
<!-- 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#11686 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because this cannot be automated tested.
<!-- 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: eeed5b6ec26f7d78a938abb2d4b6a1cce8bf2472
<!-- Please describe your changes on the following line: -->
This allows removing `#![feature(as_unsafe_cell)]` in geckolib and make progress towards #11815.
---
<!-- 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 part of #11815.
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require new tests because they don’t introduce no functional 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: 3de14d9ca0cf54e6a2ae4eac5ff47e38e724b77b
<!-- Please describe your changes on the following line: -->
Fix ./mach run --debug --browserhtml
---
<!-- 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#11388
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because they concern dev tooling and there's no testing infrastructure for "./mach run --debug"
<!-- 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: ca26e95e440371c5a378f65b2d4e980a2f2b807f
Made changes so that mach test-tidy considers the ignored directories
Fixes#11386
Source-Repo: https://github.com/servo/servo
Source-Revision: bc2f4c3450787654c955c7b4ce08d98f1f168e70
<!-- Please describe your changes on the following line: -->
Add a `mach update-pub-domains` command that update the public domain list used by servo.
Replace the Vec matching with a HashSet which is way quicker.
---
<!-- 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#11216
<!-- 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: 4dbba2dcabbde11b01a95078ba75742aff3fc44d
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix#11369
Source-Repo: https://github.com/servo/servo
Source-Revision: 1e968b0d3f72199d69f35831bcc9e8ed7d4bbc33
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
- these changes don't touch anything that mach build touches>
- [ ] `./mach test-tidy --faster` does not report any errors
- Tidy errors on some dependencies that I think we'll need for real `package` but aren't using for android
- [X] These changes address #9918 (github issue number if applicable).
Either:
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because I don't think Mach has tests yet?
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: bc52617d3351d64cfd1479c5088b591370529f59
Add freebsd to `host_triple` so that the correct nightly compiler will be downloaded. There are still other crates that need patching to compile, but this is a start.
---
- [ ] `./mach build -d` does not report any errors
- Other crates need patches
- [X] `./mach test-tidy` does not report any errors
- [X] These changes do not require tests because: the correct compiler is not downloaded without this commit
Part of: #11625
Source-Repo: https://github.com/servo/servo
Source-Revision: fada22ab53a532a9adbad0bfc0d5b5d7d4b8cd26
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#11137 (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: 93f137f06d36059105d62ffc6829d65f7efe0d9d
<!-- Please describe your changes on the following line: -->
This makes `generate_style_structs.py` generate bindings for both `DEBUG` and non-`DEBUG` Gecko configurations. The corresponding generated bindings are used in geckolib based on `cfg(debug-assertions)`.
I regenerated bindings on top of Gecko master plus https://bugzilla.mozilla.org/show_bug.cgi?id=1277154 (landing soon), which tripped up the bindgen due to bitfield layout issues.
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
- [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 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: 71db2705edbf2381849af0e2edf7743c286881ec
--HG--
rename : servo/ports/geckolib/gecko_bindings/structs.rs => servo/ports/geckolib/gecko_bindings/structs_debug.rs
rename : servo/ports/geckolib/gecko_bindings/structs.rs => servo/ports/geckolib/gecko_bindings/structs_release.rs
<!-- Please describe your changes on the following line: -->
Add `--all` argument to get `./mach test --all` for running all test suites. Remove broken `faster` argument passed to `test_tidy()` when running `./mach test`.
---
<!-- 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#9544 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because fixing `mach test`
<!-- 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: fd03e02291623bea34d94fb4f12671d9735ed04e
<!-- Please describe your changes on the following line: -->
This removes the code and support infrastructure for the gonk port.
r? @metajack
---
<!-- 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 there are no 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: e3b2d6aef0bbf96cc55f1235461d757cf685f0e0
This automates something that I find myself frequently commenting on in PRs.
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] There are tests for these changes OR
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 3ec20d9cf517c67f4d280e8958cc58c4c2b4fbb2
Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [X ] `./mach build -d` does not report any errors
- [X ] `./mach test-tidy --faster` does not report any errors
- [X ] These changes fix#11320 (github issue number if applicable).
Either:
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because _____
Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process.
Source-Repo: https://github.com/servo/servo
Source-Revision: 2f9796fa696e9514280777398467696dd4f004b3
This is a part of @rebstar6's work on #11422, with only her test fixes and the enabling of them, to ease review on the actual implementation.
Source-Repo: https://github.com/servo/servo
Source-Revision: c432e9ac540add7a7224cb20af98519544ae0189
"0:03:40.817715" is harder to read and no more informative than "0:03:40"
Source-Repo: https://github.com/servo/servo
Source-Revision: 345b8b9c00b146259b2b665775c3a5aa7ded6056
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#11217 (github issue number if applicable).
Either:
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because they just change command-line options, which aren't tested
Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process.
This finishes #11267
Source-Repo: https://github.com/servo/servo
Source-Revision: ebb690d28c3c36ffba7059b64361fed3847861c7
It's actually quite weird that I had to do this, but I got errors without it (on Windows). I noted the `BIN_SUFFIX` existed elsewhere so it felt logical to use it here also.
Source-Repo: https://github.com/servo/servo
Source-Revision: 40b2d424c08ce089dba8800fa310097276b3607e
Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy --faster` does not report any errors
- [X] These changes partially fix#11217
Either:
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because it just affects `mach` script parameters
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: b6e06bd83740ea5dc3385f88daf88677fc676f11
Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy --faster` does not report any errors
- [x] These changes fix#8348
Either:
- [X] These changes do not require tests because ~~I'm lazy~~ it's a configuration change, and asserting default values is usually tedious and not very helpful
Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process.
---
Allegedly, this broke the build [back in the day](https://github.com/servo/servo/pull/8519).
Going to see if it's a piece of cake to land now
Source-Repo: https://github.com/servo/servo
Source-Revision: ea38ccfdfe12c64d41ff460f358e21cafead8414
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy --faster` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).
Either:
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because it's a package update
Source-Repo: https://github.com/servo/servo
Source-Revision: aa9fc4e0549c54fafef358a50f32f520c9014ba6
Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy --faster` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).
Either:
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because testing would be overly difficult
Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process.
This implements system level DPI awareness for Windows. It has three
parts:
1. Add a application manifest which is copied alongside servo.exe during
build that declares our DPI awareness level. This is needed otherwise
DPI queries will return 96dpi and our application will be upscaled on
high DPI displays.
2. Rename hidpi_factor to avoid confusion with Glutin's hidpi_factor
which does something else.
3. Correctly convert windows sizes on window creation for
Windows. Unlike OS X, Windows uses device pixels for window creation.
Source-Repo: https://github.com/servo/servo
Source-Revision: 63bbc13fffeaa14f15ff9270f7d6355fab4d3d56
Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy --faster` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).
Either:
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because 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: 872565bb4bd2883c6fe926da74e3b3e2b74e6d34
--HG--
rename : servo/components/compositing/constellation.rs => servo/components/constellation/constellation.rs
rename : servo/components/compositing/timer_scheduler.rs => servo/components/constellation/timer_scheduler.rs
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#9965
Either:
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because _____
Add unit tests for the `net` component about cookies. The tests are generated
with a new `mach update-net-cookies` command from this repo: https://github.com/abarth/http-state.
This PR also includes two trivial bug fixes about cookie handling.
From all the tests included, the following ones are currently failing:
- cookie_http_state::test_0003
- cookie_http_state::test_0006
- cookie_http_state::test_attribute0004
- cookie_http_state::test_attribute0005
- cookie_http_state::test_attribute0007
- cookie_http_state::test_attribute0008
- cookie_http_state::test_domain0017
- cookie_http_state::test_mozilla0001
- cookie_http_state::test_mozilla0002
- cookie_http_state::test_mozilla0003
- cookie_http_state::test_mozilla0005
- cookie_http_state::test_mozilla0007
- cookie_http_state::test_mozilla0009
- cookie_http_state::test_mozilla0010
- cookie_http_state::test_mozilla0013
`test_000[36]` and `test_mozilla*` are failing because there is currently no
method to clean a `net::cookie_storage` from expired cookies.
`test_attribute000[4578]` are failing because hyper does not parse the `Secure`
attribute correctly. I will open an issue on the upstream project.
`test_domain0017` fails because the TLD .org is not on the PUB_DOMAINS list.
Source-Repo: https://github.com/servo/servo
Source-Revision: c519739b7bcf408f2f671a89729aa30f39dd67a1
Addresses issue #10702
the tidy self-test doesn't seem to catch the `member_name:"Foo"` line like it should. the regex follows similar pattern in the file and works in my regex tester tool, so not really sure what is going on there.
Source-Repo: https://github.com/servo/servo
Source-Revision: 8c2c0bd964bfbf1a2d7494bd8fbbdd263173ef7d
* Remove unnecessary dependencies and features from top-level Cargo.tomls. The features for each crate will be computed based on the union of features specified in the dependency graph. Specifying the same ones again just adds more ways for them to get out of sync.
* Move all cargo build environment variables into CommandBase
Fixes#11112. r? @metajack
(Not included: CI test to make sure #11112 doesn't regress again.)
Source-Repo: https://github.com/servo/servo
Source-Revision: 7f76e3ba74a11f1f4bb46f12e17c06270175908f
This preserves the fix from #11097 in the situation where `$CARGO_HOME` and `cargo-home-dir` in `.servobuild` are both present: `.servobuild` should win.
But it changes the behavior when `$CARGO_HOME` is present and `.servobuild` is not: Then `$CARGO_HOME` should be used.
We now check the following values in order of priority and use the first one that is found:
1. `cargo-home-dir` in `.servobuild`
2. `CARGO_HOME` in the environment
3. default value (`<servo-repo>/.cargo`)
r? @larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: fcebfcc1130b7b3e74f14c8375f825f148e0f152
This use always `cargo-home-dir` in `/.servobuild` even if you set `CARGO_HOME` in your shell.
If you use [racer][racer] with [rustup (multirust.rs)][rustup], you may set `CARGO_HOME` env variable to your shell. Then the previous code would be a problem which does not use `cargo-home-dir` in `/.servobuild`.
[racer]: https://github.com/phildawes/racer
[rustup]: https://github.com/rust-lang-nursery/rustup.rs
Source-Repo: https://github.com/servo/servo
Source-Revision: 0617727f5b58d1c4ebb10cf081f5952b7961fbf4
The default maximum line length Python linters use is 79, so a bunch of editor plugins complain about line lengths, unless you have a tox.ini telling the linter to ignore line lengths (E501) explicitly.
Source-Repo: https://github.com/servo/servo
Source-Revision: c3323f3c70ab53e5fe2f9aae7ba26b1a21cd622a