Skip to content

Releases: ByronMayne/SourceGenerator.Foundations

1.5.0

21 Jan 21:39
Compare
Choose a tag to compare

Hopefully this release has the CI fixed so we can release this library

1.4.2

14 Dec 16:20
Compare
Choose a tag to compare
Added new debug target to echo paths

1.4.1

17 Nov 19:21
Compare
Choose a tag to compare

We don't use the [ModuleInitailizer] attribute anymore as we don't have explicit ordering of the loading of modules. Now I use cecil

1.4.0

17 Nov 15:00
Compare
Choose a tag to compare

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

16 Nov 19:26
Compare
Choose a tag to compare
Removed console example apps from solution for now

1.3.0

15 Nov 00:33
Compare
Choose a tag to compare

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

  1. While working on generators in Visual Studio it would hold a lock on the dlls and stop them from updating
  2. File.IO is slow and it takes time to unpack, that is no longer and iassue
  3. The cached unpacked assemblies were hard to invalidate

1.2.5

13 Nov 01:08
Compare
Choose a tag to compare

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

12 Nov 18:24
Compare
Choose a tag to compare

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

10 Nov 14:35
Compare
Choose a tag to compare
  • [Bug] SourceGenerator output pane no longer steals focus when building

1.1.1

27 Oct 19:39
Compare
Choose a tag to compare
Changed VisualStudioDevelopmentEnvironment to WIndowsDevelopmentEnvir…