7b6115da21
* Fixed dependency * Updates to NeoDictionary * Changes to NeoDictionary * Started working on a Git implementation to integrate into Game Engines in the future * Added commit functionality to the git library * New changes * Added select for NeoDictionary.cs * Fixed issue with previous new method * Added a Benchmarking Tool to be used mostly in game engines * Added IndexOf to NeoDictionary.cs * Added new method for BenchmarkUtility.cs * added an instacedobject class * Added a new shuffle method for lists * fixed return type * Added new Changelog generator
42 lines
1.1 KiB
C#
42 lines
1.1 KiB
C#
// See https://aka.ms/new-console-template for more information
|
|
|
|
using System.Reflection;
|
|
using GameDevLibrary.Helpers;
|
|
using OmegaLeo.HelperLib.Changelog.Models;
|
|
using OmegaLeo.HelperLib.Changelog.Tools;
|
|
|
|
var root = GetSolutionRoot();
|
|
|
|
var changelogs = new Dictionary<string, Assembly>()
|
|
{
|
|
{Path.Join(root, "OmegaLeo.HelperLib.Changelog", "CHANGELOG.md"), typeof(Changelog).Assembly},
|
|
{Path.Join(root, "OmegaLeo.HelperLib", "CHANGELOG.md"), typeof(BenchmarkUtility).Assembly},
|
|
};
|
|
|
|
foreach (var changelog in changelogs)
|
|
{
|
|
GenerateChangelog(changelog.Key, changelog.Value);
|
|
}
|
|
|
|
|
|
void GenerateChangelog(string path, Assembly libraryAssembly)
|
|
{
|
|
var changelogMarkdown = ChangelogTool.GetMarkdown(libraryAssembly);
|
|
|
|
File.WriteAllText(path,changelogMarkdown);
|
|
}
|
|
|
|
static string GetSolutionRoot()
|
|
{
|
|
string dir = AppContext.BaseDirectory;
|
|
|
|
while (!string.IsNullOrEmpty(dir))
|
|
{
|
|
if (Directory.GetFiles(dir, "*.sln").Length > 0)
|
|
return dir; // Found the solution root
|
|
|
|
dir = Directory.GetParent(dir)?.FullName; // Move up a directory
|
|
}
|
|
|
|
throw new Exception("Solution root not found.");
|
|
} |