Commit graph

970 commits

Author SHA1 Message Date
Simon Sapin
389073b9a5 Add test name filtering to 'mach test-stylo' 2017-05-19 17:47:01 +02:00
bors-servo
a01ab9ad34 Auto merge of #16935 - servo:out-of-crate-bindings-tests, r=emilio
Move bindings tests out of the style crate

This cuts in almost half the time to run:

```
touch components/style/lib.rs
./mach test-stylo
```

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16935)
<!-- Reviewable:end -->
2017-05-19 03:48:14 -05:00
bors-servo
b0976566fb Auto merge of #16893 - MortimerGoro:webgl_extensions, r=emilio
Implement WebGL extensions

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

This PR provides the base for implementing WebGL extensions. It comes with the following ones already implemented and passing all related WebGL conformance tests:

- OES_texture_float
- OES_texture_float_linear
- OES_texture_half_float
- OES_texture_half_float_linear
- OES_vertex_array_object

I'll submit other extensions like compressed textures in a separate PR to ease the review process. I included the 5 extensions in this PR because it's easier to show/review how the WebGL extension base works.

To pass all OES_texture_float_xxx tests I had to add some missing format conversions in WebGLRenderingContext.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
- [ ] These changes fix #__ (github issue number if applicable).

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

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16893)
<!-- Reviewable:end -->
2017-05-19 01:09:48 -05:00
bors-servo
0ad0641872 Auto merge of #16941 - upsuper:bug1336540, r=emilio
Move config info from build_gecko.rs to Gecko code

This is the Servo side change for [bug 1336540](https://bugzilla.mozilla.org/show_bug.cgi?id=1336540)

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16941)
<!-- Reviewable:end -->
2017-05-18 20:42:55 -05:00
Xidorn Quan
dafc6adc30 Remove --with-gecko from build-geckolib because it is not usable. 2017-05-19 11:08:36 +10:00
Simon Sapin
ee2794e966 Move bindings tests out of the style crate.
This cuts in almost half the time to run:

```
touch components/style/lib.rs
./mach test-stylo
```
2017-05-18 18:46:29 +02:00
Imanol Fernandez
32e23c4db4 Implement WebGL extensions. 2017-05-18 18:44:07 +02:00
Simon Sapin
94b4a32c18 Make some attr values case-insensitive in selectors
https://bugzilla.mozilla.org/show_bug.cgi?id=1363531
2017-05-18 17:13:15 +02:00
Alan Jeffrey
af8436c9be Implemented Houdini worklets. 2017-05-17 09:01:05 -05:00
bors-servo
5e5d3559d9 Auto merge of #16852 - servo:illegal_floating_point_literal_pattern, r=jdm+SimonSapin
Fix illegal_floating_point_literal_pattern again and rustup…

… to compiler that has it, to avoid regressing again.

Upgrade to (rustc 1.19.0-nightly (e17a1227a 2017-05-12)

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16852)
<!-- Reviewable:end -->
2017-05-13 11:25:07 -05:00
Simon Sapin
6a3864de5f Fix UnicodeDecodeError in mach clean-nightlies 2017-05-13 17:49:37 +02:00
bors-servo
286bfb96a0 Auto merge of #16769 - MortimerGoro:android_archs, r=larsbergstrom
Support for Android armv7 and aarch64 target triples

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

Support for Android armv7 and aarch64 target triples in python build scripts (build + packaging)

`--android` build parameter works as always (arm-linux-androideabi still the default)
`./mach build --release --android`

New compilation modes for android
`./mach build --release --target=arm-linux-androideabi`
`./mach build --release --target=armv7-linux-androideabi`
`./mach build --release --target=aarch64-linux-android`

See https://github.com/servo/servo/issues/11921. When all crates are ready we'll switch default android compilations to` armv7-linux-androideabi` target triple.

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

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16769)
<!-- Reviewable:end -->
2017-05-13 10:24:29 -05:00
Simon Sapin
f693582ba9 Add 'mach check' and 'mach check-geckolib' 2017-05-13 15:28:41 +02:00
Simon Sapin
51f33d0a62 Make ./mach rustup use the latest nightly rather than master.
This will help avoid situation where we upgrade Servo and dependencies
for a Rust breaking change that hasn’t reach Nightly yet.

The old behavior is still available with `./mach rustup --master`.
2017-05-13 12:01:05 +02:00
Imanol Fernandez
01228282cd Support for Android armv7 and aarch64 target triples 2017-05-08 17:28:59 +02:00
UK992
d03e52d240 Add clobber mechanism 2017-05-08 16:19:56 +02:00
bors-servo
a5fe464e4a Auto merge of #16762 - upsuper:buildtime-pseudo, r=emilio
Generate atom files at build-time

The commits here basically do the following things:
1. move all generated files for gecko into "gecko/generated" so that we can copy all of them around
2. make regen_atoms.py generate file to the out dir rather than in-tree
3. make the build script invoke regen_atoms.py when bindgen feature is enabled

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16762)
<!-- Reviewable:end -->
2017-05-08 07:35:19 -05:00
bors-servo
f6bd158fd4 Auto merge of #16593 - UK992:clean-cargo-cache, r=wafflespeanut
Mach: Add `mach clean-cargo-cache` command

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

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

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

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16593)
<!-- Reviewable:end -->
2017-05-08 04:37:21 -05:00
UK992
66ea4b21d0 Add mach clean-cargo-cache command 2017-05-08 11:25:21 +02:00
Xidorn Quan
35dc68c234 Stop touching in-tree files from build-geckolib.
This stops:
* generating atom helper files from regen_atoms.py
* copying generated binding files to in-tree
2017-05-08 14:19:03 +10:00
bors-servo
3905b5af18 Auto merge of #16655 - servo:jdm-patch-1, r=emilio
Fix broken unit tests

These are tests that only get run on TravisCI, apparently, so they were broken by be0139ff3c and 32c624e585 without anybody noticing.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16655)
<!-- Reviewable:end -->
2017-05-03 09:47:44 -05:00
Josh Matthews
f3f9e28e88 Make unit tests pass on TravisCI. 2017-05-03 10:32:27 -04:00
Aneesh Agrawal
cc86993857 Keep stable rustc versions in clean-nightlies
Check the `rust-stable-version` file to keep the last n
versions of both the nightly and the stable compiler.
2017-05-02 02:41:55 -04:00
bors-servo
f1287814db Auto merge of #16601 - servo:cargoup, r=nox
Update to cargo 0.19.0-nightly (994e552 2017-04-25)

This should be unblocked now: https://github.com/servo/servo/pull/15852#issuecomment-296379226

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16601)
<!-- Reviewable:end -->
2017-04-27 23:32:54 -05:00
bors-servo
5c321737c6 Auto merge of #16639 - aneeshusa:skip-nonexisting-dirs-when-cleaning-nightlies, r=jdm
Avoid searching for old nightlies in missing dirs

These directories may be missing (e.g. a first time build or due to Buildbot cleaning),
so don't try to look inside them for old nightlies if so.

I noticed this in http://build.servo.org/builders/arm32/builds/6815/steps/shell__1/logs/stdio.

<!-- 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
- [ ] These changes fix #__ (github issue number if applicable).

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

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16639)
<!-- Reviewable:end -->
2017-04-27 17:18:55 -05:00
Aneesh Agrawal
ba874d67bb Avoid searching for old nightlies in missing dirs
These directories may be missing (e.g. a first time build),
so don't try to look inside them for old nightlies if so.
2017-04-27 17:30:56 -04:00
Simon Sapin
574b155cf6 Add ./mach cargoup 2017-04-25 12:28:08 +02:00
Simon Sapin
84558ff23f Add ./mach rustup 2017-04-24 00:34:46 +02:00
bors-servo
cc74b5b36f Auto merge of #16573 - UK992:travis, r=aneeshusa
Auto clean old nightlies on Travis

This could solve `no space left` problem.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16573)
<!-- Reviewable:end -->
2017-04-22 19:17:12 -05:00
bors-servo
f795eb1a8b Auto merge of #16550 - froydnj:gecko-bindings-gecko-debug, r=froydnj
switch gecko_bindings over to the gecko_debug feature [DO NOT MERGE]

...so that they use the correct Gecko structs regardless of whether Rust
code is being compiled with debug assertions or not.

This is the second part of the Servo-side changes for https://bugzilla.mozilla.org/show_bug.cgi?id=1357556

- [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 building is a sufficient test.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16550)
<!-- Reviewable:end -->
2017-04-22 18:40:47 -05:00
UK992
c5f13063a5 Optimize clean-nightlies 2017-04-23 01:09:46 +02:00
Nathan Froyd
7c6fda8ea9 switch gecko_bindings over to the gecko_debug feature
...so that they use the correct Gecko structs regardless of whether Rust
code is being compiled with debug assertions or not.
2017-04-22 17:00:24 -04:00
Josh Matthews
665817d2a6 Update web-platform-tests to revision 58eb04cecbbec2e18531ab440225e38944a9c444 2017-04-22 14:17:10 +02:00
Imanol Fernandez
7a2a90959e Android life cycle improvements and Gradle integration 2017-04-21 18:24:10 +02:00
coalman
57e74542ee Make tidy check that opening and closing braces that begin a line do so with proper alignment. 2017-04-18 14:56:03 -04:00
Aneesh Agrawal
060a813b45 Automatically clean old nightlies
Add a new `-keep` flag to `./mach clean-nightlies` to control how many
nightlies to keep, which keeps the n most recent nightlies found in git.

Use this to clean old nightlies at the start of each build,
currently keeping 3 nightlies at a time.
2017-04-18 09:30:45 -04:00
Aneesh Agrawal
b1824f7a05 Move delete function to util.py
This makes it easier to reuse in other places.
2017-04-18 09:30:41 -04:00
Aneesh Agrawal
0730888fbe Stop segfaulting at the end of mach bootstrap
`mach bootstrap` will finish succesfully,
but then segfault inside glibc while exiting.
It seems to have to do with the MarkupSafe library used by Mako;
delaying the Mako import from the top level to inside functions where it
is used avoids the problem.
(It seems to interact with the call to pip to install the Salt
requirements in the virtualenv, as commenting that pip call out
separately will also fix the segfault.)

Also, use the Mako installed in the Python virtualenv while running
packaging commands (instead of the one from the bundled zip file),
and cleanup imports in the package_commands.py file.
2017-04-17 20:44:23 -04:00
Aneesh Agrawal
022f0aa34a Remove more deprecated Windows GNU code/docs 2017-04-16 22:12:17 -04:00
Aneesh Agrawal
ff74faee10 Fix setting Servo icon on macOS
Originally introduced in PR #11646,
this appears to have been accidentally broken by commit
82df8e9399.
2017-04-16 22:12:17 -04:00
Sadman Kazi
cca3343c2e Check for merge commits with tidy
Increase merge commit check range under travis

Add comment on why travis workaround is necessary
2017-04-13 15:57:36 -04:00
Aneesh Agrawal
40c70bfb28 Allow bootstrapping on Debian 2017-04-12 15:36:06 -04:00
bors-servo
eb058e20a9 Auto merge of #16370 - aneeshusa:enable-using-local-states-for-mach-bootstrap, r=jdm
Add env var for local saltfs root during bootstrap

<!-- Please describe your changes on the following line: -->
This enables using the environment variable `SERVO_SALTFS_ROOT` to use a local copy of the saltfs tree for `./mach bootstrap`. The immediate use case is to add a test for `./mach bootstrap` to saltfs itself, to ensure Salt changes or refactors don't break `./mach bootstrap`.

I tested this locally in an Ubuntu Trusty VM.

---
<!-- 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 the test will be added to saltfs

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16370)
<!-- Reviewable:end -->
2017-04-12 12:56:47 -05:00
bors-servo
3cf6e56df9 Auto merge of #15857 - UK992:mach-cargo-update, r=Wafflespeanut
Add `--dry-run` argument to `mach cargo-update`

This add ability to check which packages are outdated, also detect which updates are minor and which may contain breaking changes.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/15857)
<!-- Reviewable:end -->
2017-04-12 03:54:41 -05:00
Aneesh Agrawal
0a9a43aa31 Add env var for local saltfs root during bootstrap 2017-04-12 02:00:14 -04:00
UK992
cb80bda808 Add --dry-run argument to mach cargo-update 2017-04-11 23:55:02 +02:00
UK992
e3654e14c5 Update cmake to 3.7.2 2017-04-11 23:34:13 +02:00
UK992
9b35fd9472 Add support for Visual Studio 2017 2017-04-11 23:31:22 +02:00
Simon Sapin
9f5ba0aee9 Make ./mach rustc and ./mach cargo bootstrap. 2017-04-05 21:52:10 +02:00
Simon Sapin
ca08ff876b Add cargo-geckolib and rustc-geckolib commands to mach. 2017-04-05 21:50:44 +02:00