Skip to content

Commit 536af98

Browse files
committed
Upgrade to Orleans v8.0
1 parent 19d4b39 commit 536af98

13 files changed

+57
-77
lines changed

.github/workflows/default.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
- name: Setup .NET Core
1616
uses: actions/setup-dotnet@v2
1717
with:
18-
dotnet-version: 7.0.x
18+
dotnet-version: 8.0.x
1919

2020
- name: Build
2121
run: |

Orleans.Providers.MongoDB/Configuration/MongoDBGrainStorageConfigurator.cs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
using System;
2-
using Microsoft.Extensions.DependencyInjection;
1+
using Microsoft.Extensions.DependencyInjection;
32
using Microsoft.Extensions.Options;
43
using Orleans.Providers.MongoDB.StorageProviders.Serializers;
5-
using Orleans.Runtime;
4+
using System;
65

76
namespace Orleans.Providers.MongoDB.Configuration
87
{
@@ -26,7 +25,7 @@ public void PostConfigure(string name, MongoDBGrainStorageOptions options)
2625
{
2726
// First, try to get a IGrainStateSerializer that was registered with the same name as the State provider
2827
// If none is found, fallback to system wide default
29-
options.GrainStateSerializer = _serviceProvider.GetServiceByName<IGrainStateSerializer>(name) ?? _serviceProvider.GetRequiredService<IGrainStateSerializer>();
28+
options.GrainStateSerializer = _serviceProvider.GetKeyedService<IGrainStateSerializer>(name) ?? _serviceProvider.GetRequiredService<IGrainStateSerializer>();
3029
}
3130
}
3231
}

Orleans.Providers.MongoDB/MongoDBSiloExtensions.cs

Lines changed: 6 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
using System;
2-
using Microsoft.Extensions.Configuration;
1+
using Microsoft.Extensions.Configuration;
32
using Microsoft.Extensions.DependencyInjection;
43
using Microsoft.Extensions.DependencyInjection.Extensions;
54
using Microsoft.Extensions.Options;
@@ -11,8 +10,8 @@
1110
using Orleans.Providers.MongoDB.Reminders;
1211
using Orleans.Providers.MongoDB.StorageProviders;
1312
using Orleans.Providers.MongoDB.StorageProviders.Serializers;
14-
using Orleans.Runtime;
15-
using Orleans.Storage;
13+
using Orleans.Runtime.Hosting;
14+
using System;
1615

1716
// ReSharper disable AccessToStaticMemberViaDerivedType
1817
// ReSharper disable CheckNamespace
@@ -205,22 +204,11 @@ public static IServiceCollection AddMongoDBGrainStorage(this IServiceCollection
205204
Action<OptionsBuilder<MongoDBGrainStorageOptions>> configureOptions = null)
206205
{
207206
configureOptions?.Invoke(services.AddOptions<MongoDBGrainStorageOptions>(name));
208-
services.AddTransient<IPostConfigureOptions<MongoDBGrainStorageOptions>, MongoDBGrainStorageConfigurator>();
209-
210-
if (string.Equals(name, ProviderConstants.DEFAULT_STORAGE_PROVIDER_NAME, StringComparison.Ordinal))
211-
{
212-
services.TryAddSingleton(sp => sp.GetServiceByName<IGrainStorage>(ProviderConstants.DEFAULT_STORAGE_PROVIDER_NAME));
213-
}
214-
215207
services.TryAddSingleton<IGrainStateSerializer, JsonGrainStateSerializer>();
216-
217-
services.ConfigureNamedOptionForLogging<MongoDBGrainStorageOptions>(name);
218-
219208
services.AddTransient<IConfigurationValidator>(sp => new MongoDBGrainStorageOptionsValidator(sp.GetRequiredService<IOptionsMonitor<MongoDBGrainStorageOptions>>().Get(name), name));
220-
services.AddSingletonNamedService(name, MongoGrainStorageFactory.Create);
221-
services.AddSingletonNamedService(name, (s, n) => (ILifecycleParticipant<ISiloLifecycle>)s.GetRequiredServiceByName<IGrainStorage>(n));
222-
223-
return services;
209+
services.ConfigureNamedOptionForLogging<MongoDBGrainStorageOptions>(name);
210+
services.AddTransient<IPostConfigureOptions<MongoDBGrainStorageOptions>, MongoDBGrainStorageConfigurator>();
211+
return services.AddGrainStorage(name, MongoGrainStorageFactory.Create);
224212
}
225213
}
226214
}

Orleans.Providers.MongoDB/Orleans.Providers.MongoDB.csproj

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,20 +11,20 @@
1111
<PackageIcon>OrleansLogo.png</PackageIcon>
1212
<PackageLicenseExpression>MIT</PackageLicenseExpression>
1313
<PackageProjectUrl>https://github.com/OrleansContrib/Orleans.Providers.MongoDB</PackageProjectUrl>
14-
<PackageReleaseNotes>Migration to Orleans 7.0 completed.</PackageReleaseNotes>
14+
<PackageReleaseNotes>Migration to Orleans 8.0 completed.</PackageReleaseNotes>
1515
<PackageTags>Orleans OrleansProviders MongoDB</PackageTags>
1616
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
17-
<TargetFrameworks>net7.0</TargetFrameworks>
18-
<Version>7.6.1</Version>
17+
<TargetFrameworks>net8.0</TargetFrameworks>
18+
<Version>8.0.0</Version>
1919
</PropertyGroup>
2020

2121
<ItemGroup>
22-
<PackageReference Include="Microsoft.Orleans.Reminders" Version="7.2.1" />
23-
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.1.1">
22+
<PackageReference Include="Microsoft.Orleans.Reminders" Version="8.0.0" />
23+
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="8.0.0">
2424
<PrivateAssets>all</PrivateAssets>
2525
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
2626
</PackageReference>
27-
<PackageReference Include="MongoDB.Driver" Version="2.21.0" />
27+
<PackageReference Include="MongoDB.Driver" Version="2.23.1" />
2828
</ItemGroup>
2929

3030
<ItemGroup>
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>net7.0</TargetFramework>
4+
<TargetFramework>net8.0</TargetFramework>
55
<IsPackable>false</IsPackable>
66
</PropertyGroup>
77

88
<ItemGroup>
9-
<PackageReference Include="Microsoft.Orleans.Sdk" Version="7.2.1" />
10-
<PackageReference Include="Microsoft.Orleans.Core.Abstractions" Version="7.2.1" />
11-
<PackageReference Include="Microsoft.Orleans.Reminders" Version="7.2.1" />
9+
<PackageReference Include="Microsoft.Orleans.Sdk" Version="8.0.0" />
10+
<PackageReference Include="Microsoft.Orleans.Core.Abstractions" Version="8.0.0" />
11+
<PackageReference Include="Microsoft.Orleans.Reminders" Version="8.0.0" />
1212
</ItemGroup>
1313

1414
</Project>

Test/Grains/Orleans.Providers.MongoDB.Test.Grains.csproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>net7.0</TargetFramework>
4+
<TargetFramework>net8.0</TargetFramework>
55
<IsPackable>false</IsPackable>
66
</PropertyGroup>
77

88
<ItemGroup>
9-
<PackageReference Include="Microsoft.Orleans.Sdk" Version="7.2.1" />
10-
<PackageReference Include="Microsoft.Orleans.Core" Version="7.2.1" />
11-
<PackageReference Include="Microsoft.Orleans.Streaming" Version="7.2.1" />
9+
<PackageReference Include="Microsoft.Orleans.Sdk" Version="8.0.0" />
10+
<PackageReference Include="Microsoft.Orleans.Core" Version="8.0.0" />
11+
<PackageReference Include="Microsoft.Orleans.Streaming" Version="8.0.0" />
1212
</ItemGroup>
1313

1414
<ItemGroup>

Test/Host/Orleans.Providers.MongoDB.Test.Host.csproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22

33
<PropertyGroup>
44
<OutputType>Exe</OutputType>
5-
<TargetFramework>net7.0</TargetFramework>
5+
<TargetFramework>net8.0</TargetFramework>
66
</PropertyGroup>
77

88
<ItemGroup>
9-
<PackageReference Include="EphemeralMongo6" Version="1.1.2" />
10-
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="7.0.0" />
11-
<PackageReference Include="Microsoft.Extensions.Hosting" Version="7.0.1" />
9+
<PackageReference Include="EphemeralMongo6" Version="1.1.3" />
10+
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="8.0.0" />
11+
<PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.0" />
1212
</ItemGroup>
1313

1414
<ItemGroup>

Test/Host/Program.cs

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
using System;
2-
using System.Linq;
3-
using System.Net;
4-
using System.Threading.Tasks;
51
using EphemeralMongo;
62
using Microsoft.Extensions.DependencyInjection;
73
using Microsoft.Extensions.Hosting;
@@ -16,7 +12,10 @@
1612
using Orleans.Providers.MongoDB.Configuration;
1713
using Orleans.Providers.MongoDB.StorageProviders.Serializers;
1814
using Orleans.Providers.MongoDB.Test.GrainInterfaces;
19-
using Orleans.Runtime;
15+
using System;
16+
using System.Linq;
17+
using System.Net;
18+
using System.Threading.Tasks;
2019

2120
namespace Orleans.Providers.MongoDB.Test.Host
2221
{
@@ -59,8 +58,8 @@ public static async Task Main(string[] args)
5958
settings.DefaultValueHandling = DefaultValueHandling.Populate;
6059
})
6160
.ConfigureServices(services => services
62-
.AddSingletonNamedService<IGrainStateSerializer, BinaryGrainStateSerializer>(ProviderConstants.DEFAULT_PUBSUB_PROVIDER_NAME)
63-
.AddSingletonNamedService<IGrainStateSerializer, BsonGrainStateSerializer>("MongoDBBsonStore"))
61+
.AddKeyedSingleton<IGrainStateSerializer, BinaryGrainStateSerializer>(ProviderConstants.DEFAULT_PUBSUB_PROVIDER_NAME)
62+
.AddKeyedSingleton<IGrainStateSerializer, BsonGrainStateSerializer>("MongoDBBsonStore"))
6463
.AddMongoDBGrainStorage(ProviderConstants.DEFAULT_PUBSUB_PROVIDER_NAME, options =>
6564
{
6665
options.DatabaseName = "OrleansTestAppPubSubStore";

UnitTest/Membership/MongoMembershipTableTests_MultipleDeprecated.cs

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11

2-
using System.Threading.Tasks;
32
using Microsoft.Extensions.Logging;
43
using Microsoft.Extensions.Options;
54
using Orleans.Messaging;
65
using Orleans.Providers.MongoDB.Configuration;
76
using Orleans.Providers.MongoDB.Membership;
87
using Orleans.Providers.MongoDB.UnitTest.Fixtures;
8+
using System.Threading.Tasks;
99
using TestExtensions;
1010
using UnitTests;
1111
using UnitTests.MembershipTests;
@@ -107,11 +107,5 @@ public async Task Test_UpdateRowInParallel()
107107
{
108108
await MembershipTable_UpdateRowInParallel(false);
109109
}
110-
111-
[Fact, TestCategory("Functional")]
112-
public async Task Test_UpdateIAmAlive()
113-
{
114-
await MembershipTable_UpdateIAmAlive(false);
115-
}
116110
}
117111
}

UnitTest/Orleans.Providers.MongoDB.UnitTest.csproj

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,27 @@
1-
<Project Sdk="Microsoft.NET.Sdk">
1+
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
3-
<TargetFramework>net7.0</TargetFramework>
3+
<TargetFramework>net8.0</TargetFramework>
44
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
55
<GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>
6+
<CopyLocalLockFileAssemblies>false</CopyLocalLockFileAssemblies>
7+
<GenerateRuntimeConfigDevFile>true</GenerateRuntimeConfigDevFile>
68
<IsPackable>false</IsPackable>
79
</PropertyGroup>
810

911
<ItemGroup>
10-
<PackageReference Include="EphemeralMongo6" Version="1.1.2" />
11-
<PackageReference Include="FakeItEasy" Version="7.4.0" />
12-
<PackageReference Include="FluentAssertions" Version="6.11.0" />
13-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.7.1" />
14-
<PackageReference Include="Microsoft.Orleans.CodeGenerator" Version="7.2.1">
12+
<PackageReference Include="EphemeralMongo6" Version="1.1.3" />
13+
<PackageReference Include="FakeItEasy" Version="8.1.0" />
14+
<PackageReference Include="FluentAssertions" Version="6.12.0" />
15+
<PackageReference Include="Microsoft.Orleans.CodeGenerator" Version="8.0.0">
1516
<PrivateAssets>all</PrivateAssets>
1617
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
1718
</PackageReference>
18-
<PackageReference Include="xunit" Version="2.5.0" />
19-
<PackageReference Include="xunit.runner.console" Version="2.5.0">
19+
<PackageReference Include="xunit" Version="2.6.5" />
20+
<PackageReference Include="xunit.runner.console" Version="2.6.5">
2021
<PrivateAssets>all</PrivateAssets>
2122
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
2223
</PackageReference>
23-
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.0">
24+
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.6">
2425
<PrivateAssets>all</PrivateAssets>
2526
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
2627
</PackageReference>

0 commit comments

Comments
 (0)