Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: mozilla/uniffi-rs
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.10.0
Choose a base ref
...
head repository: mozilla/uniffi-rs
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.11.0
Choose a head ref
  • 11 commits
  • 63 files changed
  • 6 contributors

Commits on May 26, 2021

  1. Merge pull request #467 from mozilla/release-v0.10.0

    Release v0.10.0
    rfk authored May 26, 2021
    Configuration menu
    Copy the full SHA
    362f734 View commit details
    Browse the repository at this point in the history
  2. Re-enable publishing in cargo-release configuration.

    This was accidentally left in as a result of my testing
    from #459
    rfk committed May 26, 2021
    Configuration menu
    Copy the full SHA
    e99c87b View commit details
    Browse the repository at this point in the history

Commits on May 27, 2021

  1. Remove support for non-threadsafe interfaces.

    Fixes #449.
    
    With the v0.9.0 release of UniFFI, non-threadsafe interfaces are explicitly
    deprecated. This commit removes support for non-threadsafe interfaces entirely,
    making threadsafety the default and only supported mode. In practice, for
    any `interface` declared in the UDL:
    
    * Its implementation must be `Sync` and `Send`.
    * Its methods cannot accept a mutable `&self` parameter.
    
    The `[Threadsafe]` attribute may still be specified explicitly in the UDL
    file, but will result in a deprecation warning and is otherwise ignored.
    
    We don't have a good way to write tests for the following, but I've manually
    verified that:
    
    * A non-`Send+Sync` interface implementation produces a compile-time error.
    * Use of the `[Threadsafe]` attribute results in a deprecation warning.
    
    Co-authored-by: Neil P. <npars@users.noreply.github.com>
    Co-authored-by: Mark Hammond <mhammond@skippinet.com.au>
    3 people committed May 27, 2021
    Configuration menu
    Copy the full SHA
    cde2489 View commit details
    Browse the repository at this point in the history
  2. Add an ADR which calls for replacing HandleMaps with Arcs.

    Combined with [ADR-0004](https://github.com/mozilla/uniffi-rs/blob/main/docs/adr/0004-only-threadsafe-interfaces.md
    ) this is the last significant decision to be made on the path to
    allowing us to [pass around object instances](#419).
    mhammond authored and rfk committed May 27, 2021
    Configuration menu
    Copy the full SHA
    35a705f View commit details
    Browse the repository at this point in the history
  3. rfk suggestions for ADR-0005 (#2)

    rfk committed May 27, 2021
    Configuration menu
    Copy the full SHA
    b17d6db View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    9ab02d9 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    041660d View commit details
    Browse the repository at this point in the history

Commits on Jun 2, 2021

  1. Configuration menu
    Copy the full SHA
    66de084 View commit details
    Browse the repository at this point in the history

Commits on Jun 3, 2021

  1. Fix data race between Kotlin method calls and destruction.

    In the previous implementation, a concurrent method call and call
    to `destroy()` could result in the Rust code trying to access a
    freed handle in the handlemap. This is caught cleanly by the handlemap,
    but only as a last resort; it should never be allowed to happen in
    practice.
    
    This commit changes the way destruction works on the Kotlin objects
    to use a reference count, avoiding freeing the underlying Rust object
    until all method calls using it have completed.
    
    Fixes #457.
    rfk committed Jun 3, 2021
    Configuration menu
    Copy the full SHA
    d58e92f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f97b9ba View commit details
    Browse the repository at this point in the history

Commits on Jun 4, 2021

  1. Configuration menu
    Copy the full SHA
    03bebd1 View commit details
    Browse the repository at this point in the history
Loading