This repository has been 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
samples
folder - GitHub Actions CI
- Support for plugin dependencies! 🎉 (#156).
- Plugins (generators) are now easier to build using
CodeGeneration.Roslyn.Plugin.Sdk
MSBuildSdk package (#113). - Plugins are now easier to distribute using
CodeGeneration.Roslyn.PluginMetapackage.Sdk
MSBuildSdk 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). Attributes
package now targetsnet20;net40
in addition tonetstandard1.0
(#178).- Tool now has
RollForward=Major
policy 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 theProjectReference
of the generator project. See v0.7 migration guide.
dotnet-codegen
package is nowCodeGeneration.Roslyn.Tool
and is built very differently;
also it includes build assets fromBuildTime
package (#198).
Removed
CodeGeneration.Roslyn.BuildTime
package is now merged intoCodeGeneration.Roslyn.Tool
(which is now the only package required to be referenced by generator consumers, aside from generators themselves) (#198).