Products, the Universe and Everything

The Riverblade Developer's Blog

Beth demonstrating Visual Lint at the ACCU Conference 2008  Anna taking part in a discussion panel at the European Software Conference 2007 

Welcome to our developer's blog. We hope that this forum provides an insight into us, our products and how we develop them. Please feel free to write to us if you have anything to add to any of the posts here.

Current Entries | Archives |

Visual Lint has been released
Friday, June 29, 2012

The following changes are included in this build:

  • PC-lint -D directives corresponding to preprocessor definitions whose value contains spaces are now quoted before being written to project.lnt indirect files.
  • Analysis results produced by PC-lint which contain a line with an erroneous '{' character immediately preceding the source file path are now parsed correctly.
  • If an issue within the analysis results produced by PC-lint cannot be parsed, the resulting internal error will now be allocated an issue ID of 1299 rather than 0.
  • If a user-defined /rule option is specified with the FxCop analysis tool, the default /rule switch (which normally references the rules directory within the FxCop installation) will now be omitted.
  • Added a "Reports" page to the Analysis Configuration Dialog to allow the location of analysis reports to be configured on a per-solution basis.
  • Fixed a bug in the Analysis Results Display which caused the "Filter" drop list to appear with a blank selection.
  • Fixed a bug in the Analysis Statistics Display which could cause flicker when the display was shown.
  • Fixed a bug in the Analysis Status Display which caused the FxCop analysis status of a file to be incorrectly reported when marked for inclusion in background analysis after previously having been excluded.
  • The Visual C++ 2010 project (.vcxproj) file parser can now parse constructs of the form $([System.IO.Path]::GetPathRoot($(MSBuildProjectDirectory))).

Posted by Anna at 10:07 | Get Link


Visual Studio 2012 RC
Monday, June 11, 2012

Well, the Visual Studio 11 saga (or would it be better described as a slow motion trainwreck?) rumbles ominously on. We had very high hopes for this release (mostly relating to C++ 11 support and far better performance than the abominably sluggish VS2010), but the way it is going is really putting us off - sufficiently so that we are now seriously considering a move to an alternative complier within the VS2008 IDE as an alternative to VS2012.

First it was the forced change in the Visual C++ runtime which rendered it incompatible with Windows XP hosts (XP being still far more common than you would expect with customers), then the UI styling changes in the Beta (see my earlier blog post UI changes in Visual Studio 11 - what do you think?) and most recently the hoo-hah over Visual Studio Express being kneecapped to no longer be capable of developing non-Metro projects (which could obviously have significant impacts on the open source ecosystem that many of us rely on).

Far, far less importantly, the expectation that Visual Studio 11 would be branded "Visual Studio 2012" has been confirmed - which means it will be out this year (my bet is on November).

Naming aside, the most recent developments are that MS have relented slightly on the "light" (i.e. waves of greyness) theme included in the Beta, conceded that runtime support for Windows XP SP3 is desirable but won't be available at RTM (but may be as an SP or patch), and have relented over the change to Visual Studio Express - promising something called "Visual Studio Express 2012 for Windows Desktop". The hated ALL CAPS toolwindow titles have been removed, only to reappear on the main menu (wtf?).

If you have time to burn you can follow the whole sorry saga through the following posts (and the associated comments, of which there are several thousand) on the Visual Studio team blog:

I despair sometimes, I really do. This whole saga seems to be a textbook example of how to take a promising product release, and then shoot yourself in the foot not once but as many times as you possibly can.

Against this unsettling background we of course have to decide how best to support VS2012 in both Visual Lint and ResOrg. Although the basics are already in place (as you can see in the screenshot below of Visual Lint running within the Visual Studio 2012 RC) there is obviously much still to do if our extensions are going to "fit in" within the new version of the IDE:

Visual Lint running within Visual Studio 2012 RC

However, given the changeable nature of the VS2012 RTM environment, we are holding off adding support for specific Visual Studio themes for now (though if Microsoft relent and include a VS2010 style theme, Visual Lint and ResOrg will obviously look right at home), so at present we can't say if or when the styling of our products will match that of the built in themes (icons, grey/black backgrounds and all).

Part of the problem is not just the likelyhood of the IDE styling changing again in the RTM in response to negative feedback, but also the very practical point that the Visual Studio EnvDTE interfaces we use in our products do not seem to offer any support for theme switching.

For example, once an add-in has installed its commands, there is no documented way to change the icons on them other than by destroying and recreating the commands - (which requires admin privileges and will muck up your toolbar layout). Nor is there a theme changed event (at least, not one I can find).

It's a mess, quite frankly. We are however keeping a close eye on developments (and in particular on Carlos Quintero's blog, as the techniques for handling theme switching will almost certainly be documented there first) so things may well change quite quickly between now and the RTM.

However, for the time being the screenshot above is representative of what you can expect from both ResOrg and Visual Lint within the Visual Studio 2012 environment.

So what do you think about Visual Studio 2012 so far? Feel free to tell us by email or via Twitter (@annajayne).

Posted by Anna at 11::22 | Get Link


Visual Lint has been released

The following changes are included in this build:

  • Added the /resultsfolder switch to VisualLintConsole to allow the default analysis results folder to be overridden on a run by run basis.
  • Added the /exportoptions and /importoptions switches to VisualLintConsole to assist in configuring installations running under non-interactive user accounts such as LocalSystem.
  • Added the /excludefile, /excludeproject, /includeproject, /includefile and /includeproject switches to VisualLintConsole to allow the projects and files included in the analysis to be overridden from the command line.
  • Added the /staleafterbuild switch to VisualLintConsole to allow the "Mark files as stale after build" option to be set from the command line.
  • Improved the detection of installed versions of Borland/CodeGear C++ Builder in VisualLintConsole.
  • Added CodeGear XE2 to the drop list on the "Analysis Tool" options page in VisualLintConsole.
  • Fixed a bug in VisualLintConsole which could cause a dialog to be displayed when the application was running as a non-interactive process.
  • Fixed a bug which could cause IncrediBuild analysis to intermittently fail in VisualLintConsole.
  • Fixed a bug which could prevent VisualLintConsole from shutting down cleanly in some circumstances.
  • Fixed a bug in the parsing of additional include properties in Visual Studio 2010 project (.vcxproj) files.
  • Fixed a bug in the Analysis Results Display which caused analysis issues in header files without extensions to still be shown in the display when the "Show issues in header files" checkbox was cleared.
  • Fixed a minor painting issue with alpha blended icons where the icon is displayed in a selected state.

Posted by Anna at 09:52 | Get Link