Comparing 25.0.0...25.0.1 · reactiveui/ReactiveUI · GitHub
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: reactiveui/ReactiveUI
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 25.0.0
Choose a base ref
...
head repository: reactiveui/ReactiveUI
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 25.0.1
Choose a head ref
  • 1 commit
  • 1 file changed
  • 1 contributor

Commits on Sep 27, 2026

  1. build(deps): bump ReactiveUI.Binding to 8.6.0 (#4528)

    ## Summary
    
    **ReactiveUI now builds against ReactiveUI.Binding 8.6.0, which lets you
    ask an interaction as an observable again.**
    
    - `BindingVersion` in `Directory.Packages.props` is now `8.6.0`.
    - `IInteraction<TInput, TOutput>.Handle(TInput)` returns
    `IObservable<TOutput>`, as it did in ReactiveUI 24.
    - `Interaction<TInput, TOutput>.WhenHandled(TInput)` returns the
    question as a cold observable.
    - `new Interaction<TInput, TOutput>(handlerScheduler)` runs each handler
    on that scheduler, such as `RxSchedulers.MainThreadScheduler`.
    - `Interaction<TInput, TOutput>.Handle(TInput)` still returns
    `Task<TOutput>`, so code written against 25.0.0 keeps compiling.
    
    ## Why
    
    **Moving `Interaction` into ReactiveUI.Binding changed its API by
    accident in 25.0.0.** Code upgrading from ReactiveUI 24 that subscribed
    to `Handle`, used it in an observable chain, or passed a handler
    scheduler stopped compiling. ReactiveUI.Binding 8.6.0
    (reactiveui/ReactiveUI.Binding.SourceGenerators#151) restores it.
    
    ## Breaking changes
    
    **None for code that uses or derives from `Interaction<TInput,
    TOutput>`.** A class that implements `IInteraction<TInput, TOutput>`
    itself must implement `Handle(TInput)` returning `IObservable<TOutput>`.
    Nothing in this repository does.
    
    ## How this was verified
    
    **Every Linux-runnable core test project passes on net10.0 against the
    released 8.6.0 packages.**
    
    - `ReactiveUI.Tests` (879), `ReactiveUI.Tests.Reactive` (881),
    `ReactiveUI.AOT.Tests` (39), `ReactiveUI.Testing.Tests` (57) and
    `ReactiveUI.Builder.Tests` (184) pass.
    - The Windows-only and device projects are left to CI.
    
    ## Checklist
    - [x] I have read the [Contribute
    guide](https://www.reactiveui.net/contribute/index.html)
    - [x] The PR title follows [Conventional
    Commits](https://www.conventionalcommits.org/)
    - [x] Tests cover this change, or the summary says why they do not
    - [x] New or changed public API has XML documentation
    glennawatson authored Sep 27, 2026
    Configuration menu
    Copy the full SHA
    3a1d270 View commit details
    Browse the repository at this point in the history
Loading