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 5.0 has been released
Tuesday, March 31, 2015

Well, it's done - the first public build of Visual Lint 5.0 has just been uploaded to our website.

As of today, Visual Lint 5.0 replaces Visual Lint 4.5 as the current supported Visual Lint version. Customers with active priority support, floating and site licence subscriptions should already have received updated licence keys for the new version, and upgrades for Visual Lint 1.x, 2.x, 3.x and 4.x per user licences should become available in our online store shortly.

If you have purchased any full per-user Visual Lint licences since the start of January, your licence keys are already v5.x compatible so can start using the new version of the software right now without any need to upgrade. If you have purchased any upgrade licences during the same period, you will shortly receive new Visual Lint 5.x compatible licence keys.

Visual Studio 2015 support aside, probably the most visible change in Visual Lint 5.0 is the new Stack Usage Display, which displays in colour coded form the results of a PC-lint 9.0 stack usage report (the +stack directive). The current implementation of this display is just a starting point and we expect it to evolve significantly - so if you have suggestions or feedback about it, please let us know!

 

Full details of the changes in this version are as follows:

Host Environments:
  • Added preliminary support for Visual Studio 2015 (Visual Studio 14.0). Note that as this version of Visual Studio does not support Visual Studio add-ins, the Visual Studio add-in used in previous versions of Visual Lint has been re-implemented as a VSPackage for use with this version of the IDE. Note that when Visual Studio 2015 starts the Visual Lint toolbar may not show the correct state of each command until the VSPackage has been loaded by invoking one of its commands, as Visual Studio 2015 does not seem to handle autoloading packages correctly.

    Visual Studio 2015 projects can of course also be analysed using the standalone versions of Visual Lint (VisualLintGui and VisualLintConsole).
     
  • Use of the Visual Studio plug-in within the Visual Studio 6.0 and eMbedded Visual C++ 4.0 development environments is now deprecated, and as such the plug-in no longer self-registers with these environments. If required however the plug-in can still be manually registered for use with Visual Studio 6.0 and/or eMbedded Visual C++ 4.0 by registering VisualLint.dll as an add-in from the "Tools | Customize" dialog within the corresponding development environment.

    Visual C++ 6.0 and eMbedded Visual C++ 4.0 projects will continue to be fully supported by the standalone versions of Visual Lint (VisualLintGui and VisualLintConsole).
     
  • The Eclipse plug-in now shows the state (checked, enabled, disabled etc.) of its commands on the main toolbar/menubar.
     
  • Added support for user defined projects (.vlproj files) to make it simpler for users to analyse arbitrary project types. The .vlproj file format is a straightforward .ini file based format designed for hand editing - see Custom project file (.vlproj) format for details.
     
Analysis Tools:
  • Added additional PC-lint 9.0 indirect files to the installer.
     
  • Added env-rb.lnt (a custom PC-lint indirect environment file which defines the preferred format for PC-lint raw analysis results) to the installer.
     
Configuration:
  • Added an option to enable the generation of PC-lint stack usage reports (the +stack directive) to the "Command Line" options page. The option must be enabled to make use of the new Stack Usage Display. [Visual Lint Professional and Enterprise Editions]
     
  • Added an option to enable the generation of PC-lint program information reports (the +program_info directive) to the "Command Line" options page. [Visual Lint Professional and Enterprise Editions]
     
  • If the folder specified for a new PC-lint options.lnt indirect file in the Configuration Wizard does not exist, the Configuration Wizard will now attempt to create it.
     
  • Changing the PC-lint installation folder on the "Analysis Tool" Options page now automatically sets the help file/manual pathname.
     
  • Generated PC-lint project indirect files now include the text "This is an automatically generated file. DO NOT EDIT" in the file banner.
     
Analysis:
  • Optimised the analysis task implementation to speed up the analysis of codebases returning a large volume of analysis results.
     
  • Added support for PC-lint 9.0 stack usage reports (the +stack directive). [Visual Lint Professional and Enterprise Editions]
     
  • Added support for PC-lint 9.0 program information reports (the +program_info directive). [Visual Lint Professional and Enterprise Editions]
     
  • Generated XgConsole (IncrediBuild) command lines now only include the /UseIDEMonitor switch if the analysis is running within Visual Studio. [Visual Lint Enterprise Edition]
     
User Interface:
  • Added a new Stack Usage Display to display the results of a PC-lint stack usage report. This display is PC-lint specific. [Visual Lint Professional and Enterprise Editions]
     
  • Added Line/Column Number, Analysis status, Issue Count and Read Only/Writeable indicators to the VisualLintGui statusbar.
     
  • Added an optional long line marker to VisualLintGui.
     
  • Added a "Find in Files" command and associated dockable "Find Results" toolwindow to VisualLintGui.
     
  • Added a "Reset Window Layout" command to VisualLintGui.
     
  • Added accelerators to the VisualLintGui Help | Documentation (F1) and Help | Analysis Tool Documentation (Shift + F1) commands.
     
  • Added informational text to the Active Analysis Tool Dialog.
     
  • Added a "Troubleshooting | View Project Indirect File" command to the Analysis Status Display context menu. The command is available if PC-lint is the active analysis tool and allows the contents of the PC-lint project indirect file corresponding to the selected project or file to be inspected for diagnostic purposes. Note: these files are automatically generated, so any changes made to them manually are likely to be discarded when the project is reloaded or analysed unless the file is marked read only (in which case Visual Lint will not attempt to overwrite them).
     
  • Added a "Troubleshooting | Save Preprocessed File As..." command to the Analysis Status Display context menu. The command is available if PC-lint is the active analysis tool and generates a preprocessed copy of the selected file using the PC-lint -p option.
     
  • To support the analysis of projects described by .vlproj files, a new "Custom" environment type has been added to the Configuration Wizard and "Analysis Tool" Options pages.
     
  • Folder/filename controls in the Configuration Wizard, Options Dialog etc. now support direct editing and drag-drop.
     
  • The VisualLintGui code editor "Open Referenced File" context menu command can now open PC-lint indirect (.lnt) and header (.h) files referenced within an indirect file such as std.lnt (the latter using the -header() directive), as well as indirect files referenced from within a header file using the -indirect() directive.
     
  • The VisualLintGui code editor "Open Referenced File" context menu command now shows the full pathname of the referenced filename if it can be located. Otherwise, the filename given in the directive will be shown and the command disabled.
     
  • Revised the logic used to determine which instance of a shared file to display the analysis results for when a file is opened. Files with "Completed" analysis status are now given the highest priority, and "Excluded" lowest.
     
  • Revised the default window layout in VisualLintGui.
     
  • The Manual Analysis Dialog now centres itself with respect to the main window of the host environment.
     
  • Updated the appearance of the AboutBox.
     
  • Updated the icon of the VisualLintGui Status Log View.
     
  • Tidied up the layout of the VisualLintGui "Find" dialog.
     
  • The "Help" button in the Configuration Wizard now launch the corresponding page in the helpfile. Also added Help buttons to various other dialogs and removed the "What's This?" help buttons made redundant as a result.
     
  • Added help topics for the VisualLintGui Find/Replace dialogs and Find Results View.
     
Bug Fixes:
  • The Manual Analysis Display now applies the current global display filter to the issue count displayed during analysis. [Visual Lint Enterprise Edition]
     
  • Improved the persistence of the current selection of the "Configure for" controls on the Configuration Wizard "Tools" page "Analysis Tool" Options pages.
     
  • Icons used within Visual Lint displays now reflect the current system defined icon sizes rather than being hardcoded to 16x16, 32x32 etc.
     

It goes without saying that we welcome any feedback you can offer on the new version.

Download Visual Lint 5.0.0.244


Posted by Anna at 13:25 | Get Link

 

Visual Lint 4.5.10.243 has been released
Sunday, March 29, 2015

This is a recommended maintenance update for Visual Lint 4.5. The following changes are included:

  • Refined the "Use VS2012/VS2010 system headers for compatibility with PC-lint 9.00l or earlier" option for compatibility with systems with Visual Studio installations in folders other than the default, or on other drives.
     

Note that with the release of Visual Lint 5.0 imminent, this is likely to be the final Visual Lint 4.5 build.

Download Visual Lint 4.5.10.243


Posted by Anna at 17:18 | Get Link

 

Visual Lint 4.5.9.239 has been released
Friday, March 6, 2015

This is a recommended maintenance update for Visual Lint 4.5. The following changes are included:

  • Added a "Use VS2012/VS2010 system headers for compatibility with PC-lint 9.00l or earlier" option to the "Analysis Tool" options page. When enabled (the default) Visual Lint will attempt to use the system headers for Visual Studio 2012 or 2010 instead while analysing VS2013 projects.

    This is a workaround for the fact that PC-lint 9.00l and earlier do not have support for variadic templates, which are used in the system headers for Visual Studio 2013 onwards and can cause analysis failures as a result.

    Please note that this is potentially a breaking change as it will prevent PC-lint from accessing STL features (e.g. std::make_unique) added in Visual Studio 2013 - please contact us if you have any queries about the effects of this.
     
  • Modified the Visual C++ 2010/2012/2013 project (.vcxproj) file parser for compatibility with project files (typically generated by third party applications) which have <PlatformToolset> elements with incorrect capitalisation (although MSBuild is case sensitive, apparently Visual Studio is more tolerant in this area).
     
  • If PC-lint is the active analysis tool, Visual Lint now takes into account whether a std.lnt indirect file has been specifically defined for a given project type when determining whether the Configuration Wizard should be run.
     
  • The Configuration Wizard "Tools" page now always shows the "Configure for..." drop list, irrespective of the host environment.
     

Download Visual Lint 4.5.9.239


Posted by Anna at 12:14 | Get Link