Skip to content

Commit

Permalink
feature: Add ReactiveUI.Maui (#2879)
Browse files Browse the repository at this point in the history
  • Loading branch information
RLittlesII committed Aug 19, 2021
1 parent ac8b89a commit e9b9646
Show file tree
Hide file tree
Showing 52 changed files with 1,653 additions and 57 deletions.
31 changes: 22 additions & 9 deletions .github/workflows/build-samples.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
matrix:
configuration: [Debug, Release]

runs-on: windows-latest
runs-on: windows-latest

steps:
- name: Checkout
Expand All @@ -21,20 +21,33 @@ jobs:
fetch-depth: 0
lfs: true

# Install the .NET Core workload
- name: Install .NET Core 3.1.x
uses: actions/setup-dotnet@v1
- name: Install .NET Core
uses: actions/setup-dotnet@v1.8.1
with:
dotnet-version: 3.1.x

- name: Install .NET 5.0.x
uses: actions/setup-dotnet@v1
- name: Install .NET 5
uses: actions/setup-dotnet@v1.8.1
with:
dotnet-version: 5.0.x

# Add MSBuild to the PATH: https://github.com/microsoft/setup-msbuild
- name: Setup MSBuild.exe
uses: microsoft/setup-msbuild@v1.0.2
- name: Install .NET 6
uses: actions/setup-dotnet@v1.8.1
with:
dotnet-version: 6.0.x
include-prerelease: true

- name: Install VS2019 preview
shell: bash
run: |
dotnet tool update -g dotnet-vs
vs install preview -sku:enterprise --quiet +Microsoft.VisualStudio.Component.ManagedDesktop.Core +Microsoft.NetCore.Component.DevelopmentTools +Microsoft.VisualStudio.Workload.NetCrossPlat +Microsoft.VisualStudio.Workload.Universal
echo "##vso[task.prependpath]$(vs where preview --prop=InstallationPath)\MSBuild\Current\Bin"
- name: Add MSBuild to PATH
uses: glennawatson/setup-msbuild@v1.0.3
with:
prerelease: true

- name: Restore/Build the sample
run: msbuild IntegrationTests.All.sln /t:restore,build /maxcpucount /p:NoPackageAnalysis=true /verbosity:minimal /p:Configuration=$env:Configuration
Expand Down
27 changes: 19 additions & 8 deletions .github/workflows/ci-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,21 +23,32 @@ jobs:
fetch-depth: 0

- name: Install .NET Core
uses: actions/setup-dotnet@v1
uses: actions/setup-dotnet@v1.8.1
with:
dotnet-version: 3.1.x

- name: Install .NET 5
uses: actions/setup-dotnet@v1
uses: actions/setup-dotnet@v1.8.1
with:
dotnet-version: 5.0.x

- name: Install .NET 6
uses: actions/setup-dotnet@v1.8.1
with:
dotnet-version: 6.0.x
include-prerelease: true

- name: Install VS2019 preview
shell: bash
run: |
dotnet tool update -g dotnet-vs
vs install preview -sku:enterprise --quiet +Microsoft.VisualStudio.Component.ManagedDesktop.Core +Microsoft.NetCore.Component.DevelopmentTools +Microsoft.VisualStudio.Workload.NetCrossPlat +Microsoft.VisualStudio.Workload.Universal
echo "##vso[task.prependpath]$(vs where preview --prop=InstallationPath)\MSBuild\Current\Bin"
- name: Add MSBuild to PATH
uses: glennawatson/setup-msbuild@v1.0.3

# - name: Update VS2019
# shell: powershell
# run: Start-Process -Wait -PassThru -FilePath "C:\Program Files (x86)\Microsoft Visual Studio\Installer\vs_installer.exe" -ArgumentList "update --passive --norestart --installpath ""C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise"""
with:
prerelease: true

- name: NBGV
id: nbgv
Expand All @@ -46,7 +57,7 @@ jobs:
setAllVars: true

- name: NuGet restore
run: |
run: |
dotnet restore ReactiveUI.sln
dotnet restore ReactiveUI.Events.sln
working-directory: src
Expand All @@ -59,7 +70,7 @@ jobs:
pharmacist generate-platform -t net461,net462,net47,net471,net472,net48,netcoreapp3.1,net5.0 --is-winforms -o "src/ReactiveUI.Events.Winforms/" --output-prefix "Events_"
- name: Build
run: |
run: |
msbuild /t:build,pack /nowarn:MSB4011,VSX1000 /p:NoPackageAnalysis=true /verbosity:minimal /p:Configuration=${{ env.configuration }} ReactiveUI.sln
msbuild /t:build,pack /nowarn:MSB4011,VSX1000 /p:NoPackageAnalysis=true /verbosity:minimal /p:Configuration=${{ env.configuration }} ReactiveUI.Events.sln
working-directory: src
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<PackageDescription>Provides ReactiveUI extensions for the Android Support Library</PackageDescription>
<PackageId>ReactiveUI.AndroidSupport</PackageId>
<Nullable>enable</Nullable>
<LangVersion>latest</LangVersion>
<LangVersion>preview</LangVersion>
<PackageTags>mvvm;reactiveui;rx;reactive extensions;observable;LINQ;events;frp;xamarin;android;forms;monodroid;monotouch;xamarin.android;net;</PackageTags>
</PropertyGroup>

Expand All @@ -19,7 +19,7 @@
<PackageReference Include="System.Runtime.Serialization.Primitives" Version="4.3.0" />
<Reference Include="System.Runtime.Serialization" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\ReactiveUI\ReactiveUI.csproj" />
</ItemGroup>
Expand Down
4 changes: 2 additions & 2 deletions src/ReactiveUI.AndroidX/ReactiveUI.AndroidX.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<PackageDescription>Provides ReactiveUI extensions for the AndroidX Library</PackageDescription>
<PackageId>ReactiveUI.AndroidX</PackageId>
<Nullable>enable</Nullable>
<LangVersion>latest</LangVersion>
<LangVersion>preview</LangVersion>
<PackageTags>mvvm;reactiveui;rx;reactive extensions;observable;LINQ;events;frp;xamarin;android;forms;monodroid;monotouch;xamarin.android;net;</PackageTags>
</PropertyGroup>

Expand All @@ -17,7 +17,7 @@
<PackageReference Include="Xamarin.AndroidX.RecyclerView" Version="1.2.1.1" />
<Reference Include="System.Runtime.Serialization" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\ReactiveUI\ReactiveUI.csproj" />
</ItemGroup>
Expand Down
2 changes: 1 addition & 1 deletion src/ReactiveUI.Blazor/ReactiveUI.Blazor.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<PackageDescription>Contains the ReactiveUI platform specific extensions for Blazor</PackageDescription>
<PackageTags>mvvm;reactiveui;rx;reactive extensions;observable;LINQ;eventsnet;netstandard;blazor;web;</PackageTags>
<Nullable>enable</Nullable>
<LangVersion>latest</LangVersion>
<LangVersion>preview</LangVersion>
</PropertyGroup>

<ItemGroup>
Expand Down
2 changes: 1 addition & 1 deletion src/ReactiveUI.Blend/ReactiveUI.Blend.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<PackageDescription>Provides reactive extensions based xaml components based on the Blend SDK library, allowing you to fire a observable from XAML</PackageDescription>
<PackageId>ReactiveUI.Blend</PackageId>
<Nullable>enable</Nullable>
<LangVersion>latest</LangVersion>
<LangVersion>preview</LangVersion>
<PackageTags>mvvm;reactiveui;rx;reactive extensions;observable;LINQ;events;frp;Blend;wpf;net;</PackageTags>
<UseWPF>true</UseWPF>
</PropertyGroup>
Expand Down
2 changes: 1 addition & 1 deletion src/ReactiveUI.Drawing/ReactiveUI.Drawing.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<PackageDescription>A extension to the ReactiveUI platform that provides Splat bitmap operation support.</PackageDescription>
<PackageId>ReactiveUI.Drawing</PackageId>
<Nullable>enable</Nullable>
<LangVersion>latest</LangVersion>
<LangVersion>preview</LangVersion>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<PropertyGroup>
<TargetFrameworks>netcoreapp3.1;net5.0</TargetFrameworks>
<Nullable>enable</Nullable>
<LangVersion>latest</LangVersion>
<LangVersion>preview</LangVersion>
<IsPackable>false</IsPackable>
</PropertyGroup>
<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<RootNamespace>ReactiveUI.Fody.Analyzer</RootNamespace>
<PackageDescription>Rosyln extension that checks correct usage of the Fody extension.</PackageDescription>
<Nullable>enable</Nullable>
<LangVersion>latest</LangVersion>
<LangVersion>preview</LangVersion>
<PackageTags>mvvm;reactiveui;rx;reactive extensions;observable;LINQ;events;frp;xamarin;android;ios;mac;forms;monodroid;monotouch;xamarin.android;xamarin.ios;xamarin.forms;xamarin.mac;xamarin.tvos;wpf;net;netstandard;net472;uwp;tizen;unoplatform;fody;</PackageTags>
<IsPackable>False</IsPackable>
</PropertyGroup>
Expand Down
16 changes: 8 additions & 8 deletions src/ReactiveUI.Fody.Helpers/ReactiveUI.Fody.Helpers.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@
<!-- Due to fody insisting on having .net 4 classes, we can't pack on non-windows -->
<IsPackable Condition=" '$(OS)' != 'Windows_NT' ">false</IsPackable>
<Nullable>enable</Nullable>
<LangVersion>latest</LangVersion>
<LangVersion>preview</LangVersion>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Fody" Version="6.5.2" PrivateAssets="None" />
<PackageReference Include="FodyPackaging" Version="6.5.2" PrivateAssets="All" />
Expand All @@ -29,28 +29,28 @@
</ItemGroup>

<ItemGroup Condition="$(TargetFramework.StartsWith('Xamarin.iOS'))">
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.Runtime.Serialization" />
</ItemGroup>

<ItemGroup Condition="$(TargetFramework.StartsWith('Xamarin.TVOS10'))">
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.Runtime.Serialization" />
</ItemGroup>

<ItemGroup Condition="$(TargetFramework.StartsWith('Xamarin.Mac'))">
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.Runtime.Serialization" />
</ItemGroup>

<ItemGroup Condition="$(TargetFramework.StartsWith('MonoAndroid'))">
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.Runtime.Serialization" />
</ItemGroup>

<ItemGroup Condition="$(TargetFramework.StartsWith('netcoreapp'))">
<PackageReference Include="System.ComponentModel" Version="4.3.0" />
<PackageReference Include="System.Diagnostics.Contracts" Version="4.3.0" />
<PackageReference Include="System.Dynamic.Runtime" Version="4.3.0" />
<PackageReference Include="System.Runtime.Serialization.Primitives" Version="4.3.0" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\ReactiveUI\ReactiveUI.csproj" />
<ProjectReference Include="..\ReactiveUI.Fody\ReactiveUI.Fody.csproj" ReferenceOutputAssembly="False" />
Expand Down
6 changes: 3 additions & 3 deletions src/ReactiveUI.Fody.Tests/ReactiveUI.Fody.Tests.csproj
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
<Project Sdk="MSBuild.Sdk.Extras">
<PropertyGroup>
<PropertyGroup>
<TargetFrameworks>netcoreapp3.1;net5.0</TargetFrameworks>
<FodyTargetFramework>netstandard2.0</FodyTargetFramework>
<Nullable>enable</Nullable>
<LangVersion>latest</LangVersion>
<LangVersion>preview</LangVersion>
<IsPackable>false</IsPackable>
</PropertyGroup>

Expand All @@ -27,7 +27,7 @@
<ItemGroup>
<None Include="API\**\*.txt" CopyToOutputDirectory="PreserveNewest" LinkBase="/" />
</ItemGroup>

<Target Name="CopyWeavers" BeforeTargets="Fody.WeavingTask">
<!-- Fody expects to find weavers in referenced NuGet packages or the Tools directory at the solution level.
Since this is for testing purposes before a NuGet package is created, we'll just use the Tools directory
Expand Down
2 changes: 1 addition & 1 deletion src/ReactiveUI.Fody/ReactiveUI.Fody.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<PackageDescription>Fody extension that will generate RaisePropertyChange notifications for properties and ObservableAsPropertyHelper properties</PackageDescription>
<IsPackable>False</IsPackable>
<Nullable>enable</Nullable>
<LangVersion>latest</LangVersion>
<LangVersion>preview</LangVersion>
<PackageTags>mvvm;reactiveui;rx;reactive extensions;observable;LINQ;events;frp;xamarin;android;ios;mac;forms;monodroid;monotouch;xamarin.android;xamarin.ios;xamarin.forms;xamarin.mac;xamarin.tvos;wpf;net;netstandard;net472;uwp;tizen;unoplatform;fody;</PackageTags>
</PropertyGroup>

Expand Down
2 changes: 1 addition & 1 deletion src/ReactiveUI.LeakTests/ReactiveUI.LeakTests.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<PropertyGroup>
<TargetFrameworks>netcoreapp3.1;net5.0</TargetFrameworks>
<Nullable>enable</Nullable>
<LangVersion>latest</LangVersion>
<LangVersion>preview</LangVersion>
<IsPackable>false</IsPackable>
</PropertyGroup>
<ItemGroup>
Expand Down
58 changes: 58 additions & 0 deletions src/ReactiveUI.Mac.sln
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ReactiveUI.Blazor", "Reacti
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{895D583E-9CC2-41D9-8EA1-BB6EC710C5FC}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ReactiveUI.Maui", "ReactiveUI.Maui\ReactiveUI.Maui.csproj", "{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Ad-Hoc|Any CPU = Ad-Hoc|Any CPU
Expand Down Expand Up @@ -645,6 +647,62 @@ Global
{8D4DDE4A-56E2-4FB2-802C-92C8992E5CB1}.Release|x64.Build.0 = Release|Any CPU
{8D4DDE4A-56E2-4FB2-802C-92C8992E5CB1}.Release|x86.ActiveCfg = Release|Any CPU
{8D4DDE4A-56E2-4FB2-802C-92C8992E5CB1}.Release|x86.Build.0 = Release|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Ad-Hoc|Mixed Platforms.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Ad-Hoc|Mixed Platforms.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.AppStore|Any CPU.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.AppStore|ARM.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.AppStore|ARM.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.AppStore|iPhone.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.AppStore|Mixed Platforms.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.AppStore|Mixed Platforms.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.AppStore|x64.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.AppStore|x64.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.AppStore|x86.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.AppStore|x86.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Debug|ARM.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Debug|ARM.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Debug|iPhone.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Debug|x64.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Debug|x64.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Debug|x86.ActiveCfg = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Debug|x86.Build.0 = Debug|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Release|Any CPU.Build.0 = Release|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Release|ARM.ActiveCfg = Release|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Release|ARM.Build.0 = Release|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Release|iPhone.ActiveCfg = Release|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Release|iPhone.Build.0 = Release|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Release|x64.ActiveCfg = Release|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Release|x64.Build.0 = Release|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Release|x86.ActiveCfg = Release|Any CPU
{7FFD5693-75CA-40CF-8753-FBC4C3E42AE8}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down

0 comments on commit e9b9646

Please sign in to comment.