Skip to content

[Bug]: Ambiguity between ReactiveUI.Primitives and System.Reactive extension methods #154

Description

@MartinFayRAX

Prerequisites

  • I have searched open and closed issues for duplicates.
  • I am using the latest stable release.

Describe the bug 🐞

Recreating this because I think there really might be an issue. Because ObservableExtensions is in System this clash will be triggered by "normal" use of global usings for System and ReactiveUI.Primitives.

I'm working on adoption of ReactiveUI 24, and have turned up this error, I think due to referencing both ReactiveUI 24 and DynamicData (which is pulling in System.Reactive):

The call is ambiguous between the following methods or properties: 'ReactiveUI.Primitives.SubscribeExtensions.extension<System.Exception>(System.IObservable<System.Exception>).Subscribe(System.Action<System.Exception>)' and 'System.ObservableExtensions.Subscribe(System.IObservable, System.Action)'

I can work around this by explicitly calling SubscribeExtensions.Subscribe(), however any thoughts on how best at deal with this?

Steps to reproduce

Code along the lines of:
this.SaveCommand.ThrownExceptions.Subscribe(e => activity.AddItem(e.ToString()));

With:
Both ReactiveUI 24 and System.Reactive referenced
Both SubscribeExtensions and ObservableExtensions are in scope

Reproduction repository

No response

Expected behavior

No ambiguity.

Screenshots 🖼️

No response

IDE

Visual Studio 2026

.NET version

.NET 10

Target framework(s)

net10.0

Operating system

Windows

OS version

No response

Device

No response

ReactiveUI version

21.1.0

Additional information ℹ️

ReactiveUI.Primitives 7.1.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions