dotnet / roslyn-analyzers

MIT License
1.58k stars 463 forks source link

AsyncPackage on nuget #305

Closed niemyjski closed 5 years ago

niemyjski commented 8 years ago

It appears that lots of your analyzers are not on nuget only the main power pack one.. Can you put AsyncPackage on there.

genlu commented 8 years ago

@michaelcfanning @tmeschter I think we might want to take a hold on this until the refactoring work is done.

niemyjski commented 8 years ago

@genlu why hold on this? Any added value is added value. Also it lets people learn about it and benefit from it right now!

genlu commented 8 years ago

@niemyjski Just wanna provide you a little more context here: As you may noticed, the code here are not very well organized, e.g. the lack of a consistent naming convention, the package factoring might be confusing as well, which is understandable since those projects here were pulled together from different places not long ago. Right now we are in the middle of the effort to clean-up and refactor all the analyzers in this repo (plus many more to come soon), in hope to make these analyzers more discoverable and easier to use. I'd love to act on your suggestion now and publish all the analyzers to nuget.org so people can start using them. However, my concern is whatever published on nuget.org will remain published, and when we change the package factoring, it will further confuse people -- we will end up with same analyzer included in two different NuGet packages, and the old one will never be updated again. This is definitely conflicting with what we are expecting to achieve with cleanup/refactor.

This is just my opinion of course, if anyone has a good solution to address my concern I'm definitely open to it. Otherwise, you can always build the package yourself if you'd like to use them in your projects now, and I can reassure you that the work I mentioned is ongoing and you will see it happen soon.

niemyjski commented 8 years ago

It's an analyzer so you could always update it later and remove everything but the reader or add an analyzer that adds a compiler error saying remove me and use this package

Sent from Outlook

On Tue, Oct 6, 2015 at 9:11 PM -0700, "Gen Lu" notifications@github.com wrote:

@niemyjski Just wanna provide you a little more context here: As you may noticed, the code here are not very well organized, e.g. the lack of a consistent naming convention, the package factoring might be confusing as well, which is understandable since those projects here were pulled together from different places not long ago. Right now we are in the middle of the effort to clean-up and refactor all the analyzers in this repo (plus many more to come soon), in hope to make these analyzers more discoverable and easier to use. I'd love to act on your suggestion now and publish all the analyzers to nuget.org so people can start using them. However, my concern is whatever published on nuget.org will remain published, and when we change the package factoring, it will further confuse people -- we will end up with same analyzer included in two different NuGet packages, and the old one will never be updated again. Th is is de finitely conflicting with what we are expecting to achieve with cleanup/refactor.

This is just my opinion of course, if anyone has a good solution to address my concern I'm definitely open to it. Otherwise, you can always build the package yourself if you'd like to use them in your projects now, and I can reassure you that the work I mentioned is ongoing and you will see it happen soon.

— Reply to this email directly or view it on GitHub.

tmeschter commented 8 years ago

We're still deciding on the future of the async analyzers. We may decide to release them as their own package, roll them into one of the existing packages, or perhaps contribute them to another open-source project. We're not going to release a package we don't intend to support.

Beyond that, once a decision is made there are internal processes we have to go through before we can publish a package.

We intend to do something with the async analyzers (or else we would have left them as a code sample in the dotnet/roslyn repo); we just haven't decided what that is yet.

genlu commented 8 years ago

It seems all the async analyzers will end up in Microsoft.ApiDesignGuidelines.Analyzers, I guess we can close this issue and publish Microsoft.ApiDesignGuidelines.Analyzers whenever it is ready.

sharwell commented 8 years ago

Related to #211.

bitbonk commented 8 years ago

So why is Microsoft.ApiDesignGuidelines and some others still not on Nuget? The lesser scotts demoed them at Build 2016 and now everyone wants to use them :)

srivatsn commented 8 years ago

There are analyzers in those package that use a new API (IOperation) that's only in roslyn 1.2 which just got uploaded to NuGet. We'll upgrade to that version and release the analyzer packages on NuGet. It'll be a preview because IOperation support is still experimental.

mavasani commented 5 years ago

Stale issue, we do not have async usage analyzers in the repo anymore. Please use https://www.nuget.org/packages/Microsoft.VisualStudio.Threading.Analyzers/ for async/threading analyzers