Skip to content

Commit cd07cd7

Browse files
CopilotYunchuWang
andcommitted
Add HelpLinkUri to all Roslyn analyzer diagnostics
Co-authored-by: YunchuWang <[email protected]>
1 parent e323d1b commit cd07cd7

14 files changed

+81
-15
lines changed

src/Analyzers/Activities/FunctionNotFoundAnalyzer.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,8 @@ public sealed class FunctionNotFoundAnalyzer : DiagnosticAnalyzer
3939
AnalyzersCategories.Activity,
4040
DiagnosticSeverity.Warning,
4141
customTags: [WellKnownDiagnosticTags.CompilationEnd],
42-
isEnabledByDefault: true);
42+
isEnabledByDefault: true,
43+
helpLinkUri: $"https://learn.microsoft.com/azure/azure-functions/durable/durable-functions-code-constraints?tabs=csharp#{ActivityNotFoundDiagnosticId}");
4344

4445
static readonly DiagnosticDescriptor SubOrchestrationNotFoundRule = new(
4546
SubOrchestrationNotFoundDiagnosticId,
@@ -48,7 +49,8 @@ public sealed class FunctionNotFoundAnalyzer : DiagnosticAnalyzer
4849
AnalyzersCategories.Orchestration,
4950
DiagnosticSeverity.Warning,
5051
customTags: [WellKnownDiagnosticTags.CompilationEnd],
51-
isEnabledByDefault: true);
52+
isEnabledByDefault: true,
53+
helpLinkUri: $"https://learn.microsoft.com/azure/azure-functions/durable/durable-functions-code-constraints?tabs=csharp#{SubOrchestrationNotFoundDiagnosticId}");
5254

5355
/// <inheritdoc/>
5456
public override ImmutableArray<DiagnosticDescriptor> SupportedDiagnostics => [ActivityNotFoundRule, SubOrchestrationNotFoundRule];

src/Analyzers/Activities/MatchingInputOutputTypeActivityAnalyzer.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,8 @@ public class MatchingInputOutputTypeActivityAnalyzer : DiagnosticAnalyzer
4040
AnalyzersCategories.Activity,
4141
DiagnosticSeverity.Warning,
4242
customTags: [WellKnownDiagnosticTags.CompilationEnd],
43-
isEnabledByDefault: true);
43+
isEnabledByDefault: true,
44+
helpLinkUri: $"https://learn.microsoft.com/azure/azure-functions/durable/durable-functions-code-constraints?tabs=csharp#{InputArgumentTypeMismatchDiagnosticId}");
4445

4546
static readonly DiagnosticDescriptor OutputArgumentTypeMismatchRule = new(
4647
OutputArgumentTypeMismatchDiagnosticId,
@@ -49,7 +50,8 @@ public class MatchingInputOutputTypeActivityAnalyzer : DiagnosticAnalyzer
4950
AnalyzersCategories.Activity,
5051
DiagnosticSeverity.Warning,
5152
customTags: [WellKnownDiagnosticTags.CompilationEnd],
52-
isEnabledByDefault: true);
53+
isEnabledByDefault: true,
54+
helpLinkUri: $"https://learn.microsoft.com/azure/azure-functions/durable/durable-functions-code-constraints?tabs=csharp#{OutputArgumentTypeMismatchDiagnosticId}");
5355

5456
/// <inheritdoc/>
5557
public override ImmutableArray<DiagnosticDescriptor> SupportedDiagnostics => [InputArgumentTypeMismatchRule, OutputArgumentTypeMismatchRule];

src/Analyzers/Functions/AttributeBinding/DurableClientBindingAnalyzer.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ public sealed class DurableClientBindingAnalyzer : MatchingAttributeBindingAnaly
2727
MessageFormat,
2828
AnalyzersCategories.AttributeBinding,
2929
DiagnosticSeverity.Error,
30-
isEnabledByDefault: true);
30+
isEnabledByDefault: true,
31+
helpLinkUri: $"https://learn.microsoft.com/azure/azure-functions/durable/durable-functions-code-constraints?tabs=csharp#{DiagnosticId}");
3132

3233
/// <inheritdoc/>
3334
public override ImmutableArray<DiagnosticDescriptor> SupportedDiagnostics => [Rule];

src/Analyzers/Functions/AttributeBinding/EntityTriggerBindingAnalyzer.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ public sealed class EntityTriggerBindingAnalyzer : MatchingAttributeBindingAnaly
2727
MessageFormat,
2828
AnalyzersCategories.AttributeBinding,
2929
DiagnosticSeverity.Error,
30-
isEnabledByDefault: true);
30+
isEnabledByDefault: true,
31+
helpLinkUri: $"https://learn.microsoft.com/azure/azure-functions/durable/durable-functions-code-constraints?tabs=csharp#{DiagnosticId}");
3132

3233
/// <inheritdoc/>
3334
public override ImmutableArray<DiagnosticDescriptor> SupportedDiagnostics => [Rule];

src/Analyzers/Functions/AttributeBinding/OrchestrationTriggerBindingAnalyzer.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ public sealed class OrchestrationTriggerBindingAnalyzer : MatchingAttributeBindi
2727
MessageFormat,
2828
AnalyzersCategories.AttributeBinding,
2929
DiagnosticSeverity.Error,
30-
isEnabledByDefault: true);
30+
isEnabledByDefault: true,
31+
helpLinkUri: $"https://learn.microsoft.com/azure/azure-functions/durable/durable-functions-code-constraints?tabs=csharp#{DiagnosticId}");
3132

3233
/// <inheritdoc/>
3334
public override ImmutableArray<DiagnosticDescriptor> SupportedDiagnostics => [Rule];

src/Analyzers/Functions/Orchestration/CancellationTokenOrchestrationAnalyzer.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@ public class CancellationTokenOrchestrationAnalyzer : OrchestrationAnalyzer<Canc
3030
MessageFormat,
3131
AnalyzersCategories.Orchestration,
3232
DiagnosticSeverity.Warning,
33-
isEnabledByDefault: true);
33+
isEnabledByDefault: true,
34+
helpLinkUri: $"https://learn.microsoft.com/azure/azure-functions/durable/durable-functions-code-constraints?tabs=csharp#{DiagnosticId}");
3435

3536
/// <inheritdoc/>
3637
public override ImmutableArray<DiagnosticDescriptor> SupportedDiagnostics => [Rule];

src/Analyzers/Functions/Orchestration/OtherBindingsOrchestrationAnalyzer.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@ class OtherBindingsOrchestrationAnalyzer : OrchestrationAnalyzer<OtherBindingsOr
3030
MessageFormat,
3131
AnalyzersCategories.Orchestration,
3232
DiagnosticSeverity.Warning,
33-
isEnabledByDefault: true);
33+
isEnabledByDefault: true,
34+
helpLinkUri: $"https://learn.microsoft.com/azure/azure-functions/durable/durable-functions-code-constraints?tabs=csharp#{DiagnosticId}");
3435

3536
/// <inheritdoc/>
3637
public override ImmutableArray<DiagnosticDescriptor> SupportedDiagnostics => [Rule];

src/Analyzers/Orchestration/DateTimeOrchestrationAnalyzer.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@ public sealed class DateTimeOrchestrationAnalyzer : OrchestrationAnalyzer<DateTi
2929
MessageFormat,
3030
AnalyzersCategories.Orchestration,
3131
DiagnosticSeverity.Warning,
32-
isEnabledByDefault: true);
32+
isEnabledByDefault: true,
33+
helpLinkUri: $"https://learn.microsoft.com/azure/azure-functions/durable/durable-functions-code-constraints?tabs=csharp#{DiagnosticId}");
3334

3435
/// <inheritdoc/>
3536
public override ImmutableArray<DiagnosticDescriptor> SupportedDiagnostics => [Rule];

src/Analyzers/Orchestration/DelayOrchestrationAnalyzer.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@ public class DelayOrchestrationAnalyzer : OrchestrationAnalyzer<DelayOrchestrati
2929
MessageFormat,
3030
AnalyzersCategories.Orchestration,
3131
DiagnosticSeverity.Warning,
32-
isEnabledByDefault: true);
32+
isEnabledByDefault: true,
33+
helpLinkUri: $"https://learn.microsoft.com/azure/azure-functions/durable/durable-functions-code-constraints?tabs=csharp#{DiagnosticId}");
3334

3435
/// <inheritdoc/>
3536
public override ImmutableArray<DiagnosticDescriptor> SupportedDiagnostics => [Rule];

src/Analyzers/Orchestration/EnvironmentOrchestrationAnalyzer.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@ public sealed class EnvironmentOrchestrationAnalyzer : OrchestrationAnalyzer<Env
3131
MessageFormat,
3232
AnalyzersCategories.Orchestration,
3333
DiagnosticSeverity.Warning,
34-
isEnabledByDefault: true);
34+
isEnabledByDefault: true,
35+
helpLinkUri: $"https://learn.microsoft.com/azure/azure-functions/durable/durable-functions-code-constraints?tabs=csharp#{DiagnosticId}");
3536

3637
/// <inheritdoc/>
3738
public override ImmutableArray<DiagnosticDescriptor> SupportedDiagnostics => [Rule];

0 commit comments

Comments
 (0)