gecko-dev/servo/tests
Igor Matuszewski 8d9de62f85 servo: Merge #20314 - Don't use unsafe Heap::new constructor (from Xanewok:remove-heap-constructor); r=jdm
<!-- Please describe your changes on the following line: -->
Pulls https://github.com/servo/rust-mozjs/pull/398 and aims to close https://github.com/servo/rust-mozjs/issues/343.

We can't convert from `JSVal` to `Heap<JSVal>` safely (due to GC barriers we can't move Heap value after changing its underlying value to something meaningful, e.g. non-null or non-undefined), so I decided to also wrap the Heap values in a Box (and in dictionaries in RootedTraceableBox, see https://github.com/servo/servo/pull/20265#issuecomment-372838379 and the issue for more details) in dictionaries.

Since we allocate more to be safe, I think it'd be good to also do some sort of a JS perf run, if there is any to see if there's any significant overhead.

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because checking for not moving Heap after setting a value would require encoding a lot more info in type system (Heap) and I'm not sure how to do that and end up with an ergonomic and consistent API

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 23b6f569d09f9b10a70ca1b5c8a48f7da45853e2

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c609cd593bbb75cbbe584687a7caf814de3059fc
2018-03-18 15:22:23 -04:00
..
dromaeo servo: Merge #11844 - Fix the Dromaeo test runner (from jdm:dromaeo-fix); r=Ms2ger 2016-06-24 02:49:23 -05:00
heartbeats servo: Merge #15458 - Update heartbeats-simple dependencies for bug fixes (from connorimes:hbs-0.4); r=emilio 2017-02-22 09:05:37 -08:00
html servo: Merge #20314 - Don't use unsafe Heap::new constructor (from Xanewok:remove-heap-constructor); r=jdm 2018-03-18 15:22:23 -04:00
jquery servo: Merge #10033 - Make the jquery test runner work again (from Ms2ger:jquery); r=jdm 2016-03-16 18:52:31 +05:01
power
unit servo: Merge #20140 - Bump euclid to 0.17 (from Eijebong:euclid); r=SimonSapin 2018-02-28 04:14:32 -05:00