Commit graph

69 commits

Author SHA1 Message Date
Simon Sapin
bdae1693ef servo: Merge #15555 - tidy: Ignore [replace]’d packages in the duplicate package lint (from servo:tidy-ignore-replace); r=nox
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

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

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

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

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

r? @jdm @wafflespeanut

cc @bzbarsky

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 658439d5cc20927788ca419d42a82153d81d6a7e
2017-02-08 22:21:08 -08:00
UK992
132fb1d5fd servo: Merge #15035 - Tidy: Report invalid listed ignored directories and files (from UK992:tidy-validate-ignore); r=Wafflespeanut
r? @Wafflespeanut

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

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #15014 (github issue number if applicable).

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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 7eb811b837545c295506c25207c891126b6db0ff
2017-01-14 08:31:30 -08:00
Jure Podgoršek
80f56a2927 servo: Merge #14896 - Tidy assignments (from g1smo:tidy-assignments); r=jdm
<!-- Please describe your changes on the following line: -->
I've added a new tidy rule (no = in the beginning of line) + tests for it. Also cleaned up a few rust source files to accord with the new rule.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #14890 (github issue number if applicable).

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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: b6c137b36f8b9f9cc5c0105bb94a4edeaf7d09be
2017-01-07 09:40:46 -08:00
Alan Jeffrey
94a31a8931 servo: Merge #14351 - An in-memory RNG that shares its file descriptor (from asajeffrey:servo-rand-share-fds); r=emilio
<!-- Please describe your changes on the following line: -->

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

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

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

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes do not require tests because it's fixing a resource issue

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 36ddf763f66b1b971db07649ff5c69b2e9fd5f91
2017-01-05 06:32:23 -08:00
UK992
76bfd8c1e3 servo: Merge #14737 - Package: Various improvements (from UK992:package-prefs); r=Wafflespeanut
Fixes https://github.com/servo/servo/issues/11966
Fixes https://github.com/servo/servo/issues/12707

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

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

cc @SimonSapin

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #14695

<!-- Either: -->
- [X] There are tests for these changes
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 37a5e29147f0dc489888377d6f7bb53282dc04f9
2016-12-26 08:57:04 -08:00
Josh Matthews
bf743e57d6 servo: Merge #14589 - Reduce calls into arbitrary code with the ScriptThread::documents borrow held (from servo:harden-script); r=jdm+Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 0c56499bdc5c92bac44f8c33e4781899c34d64e1
2016-12-16 08:53:27 -08:00
William Lee
3ab1743159 servo: Merge #14051 - Adding linting checks for buildbot_steps.yml (from birryree:tidy-check-buildbot-steps); r=aneeshusa
This pull request adds some tidy checks around YAML files, and specifically `buildbot_steps.yml`.

Tidy checks added:

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

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [x] These changes fix #13838 (github issue number if applicable).

<!-- Either: -->
- [X] There are tests for these changes OR

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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 21ad1c210997daba82ec49e1572c7b0634b6f337
2016-12-08 17:39:44 -08:00
Sijmen Schoon
0bc288e5e9 servo: Merge #14450 - Implement tidy commit message test (from SijmenSchoon:master); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->
Makes tidy check commit messages since the latest merge, failing if one of them contains the string "WIP".

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

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #14388.

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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: da15790e41b9404845bec9ae4dcdc127d23fa8ca
2016-12-03 14:15:22 -08:00
Anthony Ramine
e20c332d45 servo: Merge #14381 - Move to Cargo workspaces (from servo:workspaces); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: eb7032f6dd5e8a1f8c0602666805d1d10cc84e65

--HG--
rename : servo/ports/servo/Cargo.lock => servo/Cargo.lock
2016-11-28 01:44:40 -08:00
Manish Goregaokar
d8a79aa1af servo: Merge #14190 - Immutable CSSOM (from Manishearth:cssom); r=SimonSapin
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
2016-11-16 15:05:59 -06:00
Ravi Shankar
11bd8d6583 servo: Merge #14166 - Allow tidy to run custom project-specific lints (from Wafflespeanut:tidy); r=frewsxcv
<!-- 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
2016-11-12 11:06:27 -06:00
Yuki Izumi
fa4f7b60bd servo: Merge #14092 - Sort check on JSON (from kivikakk:sort-check); r=Wafflespeanut
<!-- 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
2016-11-07 07:41:34 -06:00
Rohit Burra
2ba02c6d3c servo: Merge #13986 - Make test-tidy check for alphabetical ordering of #![feature(...)] statements (from iamrohit7:tidy-feature-attrs); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->

<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [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
2016-11-01 01:13:35 -05:00
Daan Sprenkels
e3d4f01fdf servo: Merge #13988 - test-tidy: Check for space between function name and ( (from dsprenkels:tidy-fncalls); r=Wafflespeanut
<!-- 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
2016-10-31 13:03:32 -05:00
Ms2ger
9d961d0423 servo: Merge #13999 - Reinstate the wpt lint checking (from servo:tidy-wpt); r=Wafflespeanut
Source-Repo: https://github.com/servo/servo
Source-Revision: cb8ac3f00cf3c55a17dadc68d9287c6cd7c92e1c
2016-10-31 10:29:10 -05:00
Mátyás Mustoha
1c6e643fbc servo: Merge #13945 - Update the Android build system (from mmatyas:android_libcpp_change); r=larsbergstrom,aneeshusa
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
2016-10-28 16:11:26 -05:00
Shing Lyu
302dacded5 servo: Merge #13955 - Don't check untracked file in tidy (from shinglyu:tidy-untrack); r=Wafflespeanut
<!-- 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
2016-10-27 23:07:53 -05:00
Alexandrov Sergey
8e0108af54 servo: Merge #13589 - Support SVG element (from splav:SVGElement#12974); r=pcwalton,Ms2ger
<!-- 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
2016-10-07 17:40:13 -05:00
Gregory
6f603befa7 servo: Merge #13447 - Have tidy ensure that the there are no extra files in the webidls folder #13427 (from gterzian:check_webidls_folder_files); r=Wafflespeanut
<!-- 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
2016-10-02 12:00:36 -05:00
Matt Schmoyer
64a45f91a2 servo: Merge #13538 - Avoid unecessary loop evaluation on empty lines for tidy check_license (from mschmo:master); r=Wafflespeanut
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
2016-10-01 16:17:00 -05:00
Vignesh Sarma K (വിഘ്നേഷ് ശ൪മ കെ)
5b30e36e71 servo: Merge #13416 - Replace instances of old ServiceWorker specification URL with new one (from vigneshsarma:issue-13408); r=jdm
<!-- 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
2016-09-25 10:12:30 -05:00
Hugo Thiessard
a00da1ad7e servo: Merge #13361 - Report tidy error for space after ( (from Mylainos:issue-13350); r=Wafflespeanut
<!-- 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
2016-09-23 22:16:57 -05:00
UK992
f8cb9971b7 servo: Merge #13205 - Tidy: Fix ordering use statements with braces (from UK992:tidy-sort); r=Wafflespeanut
This hack fixes https://github.com/servo/servo/issues/7412 and matches behavior with rustfmt.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3117787fd2a8b7748cfde1e9b8c5be3c00f2c599
2016-09-08 22:19:19 -05:00
UK992
c15c920395 servo: Merge #13107 - Tidy: Handle empty files (from UK992:tidy); r=Wafflespeanut
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
2016-08-31 07:42:25 -05:00
UK992
77fd7d6a36 servo: Merge #13027 - Check for license only in Cargo.toml (from UK992:tidy-toml); r=Wafflespeanut
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
2016-08-25 10:58:09 -05:00
Ravi Shankar
717b967cc4 servo: Merge #12976 - A few minor cleanups in tidy (from Wafflespeanut:tidy_fixes); r=nox
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors

<!-- 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
2016-08-23 03:29:05 -05:00
UK992
dfcbb95338 servo: Merge #12877 - Tidy config file (from UK992:tidy-toml); r=Wafflespeanut
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
2016-08-20 22:27:06 -05:00
Vladimir Vukicevic
1f90e0074c servo: Merge #11756 - MSVC support for Servo, and CMake builds for native code (from vvuk:servo-msvc); r=larsbergstrom
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
2016-08-17 13:22:52 -05:00
UK992
05e12d5592 servo: Merge #12781 - Improve tidy's license validation logic (from UK992:tidycheck-rebased); r=Wafflespeanut
Rebased and fixed https://github.com/servo/servo/pull/10721, which is inactive for months.
Fixes https://github.com/servo/servo/issues/10716

r? @larsbergstrom or @edunham

Source-Repo: https://github.com/servo/servo
Source-Revision: 8419f96dc0cb79c83922b62166390f6688f2aae0
2016-08-14 09:17:34 -05:00
Ms2ger
e0616c1b1a servo: Merge #12816 - Update ordered-float (from servo:always-be-updating); r=Wafflespeanut
Source-Repo: https://github.com/servo/servo
Source-Revision: ef442556c2f420ea8f9011df0a9e1b7a55c8b238
2016-08-11 02:16:17 -05:00
Simon Martin
f267f6f076 servo: Merge #12576 - Issue #12421: tidy should also check .html files (from simartin:issue_12421); r=jdm
./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
2016-08-09 17:20:50 -05:00
Ravi Shankar
c069acc623 servo: Merge #12783 - Prefer length and percentage for word spacing (from Wafflespeanut:word_spacing); r=Manishearth
<!-- 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
2016-08-09 10:13:30 -05:00
Aneesh Agrawal
b707711b20 servo: Merge #12736 - Add more shell script lints (from aneeshusa:prohibit-backticks-in-shell-scripts); r=Wafflespeanut
<!-- 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
2016-08-06 21:57:31 -05:00
Jim Berlage
5b1825a0cf servo: Merge #12295 - Add linting for shell scripts (from jimberlage:12158/shell-linting); r=aneeshusa
<!-- 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
2016-08-04 12:31:17 -05:00
Alan Jeffrey
63f5d493af servo: Merge #12511 - Added test-tidy for dependent licenses (from asajeffrey:test-tidy-dep-licenses); r=larsbergstrom
<!-- 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
2016-07-21 12:23:24 -05:00
Malisa Smith
af73ec148a servo: Merge #12467 - Add the append method for the Headers API (from jeenalee:jeena-headersAPI); r=jdm
<!-- 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
2016-07-20 16:24:48 -05:00
Alan Jeffrey
3502f92cc3 servo: Merge #12447 - All our Cargo.toml files should contain an MPL-2.0 license field (from asajeffrey:license-mpl-2.0); r=frewsxcv
<!-- Please describe your changes on the following line: -->

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

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #12434
- [X] There are tests for these changes

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 650d1d1185eecdc4c8b605bb0290ece7de839015
2016-07-14 09:33:18 -07:00
Owen Coutts
6795286f7c servo: Merge #12318 - [tidy] prevent duplicate json keys (from tallowen:tidy-features); r=frewsxcv
Throws a tidy error when duplicated keys are present.
![screenshot from 2016-07-07 16-54-17](https://cloud.githubusercontent.com/assets/557689/16658260/fd19cece-4465-11e6-89b1-a79296ba6a72.png)

---
<!-- 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
2016-07-10 19:15:35 -07:00
Nikhil Shagrithaya
3a6c4f6d6d servo: Merge #12313 - test-tidy command now ignores files in subdirectories of ignored dirs (from cynicaldevil:tidy-test); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [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
2016-07-07 19:16:31 -07:00
Emilio Cobos Álvarez
ee9d35391e servo: Merge #12212 - stylo: Move all binding-generator logic code to a python script (from emilio:stylo-regen-script); r=bholley
<!-- 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
2016-07-06 00:12:58 -07:00
Travis Dean
60ed5d9499 servo: Merge #12243 - Add style check and test for else braces (from TravisDean:else-brace-check); r=ConnorGBrewster
<!-- 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
2016-07-04 16:52:19 -07:00
Ms2ger
9b6ed29b4b servo: Merge #11848 - Update web-platform-tests to revision 346d5b51a122f7bb1c7747064499ef281a0200f7 (from servo:wpt-20160624); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 235a6a6380f50985dcbce9fa3901551cc111c954
2016-06-24 04:36:53 -05:00
Ravi Shankar
9dd46f9018 servo: Merge #11755 - Removed an unused function and minor cleanup (from Wafflespeanut:tidy_fixes); r=nox
fixes #11679

Source-Repo: https://github.com/servo/servo
Source-Revision: ff67f80f36106cba4a89c48d8c8d59c9880856c7
2016-06-16 07:14:54 -05:00
Saurabh Badhwar
acee66a283 servo: Merge #11621 - Make mach test-tidy consider ignored dirs (from h4xr:mach_fix); r=Wafflespeanut
Made changes so that mach test-tidy considers the ignored directories

Fixes #11386

Source-Repo: https://github.com/servo/servo
Source-Revision: bc2f4c3450787654c955c7b4ce08d98f1f168e70
2016-06-14 23:33:52 -05:00
Patrick Walton
28bd024169 servo: Merge #11646 - servo: Add an Info.plist on the Mac and opt into integrated graphics (from pcwalton:real-info-plist); r=metajack
Discrete GPUs cause power use problems and tend to perform badly
with WebRender.

See:

* https://developer.apple.com/library/mac/qa/qa1734/_index.html

* https://reverse.put.as/2013/05/28/gimmedebugah-how-to-embedded-a-info-plist-into-arbitrary-binaries/

r? @metajack

Source-Repo: https://github.com/servo/servo
Source-Revision: e51ce5d1bac31afdadc9a4c86175fac00677b31a
2016-06-08 15:33:38 -05:00
mrmiywj
368fab86d1 servo: Merge #11190 - add &Root<T> checker (from mrmiywj:Root-tidy-checker); r=jdm
Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` 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
2016-06-05 08:48:58 -05:00
Cameron McCormack
8de01da586 servo: Merge #11549 - Generate debug and release Gecko bindings (from heycam:release-bindings); r=heycam
<!-- 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
2016-06-03 01:55:33 -05:00