Skip to content
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

Merge 0.25.1 to main #1839

Merged
merged 8 commits into from
Nov 9, 2023
Merged

Merge 0.25.1 to main #1839

merged 8 commits into from
Nov 9, 2023

Conversation

bendk
Copy link
Contributor

@bendk bendk commented Nov 9, 2023

No description provided.

bendk added 7 commits October 18, 2023 13:27
This is part of mozilla#1791, which was merged just after the `0.25.0` release
was made.  We wanted to give that code a bit of time in main before
releasing it.  However, this part is useful for traits implemented in
Rust.
* Kotlin: fixed external types with async functions (mozilla#1798)
* Swift: fixed compile error when multiple crates define async functions
A single global callback won't work if there are multiple foreign
modules.

In `main` we handle this by inputting a callback in `poll()`.

In `release-v0.25.x` we can't change `UNIFFI_CONTRACT_VERSION`, so
instead we keep the `rust_future_continuation_callback_set` scaffolding
function, then have the scaffolding code pass the callback to
`rustfutures.rs`.

Added some tests for this in `fixtures/ext-types/proc-macro-lib`.
Things worked on Swift and Python for me because that code was based on
leaking a pointer and it happened to work if the pointer came from
another module.  It just halted on Kotlin though and I think the same
would happen if I wasn't on CPython and the alternate PointerMangager
was used.
@bendk bendk requested a review from a team as a code owner November 9, 2023 17:08
@bendk bendk requested review from jhugman and removed request for a team November 9, 2023 17:08
@bendk bendk force-pushed the merge-0.25.1-to-main branch from d6e77ff to 6bfda76 Compare November 9, 2023 17:35
@bendk bendk merged commit 7cd3aac into mozilla:main Nov 9, 2023
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.

2 participants