diff --git a/.github/workflows/validate-build.yml b/.github/workflows/validate-build.yml
index 497ceac7..439f5ce6 100644
--- a/.github/workflows/validate-build.yml
+++ b/.github/workflows/validate-build.yml
@@ -49,4 +49,4 @@ jobs:
uses: actions/upload-artifact@v4
with:
name: pkg
- path: out/pkg
+ path: out/pkg/$env:config
diff --git a/Directory.Build.props b/Directory.Build.props
index 644af0ec..7a9bbd31 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -18,15 +18,17 @@
Debug
AnyCPU
$(MSBuildThisFileDirectory)
- $(RepoRoot)$([MSBuild]::EnsureTrailingSlash(out/$(SubOutRoot)))
+ $(RepoRoot)$([MSBuild]::EnsureTrailingSlash(out/$(SubOutRoot)))
+ pub
+ pkg
$(RepoRoot)eng/
$(RepoRoot)src/
- $(OutRoot)bin/
- $(OutRoot)obj/$(MSBuildProjectName)/
- $(BaseIntermediateOutputPath)$(Configuration)/
- $(MSBuildProjectName)/
- $(BaseOutputPath)$(Configuration)/$([MSBuild]::EnsureTrailingSlash($(SubOutputPath)))
- $(OutRoot)pkg/
+ $(SrcRoot)Shared/
+
+
+
+ true
+ true
@@ -36,9 +38,4 @@
00240000048000009400000006020000002400005253413100040000010001000505410141442095e0b0466df68ac32d158abdf0bd9cf26407d7a9d20b93656530556f23979f20b067628b9baee75fc6bba5c349519585a2852c1843bc61d74c4cbf9d80429cbdcbf609ea70fd62061eb65f40a6c9d505dd71cb119ef51f589a014d3b56159abbc38825fafbd119b6e97ebd9a5f3862a5c06220c680a6ac9eec
-
- true
- true
-
-
diff --git a/Directory.Build.targets b/Directory.Build.targets
index 89ae2eea..701926a6 100644
--- a/Directory.Build.targets
+++ b/Directory.Build.targets
@@ -15,39 +15,7 @@
+
+
-
-
-
-
-
-
-
- false
- <_TranslateUrlPattern>(https://azfunc%40dev\.azure\.com/azfunc/internal/_git|https://dev\.azure\.com/azfunc/internal/_git|https://azfunc\.visualstudio\.com/internal/_git|azfunc%40vs-ssh\.visualstudio\.com:v3/azfunc/internal|git%40ssh\.dev\.azure\.com:v3/azfunc/internal)/([^/\.]+)\.(.+)
- <_TranslateUrlReplacement>https://github.com/$2/$3
-
-
-
-
-
- $([System.Text.RegularExpressions.Regex]::Replace($(ScmRepositoryUrl), $(_TranslateUrlPattern), $(_TranslateUrlReplacement)))
-
-
-
- $([System.Text.RegularExpressions.Regex]::Replace(%(SourceRoot.ScmRepositoryUrl), $(_TranslateUrlPattern), $(_TranslateUrlReplacement)))
-
-
-
diff --git a/eng/targets/Release.props b/eng/targets/Release.props
index efcf2f6f..d08d59c8 100644
--- a/eng/targets/Release.props
+++ b/eng/targets/Release.props
@@ -8,6 +8,7 @@
+ Microsoft Corporation
Microsoft
© Microsoft Corporation. All rights reserved.
https://github.com/microsoft/durabletask-dotnet
@@ -16,6 +17,20 @@
Microsoft Durable Task Orchestration Workflow Activity Reliable DTFx
+
+
+ true
+ true
+ true
+
+
+ portable
+
+
1.8.0
diff --git a/eng/targets/Release.targets b/eng/targets/Release.targets
index a9116354..c7078be4 100644
--- a/eng/targets/Release.targets
+++ b/eng/targets/Release.targets
@@ -12,8 +12,18 @@
README.md
+
+ snupkg
+ true
+
+
+
+
+ $(VersionPrefix).$(FileVersionRevision)
+
+
-
+
true
content/SBOM
diff --git a/eng/targets/RepositoryInfo.targets b/eng/targets/RepositoryInfo.targets
new file mode 100644
index 00000000..027b7f3e
--- /dev/null
+++ b/eng/targets/RepositoryInfo.targets
@@ -0,0 +1,37 @@
+
+
+
+
+
+
+
+
+ false
+ <_TranslateUrlPattern>(https://azfunc%40dev\.azure\.com/azfunc/internal/_git|https://dev\.azure\.com/azfunc/internal/_git|https://azfunc\.visualstudio\.com/internal/_git|azfunc%40vs-ssh\.visualstudio\.com:v3/azfunc/internal|git%40ssh\.dev\.azure\.com:v3/azfunc/internal)/([^/\.]+)\.(.+)
+ <_TranslateUrlReplacement>https://github.com/$2/$3
+
+
+
+
+
+ $([System.Text.RegularExpressions.Regex]::Replace($(ScmRepositoryUrl), $(_TranslateUrlPattern), $(_TranslateUrlReplacement)))
+
+
+
+ $([System.Text.RegularExpressions.Regex]::Replace(%(SourceRoot.ScmRepositoryUrl), $(_TranslateUrlPattern), $(_TranslateUrlReplacement)))
+
+
+
+
+
\ No newline at end of file
diff --git a/eng/templates/build.yml b/eng/templates/build.yml
index a94d3aff..f8ed7222 100644
--- a/eng/templates/build.yml
+++ b/eng/templates/build.yml
@@ -69,7 +69,7 @@ jobs:
inputs:
command: custom
custom: pack
- arguments: --no-build $(build_args) $(pack_binlog)
+ arguments: --no-build $(build_args) $(pack_binlog) -o $(pkg_dir)
projects: $(project)
- template: ci/sign-files.yml@eng
diff --git a/global.json b/global.json
index 4ac08fda..beb8a446 100644
--- a/global.json
+++ b/global.json
@@ -1,6 +1,6 @@
{
"sdk": {
- "version": "8.0.100",
+ "version": "9.0.102",
"rollForward": "latestFeature"
},
"msbuild-sdks": {
diff --git a/samples/AzureFunctionsApp/Program.cs b/samples/AzureFunctionsApp/Program.cs
index 3ec7a407..095b10b6 100644
--- a/samples/AzureFunctionsApp/Program.cs
+++ b/samples/AzureFunctionsApp/Program.cs
@@ -14,4 +14,4 @@ public static void Main()
host.Run();
}
-}
\ No newline at end of file
+}
diff --git a/src/Client/Core/DependencyInjection/DurableTaskClientBuilderExtensions.cs b/src/Client/Core/DependencyInjection/DurableTaskClientBuilderExtensions.cs
index bb274ad0..d3cf15ab 100644
--- a/src/Client/Core/DependencyInjection/DurableTaskClientBuilderExtensions.cs
+++ b/src/Client/Core/DependencyInjection/DurableTaskClientBuilderExtensions.cs
@@ -80,7 +80,7 @@ public static IDurableTaskClientBuilder UseBuildTarget(this I
where TTarget : DurableTaskClient
where TOptions : DurableTaskClientOptions
{
- builder.UseBuildTarget(typeof(TTarget));
+ builder.UseBuildTarget();
builder.Services.AddOptions(builder.Name)
.PostConfigure>((options, baseOptions) =>
{
diff --git a/src/Directory.Build.props b/src/Directory.Build.props
index 84e04bc1..fb6dcdba 100644
--- a/src/Directory.Build.props
+++ b/src/Directory.Build.props
@@ -5,18 +5,9 @@
- Microsoft Corporation
- true
- true
- true
true
latest
recommended
- $(SrcRoot)Shared/
-
- portable
diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets
index cf6e5046..791acfff 100644
--- a/src/Directory.Build.targets
+++ b/src/Directory.Build.targets
@@ -3,20 +3,6 @@
-
- snupkg
- true
-
-
-
-
- $(VersionPrefix).$(FileVersionRevision)
-
-
-
-
-
-
@@ -26,7 +12,6 @@
-
diff --git a/src/Generators/DurableTaskSourceGenerator.cs b/src/Generators/DurableTaskSourceGenerator.cs
index 4ad0eb2d..9ff9df73 100644
--- a/src/Generators/DurableTaskSourceGenerator.cs
+++ b/src/Generators/DurableTaskSourceGenerator.cs
@@ -275,13 +275,9 @@ internal static DurableTaskRegistry AddAllGeneratedTasks(this DurableTaskRegistr
class DurableTaskSyntaxReceiver : ISyntaxContextReceiver
{
- readonly List orchestrators = new();
- readonly List activities = new();
- readonly List durableFunctions = new();
-
- public IReadOnlyList Orchestrators => this.orchestrators;
- public IReadOnlyList Activities => this.activities;
- public IReadOnlyList DurableFunctions => this.durableFunctions;
+ public List Orchestrators { get; } = [];
+ public List Activities { get; } = [];
+ public List DurableFunctions { get; } = [];
public void OnVisitSyntaxNode(GeneratorSyntaxContext context)
{
@@ -291,7 +287,7 @@ public void OnVisitSyntaxNode(GeneratorSyntaxContext context)
function != null)
{
Debug.WriteLine($"Adding {function.Kind} function '{function.Name}'");
- this.durableFunctions.Add(function);
+ this.DurableFunctions.Add(function);
return;
}
@@ -338,13 +334,13 @@ public void OnVisitSyntaxNode(GeneratorSyntaxContext context)
{
if (baseType.Name == "TaskActivity")
{
- taskList = this.activities;
+ taskList = this.Activities;
taskType = baseType;
break;
}
else if (baseType.Name == "TaskOrchestrator")
{
- taskList = this.orchestrators;
+ taskList = this.Orchestrators;
taskType = baseType;
break;
}
diff --git a/src/ScheduledTasks/Client/ScheduledTaskClient.cs b/src/ScheduledTasks/Client/ScheduledTaskClient.cs
index edc7658a..3b280643 100644
--- a/src/ScheduledTasks/Client/ScheduledTaskClient.cs
+++ b/src/ScheduledTasks/Client/ScheduledTaskClient.cs
@@ -5,7 +5,7 @@ namespace Microsoft.DurableTask.ScheduledTasks;
///
/// Client for managing scheduled tasks.
-/// Provides methods to retrieve a ScheduleClient, list all schedules,
+/// Provides methods to retrieve a ScheduleClient, list all schedules,
/// and get details of a specific schedule.
///
public abstract class ScheduledTaskClient
@@ -23,7 +23,8 @@ public abstract class ScheduledTaskClient
/// The ID of the schedule to retrieve.
/// Optional cancellation token.
/// The schedule description if found, null otherwise.
- public abstract Task GetScheduleAsync(string scheduleId, CancellationToken cancellation = default);
+ public abstract Task GetScheduleAsync(
+ string scheduleId, CancellationToken cancellation = default);
///
/// Gets a pageable list of schedules matching the specified filter criteria.
@@ -38,5 +39,6 @@ public abstract class ScheduledTaskClient
/// The options for creating the schedule.
/// Optional cancellation token.
/// A ScheduleClient for the created schedule.
- public abstract Task CreateScheduleAsync(ScheduleCreationOptions creationOptions, CancellationToken cancellation = default);
+ public abstract Task CreateScheduleAsync(
+ ScheduleCreationOptions creationOptions, CancellationToken cancellation = default);
}
diff --git a/src/ScheduledTasks/Models/ScheduleState.cs b/src/ScheduledTasks/Models/ScheduleState.cs
index 48783de4..7007c762 100644
--- a/src/ScheduledTasks/Models/ScheduleState.cs
+++ b/src/ScheduledTasks/Models/ScheduleState.cs
@@ -50,4 +50,4 @@ public void RefreshScheduleRunExecutionToken()
{
this.ExecutionToken = Guid.NewGuid().ToString("N");
}
-}
\ No newline at end of file
+}
diff --git a/src/Worker/Core/DependencyInjection/DurableTaskWorkerBuilderExtensions.cs b/src/Worker/Core/DependencyInjection/DurableTaskWorkerBuilderExtensions.cs
index b2911842..f914db2a 100644
--- a/src/Worker/Core/DependencyInjection/DurableTaskWorkerBuilderExtensions.cs
+++ b/src/Worker/Core/DependencyInjection/DurableTaskWorkerBuilderExtensions.cs
@@ -77,7 +77,7 @@ public static IDurableTaskWorkerBuilder UseBuildTarget(this I
where TTarget : DurableTaskWorker
where TOptions : DurableTaskWorkerOptions
{
- builder.UseBuildTarget(typeof(TTarget));
+ builder.UseBuildTarget();
builder.Services.AddOptions(builder.Name)
.PostConfigure>((options, baseOptions) =>
{
diff --git a/src/Worker/Grpc/GrpcDurableTaskWorker.Processor.cs b/src/Worker/Grpc/GrpcDurableTaskWorker.Processor.cs
index 81733a06..194bbd49 100644
--- a/src/Worker/Grpc/GrpcDurableTaskWorker.Processor.cs
+++ b/src/Worker/Grpc/GrpcDurableTaskWorker.Processor.cs
@@ -1,13 +1,12 @@
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
-using System.Diagnostics.CodeAnalysis;
using System.Text;
using DurableTask.Core;
using DurableTask.Core.Entities;
using DurableTask.Core.Entities.OperationFormat;
using DurableTask.Core.History;
-using Grpc.Core;
+using Google.Protobuf.Collections;
using Microsoft.DurableTask.Entities;
using Microsoft.DurableTask.Worker.Shims;
using Microsoft.Extensions.DependencyInjection;
@@ -90,7 +89,7 @@ public async Task ExecuteAsync(CancellationToken cancellation)
}
}
- static string GetActionsListForLogging(IReadOnlyList actions)
+ static string GetActionsListForLogging(RepeatedField actions)
{
if (actions.Count == 0)
{
diff --git a/src/Worker/Grpc/GrpcExtensions.cs b/src/Worker/Grpc/GrpcExtensions.cs
index 8bfd8e42..164510b4 100644
--- a/src/Worker/Grpc/GrpcExtensions.cs
+++ b/src/Worker/Grpc/GrpcExtensions.cs
@@ -2,7 +2,6 @@
// Licensed under the MIT License.
using System.Runtime.CompilerServices;
-using Grpc.Core;
namespace Microsoft.DurableTask;
diff --git a/test/Client/AzureManaged.Tests/Client.AzureManaged.Tests.csproj b/test/Client/AzureManaged.Tests/Client.AzureManaged.Tests.csproj
index 22142fa2..0db37ec2 100644
--- a/test/Client/AzureManaged.Tests/Client.AzureManaged.Tests.csproj
+++ b/test/Client/AzureManaged.Tests/Client.AzureManaged.Tests.csproj
@@ -4,17 +4,12 @@
net6.0
-
-
-
-
-
-
+
diff --git a/test/Directory.Build.props b/test/Directory.Build.props
index 29d5d606..f7f28faf 100644
--- a/test/Directory.Build.props
+++ b/test/Directory.Build.props
@@ -9,6 +9,7 @@
false
+ false
false
diff --git a/test/ScheduledTasks.Tests/Client/DefaultScheduledTaskClientTests.cs b/test/ScheduledTasks.Tests/Client/DefaultScheduledTaskClientTests.cs
index 4eeada24..4c0b0382 100644
--- a/test/ScheduledTasks.Tests/Client/DefaultScheduledTaskClientTests.cs
+++ b/test/ScheduledTasks.Tests/Client/DefaultScheduledTaskClientTests.cs
@@ -104,7 +104,7 @@ public async Task CreateScheduleAsync_WithValidOptions_CreatesSchedule()
r.EntityId.Name == entityInstanceId.Name &&
r.EntityId.Key == entityInstanceId.Key &&
r.OperationName == nameof(Schedule.CreateSchedule) &&
- ((ScheduleCreationOptions)r.Input).ScheduleId == options.ScheduleId &&
+ ((ScheduleCreationOptions)r.Input!).ScheduleId == options.ScheduleId &&
((ScheduleCreationOptions)r.Input).OrchestrationName == options.OrchestrationName &&
((ScheduleCreationOptions)r.Input).Interval == options.Interval),
default),
diff --git a/test/ScheduledTasks.Tests/Entity/ScheduleTests.cs b/test/ScheduledTasks.Tests/Entity/ScheduleTests.cs
index ef7ae7d0..7383a989 100644
--- a/test/ScheduledTasks.Tests/Entity/ScheduleTests.cs
+++ b/test/ScheduledTasks.Tests/Entity/ScheduleTests.cs
@@ -2,6 +2,7 @@
// Licensed under the MIT License.
using Microsoft.DurableTask.Entities.Tests;
+using Microsoft.Extensions.Logging;
using Xunit;
using Xunit.Abstractions;
diff --git a/test/ScheduledTasks.Tests/ScheduledTasks.Tests.csproj b/test/ScheduledTasks.Tests/ScheduledTasks.Tests.csproj
index 33726a62..fd81f7c7 100644
--- a/test/ScheduledTasks.Tests/ScheduledTasks.Tests.csproj
+++ b/test/ScheduledTasks.Tests/ScheduledTasks.Tests.csproj
@@ -1,4 +1,3 @@
-
@@ -9,13 +8,9 @@
true
-
-
-
-
-
\ No newline at end of file
+
diff --git a/test/Shared/AzureManaged.Tests/Shared.AzureManaged.Tests.csproj b/test/Shared/AzureManaged.Tests/Shared.AzureManaged.Tests.csproj
index 849b655f..dc5c707e 100644
--- a/test/Shared/AzureManaged.Tests/Shared.AzureManaged.Tests.csproj
+++ b/test/Shared/AzureManaged.Tests/Shared.AzureManaged.Tests.csproj
@@ -2,12 +2,8 @@
net6.0
+ true
-
-
-
-
-
@@ -15,6 +11,13 @@
-
+
+
+
+
+
+
+
+
diff --git a/test/TestHelpers/Logging/TestLogger.cs b/test/TestHelpers/Logging/TestLogger.cs
index adbd3141..17794cc0 100644
--- a/test/TestHelpers/Logging/TestLogger.cs
+++ b/test/TestHelpers/Logging/TestLogger.cs
@@ -1,13 +1,13 @@
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
-using Microsoft.Extensions.Logging;
+namespace Microsoft.Extensions.Logging;
public class TestLogger : ILogger
{
- public List<(LogLevel Level, string Message)> Logs { get; } = new();
+ public List<(LogLevel Level, string Message)> Logs { get; } = [];
- public IDisposable? BeginScope(TState state) where TState : notnull => null;
+ public IDisposable BeginScope(TState state) => null!;
public bool IsEnabled(LogLevel logLevel) => true;
@@ -20,9 +20,9 @@ public void Log(LogLevel logLevel, EventId eventId, TState state, Except
public class TestLogger : ILogger
{
- public List<(LogLevel Level, string Message)> Logs { get; } = new();
+ public List<(LogLevel Level, string Message)> Logs { get; } = [];
- public IDisposable? BeginScope(TState state) where TState : notnull => null;
+ public IDisposable BeginScope(TState state) => null!;
public bool IsEnabled(LogLevel logLevel) => true;
diff --git a/test/Worker/AzureManaged.Tests/Worker.AzureManaged.Tests.csproj b/test/Worker/AzureManaged.Tests/Worker.AzureManaged.Tests.csproj
index 4a5a7cc1..cff92896 100644
--- a/test/Worker/AzureManaged.Tests/Worker.AzureManaged.Tests.csproj
+++ b/test/Worker/AzureManaged.Tests/Worker.AzureManaged.Tests.csproj
@@ -9,11 +9,7 @@
-
-
+
-
-
-