madskristensen / Tweakster

A Visual Studio extension
Apache License 2.0
240 stars 23 forks source link

Support changing U2DCheckVerbosity registry setting (up-to-date check verbosity) #60

Closed StevenBonePgh closed 3 years ago

StevenBonePgh commented 3 years ago

There are multiple times when, for reasons unknown, a project rebuilds when the developer's expectation is that it should be considered 'up-to-date'. To diagnose why VS Project System disagrees with our expectation, the recommendation is to switch to diagnostic logging, build it, find the log file, and then pour over the (as promised) extensive verbose output.

In older versions of Visual Studio there was an easy 'tweak' to adjust the verbosity of ONLY the 'up-to-date checker' via the registry, which puts only those desired diagnostics in the build pane output window (via Krill Osenkov):

[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\12.0\General]
"U2DCheckVerbosity"=dword:00000001

With the private registry hive in modern Visual Studio versions (VS2017+) toggling this 'Tweak' becomes very tedious (via this developer community discussion):

Once that output is easily accessible via the build output level, it is generally easy to determine why... Several internet resources exist that discuss this issue, along with the output from this 'tweak' can help you further diagnose the issue, like this one and any of the other links I made from here.

To play by the rules for requests for this extension, the most relevant developer community issue is There is no easy way to tell why a project rebuilds every time (is never considered up-to-date) but that is closed as 'lower priority', is not tagged as a suggestion, nor can it accept votes due to its status.

Would it be possible/easy to add this to Tweaks, or give a hint as to how an extension may be able to accomplish this that could guide a pull request? I had once written an Add-In but other than tuning in for some 'Writing Visual Studio Extensions with Mads' have not explored writing my own.