Releases: ByronMayne/SourceGenerator.Foundations
1.4.0
After struggling with a bunch of hard to debug build time issues I figured out a more stable way of doing the script injection. Instead of using a it's own source generator to inject the assembly resolver we instead use loose scripts added as a compile item. This avoid all the weird workflows with source generators and leads to a more stable experience. Since these scripts don't do any analysis of the users code we don't require to use a source generator.
1.3.1
Removed console example apps from solution for now
1.3.0
Assembly Caching Changes
The embedded assemblies are no longer cached on disk, instead they are pull right from memory. This avoids the following problems that kept happening
- While working on generators in Visual Studio it would hold a lock on the dlls and stop them from updating
- File.IO is slow and it takes time to unpack, that is no longer and iassue
- The cached unpacked assemblies were hard to invalidate
1.2.5
Breaking API Change
Change the signature of IncrementalGenerator.OnInitialize
function. It now takes an instance of SgfInitializationContext
rather then IncrementalGeneratorInitializationContext
. This was done to allow me to wrap every invocation with a try catch. Before any exceptions thrown during generation would not be captured. When this happens your generator would just output a warning that it could not be created. Now the full callstack is reported to the output window
namespace Example
{
public class ExampleSourceGenerator : IncrementalGenerator
{
protected override void OnInitialize(SgfInitializationContext context)
{
}
}
}
There is also now OnException
which you can override to do your own error handling
Full Changelog: 1.1.3...1.2.5
1.2.0
Breaking API Change
Change the signature of IncrementalGenerator.OnInitialize
function. It now takes an instance of SgfInitializationContext
rather then IncrementalGeneratorInitializationContext
. This was done to allow me to wrap every invocation with a try catch. Before any exceptions thrown during generation would not be captured. When this happens your generator would just output a warning that it could not be created. Now the full callstack is reported to the output window
namespace Example
{
public class ExampleSourceGenerator : IncrementalGenerator
{
protected override void OnInitialize(SgfInitializationContext context)
{
}
}
}
There is also now OnException
which you can override to do your own error handling
1.1.3
- [Bug] SourceGenerator output pane no longer steals focus when building
1.1.1
Changed VisualStudioDevelopmentEnvironment to WIndowsDevelopmentEnvir…
1.1.0
- Fixed bug where output would go to wrong Visual Studio instance
- Added SGFPath which contains helpers for working with paths
- Added Polyfills for missing langague features.