Skip to content

Commit 517e591

Browse files
committed
HTML encode issue titles in release notes tool
If someone reports an issue on a specific method, and that method is async the compiler generates a name like `TypeName+<Method>`, but that looks like an invalid HTML tag that will get hidden when rendered. Therefore, HTML encode it, so it gets displayed correctly. Also update the project to .NET 8, update packages and fix a few compiler warnings
1 parent f70730a commit 517e591

3 files changed

Lines changed: 7 additions & 7 deletions

File tree

NuGetReleaseTool/NuGetReleaseTool/GenerateReleaseNotesCommand/ReleaseNotesGenerator.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
using Octokit;
2-
using System.Collections.Generic;
32
using System.Text;
43
using System.Text.RegularExpressions;
4+
using System.Web;
55

66
namespace NuGetReleaseTool.GenerateReleaseNotesCommand
77
{
@@ -307,7 +307,7 @@ private static void OutputCommunityPullRequestsSection(
307307
Dictionary<string, List<PullRequest>> pullRequestsByContributors = new();
308308
foreach (var pullRequest in communityPullRequests)
309309
{
310-
if (!pullRequestsByContributors.TryGetValue(pullRequest.User.Login, out List<PullRequest> pullRequests))
310+
if (!pullRequestsByContributors.TryGetValue(pullRequest.User.Login, out List<PullRequest>? pullRequests))
311311
{
312312
pullRequests = new List<PullRequest>();
313313
pullRequestsByContributors.Add(pullRequest.User.Login, pullRequests);
@@ -357,7 +357,7 @@ private static void OutputSection(
357357

358358
foreach (var issue in issues)
359359
{
360-
builder.AppendLine("* " + issue.Title + " - " + "[#" + issue.Number + "](" + issue.HtmlUrl + ")");
360+
builder.AppendLine("* " + HttpUtility.HtmlEncode(issue.Title) + " - " + "[#" + issue.Number + "](" + issue.HtmlUrl + ")");
361361
builder.AppendLine();
362362
}
363363
}

NuGetReleaseTool/NuGetReleaseTool/Helpers.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ public static async Task<List<CommitWithDetails>> GetCommitDetails(GitHubClient
112112

113113
if (pullRequestbody == null)
114114
{
115-
Console.WriteLine($"PR contains contains no body message: {commit?.PR?.Item2}");
115+
Console.WriteLine($"PR contains contains no body message: {commit.PR?.Item2}");
116116
}
117117
else
118118
{

NuGetReleaseTool/NuGetReleaseTool/NuGetReleaseTool.csproj

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

33
<PropertyGroup>
44
<OutputType>Exe</OutputType>
5-
<TargetFramework>net7.0</TargetFramework>
5+
<TargetFramework>net8.0</TargetFramework>
66
<ImplicitUsings>enable</ImplicitUsings>
77
<Nullable>enable</Nullable>
88
</PropertyGroup>
99

1010
<ItemGroup>
11-
<PackageReference Include="CommandLineParser" Version="2.7.82" />
11+
<PackageReference Include="CommandLineParser" Version="2.9.1" />
1212
<PackageReference Include="octokit" Version="11.0.1" />
13-
<PackageReference Include="NuGet.Commands" Version="6.9.1" />
13+
<PackageReference Include="NuGet.Commands" Version="6.11.1" />
1414
</ItemGroup>
1515
</Project>

0 commit comments

Comments
 (0)