Novolis.MSBuild.CodeGen 2026.1.1.20

dotnet add package Novolis.MSBuild.CodeGen --version 2026.1.1.20
                    
NuGet\Install-Package Novolis.MSBuild.CodeGen -Version 2026.1.1.20
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Novolis.MSBuild.CodeGen" Version="2026.1.1.20">
  <PrivateAssets>all</PrivateAssets>
  <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Novolis.MSBuild.CodeGen" Version="2026.1.1.20" />
                    
Directory.Packages.props
<PackageReference Include="Novolis.MSBuild.CodeGen">
  <PrivateAssets>all</PrivateAssets>
  <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Novolis.MSBuild.CodeGen --version 2026.1.1.20
                    
#r "nuget: Novolis.MSBuild.CodeGen, 2026.1.1.20"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Novolis.MSBuild.CodeGen@2026.1.1.20
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Novolis.MSBuild.CodeGen&version=2026.1.1.20
                    
Install as a Cake Addin
#tool nuget:?package=Novolis.MSBuild.CodeGen&version=2026.1.1.20
                    
Install as a Cake Tool

Novolis

Novolis · Docs · Source

Novolis.MSBuild.CodeGen

Reusable incremental lifecycle targets for file-generating code generators.

The package schedules a repository-owned generator before compilation, skips unchanged work using declared inputs and outputs, and avoids execution during design-time builds and packing. Generator manifests, pipelines, and generated source remain owned by the consuming repository.

Install

<ItemGroup>
  <PackageReference Include="Novolis.MSBuild.CodeGen" PrivateAssets="all" />
</ItemGroup>

Usage

<ItemGroup>
  <NovolisCodeGen Include="Example">
    <ToolProject>$(MSBuildProjectDirectory)..\codegen\Example.Pipeline\Example.Pipeline.csproj</ToolProject>
    <Arguments>run generate</Arguments>
    <WorkingDirectory>$(MSBuildProjectDirectory)..\</WorkingDirectory>
    <InputFiles>@(ExampleCodeGenInput)</InputFiles>
    <OutputFiles>@(ExampleCodeGenOutput)</OutputFiles>
    <ProjectArguments> -p:NovolisUseProjectReferences=true</ProjectArguments>
  </NovolisCodeGen>
</ItemGroup>

Use NovolisVerifyCodeGen for an explicit output/verification pass. The underlying generator remains responsible for detailed fingerprints and pipeline caching.

For a published generator package, also install Novolis.MSBuild.ToolReference, declare its package entry point, and point the CodeGen item at that reference:

<ItemGroup>
  <ToolReference Include="Example.Generator"
                 Version="[2026.1.1.1]"
                 ToolPath="tools/net10.0/any/Example.Generator.dll" />
  <NovolisCodeGen Include="Example">
    <ToolReference>Example.Generator</ToolReference>
    <Arguments>run generate</Arguments>
    <InputFiles>@(ExampleCodeGenInput)</InputFiles>
    <OutputFiles>@(ExampleCodeGenOutput)</OutputFiles>
  </NovolisCodeGen>
</ItemGroup>
There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on Novolis.MSBuild.CodeGen:

Package Downloads
Novolis.Raylib.Bindings

Generated raylib 6.2 + ImGui P/Invoke (manifest-driven; do not hand-edit Interop/*.g.cs).

Novolis.Audio.Bindings

Generated novolis_audio P/Invoke (manifest-driven; do not hand-edit Interop/*.g.cs).

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2026.1.1.20 93 10/18/2026
2026.1.1.19 380 10/18/2026
2026.1.1.16 297 10/18/2026