-
Notifications
You must be signed in to change notification settings - Fork 60
Documentation (or, is this project dead?) #75
Comments
The project is not dead ... but at the same time the Roslyn team has decided they are going to incorporate this into some sort of Roslyn tooling. @jinujoseph / @sharwell? |
The Roslyn team forked this code to dotnet/roslyn-analyzers with the intent of working towards a production-ready set of performance analyzers. Allocations are only one source of observed performance problem. Ideally, we want users to be able to document "performance sensitive" sections of code with |
Is there a preview of these performance analyzers yet? |
@stebet The analyzers are getting published here: https://dotnet.myget.org/feed/roslyn-analyzers/package/nuget/Microsoft.CodeAnalysis.PerformanceSensitiveAnalyzers The issue tracker for that package is here: https://github.com/dotnet/roslyn-analyzers/issues |
I agree with @JasonBock. I loved this package, but even for simple things can be hard to tell what's wrong or what we can do about it. For example:
We received this warning:
and... what? I can't imagine a simpler code, and for some reason we need change or fix this code. A really really simple suggestion about what's happening or what we can do will be really amazing. |
So....did this ever get "moved"/"merged" to dotnet/roslyn-analyzers? I've looked at the site and I can't find any information on allocation analyzers, but I might just be missing it. If it has been moved there, I can close this comment. |
I've been playing around with this package, and while I think it has some merit and potential, it feels woefully under-documented, and its advice is confusing.
For example, I ran across an interpolated string in my code where the analyzer raised HAA0601. The help link does nothing, nor is there any code fix available, so I really don't know how to fix this. I'm guessing it's because the value types I have in the string will get boxed? So I created a small benchmark project:
The results were....interesting:
So the second way is faster, but it actually allocates a bit more memory? Is this correct? If so, how do I really address this analyzer's diagnostic? Or is my test faulty?
It's really down to prescriptive advice. This package needs far better documentation for it to be useful on every-day projects. I'd love to use it and continue to provide feedback, but it's unclear if this is even being maintained anymore.
The text was updated successfully, but these errors were encountered: