Back in September 2012 I wrote an article BugAid – C# Visual Studio Debugging made easier . BugAid’s co-founder Omer Reviv has joined forces with CodeValue to produce OzCode. Base product wise it does everything BugAid did before (read the linked article if you like, and in normal fashion they have added some additions in order to improve it.
Lets get the ugly out of the way
- While in beta the it is free, go ahead and download it to test it out
- After release of v1.0 later this year
- Personal license will be $99 (double of what BugAid originally was, but has more features)
- Corporate license will be $149
- Existing BugAid licenses will upgrade to OzCode v1.0 free of charge
So now lets talk about what has been added, (for a full feature list see here.)
For now I am only going to talk about what is new (images are from the OzCode site),
Attach to Process:
For those projects where F5 just does not work you have to constantly attach Visual Studio to the process in order to debug. If you restart the application, you need to reattach the process. With this new option you can attach it one time and reattach either by context menu or a keyboard shortcut.
Quick actions are designed to give you quick access to common debugging features. Alt+Shift+D will open the the action menu, or you will now notice a magic wand on the left side of the text editor for the line selected.
Probably one of my favorite new features. An exception trail. We have probably all been there, get an exception and when you look at it you get a message to see the inner exception, which in turn tells you to see the inner exception. Five inner exceptions later you finally have the real exception. Exception trail in OzCode allows you to utilize bread crumb navigation to move around the exception.
Show all Instances:
Ever wonder where an object is being used in memory, and you want an easier way to access that information. Well now there is an easy way. Show all instances of type will allow you see this. Great troubleshooting tool if you know an object should no longer be in memory but is still accessible. This feature will allow you verify if it indeed exist and help you find why.
Ever been in this scenario, Application is running in debug, you would like to see more information about something, stop the application, write some tracing code then restart the application and perform the task to get back to the spot you were in. Seems like a lot of work to me. Trace, will allow you to add tracing statements on the fly and log them to the new integrated log-viewer. This removes the need to having to stop the application and then remembering later on to disable the tracing info.
I have been using BugAid since it’s early beta, probably one of the best plugins I have purchased, Debugging is much simpler with it.