When the AddinDiscoverer is inspecting the methods in an addin for those decorated with the CakeMethodAliasAttribute attribute, we get an exception if any method has a custom attribute where its type is defined in a NuGet package. This exception causes the analysis for this particular addin to be aborted and any analysis that is normally performed subsequent to the method attribute inspection is therefore never performed. For example, we don't analyze the version of Cake that this addin is compatible with. The fact that we don't determine the compatible version of Cake means that we may incorrectly conclude that a given addin is not compatible with a specific version of Cake.
To illustrate this issue, let's use Cake.AppVeyor as an example. Some methods in version 6.0.0 are decorated with attributes from the Refit NuGet package (one such example here). The presence of this attribute causes the analysis to be aborted and, consequently, we don't determine that this version of Cake.AppVeyor is compatible with Cake 2.0.0. This issue is the reason why "Cake.Appveyor" is not deemed to be compatible with Cake 2.0.0 when we generate this issue.
@gep13 When I publish a fix for this issue, the checkbox next to Cake.AppVeyor in the issue I referenced above will automatically get checked. There may be other addins in the same situation as well but Cake.AppVeyor is the only one I have noticed so far.
AddinDisco version 5.8.0 is bein published with a fix for this bug. I also modified Analysis_result.json to force Cake.ApVeyor version 6.0.0 to be re-analyzed
When the AddinDiscoverer is inspecting the methods in an addin for those decorated with the
CakeMethodAliasAttribute
attribute, we get an exception if any method has a custom attribute where its type is defined in a NuGet package. This exception causes the analysis for this particular addin to be aborted and any analysis that is normally performed subsequent to the method attribute inspection is therefore never performed. For example, we don't analyze the version of Cake that this addin is compatible with. The fact that we don't determine the compatible version of Cake means that we may incorrectly conclude that a given addin is not compatible with a specific version of Cake.To illustrate this issue, let's use
Cake.AppVeyor
as an example. Some methods in version 6.0.0 are decorated with attributes from the Refit NuGet package (one such example here). The presence of this attribute causes the analysis to be aborted and, consequently, we don't determine that this version of Cake.AppVeyor is compatible with Cake 2.0.0. This issue is the reason why "Cake.Appveyor" is not deemed to be compatible with Cake 2.0.0 when we generate this issue.@gep13 When I publish a fix for this issue, the checkbox next to Cake.AppVeyor in the issue I referenced above will automatically get checked. There may be other addins in the same situation as well but Cake.AppVeyor is the only one I have noticed so far.