style: Add bindings for ShadowRoot
This adds TShadowRoot to the `dom` module.
Right now it barely adds uses of it, but this is a prerequisite to fix a bunch
of Shadow DOM bugs and separate it from the XBL mess.
<!-- 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/20188)
<!-- Reviewable:end -->
This adds TShadowRoot to the `dom` module.
Right now it barely adds uses of it, but this is a prerequisite to fix a bunch
of Shadow DOM bugs and separate it from the XBL mess.
Unconditionally derive ToComputedValue as Clone for non-generic types
We assume that types such as `<Self as ToComputedValue>::ToComputedValue == Self`
just construct a new value that is just a clone of the original one without any
additional code.
<!-- 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/20183)
<!-- Reviewable:end -->
We assume that types such as `<Self as ToComputedValue>::ToComputedValue == Self`
just construct a new value that is just a clone of the original one without any
additional code.
removed default_data_dir() and default_cache_dir()
<!-- Please describe your changes on the following line: -->
I removed `default_data_dir()` and `default_cache_dir()` from `components/config/basedir.rs` because they were never called.
---
<!-- 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 they only remove untested code
<!-- 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/20177)
<!-- Reviewable:end -->
#20174 removed the option and unwrap
I removed the useless option and the need for unwrap from default_config_dir
---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix#20174 (github issue number if applicable).
- [X] These changes do not require tests because they are used at build time.
<!-- 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/20175)
<!-- Reviewable:end -->
Improve disk usage of doc builds.
Continuing the war on disk space usage, I noticed the doc builder on servo-linux4 was growing over time without bound.
<!-- 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/20168)
<!-- Reviewable:end -->
Backed out changeset 39a71f4c9d94 for build bustages at make[4]: *** [force-cargo-library-build] Error 101 on a CLOSED TREE
Backed out changeset 39a71f4c9d94 for build bustages at make[4]: *** [force-cargo-library-build] Error 101 on a CLOSED TREE
Backs out https://github.com/servo/servo/pull/20160
<!-- 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/20167)
<!-- Reviewable:end -->