Skip to content

Build And Release

samatstarion edited this page Sep 26, 2025 · 2 revisions

Development Environment

Mercurio is developed using Visual Studio 2022 or Jetbrains Rider

The following tools are used by the Starion Group development team:

  • Visual Studio 2022 Professional (Community Edtion will work as well)
  • Jetbrains Rider
  • Jetbrains Resharper Ultimate 2024.2.1 or later
  • Git Extensions

Prepare for Release

Follow the steps to create pre-release nugets that are not optimized using the Debug configuration or a release nugets using the Release configuration:

  1. Run all unit tests and verify that they pass
  2. Make sure the version numbers of the projects are incremented when things have changed; the project makes use of SEMVER.
  3. Update the <PackageReleaseNotes> in the .csproj files; this will be visible on https://nuget.org
  4. Via the GitHub web-ui draft a new release referencing the tag and set the release title to Version MAJOR.MINOR.PATCH. The description of the release shall mention the updates referencing the GitHub issue numbers.

NOTE: The .csproj files contain settings that indicate that a symbols package is created as well. When using dotnet push to publish the packages on https://nuget.org, the symbols packages will be pushed as well.

Create Release

The creation of nuget packages and a draft release note is automated using the release GitHub action. Invoke this action and provide the version number using SemVer.

Clone this wiki locally