Skip to content

Releases: JanusMael/Bennewitz.Ninja.AutoVersioning

v2026.3.701

Choose a tag to compare

@github-actions github-actions released this 01 Jul 15:58

Fixed

  • InternalsVisibleTo (and other SDK-generated attributes) no longer broken when the generator is enabled. Previously, enabling the generator required <GenerateAssemblyInfo>false</GenerateAssemblyInfo>, which silently suppressed all SDK-generated assembly attributes — including InternalsVisibleTo from MSBuild item groups. The package now applies 8 granular per-attribute suppressions (GenerateAssemblyVersionAttribute, GenerateAssemblyCompanyAttribute, etc.) instead, so only the attributes this generator actually emits are suppressed. Do not add <GenerateAssemblyInfo>false</GenerateAssemblyInfo> yourself — it will reintroduce the bug.
  • Diagnostic messages (BAUTOVERSIONING00, 02, 03) are now single-line and self-contained. Multi-line messages were being truncated by IDE build panels (e.g. Rider), hiding the actual fix instructions behind a blank continuation.

Added

  • BuildTimestamp MSBuild property — keeps the generated version consistent across every project in a multi-project solution build. Captured once during MSBuild property evaluation (before any project compiles), so independent projects normally land on the same value regardless of how long compilation takes. Override with -p:BuildTimestamp=... for an exact guarantee on CI or in local builds.
  • BAUTOVERSIONING04 — new companion diagnostic to BAUTOVERSIONING00, carrying the full multi-line setup snippet (<PropertyGroup> block) in IDE detail/hover panes, without bloating the primary single-line warning.
  • Build.ps1.template — optional local-build wrapper for consumers. Computes BuildTimestamp, CommitSha (via git rev-parse), and PublicVersion (via git describe --tags) once and threads them into dotnet build, giving local terminal builds the same metadata richness CI already gets.
  • docs/MultiProjectBuildTimestamps.md — design notes on the BuildTimestamp mechanism, including alternatives considered (static generator state, named mutex/shared memory, auto-triggered file locking, solution-level MSBuild hooks) and why each was rejected.

Changed

  • The NuGet package now includes Directory.Build.props.template, Build.ps1.template, and the new docs/ file, so the README's relative links resolve correctly when rendered on NuGet.org instead of 404ing.

Configuration Reference

Property Status
BuildTimestamp New, optional, auto-populated

See the README for full configuration details.

Full Changelog: v2026.2.521...v2026.3.701

v2026.2.522

Choose a tag to compare

@github-actions github-actions released this 21 May 13:43

v2026.2.521

Choose a tag to compare

@github-actions github-actions released this 21 May 13:41

v2026.2.515

Choose a tag to compare

@github-actions github-actions released this 15 May 15:52

v2026.2.501

Choose a tag to compare

@github-actions github-actions released this 01 May 13:32

v2026.2.429

Choose a tag to compare

@github-actions github-actions released this 29 Apr 18:33