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