GenerateAutomaticInterface attribute
to use this package we need to create the GenerateAutomaticInterface attribute manually. Could this attribute be generated, like interfaces?
This package https://github.com/daver32/InterfaceGenerator (inspired by yours) generates the attribute.
Interesting Idea, I will look into it.
I believe that attributes should be provided in separate nuget package to avoid problems with InternalsVisibleTo. Please take a look on that: https://andrewlock.net/creating-a-source-generator-part-7-solving-the-source-generator-marker-attribute-problem-part1/
The RegisterPostInitializationOutput option is neat, but as @Hau-Hau wrote can break things. Requiring another dependency just for that gets you into the "which one do I have to reference for the thing to work"...
The "conditionally generate, depending on user settings, and have another package for breaking cases" is somewhat complex for a pretty trivial marker interface.
Just my 2ct.
IMO just adding in a description of the additional package that contains only the attribute and the "main" package should be referenced would be enough. Also, additional features could be considered that need attribute to be extended. Adding more properties to the attribute would be easier than asking users to do it themselves. (like InterfaceName or AccessModifier) There could be another attribute to mark methods/properties that we don't want to add to the interface.
Fixed in 3.0.0