Announcing Snoop 2.8.0!
It's been exactly six months since the last release, and this one has a bunch of goodies in it. In particular, there is now a PowerShell scripting tab, compliments of Bailey Ling
. With this tab, the possibilities are limitless. It basically lets you automate/script the application that you are Snooping. Bailey has a couple blog posts (one
) on his tab already, and I am sure more is to come.Please note that if you do not have PowerShell installed, you will not see the PowerShell tab in Snoop.
In my mind, Bailey's PowerShell feature and the other contributions brought in this way are all evidence that moving Snoop to Git was the right decision. Everyone was able to easily fork Snoop, make these modifications, and then send me a pull request.
Without further adieu, here is everything that went into the release.
- As I have already mentioned, Bailey Ling has added a PowerShell scripting tab.
- Fixed a crash for a situation involving attached properties on interfaces.
- Jason Jibben has provided a bootstrapper installer (Setup.exe) that installs the MSVC++ redistributables that are needed by the managed injector pieces. After the bootstrapper has downloaded and installed the redistributables, it automatically launches Snoop.msi.
- Dawn Wright improved how brushes work in Snoop.
- Brushes now display the x:Key attribute of brushes, to better visualize which keyed brush resources are used. The keys appear in the value area of brush items, and also appear when delving.
- The brush swatch rendering has been improved. The swatch is now visible on all backgrounds, so that it is easier to tell the difference between transparent, null, and white brushes.
- Dan Hanan has created a nifty, nifty little feature that tracks property changes and copies them to the clipboard when you are done Snooping (i.e. when you close down the Snoop window). Very useful for when you use Snoop to do some designing at run-time. You can also fire this functionality by hitting Ctrl-Shift-C.
- Dan also added the binding path (inside curly braces) to data bound values in the property grid. At a glance, you can see what property on your view model a particular property is getting bound to.
- Finally, Dan added what is one of my favorite usability improvements in quite a while. You can now hit the Escape key to clear the property grid filter.
- Maciek Rakowski fixed some issues with the multiple dispatcher mode.
- Maciek also fixed a crash caused by Snooping a RowDefinition.
- Finally, Maciek spearheaded the effort to put in a dialog which catches unhandled exceptions in the Snooped app and possibly within Snoop itself. There is also a neat little feature that lets you automatically create a CodePlex and/or GitHub issue, if you think the issue is Snoop's issue rather than your own.
- Oliver Dalet found and fixed a memory leak in the injection code.
Finally, we have also updated the source code so that when you pull it down ... you also pull down the pre-built managed injector assemblies. What this means is that you no longer need Visual Studio 2008 in order to compile Snoop. You just load the SnoopOnly.sln solution file in Visual Studio 2010 and compile away. It's also a much faster compile that way ... since you aren't compiling the C++ projects.
Happy Snooping ... and I hope you enjoy the latest release!