MfGames.Locking2024-03-28T17:39:17Zhttps://d.moonfire.us/tags/mfgames-locking/D. MoonfireCreative Commons Attribution-NonCommercial-ShareAlike 4.0 Internationalsemantic-release-nuget v1.1.02021-09-04T05:00:00Zhttps://d.moonfire.us/blog/2021/09/04/semantic-release-nuget/To pair with last's week utility, I finished up the first version of semantic-release-nuget and used it.
<p>Last week, I wrote <a href="/blog/2021/08/29/semantic-release-dotnet/">semantic-release-dotnet</a> which was a <a href="https://semantic-release.gitbook.io/semantic-release/">semantic-release</a> plugin to automatically set the version to the appropriate one before building.</p>
<p>One of the key parts missing from the normal .NET development cycle was also publishing the packages. I decided to break that into a separate plugin because I have a number of places where I don't want to publish but I do want something versioned (internal projects and customized deployments). So, in the essence of the <a href="https://en.wikipedia.org/wiki/Single-responsibility_principle">Single Responsibility Principle</a>, I created a second utility which does one thing: build and publish NuGet packages.</p>
<p>Introducing <a href="https://www.npmjs.com/package/semantic-release-nuget">semantic-release-nuget</a>. It doesn't have a lot of configurations, but the documentation covers all of them. Basically, it does one thing.</p>
<p>I mostly tested with <a href="/tags/mfgames-locking/">MfGames.Locking</a>, my CIL library for some thread-locking patterns, because I'm the process of carving out <a href="/tags/gallium/">Gallium</a> and <a href="/tags/nitride/">Nitride</a> into their own packages. I'm just not sure where to put them, so they are probably going in my <a href="https://gitlab.com/mfgames-cil/">Gitlab</a> organization until I find a “better” organization/home.</p>