New
v10.0.0
Orleans version 10 multi-targets .NET 8.0 and .NET 10.0
What's Changed
- Fixed
provider_type_namestorage instrumentation metric tag by @cdemi in https://github.com/dotnet/orleans/pull/9615 - chore: Updates .NET SDK to version 9.0.303 by @Meir017 in https://github.com/dotnet/orleans/pull/9620
- [Automated] Update API Surface Area by @github-actions[bot] in https://github.com/dotnet/orleans/pull/9436
- [Journaling] Avoid increase version after recovery for
DurableStateby @ledjon-behluli in https://github.com/dotnet/orleans/pull/9628 - [Journaling] Align status serialization for both read and write in
DurableTaskCompletionSourceby @ledjon-behluli in https://github.com/dotnet/orleans/pull/9626 - chore: migrate to SLNX by @Meir017 in https://github.com/dotnet/orleans/pull/9622
- [Journaling] Thread-safety issue during recovery by @ledjon-behluli in https://github.com/dotnet/orleans/pull/9624
- Introducing NATS stream provider by @galvesribeiro in https://github.com/dotnet/orleans/pull/9379
- Fix test runs by @benjaminpetit in https://github.com/dotnet/orleans/pull/9648
- Use PME service connection for signing by @benjaminpetit in https://github.com/dotnet/orleans/pull/9654
- [FIX] Dispose
StatelessWorkerGrainContextwhen it contains no more workers by @ledjon-behluli in https://github.com/dotnet/orleans/pull/9636 - Fix Azure journaling package name by @benjaminpetit in https://github.com/dotnet/orleans/pull/9660
- Move nuget publishing to the 'nightly' build pipeline by @benjaminpetit in https://github.com/dotnet/orleans/pull/9661
- Fix table creation logging to reflect existing tables correctly by @egil in https://github.com/dotnet/orleans/pull/9696
- Fix ZooKeeper CI tests: correct service name and use official Docker image by @Copilot in https://github.com/dotnet/orleans/pull/9699
- Fix Consul CI tests by using compatible Consul version by @Copilot in https://github.com/dotnet/orleans/pull/9701
- Remove explicit ActivityStatusCode.Ok setting to comply with OpenTelemetry specification by @Copilot in https://github.com/dotnet/orleans/pull/9703
- chore(deps): bump dotnet-sdk from 9.0.303 to 9.0.305 by @dependabot[bot] in https://github.com/dotnet/orleans/pull/9677
- Fix race condition in TransactionInfo.Fork PendingCalls increment by @bknote71 in https://github.com/dotnet/orleans/pull/9702
- [FIX] Potential NRE in the activation repartitioner by @ledjon-behluli in https://github.com/dotnet/orleans/pull/9713
- Remove infinite timespan reminder checks by @Da-Teach in https://github.com/dotnet/orleans/pull/9715
- ResponseCompletionSource: RunContinuationsAsynchronously by @ReubenBond in https://github.com/dotnet/orleans/pull/9724
- chore(deps): bump dotnet-sdk from 9.0.305 to 9.0.306 by @dependabot[bot] in https://github.com/dotnet/orleans/pull/9720
- Add BigInteger codec by @galvesribeiro in https://github.com/dotnet/orleans/pull/9669
- StateMachineManager: start work loop during activation by @ReubenBond in https://github.com/dotnet/orleans/pull/9725
- Flag Postgresql as asynchronous by @hiyelbaz in https://github.com/dotnet/orleans/pull/9705
- Enable GitHub merge queue by @ReubenBond in https://github.com/dotnet/orleans/pull/9727
- Add missing validation for the NATS stream provider by @galvesribeiro in https://github.com/dotnet/orleans/pull/9668
ActivationDataActivatorProvider: run grain constructor on grain scheduler by @ReubenBond in https://github.com/dotnet/orleans/pull/9726- Modifying Endpoint to use Pascale Casing as EndPoint for consistency by @ramzimort in https://github.com/dotnet/orleans/pull/9671
- [Journaling] Auto-retire & purge state machines by @ledjon-behluli in https://github.com/dotnet/orleans/pull/9684
- fix concurrency issues in
ActivationCollectorby @DeagleGross in https://github.com/dotnet/orleans/pull/9740 - Enhance Copilot instructions with build, test, and repository guidance by @Copilot in https://github.com/dotnet/orleans/pull/9747
- Durable Jobs (aka Reminders v2) by @benjaminpetit in https://github.com/dotnet/orleans/pull/9717
- Fix PooledBufferStream.Reset() to reset Position property by @Copilot in https://github.com/dotnet/orleans/pull/9744
- Add package README for Orleans.Streaming.NATS by @Copilot in https://github.com/dotnet/orleans/pull/9745
- replace dead link with app service / container apps / fabric docs by @scott-the-programmer in https://github.com/dotnet/orleans/pull/9760
LocalScheduledJobManager: avoid overlapping calls toPeriodicTimer.WaitForNextTickAsync, handle exceptions during shutdown. by @ReubenBond in https://github.com/dotnet/orleans/pull/9761- Initiate migration before
IGrainManagementExtension.MigrateOnIdlecompletes by @ReubenBond in https://github.com/dotnet/orleans/pull/9758 - Attempt to fix flaky test, StatelessWorkerActivationsPerSiloDoNotExceedMaxLocalWorkersCount by @ReubenBond in https://github.com/dotnet/orleans/pull/9759
- Update devcontainer by @ReubenBond in https://github.com/dotnet/orleans/pull/9741
- Deprecate IStartupTask and AddStartupTask with warnings by @Copilot in https://github.com/dotnet/orleans/pull/9763
- Rename ScheduledJobs to DurableJobs by @benjaminpetit in https://github.com/dotnet/orleans/pull/9753
- Disable AzDO dependabot by @mmitche in https://github.com/dotnet/orleans/pull/9774
- Disallow creating a grain activation before a silo is active by @ReubenBond in https://github.com/dotnet/orleans/pull/9612
- Do not allocate new buffer if the current buffer is sufficient by @willseward in https://github.com/dotnet/orleans/pull/9775
- docs(comment): fix typo in XML documentation comment by @sean-krail in https://github.com/dotnet/orleans/pull/9783
- LocalhostClusterTest: order lifecycle for smoother runs by @ReubenBond in https://github.com/dotnet/orleans/pull/9785
- mTLS: Flow SNI
HostName, addNegotiatedCipherSuiteby @ReubenBond in https://github.com/dotnet/orleans/pull/9788 ActivityPropagationGrainCallFilter: minor cleanup by @ReubenBond in https://github.com/dotnet/orleans/pull/9789- Revert "Deprecate IStartupTask and AddStartupTask with warnings" by @ReubenBond in https://github.com/dotnet/orleans/pull/9784
- [Breaking Change] ADO.NET providers: replace obsolete System.Data.SqlClient with Microsoft.Data.SqlClient by @ReubenBond in https://github.com/dotnet/orleans/pull/9787
- Mark
OrleansConstructorAttributeas obsolete by @ReubenBond in https://github.com/dotnet/orleans/pull/9790 - Activation migration: Improve resilience to faulty
IGrainMigrationParticipantimplementations by @ReubenBond in https://github.com/dotnet/orleans/pull/9786 - Execute silo lifecycle on default scheduler by @Copilot in https://github.com/dotnet/orleans/pull/9770
- Upgrade to .NET 10.0.100 SDK and upgrade packages by @ReubenBond in https://github.com/dotnet/orleans/pull/9764
- Improve cancellation for
IAsyncEnumerable<T>requests by @ReubenBond in https://github.com/dotnet/orleans/pull/9630 - Use IOverloadDetector in ShardExecutor by @benjaminpetit in https://github.com/dotnet/orleans/pull/9799
- Add ILocalActivationStatusChecker by @ReubenBond in https://github.com/dotnet/orleans/pull/9800
- Add comment in AcceptMigratingGrains by @ReubenBond in https://github.com/dotnet/orleans/pull/9801
- Add Microsoft.Extensions.Configuration and .NET Aspire documentation to Redis packages by @Meir017 in https://github.com/dotnet/orleans/pull/9649
- Match the benchmark file names with the class names by @jerviscui in https://github.com/dotnet/orleans/pull/9633
- Add Node.js to Azure DevOps build pipeline by @ReubenBond in https://github.com/dotnet/orleans/pull/9811
- Configure NPM authentication for Azure DevOps feed by @ReubenBond in https://github.com/dotnet/orleans/pull/9812
- [Dashboard] Use public Azure DevOps NPM feed by @ReubenBond in https://github.com/dotnet/orleans/pull/9813
- Protect CacheInvalidationHeader from concurrent access by @ReubenBond in https://github.com/dotnet/orleans/pull/9809
- [Tests] Improve reliability of
ActivationTaskSchedulertests by @ReubenBond in https://github.com/dotnet/orleans/pull/9810 - [Tests] Add cancellation to CallChainReentrancy_WithSuppression by @ReubenBond in https://github.com/dotnet/orleans/pull/9814
- Remove redundant options logging in Azure storage providers by @Copilot in https://github.com/dotnet/orleans/pull/9807
- [Tests] Fix racy condition in MembershipAgentTests by @ReubenBond in https://github.com/dotnet/orleans/pull/9816
- Mark [Unordered] as [Obsolete] by @Copilot in https://github.com/dotnet/orleans/pull/9815
- Raise analysis level and bump major version by @ReubenBond in https://github.com/dotnet/orleans/pull/9818
- Add
CancelUnknownRequestOnStatusUpdateoption, defaultCancelRequestOnTimeouttofalseby @ReubenBond in https://github.com/dotnet/orleans/pull/9831 - Add
CancellationToken&[AlwaysInterleave]support for grain observers by @ReubenBond in https://github.com/dotnet/orleans/pull/9834 - Add
CancellationTokensupport for system targets by @ReubenBond in https://github.com/dotnet/orleans/pull/9837 - Run Azure Event Hubs tests via GitHub Actions by @ReubenBond in https://github.com/dotnet/orleans/pull/9843
- Include additional Azure Event Hubs Tests in GitHub Actions run by @ReubenBond in https://github.com/dotnet/orleans/pull/9844
- [AzureBlobGrainStorage] Avoid throwing InconsistentStateException when container is missing by @ayoub-aalilija in https://github.com/dotnet/orleans/pull/9842
- Add regression test for Azure Blob storage with custom IBlobContainerFactory by @ayoub-aalilija in https://github.com/dotnet/orleans/pull/9847
- [CI] Add version suffix parameter to nightly-main.yml by @ReubenBond in https://github.com/dotnet/orleans/pull/9858
- Derive filtered available mem from the filtered mem usage by @ledjon-behluli in https://github.com/dotnet/orleans/pull/9857
- Fix packaging of dashboard in CI and add additional tests by @ReubenBond in https://github.com/dotnet/orleans/pull/9859
- Assign
MinIdleCyclesBeforeRemovalto default value inStatelessWorkerOptionsby @ledjon-behluli in https://github.com/dotnet/orleans/pull/9860 - Dashboard: Skip ValidateFrontendEmbeddedResources during pack --no-build by @ReubenBond in https://github.com/dotnet/orleans/pull/9861
- Dashboard: redirect from {routePrefix} to {routePrefix}/ by @ReubenBond in https://github.com/dotnet/orleans/pull/9863
- Fix TLS memory pool configuration by @willseward in https://github.com/dotnet/orleans/pull/9864
- Azure DevOps inventory bootstrapping by @ReubenBond in https://github.com/dotnet/orleans/pull/9869
- Remove debug leftover in AzureStorageJobShard by @Copilot in https://github.com/dotnet/orleans/pull/9868
- Fix wire compatibility of
IAsyncEnumerableGrainExtensionby @ReubenBond in https://github.com/dotnet/orleans/pull/9872 - Use consistent naming for
AddDashboardmethod acrossISiloBuilderandIClientBuilderby @ReubenBond in https://github.com/dotnet/orleans/pull/9873 - Make
ITargetHoldermethods non-generic to avoid costly lookup at runtime by @ReubenBond in https://github.com/dotnet/orleans/pull/9168 - Add GetGrain() overload for IdSpan grain identity to IGrainFactory by @willg1983 in https://github.com/dotnet/orleans/pull/9539
- chore(deps): bump dotnet-sdk from 10.0.101 to 10.0.102 by @dependabot[bot] in https://github.com/dotnet/orleans/pull/9880
New Contributors
- @github-actions[bot] made their first contribution in https://github.com/dotnet/orleans/pull/9436
- @bknote71 made their first contribution in https://github.com/dotnet/orleans/pull/9702
- @Da-Teach made their first contribution in https://github.com/dotnet/orleans/pull/9715
- @hiyelbaz made their first contribution in https://github.com/dotnet/orleans/pull/9705
- @ramzimort made their first contribution in https://github.com/dotnet/orleans/pull/9671
- @scott-the-programmer made their first contribution in https://github.com/dotnet/orleans/pull/9760
- @willseward made their first contribution in https://github.com/dotnet/orleans/pull/9775
- @sean-krail made their first contribution in https://github.com/dotnet/orleans/pull/9783
- @ayoub-aalilija made their first contribution in https://github.com/dotnet/orleans/pull/9842
Full Changelog: https://github.com/dotnet/orleans/compare/v9.2.1...v10.0.0