This repository was archived by the owner on Dec 12, 2020. It is now read-only.
Copy of Changelog entry
⚠ There are major changes, please look at v0.7 migration guide.
Added
- Template pack for dotnet new:
dotnet new -i CodeGeneration.Roslyn.Templates - Various samples in
samplesfolder - GitHub Actions CI
- Support for plugin dependencies! 🎉 (#156).
- Plugins (generators) are now easier to build using
CodeGeneration.Roslyn.Plugin.SdkMSBuildSdk package (#113). - Plugins are now easier to distribute using
CodeGeneration.Roslyn.PluginMetapackage.SdkMSBuildSdk package, see
Readme section (#205).
Changed
- Readme demo is now simpler, and suggests usage of Templates package, and Sdks.
- .NET Core SDK version bumped to
3.1.100(#178). Attributespackage now targetsnet20;net40in addition tonetstandard1.0(#178).- Tool now has
RollForward=Majorpolicy to allow it to run on newer runtimes than 2.x,
e.g. .NET Core SDK v3.x only should suffice for most usage scenarios (#178). - MSBuild ItemGroup used for registration of plugin paths changed to
CodeGenerationRoslynPlugin
(wasGeneratorAssemblySearchPaths). A warning for using old one is introduced (CGR1002). (#156)- ItemGroup now should contain full path to generator dll (previously it was a containing folder path)
- Old behavior has a compat-plug for now and the paths are searched for any dll, and those found are added to new ItemGroup.
- When using P2P generator (same solution), a consuming project needs to add an attribute
OutputItemType="CodeGenerationRoslynPlugin"to theProjectReferenceof the generator project. See v0.7 migration guide.
dotnet-codegenpackage is nowCodeGeneration.Roslyn.Tooland is built very differently;
also it includes build assets fromBuildTimepackage (#198).
Removed
CodeGeneration.Roslyn.BuildTimepackage is now merged intoCodeGeneration.Roslyn.Tool
(which is now the only package required to be referenced by generator consumers, aside from generators themselves) (#198).