Buildvana.Sdk
1.0.0-alpha.20
See the version list below for details.
Requires NuGet 4.3 or higher.
<Sdk Name="Buildvana.Sdk" Version="1.0.0-alpha.20" />
Buildvana SDK
Part of the Buildvana project.
Buildvana /bɪldˈvɑːnə/
a transcendent state of the .NET programmer's mind, in which there is neither suffering, confusion, nor waste of time.
a collection of open-source methods and processes to help .NET programmers achieve Buildvana.
a collection of open-source projects supporting programmers that aim to reach Buildvana.
At a glance
Buildvana SDK is an opinionated, best-practices-based, CI-friendly, VS-friendly, MSBuild-powered build system for .NET projects.
It is part of the Buildvana project, which also comprises ready-to-use template repositories that implement automated build, testing, and deployment for .NET projects.
NOTE: Buildvana SDK, just as the whole Buildvana project, is still a work in progress. All standard disclaimers apply. However, the SDK has already been used successfully for internal projects at Tenacom, before it even became a project of its own.
Benefits
- Single source of truth for assembly versions
- Single source of truth for package licenses and copyright notices
- Helps you keep your project files clean and concise - even better than "plain" MSBuild SDKs
- More auto-generated assembly information (
ClsCompliant
,COMVisible
) - Custom auto-generated assembly information
- Automatic configuration of commonly-used code analyzers
- ...
Supported project types
At the moment, Buildvana SDK is being used mainly by .NET Standard and .NET Core libraries written in C#.
It should work for .NET Core console applications.
It may work for ASP.NET Core websites.
It will not work for .NET Framework applications or libraries.
It will not work for non-SDK (legacy) projects.
It may work for WindowsDesktop projects. These will definitely be supported soon.
As for language support: Buildvana SDK will work with C# projects, should work with Visual Basic projects and may work with F# projects.
Requirements
Git repository
Buildvana SDK assumes that your project is in a Git repository. Furthermore, if your project is packable (i.e. it is meant to be distributed as a NuGet package), Buildvana SDK assumes that it is hosted on a GitHub public repository, for the purposes of generating a symbol package with SourceLink support.
Support for other Git servers will be implemented if / when asked for. It should be trivial enough, as long as there is a suitable SourceLink support package available.
Private repositories may or may not work. Testers welcome.
Toolchain
Building via the following tools is supported:
- MSBuild v17.0 or newer (
msbuild
) running under .NET Framework 4.7.2 or newer / .NET 6.0 or newer - Visual Studio 2022 v17.0 or newer (building from IDE)
- .NET SDK 6.0 or newer (
dotnet build
,dotnet msbuild
, etc.)
Latest versions of Visual Studio for Mac should work, but we need confirmation by someone with a Mac.
Quick start
TODO
Contributing
TODO
Credits
The peaceful octopus logo is a modified version of Peace by AomAm from the Noun Project.
The font used in the logo is Repo by Stefan Peev, from Font Library.
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.0-alpha.23 | 235 | 11/13/2022 |
1.0.0-alpha.22 | 413 | 9/22/2022 |
1.0.0-alpha.21 | 142 | 9/20/2022 |
1.0.0-alpha.20 | 470 | 5/12/2022 |
1.0.0-alpha.19 | 262 | 4/28/2022 |
1.0.0-alpha.18 | 214 | 4/26/2022 |
1.0.0-alpha.17 | 207 | 4/24/2022 |
1.0.0-alpha.16 | 244 | 4/1/2022 |
1.0.0-alpha.15 | 310 | 4/1/2022 |
1.0.0-alpha.14 | 735 | 9/13/2021 |
1.0.0-alpha.13 | 236 | 9/12/2021 |
1.0.0-alpha.12 | 318 | 1/19/2021 |
1.0.0-alpha.11 | 214 | 1/19/2021 |
1.0.0-alpha.10 | 222 | 1/3/2021 |
1.0.0-alpha.9 | 478 | 10/10/2020 |
1.0.0-alpha.8 | 340 | 10/10/2020 |
1.0.0-alpha.7 | 257 | 9/28/2020 |
1.0.0-alpha.6 | 338 | 9/19/2020 |
1.0.0-alpha.5 | 248 | 9/18/2020 |
Release notes are available at https://github.com/Buildvana/Buildvana.Sdk/blob/main/CHANGELOG.md