diff --git a/CS.Changelog.Console/CS.Changelog.Console.csproj b/CS.Changelog.Console/CS.Changelog.Console.csproj
index b9692d1..1c6d8c0 100644
--- a/CS.Changelog.Console/CS.Changelog.Console.csproj
+++ b/CS.Changelog.Console/CS.Changelog.Console.csproj
@@ -2,12 +2,11 @@
Exe
- net7.0
+ net9.0
flow-analysis
true
true
- 8
Robert Sirre, Mario Puglisi
Cohelion
@@ -17,14 +16,16 @@
A git-commit based changelog generator.
- 1.4.0
- Cohelion 2023
+ 1.6.0
+ Cohelion 2024
MS-PL
https://github.com/Cohelion/CS.Changelog
https://github.com/Cohelion/CS.Changelog
Git
- false
- false
+ True
+ True
changelog
git changelog generator
en
@@ -54,6 +55,8 @@
AllEnabledByDefault
embedded
ReadMe.md
+ True
+ RobertSirre.Changelog.Console
diff --git a/CS.Changelog.Console/Options.cs b/CS.Changelog.Console/Options.cs
index 6120782..4fa11bb 100644
--- a/CS.Changelog.Console/Options.cs
+++ b/CS.Changelog.Console/Options.cs
@@ -1,10 +1,9 @@
-using CommandLine;
-using CommandLine.Text;
-using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations;
using System.Diagnostics.CodeAnalysis;
using System.IO;
using System.Xml;
using System.Xml.Serialization;
+using CommandLine;
namespace CS.Changelog.Console
{
@@ -80,7 +79,8 @@ namespace CS.Changelog.Console
///
///
[SuppressMessage("Naming", "CA1707:Identifiers should not contain underscores", Justification = "Option names follow naming conventions for command-line input")]
- public class Options
+ [SuppressMessage("Maintainability", "CA1515:Consider making public types internal", Justification = "These options are parsed from oublic input.")]
+ public sealed class Options
{
/// Gets or sets the path to git.
/// The path to git, defaults to git.
diff --git a/CS.Changelog.Console/Program.cs b/CS.Changelog.Console/Program.cs
index 31917d3..da1b438 100644
--- a/CS.Changelog.Console/Program.cs
+++ b/CS.Changelog.Console/Program.cs
@@ -48,12 +48,12 @@ static void Main(string[] args)
return;
// Validate some more
- if (!Uri.TryCreate(_options.IssueTrackerUrl, UriKind.Absolute, out _))
+ if (!string.IsNullOrEmpty(_options.IssueTrackerUrl) && !Uri.TryCreate(_options.IssueTrackerUrl, UriKind.Absolute, out _))
{
System.Console.Error.WriteLine($"{nameof(Options.IssueTrackerUrl)} : {_options.IssueTrackerUrl} is not a valid url");
return;
}
- if (!Uri.TryCreate(_options.CommitDetailsUrl, UriKind.Absolute, out _))
+ if (!string.IsNullOrEmpty(_options.CommitDetailsUrl) && !Uri.TryCreate(_options.CommitDetailsUrl, UriKind.Absolute, out _))
{
System.Console.Error.WriteLine($"{nameof(Options.CommitDetailsUrl)} : {_options.CommitDetailsUrl} is not a valid url");
return;
diff --git a/CS.Changelog.Console/Properties/PublishProfiles/FolderProfile.pubxml b/CS.Changelog.Console/Properties/PublishProfiles/FolderProfile.pubxml
new file mode 100644
index 0000000..12cead3
--- /dev/null
+++ b/CS.Changelog.Console/Properties/PublishProfiles/FolderProfile.pubxml
@@ -0,0 +1,13 @@
+
+
+
+
+ Release
+ Any CPU
+ bin\Release\net9.0\publish\
+ FileSystem
+ <_TargetId>Folder
+
+
\ No newline at end of file
diff --git a/CS.Changelog.Tests/CS.Changelog.Tests.csproj b/CS.Changelog.Tests/CS.Changelog.Tests.csproj
index 60d1984..2706ab7 100644
--- a/CS.Changelog.Tests/CS.Changelog.Tests.csproj
+++ b/CS.Changelog.Tests/CS.Changelog.Tests.csproj
@@ -1,7 +1,7 @@
- net7.0
+ net9.0
false
flow-analysis
true
@@ -18,17 +18,17 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
-
-
+
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+
diff --git a/CS.Changelog/CS.Changelog.csproj b/CS.Changelog/CS.Changelog.csproj
index bb9356f..26d16fa 100644
--- a/CS.Changelog/CS.Changelog.csproj
+++ b/CS.Changelog/CS.Changelog.csproj
@@ -64,7 +64,7 @@
-
+
diff --git a/CS.Changelog/Parsing.cs b/CS.Changelog/Parsing.cs
index 2615923..7018d1c 100644
--- a/CS.Changelog/Parsing.cs
+++ b/CS.Changelog/Parsing.cs
@@ -300,7 +300,7 @@ public static string CleanMessage(string message, Regex IssueFormat)
// Because the end of the message will be changed if there's any issue number present in the
if (message.EndsWith('\r')) message = message.Remove(message.Length - 1, 1);
- if (matches.Any())
+ if (matches.Count > 0)
{
// If multiple matches are found, then leave the message as is
if (matches.Count > 1) return result;