-
Notifications
You must be signed in to change notification settings - Fork 293
Upgrade core foundation #2299
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade core foundation #2299
Conversation
This looks fine to me. |
Should this be merged in WR now (will it prevent landing WR updates in Servo / Gecko in the interim until other dependency changes occur)? |
@glennw We need to kick this chain of merges off with |
OK, sounds good. Please comment here when it's ready to be merged. 😄 |
☔ The latest upstream changes (presumably #2305) made this pull request unmergeable. Please resolve the merge conflicts. |
let axis: CFDictionary = TCFType::wrap_under_get_rule(axis_ptr as CFDictionaryRef); | ||
if !axis.instance_of::<CFDictionaryRef, CFDictionary>() { | ||
for axis in axes.iter() { | ||
if !axis.instance_of::<CFDictionary>() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure if this check is needed. Well, if it's not needed now it was not needed before either, so maybe it covers some case I don't know about. But the documentation for CTFontCopyVariationAxes
states that it returns an array of dictionaries, so not sure what item in the array might trigger this if branch.
@bors-servo r+ |
📌 Commit f773b62 has been approved by |
Upgrade core foundation This is a PR in a series of PRs originating at servo/core-foundation-rs#132 The plan is to make a breaking change to `core-foundation` and release it as `0.5.0`. Hopefully we can manage to bring Servo and its entire dependency tree up to date as rapidly as possible in combination with this, as to use only the new core-foundation in Servo and all its deps. :) TODO before merge: - [x] Merge `core-foundation`, `core-graphics`, `core-text`, `servo-glutin` PRs and publish. - [x] Merge `font-loader` PR and publish. - [x] Remove the last commit from this PR, so we depend on code from crates.io. - [x] Update Cargo.lock again, to not contain urls to temporary feature branhces. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/webrender/2299) <!-- Reviewable:end -->
Thanks for all your work upgrading everything! |
It might be worth squashing the Cargo.lock changes into dep update, otherwise I'm not sure the intermediate state will build. |
☀️ Test successful - status-appveyor, status-taskcluster, status-travis |
@jrmuizel It apparently worked anyway, awesome! |
Upgrade core foundation <!-- Please describe your changes on the following line: --> This PR is the final one in a chain of PRs that tries to make a breaking change to `core-foundation`. This PR makes sure Servo only use the new, not yet released `core-foundation 0.5.0`. The changes in `core-foundation` and why it is not yet published can be read in the comments on this PR: servo/core-foundation-rs#132 Basically we want all of Servo (and deps) to be ready for a fairly swift upgrade from `core-foundation` `0.4.6` to `0.5.0` once it's released, so we don't end up in some state where we depend on, and have to maintain both, for an extended period of time. This PR is **not ready for merge** in its current state. The following must be done first: - [x] Merge servo/core-foundation-rs#132 and publish. - [x] Merge servo/core-graphics-rs#110 and publish. - [x] Merge servo/core-text-rs#75 and publish. - [x] Merge servo/cocoa-rs#181 and publish. - [x] Merge servo/glutin#142 and publish. - [x] Merge servo/io-surface-rs#60 and publish. - [x] Merge servo/skia#148. - [x] Merge servo/rust-azure#282. - [x] Merge servo/webrender#2299. - [x] Merge servo/surfman#118 and publish. - [x] Remove the commit in this PR that temporarily adds patch entries to `Cargo.toml`. - [x] Update Cargo.lock again to not point to my feature branches. For some of the dependencies I might accidentally have bumped the version as if it was a breaking change when it in fact wasn't. It was a bit messy to figure out all the details in so many and large crates. But hopefully I did not do the inverse, only bump the patch version where the change actually broke something. Ping @jdm and @nox who have been the ones commenting on the initial PR. --- <!-- 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 they don't change any code, just upgrade dependencies. <!-- 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/19759) <!-- Reviewable:end -->
…e-foundation); r=jdm <!-- Please describe your changes on the following line: --> This PR is the final one in a chain of PRs that tries to make a breaking change to `core-foundation`. This PR makes sure Servo only use the new, not yet released `core-foundation 0.5.0`. The changes in `core-foundation` and why it is not yet published can be read in the comments on this PR: servo/core-foundation-rs#132 Basically we want all of Servo (and deps) to be ready for a fairly swift upgrade from `core-foundation` `0.4.6` to `0.5.0` once it's released, so we don't end up in some state where we depend on, and have to maintain both, for an extended period of time. This PR is **not ready for merge** in its current state. The following must be done first: - [x] Merge servo/core-foundation-rs#132 and publish. - [x] Merge servo/core-graphics-rs#110 and publish. - [x] Merge servo/core-text-rs#75 and publish. - [x] Merge servo/cocoa-rs#181 and publish. - [x] Merge servo/glutin#142 and publish. - [x] Merge servo/io-surface-rs#60 and publish. - [x] Merge servo/skia#148. - [x] Merge servo/rust-azure#282. - [x] Merge servo/webrender#2299. - [x] Merge servo/surfman#118 and publish. - [x] Remove the commit in this PR that temporarily adds patch entries to `Cargo.toml`. - [x] Update Cargo.lock again to not point to my feature branches. For some of the dependencies I might accidentally have bumped the version as if it was a breaking change when it in fact wasn't. It was a bit messy to figure out all the details in so many and large crates. But hopefully I did not do the inverse, only bump the patch version where the change actually broke something. Ping @jdm and @nox who have been the ones commenting on the initial PR. --- <!-- 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 they don't change any code, just upgrade dependencies. <!-- 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: e94a25949c924e086e38ef6bdbdc935734415b26 --HG-- extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear extra : subtree_revision : 4e0c40d1610e09d5ecf823f51d42ede8706751e3
…e-foundation); r=jdm <!-- Please describe your changes on the following line: --> This PR is the final one in a chain of PRs that tries to make a breaking change to `core-foundation`. This PR makes sure Servo only use the new, not yet released `core-foundation 0.5.0`. The changes in `core-foundation` and why it is not yet published can be read in the comments on this PR: servo/core-foundation-rs#132 Basically we want all of Servo (and deps) to be ready for a fairly swift upgrade from `core-foundation` `0.4.6` to `0.5.0` once it's released, so we don't end up in some state where we depend on, and have to maintain both, for an extended period of time. This PR is **not ready for merge** in its current state. The following must be done first: - [x] Merge servo/core-foundation-rs#132 and publish. - [x] Merge servo/core-graphics-rs#110 and publish. - [x] Merge servo/core-text-rs#75 and publish. - [x] Merge servo/cocoa-rs#181 and publish. - [x] Merge servo/glutin#142 and publish. - [x] Merge servo/io-surface-rs#60 and publish. - [x] Merge servo/skia#148. - [x] Merge servo/rust-azure#282. - [x] Merge servo/webrender#2299. - [x] Merge servo/surfman#118 and publish. - [x] Remove the commit in this PR that temporarily adds patch entries to `Cargo.toml`. - [x] Update Cargo.lock again to not point to my feature branches. For some of the dependencies I might accidentally have bumped the version as if it was a breaking change when it in fact wasn't. It was a bit messy to figure out all the details in so many and large crates. But hopefully I did not do the inverse, only bump the patch version where the change actually broke something. Ping jdm and nox who have been the ones commenting on the initial PR. --- <!-- 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 they don't change any code, just upgrade dependencies. <!-- 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: e94a25949c924e086e38ef6bdbdc935734415b26 UltraBlame original commit: 931c61b9f7a889329ab73d00414483af47ac3f7e
…e-foundation); r=jdm <!-- Please describe your changes on the following line: --> This PR is the final one in a chain of PRs that tries to make a breaking change to `core-foundation`. This PR makes sure Servo only use the new, not yet released `core-foundation 0.5.0`. The changes in `core-foundation` and why it is not yet published can be read in the comments on this PR: servo/core-foundation-rs#132 Basically we want all of Servo (and deps) to be ready for a fairly swift upgrade from `core-foundation` `0.4.6` to `0.5.0` once it's released, so we don't end up in some state where we depend on, and have to maintain both, for an extended period of time. This PR is **not ready for merge** in its current state. The following must be done first: - [x] Merge servo/core-foundation-rs#132 and publish. - [x] Merge servo/core-graphics-rs#110 and publish. - [x] Merge servo/core-text-rs#75 and publish. - [x] Merge servo/cocoa-rs#181 and publish. - [x] Merge servo/glutin#142 and publish. - [x] Merge servo/io-surface-rs#60 and publish. - [x] Merge servo/skia#148. - [x] Merge servo/rust-azure#282. - [x] Merge servo/webrender#2299. - [x] Merge servo/surfman#118 and publish. - [x] Remove the commit in this PR that temporarily adds patch entries to `Cargo.toml`. - [x] Update Cargo.lock again to not point to my feature branches. For some of the dependencies I might accidentally have bumped the version as if it was a breaking change when it in fact wasn't. It was a bit messy to figure out all the details in so many and large crates. But hopefully I did not do the inverse, only bump the patch version where the change actually broke something. Ping jdm and nox who have been the ones commenting on the initial PR. --- <!-- 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 they don't change any code, just upgrade dependencies. <!-- 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: e94a25949c924e086e38ef6bdbdc935734415b26 UltraBlame original commit: 931c61b9f7a889329ab73d00414483af47ac3f7e
…e-foundation); r=jdm <!-- Please describe your changes on the following line: --> This PR is the final one in a chain of PRs that tries to make a breaking change to `core-foundation`. This PR makes sure Servo only use the new, not yet released `core-foundation 0.5.0`. The changes in `core-foundation` and why it is not yet published can be read in the comments on this PR: servo/core-foundation-rs#132 Basically we want all of Servo (and deps) to be ready for a fairly swift upgrade from `core-foundation` `0.4.6` to `0.5.0` once it's released, so we don't end up in some state where we depend on, and have to maintain both, for an extended period of time. This PR is **not ready for merge** in its current state. The following must be done first: - [x] Merge servo/core-foundation-rs#132 and publish. - [x] Merge servo/core-graphics-rs#110 and publish. - [x] Merge servo/core-text-rs#75 and publish. - [x] Merge servo/cocoa-rs#181 and publish. - [x] Merge servo/glutin#142 and publish. - [x] Merge servo/io-surface-rs#60 and publish. - [x] Merge servo/skia#148. - [x] Merge servo/rust-azure#282. - [x] Merge servo/webrender#2299. - [x] Merge servo/surfman#118 and publish. - [x] Remove the commit in this PR that temporarily adds patch entries to `Cargo.toml`. - [x] Update Cargo.lock again to not point to my feature branches. For some of the dependencies I might accidentally have bumped the version as if it was a breaking change when it in fact wasn't. It was a bit messy to figure out all the details in so many and large crates. But hopefully I did not do the inverse, only bump the patch version where the change actually broke something. Ping jdm and nox who have been the ones commenting on the initial PR. --- <!-- 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 they don't change any code, just upgrade dependencies. <!-- 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: e94a25949c924e086e38ef6bdbdc935734415b26 UltraBlame original commit: 931c61b9f7a889329ab73d00414483af47ac3f7e
This is a PR in a series of PRs originating at servo/core-foundation-rs#132
The plan is to make a breaking change to
core-foundation
and release it as0.5.0
. Hopefully we can manage to bring Servo and its entire dependency tree up to date as rapidly as possible in combination with this, as to use only the new core-foundation in Servo and all its deps. :)TODO before merge:
core-foundation
,core-graphics
,core-text
,servo-glutin
PRs and publish.font-loader
PR and publish.This change is