Surveyor 0.7.2
dotnet tool install --global Surveyor --version 0.7.2
dotnet new tool-manifest
dotnet tool install --local Surveyor --version 0.7.2
#tool dotnet:?package=Surveyor&version=0.7.2
nuke :add-package Surveyor --version 0.7.2
About
A CLI tool to handle essential CI/CD tasks such as:
Version Numbering
Determine assembly and package version numbers by analyzing conventional commit messages and determining whether files have changed since the last version published to a NuGet feed.
- Each project, assembly, or package in a solution is versioned independently so new versions are only released if the assembly has changed, as opposed to publishing every package in the repository.
- Analyses commit messages formatted according to the Conventional Commits specification to determine whether a version bump should be a patch, minor, or major release.
- Version numbers follow the Semantic Versioning 2 specification.
- Version numbers are recorded as git tags ensuring full compatibility with your existing workflow.
- Per branch versioning gives the flexibility to simultaneously develop
v2.0.0
while providing patches for yourv1
branch. - Pre-release versioning is fully supported via
alpha
,beta
, andrc
branches.
Generating Release Notes
Generate release notes by analyzing conventional commit messages and grouping them by type (breaking changes, features, fixes, etc.).
How to Use
Install as a .NET Core Global Tool:
dotnet tool install --global surveyor --prerelease
Determine the version number for the current working directory:
Surveyor version
Determine the version number for a repository:
Surveyor version --Versioning:Directory "/e/Repos/C#/Example/StudioLE.Example.Cli/src"
Determine the version number for a specific project:
Surveyor project-version --Versioning:Package "StudioLE.Example" --Versioning:Directory "/e/Repos/C#/Example/StudioLE.Example.Cli/src"
Generate release notes for all changes since the last tagged version of the current working directory:
Surveyor release-notes
Use Surveyor from GitHub Actions:
How it Works
The CLI logic is handled by Program.cs which calls activities defined in the Surveyor.Core project. The inputs for the activities are assigned by the Options pattern providing versatility to define the inputs via command line arguments, environment variables, or configuration files.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
This package has no dependencies.
Version | Downloads | Last Updated |
---|---|---|
0.7.2 | 199 | 2/22/2025 |