Mark Hammond
Mark Hammond
### Pull Request checklist ### - **Breaking changes**: This PR follows our [breaking change policy](https://github.com/mozilla/application-services/blob/main/docs/howtos/breaking-changes.md) - [ ] This PR follows the breaking change policy: - This PR has no...
These are represented in the CI as enum variants with nameless fields. Part of #1078, although no support for UDL yet.
Currently procmacros all have a blanket implementation of `FfiConverter` whereas UDL uses a local "tagged" implementation (ie, `FfiConverter`. This inconsistency causes problems with "external" types - in some cases it...
The patch below fails with: ``` error[E0599]: no method named `map_err` found for opaque type `impl Future` in the current scope --> /Users/skip/src/moz/uniffi-rs/target/debug/build/uniffi-fixture-futures-9e0bccbae1fa25fc/out/futures.uniffi.rs:39:1 | 39 | #[::uniffi::export_for_udl] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ method...
Mostly works except a few tests which need minor adjustments.
Works perfectly - until we get to custom types :( ``` error[E0117]: only traits defined in the current crate can be implemented for types defined outside of the crate -->...
In our ext-types fixture we [import a type named UniffiOneInterface](https://github.com/mozilla/uniffi-rs/blob/802e4afa963e906823e29049da2984ff2f5696f2/fixtures/ext-types/lib/src/ext-types-lib.udl#L34-L35) which is [defined via UDL in another crate](https://github.com/mozilla/uniffi-rs/blob/802e4afa963e906823e29049da2984ff2f5696f2/fixtures/ext-types/uniffi-one/src/uniffi-one.udl#L12) While that crate works, it fails if that same crate tries to...
eg, if you change https://github.com/mozilla/uniffi-rs/blob/7c5796b99d88aae567a8291b0bf8fb8f203f1e6c/fixtures/coverall/src/lib.rs#L121-L123 like: ``` diff --git a/fixtures/coverall/src/lib.rs b/fixtures/coverall/src/lib.rs index ae43a7361..994568960 100644 --- a/fixtures/coverall/src/lib.rs +++ b/fixtures/coverall/src/lib.rs @@ -120,7 +120,7 @@ pub enum RootError { #[error(transparent)] // XXX -...
As seen in https://github.com/mozilla/application-services/issues/5738 - nothing in Uniffi prevents you from specifying a param without a default value after a param with one. In this scenario, the Python bindings will...
Trying to copy [rondpoint's hashmap test](https://github.com/mozilla/uniffi-rs/blob/7acfce022c1c394d9f91c390874557e611b47385/examples/rondpoint/src/lib.rs#L64-L68) ```rust #[uniffi::export] fn return_hashmap(h: HashMap) -> HashMap { h } ``` fails trying to call it in Python: ``` File "/Users/skip/src/moz/uniffi-rs/target/tmp/uniffi-fixture-proc-macro-b83c1fa2d45093c5/proc_macro.py", line 1883, in...