Skip to content

Commit 55977df

Browse files
authored
Feature Introduce ReactiveUIBuilder (#4086)
<!-- Please be sure to read the [Contribute](https://github.com/reactiveui/reactiveui#contribute) section of the README --> **What kind of change does this PR introduce?** <!-- Bug fix, feature, docs update, ... --> Feature **What is the current behavior?** <!-- You can also link to an open issue here. --> Application is magically wired up based on packages using reflection **What is the new behavior?** <!-- If this is a feature change --> Aims to add the ReactiveUIBuilder pattern and related platform extension methods for configuring ReactiveUI services without reflection, supporting AOT environments. Includes core builder implementation, platform-specific extension methods (WPF, WinForms, MAUI, WinUI, Blazor, Drawing), interface for custom modules, and comprehensive tests. Updates API approval files to reflect new public APIs. **What might this PR break?** This is intended to be a Parallel option for end users so none expected **Please check if the PR fulfills these requirements** - [x] Tests for the changes have been added (for bug fixes / features) - [x] Docs have been added / updated (for bug fixes / features) **Other information**:
1 parent 7faa445 commit 55977df

File tree

171 files changed

+3017
-239
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

171 files changed

+3017
-239
lines changed

src/Directory.Packages.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<CentralPackageTransitivePinningEnabled>true</CentralPackageTransitivePinningEnabled>
55
</PropertyGroup>
66
<PropertyGroup>
7-
<SplatVersion>15.4.1</SplatVersion>
7+
<SplatVersion>15.5.3</SplatVersion>
88
<XamarinAndroidXCoreVersion>1.13.1.4</XamarinAndroidXCoreVersion>
99
<XamarinAndroidXLifecycleLiveDataVersion>2.8.4.1</XamarinAndroidXLifecycleLiveDataVersion>
1010
</PropertyGroup>

src/ReactiveUI.AOTTests/AOTCompatibilityTests.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,7 @@
44
// See the LICENSE file in the project root for full license information.
55

66
using System.Diagnostics.CodeAnalysis;
7-
using System.Reactive;
87
using System.Reactive.Linq;
9-
using ReactiveUI;
10-
using Xunit;
118

129
namespace ReactiveUI.AOTTests;
1310

src/ReactiveUI.AOTTests/AdvancedAOTTests.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,10 @@
44
// See the LICENSE file in the project root for full license information.
55

66
using System.Diagnostics.CodeAnalysis;
7-
using System.Reactive;
87
using System.Reactive.Disposables;
98
using System.Reactive.Linq;
109
using System.Reactive.Subjects;
11-
using ReactiveUI;
1210
using Splat;
13-
using Xunit;
1411

1512
namespace ReactiveUI.AOTTests;
1613

src/ReactiveUI.AOTTests/ComprehensiveAOTMarkupTests.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,11 @@
44
// See the LICENSE file in the project root for full license information.
55

66
using System.Diagnostics.CodeAnalysis;
7-
using System.Reactive;
87
using System.Reactive.Concurrency;
98
using System.Reactive.Disposables;
109
using System.Reactive.Linq;
1110
using System.Reactive.Subjects;
12-
using ReactiveUI;
1311
using Splat;
14-
using Xunit;
1512

1613
namespace ReactiveUI.AOTTests;
1714

src/ReactiveUI.AOTTests/ComprehensiveAOTTests.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,11 @@
44
// See the LICENSE file in the project root for full license information.
55

66
using System.Diagnostics.CodeAnalysis;
7-
using System.Reactive;
87
using System.Reactive.Concurrency;
98
using System.Reactive.Disposables;
109
using System.Reactive.Linq;
1110
using System.Reactive.Subjects;
12-
using ReactiveUI;
1311
using Splat;
14-
using Xunit;
1512

1613
namespace ReactiveUI.AOTTests;
1714

src/ReactiveUI.AOTTests/FinalAOTValidationTests.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,7 @@
99
using System.Reactive.Disposables;
1010
using System.Reactive.Linq;
1111
using System.Reactive.Subjects;
12-
using ReactiveUI;
1312
using Splat;
14-
using Xunit;
1513

1614
namespace ReactiveUI.AOTTests;
1715

src/ReactiveUI.AOTTests/TestActivatableViewModel.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
// The .NET Foundation licenses this file to you under the MIT license.
44
// See the LICENSE file in the project root for full license information.
55

6-
using ReactiveUI;
7-
86
namespace ReactiveUI.AOTTests;
97

108
/// <summary>

src/ReactiveUI.AOTTests/TestReactiveObject.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55

66
using System.Diagnostics.CodeAnalysis;
77
using System.Reactive.Linq;
8-
using ReactiveUI;
98

109
namespace ReactiveUI.AOTTests;
1110

src/ReactiveUI.AOTTests/TestRoutableViewModel.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
// The .NET Foundation licenses this file to you under the MIT license.
44
// See the LICENSE file in the project root for full license information.
55

6-
using ReactiveUI;
7-
86
namespace ReactiveUI.AOTTests;
97

108
/// <summary>

src/ReactiveUI.AndroidX/ReactiveAppCompatActivity.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
// The .NET Foundation licenses this file to you under the MIT license.
44
// See the LICENSE file in the project root for full license information.
55

6-
using System.Diagnostics.CodeAnalysis;
76
using Android.App;
87
using Android.Content;
98
using Android.Runtime;

0 commit comments

Comments
 (0)