Skip to content

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

Merged
merged 3 commits into from
Jan 29, 2018
Merged

Upgrade core foundation #2299

merged 3 commits into from
Jan 29, 2018

Conversation

faern
Copy link
Contributor

@faern faern commented Jan 13, 2018

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:

  • Merge core-foundation, core-graphics, core-text, servo-glutin PRs and publish.
  • Merge font-loader PR and publish.
  • Remove the last commit from this PR, so we depend on code from crates.io.
  • Update Cargo.lock again, to not contain urls to temporary feature branhces.

This change is Reviewable

@faern faern mentioned this pull request Jan 13, 2018
15 tasks
@jrmuizel
Copy link
Collaborator

This looks fine to me.

@glennw
Copy link
Member

glennw commented Jan 14, 2018

Should this be merged in WR now (will it prevent landing WR updates in Servo / Gecko in the interim until other dependency changes occur)?

@faern
Copy link
Contributor Author

faern commented Jan 15, 2018

@glennw We need to kick this chain of merges off with core-foundation and getting it published. Hopefully we can avoid merging things that point dependencies towards my feature branches.
So at the moment this is blocked on core-foundation

@glennw
Copy link
Member

glennw commented Jan 15, 2018

OK, sounds good. Please comment here when it's ready to be merged. 😄

@bors-servo
Copy link
Contributor

☔ The latest upstream changes (presumably #2305) made this pull request unmergeable. Please resolve the merge conflicts.

@faern
Copy link
Contributor Author

faern commented Jan 28, 2018

@glennw @jdm Ready for merge.

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>() {
Copy link
Contributor Author

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.

@jrmuizel
Copy link
Collaborator

@bors-servo r+

@bors-servo
Copy link
Contributor

📌 Commit f773b62 has been approved by jrmuizel

bors-servo pushed a commit that referenced this pull request Jan 29, 2018
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 -->
@bors-servo
Copy link
Contributor

⌛ Testing commit f773b62 with merge 5592f9e...

@jrmuizel
Copy link
Collaborator

Thanks for all your work upgrading everything!

@jrmuizel
Copy link
Collaborator

It might be worth squashing the Cargo.lock changes into dep update, otherwise I'm not sure the intermediate state will build.

@bors-servo
Copy link
Contributor

☀️ Test successful - status-appveyor, status-taskcluster, status-travis
Approved by: jrmuizel
Pushing 5592f9e to master...

@bors-servo bors-servo merged commit f773b62 into servo:master Jan 29, 2018
@faern
Copy link
Contributor Author

faern commented Jan 29, 2018

@jrmuizel It apparently worked anyway, awesome!
Thank you as well for helping me get through this slightly crazy upgrade procedure :)

bors-servo pushed a commit to servo/servo that referenced this pull request Jan 29, 2018
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 -->
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Jan 30, 2018
…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
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this pull request Oct 2, 2019
…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
gecko-dev-updater pushed a commit to marco-c/gecko-dev-comments-removed that referenced this pull request Oct 2, 2019
…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
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this pull request Oct 2, 2019
…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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants