aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Enable the GitHub merge queue (#29989)Martin Robinson2023-07-138-56/+59
| | | Signed-off-by: Martin Robinson <mrobinson@igalia.com>
* Auto merge of #29925 - mukilan:update-ipc-channel-and-deps, r=jdmbors-servo2023-07-123-84/+56
|\ | | | | | | | | | | | | | | | | | | | | Update ipc-channel and other dependencies These updates will allow us to move to latest rustc nightly. --- - [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 update dependency crates.
| * Update ipc-channel and other dependenciesMukilan Thiyagarajan2023-07-103-84/+56
| | | | | | | | | | | | | | These updates will allow us to move to latest rustc nightly. Signed-off-by: Mukilan Thiyagarajan <me@mukilan.in>
* | Auto merge of #29965 - mrobinson:clip-chain, r=delanbors-servo2023-07-114-114/+165
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the WebRender clip chain API The old clipping API has been removed from WebRender, so this switches both legacy and new layout over to use the clip chain API in preparation for the WebRender upgrade. <!-- 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] There are tests for these changes OR <!-- 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. -->
| * | Use the WebRender clip chain APIMartin Robinson2023-07-044-114/+165
| | | | | | | | | | | | | | | | | | The old clipping API has been removed from WebRender, so this switches both legacy and new layout over to use the clip chain API in preparation for the WebRender upgrade.
* | | Auto merge of #29987 - mrobinson:normalize-more-webrender-use-statements, r=jdmbors-servo2023-07-1039-327/+330
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | normalize more webrender use statements - Use the WebRender clip chain API - Use explicit WebRender hit test items in legacy layout - Try to `use` WebRender types more <!-- 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 do not require tests because they do not change behavior. <!-- 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. -->
| * | | Try to `use` WebRender types moreMartin Robinson2023-07-1039-327/+330
| | | | | | | | | | | | | | | | | | | | The newer versions of WebRender move types around between `webrender` and `webrender_api` and this will reduce the churn during the upgrade.
* | | | Auto merge of #29985 - servo:remove_hololens_docs, r=mrobinsonbors-servo2023-07-101-56/+0
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove hololens doc Removing Hololens docs after #29970 --- <!-- 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 <!-- 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. -->
| * | | remove hololens docatbrakhi2023-07-101-56/+0
|/ / /
* | | Auto merge of #29984 - mukilan:fix-nightly-package-names, r=mrobinsonbors-servo2023-07-092-11/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix package name for windows nightly Also remove the 2020 specific packages. The incorrect package name in windows.yml is causing nightly builds to fail. --- - [ ] `./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 ___
| * | | Fix package name for windows nightlyMukilan Thiyagarajan2023-07-092-11/+1
|/ / / | | | | | | | | | | | | | | | Also remove the 2020 specific packages. Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* | | Auto merge of #29499 - servo:dependabot/cargo/exr-1.6.3, r=jdmbors-servo2023-07-071-12/+3
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bump exr from 1.5.3 to 1.6.3 Bumps [exr](https://github.com/johannesvollmer/exrs) from 1.5.3 to 1.6.3. <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/johannesvollmer/exrs/commits">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=exr&package-manager=cargo&previous-version=1.5.3&new-version=1.6.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) You can trigger a rebase of this PR by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details>> **Note** > Automatic rebases have been disabled on this pull request as it has been open for over 30 days.
| * | Bump exr from 1.5.3 to 1.6.3dependabot[bot]2023-03-131-12/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bumps [exr](https://github.com/johannesvollmer/exrs) from 1.5.3 to 1.6.3. - [Release notes](https://github.com/johannesvollmer/exrs/releases) - [Commits](https://github.com/johannesvollmer/exrs/commits) --- updated-dependencies: - dependency-name: exr dependency-type: indirect update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
* | | Auto merge of #29980 - mrobinson:splitoff, r=mrobinsonbors-servo2023-07-063-111/+146
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Split the WPT workflow from the Linux one This allows running tests for only one layout system at a time. This was originally part of #29950, but was lost in the shuffle. <!-- 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 do not require tests because they improve the CI. <!-- 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. -->
| * | | Split the WPT workflow from the Linux oneSamson2023-07-063-111/+146
| | | | | | | | | | | | | | | | | | | | This allows running tests for only one layout system at a time. This was originally part of #29950, but was lost in the shuffle.
* | | | Auto merge of #29979 - mrobinson:try-to-fix-build-timings, r=mukilanbors-servo2023-07-061-1/+1
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix upload of build timings on Windows Fixes #29948. <!-- 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 #29948. - [x] These changes do not require tests they are GitHub CI fixes. <!-- 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. -->
| * | | Fix upload of build timings on WindowsMartin Robinson2023-07-061-1/+1
| | | | | | | | | | | | | | | | Fixes #29948.
* | | | Auto merge of #29978 - mrobinson:fix-webrender-errors, r=atbrakhibors-servo2023-07-0630-127/+706
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix warnings in vendored WebRender These show up every time one builds, so this adds a patch on top of our vendored copy of WebRender to fix these errors for now. <!-- 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 do not require tests because they do not change behavior. <!-- 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. -->
| * | | Fix warnings in vendored WebRenderMartin Robinson2023-07-0630-127/+706
| | | | | | | | | | | | | | | | | | | | These show up every time one builds, so this adds a patch on top of our vendored copy of WebRender to fix these errors for now.
* | | | Auto merge of #29950 - mrobinson:unify-style-crate, r=mukilanbors-servo2023-07-06262-3700/+1740
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make Layout 2020/2013 a runtime switch This change makes the choice between Layout 2020 and Layout 2013 a runtime switch. The main part of the patch is removing all layout related compile-time flags from the style crate. This makes the style crate a lot simpler, but now Layout 2020 parses a good deal of features that it doesn't support (table, vertical-align, etc). The good news is that we plan to add these features to Layout 2020. - Compile a single style for both Layout 2020 and Layout 2013 - Remove layout_2020/layout_2013 features - Update GitHub workflows for single compilation - Update test results <!-- 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 #29942 - [x] There are tests for these changes <!-- 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. -->
| * | | | Make the choice of layout runtime settingMartin Robinson2023-07-06262-3700/+1740
| |/ / / | | | | | | | | | | | | Co-authored-by: Samson <16504129+sagudev@users.noreply.github.com>
* | | | Auto merge of #29974 - captainhaddock18:master, r=mrobinsonbors-servo2023-07-061-1/+1
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | Fix a typo in `components/style/properties/data.py` Fixed a typo error. The error was corrected by changing "argument" to "argument".
| * | | Merge branch 'servo:master' into masterTHARAK HEGDE2023-07-0597-7084/+54
| |\ \ \ | |/ / / |/| | |
* | | | Auto merge of #29970 - mrobinson:remove-uwp, r=jdmbors-servo2023-07-0597-7084/+54
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove UWP / Hololens support <!-- 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 do not require tests because they remove a feature. <!-- 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. -->
| * | | | Remove UWP / Hololens supportMartin Robinson2023-07-0597-7084/+54
| | | | |
| | * | | Updated data.py(First Pull Request)THARAK HEGDE2023-07-051-1/+1
| |/ / / |/| | | | | | | Fixed a typo error. The error was corrected by changing "argument" to "argument".
* | | | Auto merge of #29969 - mrobinson:refactor-android-scripts, r=jdmbors-servo2023-07-052-242/+251
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Collect android build setup into two methods This is small refactor which tries to isolate all of the Android setup into a couple methods, so that it is easier to reason about in the scripts. This doesn't change any behavior but does fix a few small linting errors in the existing code. Note: The Android build is currently broken and this change doesn't fix it. It shouldn't break it any more though. <!-- 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 do not require tests because they are refactorings. <!-- 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. -->
| * | | | Collect android build setup into two methodsMartin Robinson2023-07-052-242/+251
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is small refactor which tries to isolate all of the Android setup into a couple methods, so that it is easier to reason about in the scripts. This doesn't change any behavior but does fix a few small linting errors in the existing code. Note: The Android build is currently broken and this change doesn't fix it. It shouldn't break it any more though.
* | | | | Auto merge of #29971 - mrobinson:correct-webrender-vendor, r=atbrakhibors-servo2023-07-051-1/+0
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove some debugging code in vendored WebRender This slipped in when importing the source code. <!-- 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 do not require tests because they don't really change observable behavior. <!-- 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. -->
| * | | | Remove some debugging code in vendored WebRenderMartin Robinson2023-07-051-1/+0
|/ / / / | | | | | | | | | | | | This slipped in when importing the source code.
* | | | Auto merge of #29961 - mrobinson:vendor-webrender, r=atbakhibors-servo2023-07-041215-34/+185677
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Vendor the current version of WebRender This is a step toward upgrading WebRender, which will be upgraded and patched in the `third_party` directory. This change vendors the current private branch of WebRender that we use and adds a `patches` directory which tracks the changes on top of the upstream WebRender commit described by third_party/webrender/patches/head. <!-- 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 do not require tests because they do not change behavior. <!-- 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. -->
| * | | Vendor the current version of WebRenderMartin Robinson2023-07-031215-34/+185677
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a step toward upgrading WebRender, which will be upgraded and patched in the `third_party` directory. This change vendors the current private branch of WebRender that we use and adds a `patches` directory which tracks the changes on top of the upstream WebRender commit described by third_party/webrender/patches/head.
* | | | Auto merge of #29963 - mrobinson:run-unit-tests-when-using-try-platform, ↵bors-servo2023-07-043-3/+3
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | r=atbrakhi When using "try-<platform>" trigger unit tests There is currently no way to trigger unit tests using the bors-servo try infrastructure. This change makes it so that using try-<platform> triggers unit tests for that platform. This will be especially useful when testing changes for Windows before trying to land them. <!-- 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 do not require tests because they are just GitHub Actions changes. <!-- 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. -->
| * | | | When using "try-<platform>" trigger unit testsMartin Robinson2023-07-043-3/+3
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | There is currently no way to trigger unit tests using the bors-servo try infrastructure. This change makes it so that using try-<platform> triggers unit tests for that platform. This will be especially useful when testing changes for Windows before trying to land them.
* | | | Auto merge of #29964 - mukilan:enable-merge-queue-action, r=mrobinsonbors-servo2023-07-041-0/+4
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Run main workflow for merge queue events This PR configures the main workflow (currently used by bors via auto & try branches) to run on 'merge_group' events emitted when pull requests are added to GitHub merge queue. --- <!-- 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 just extend merge checks. <!-- 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. -->
| * | | Run main workflow for merge queue eventsMukilan Thiyagarajan2023-07-041-0/+4
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | This PR configures the main workflow (currently used by bors via auto & try branches) to run on 'merge_group' events emitted when pull requests are added to GitHub merge queue. Signed-off-by: Mukilan Thiyagarajan <me@mukilan.in>
* | | Auto merge of #29954 - mrobinson:windows-bootstrap, r=mukilanbors-servo2023-07-0410-77/+72
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Windows bootstrap support <!-- 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 #25224 - [x] These changes do not require tests because they are just support script changes. <!-- 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. -->
| * | | Windows bootstrap supportMartin Robinson2023-07-0310-77/+72
|/ / /
* | | Auto merge of #29959 - ↵bors-servo2023-07-031-148/+226
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mrobinson:split-layout-in-flow-non-replaced-block-level, r=Loirooriol Split layout_in_flow_non_replaced_block_level This function is already quite big and the changes necessary for properly laying out independent formatting contexts next to floats will make it even more unwieldy. Split the function in two and add a helper for calculating the containing block for children and the margin. As time goes on the independent formatting case is probably going to be more like the replaced case anyway. Co-authored-by: Oriol Brufau <obrufau@igalia.com> <!-- 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 do not require tests because they are a simple refactoring. <!-- 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. -->
| * | Split layout_in_flow_non_replaced_block_levelMartin Robinson2023-07-031-148/+226
|/ / | | | | | | | | | | | | | | | | | | | | This function is already quite big and the changes necessary for properly laying out independent formatting contexts next to floats will make it even more unwieldy. Split the function in two and add a helper for calculating the containing block for children and the margin. As time goes on the independent formatting case is probably going to be more like the replaced case anyway. Co-authored-by: Oriol Brufau <obrufau@igalia.com>
* | Auto merge of #29957 - Loirooriol:optimize-collapsible-margin-lookahead, ↵bors-servo2023-07-031-5/+25
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | r=mrobinson Layout 2020: Optimize collapsible margin lookahead Every time that we would lay out a block box that could collapse its top margin with its contents, we would do a lookahead to compute the resulting margin in order to place floats correctly. The problem is that this lookahead could iterate several descendants, but then when laying these we would run the lookahead again. This patch restricts the lookahead to boxes that either aren't collapsing their top margin with their parent, or that have 'clear' different than 'none' (since clearance prevents collapsing margins with the parent). Since the lookahead stops iterating when it finds a box that doesn't collapse its top margin with its parent, or whose 'clear' isn't 'none', this should ensure that lookahead never handles the same box twice. <!-- 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 do not require tests because there shouldn't be any change in behavior <!-- 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. -->
| * | Layout 2020: Optimize collapsible margin lookaheadOriol Brufau2023-07-031-5/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Every time that we would lay out a block box that could collapse its top margin with its contents, we would do a lookahead to compute the resulting margin in order to place floats correctly. The problem was that this lookahead could iterate several descendants, but then when laying these we would run the lookahead again. This patch restricts the lookahead to boxes that either aren't collapsing their top margin with their parent, or that have 'clear' different than 'none' (since clearance prevents collapsing margins with the parent). Since the lookahead stops iterating when it finds a box that doesn't collapse its top margin with its parent, or whose 'clear' isn't 'none', this should ensure that lookahead never handles the same box twice.
* | | Auto merge of #29958 - servo:wpt_update_02-07-2023, r=servo-wpt-syncbors-servo2023-07-02282-1261/+8964
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sync WPT with upstream (02-07-2023) Automated downstream sync of changes from upstream as of 02-07-2023 [no-wpt-sync] r? @servo-wpt-sync
| * | | Update web-platform-tests to revision ↵WPT Sync Bot2023-07-02282-1261/+8964
| |/ / | | | | | | | | | b'f513c41310ebb13de9a0c5ea5e1c22544e0b5000'
* | | Auto merge of #29956 - mrobinson:update-mozangle, r=jdmbors-servo2023-07-029-12/+7
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update mozangle This should allow servo to take advantage of faster compilation times on Windows. <!-- 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 <!-- 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. -->
| * | Update mozangleMartin Robinson2023-07-019-12/+7
| | | | | | | | | | | | | | | This should allow servo to take advantage of faster compilation speeds on Windows.
* | | Auto merge of #29951 - Loirooriol:margin-collapse-use-computed, r=mrobinsonbors-servo2023-07-012-4/+8
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Check computed (min-)block-size when determining margin collapse To collapse margins through, CSS2 requires "zero or auto computed height" and "zero computed min-height" (the latter should also also include auto, which was introduced in CSS3 as the new initial value). Similarly, "auto computed height" is required to collapse the bottom margin with the bottom margin of the contents. Therefore this patch stops collapsing when the used height is clamped to zero by max-height, but the computed value is not zero. Same for non-zero percentages that are indefinite or that resolve to 0px. Note that 0% and calc(0% + 0px) are still considered to be zero (so they allow margin collapse), this may a bit inconsistent but matches Firefox (for the collapsing through case). This also matches the heuristics in find_block_margin_collapsing_with_parent(). We could change the heuristics instead, but then they would have to track block sizes in order to be able to resolve percentages. The change makes margin-collapse-through-percentage-height-block.html fail, that test is only passing on Blink, which did a different interpretation of the spec. To be fair, various places of CSS2 loosely consider that indefinite percentages compute to auto, and even Firefox does so when determining whether to collapse the top margin with the contents. Since the spec isn't particularly clear and interoperability is lacking, I filed https://github.com/w3c/csswg-drafts/issues/8919. <!-- 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 #29907 - [X] There are tests for these changes (1 test fails, see above) <!-- 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. -->
| * | | Check computed (min-)block-size when determining margin collapseOriol Brufau2023-07-012-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To collapse margins through, CSS2 requires "zero or auto computed height" and "zero computed min-height" (the latter should also also include auto, which was introduced in CSS3 as the new initial value). Similarly, "auto computed height" is required to collapse the bottom margin with the bottom margin of the contents. Therefore this patch stops collapsing when the used height is clamped to zero by max-height, but the computed value is not zero. Same for non-zero percentages that are indefinite or that resolve to 0px. Note that 0% and calc(0% + 0px) are still considered to be zero (so they allow margin collapse), this may a bit inconsistent but matches Firefox (for the collapsing through case). This also matches the heuristics in find_block_margin_collapsing_with_parent(). We could change the heuristics instead, but then they would have to track block sizes in order to be able to resolve percentages. The change makes margin-collapse-through-percentage-height-block.html fail, that test is only passing on Blink, which did a different interpretation of the spec. To be fair, various places of CSS2 loosely consider that indefinite percentages compute to auto, and even Firefox does so when determining whether to collapse the top margin with the contents. Since the spec isn't particularly clear and interoperability is lacking, I filed https://github.com/w3c/csswg-drafts/issues/8919.
* | | | Auto merge of #29955 - servo:windows-subsystem, r=jdmbors-servo2023-07-012-5/+6
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set the Windows subsystem using a rust directive This is one less thing that mach has to do now. <!-- 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 do not require tests because they do not change behavior. <!-- 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. -->
| * | | | Set the Windows subsystem using a rust directiveMartin Robinson2023-07-012-5/+6
| | |/ / | |/| | | | | | | | | | This is one less thing that mach has to do now.