Ruby Performance Validator Change History
Version 1.77
Version 1.77 includes the following functionality:
- Bug fix for software updater throwing MFC exception on some systems.
Version 1.76
Version 1.76 includes the following functionality:
- XML output modified to be more readable with a text editor.
- Updated self-installer to handle additional security checks for some computer systems.
Version 1.75
Version 1.75 includes the following functionality:
- Addition of software update code.
Version 1.74
Version 1.74 includes the following functionality:
- Robustness improvement for handling shared memory profiler data.
Version 1.73
Version 1.73 includes the following functionality:
- New tutorial tab and additional option on Help menu.
Version 1.72
Version 1.72 includes the following functionality:
- Tutorials moved to the website. Tutorial link always available from help menu and at startup.
Version 1.71
Version 1.71 includes the following functionality:
- Addition of line timing information to Call Tree, Call Graph and Analysis views.
Version 1.70
Version 1.70 includes the following functionality:
Version 1.69
Version 1.69 includes the following functionality:
- Bug fix for buffer overrun on session export dialog.
Version 1.68
Version 1.68 includes the following functionality:
- Bug fix for crash on Callstacks view with Thread Names dialog.
Version 1.67
Version 1.67 includes the following functionality:
- New menu implementation, addition of bitmaps.
Version 1.66
Version 1.66 includes the following functionality:
- Bug fix for COMCTL32.DLL bitmap handling.
Version 1.65
Version 1.65 includes the following functionality:
- Bug fix for saving sessions.
Version 1.64
Version 1.64 includes the following functionality:
- Uninitialised data bug fix.
Version 1.63
Version 1.63 includes the following functionality:
- When run from the command line using command line options the return code is now the return code of the most recently run app.
- Bug fix for race condition when starting second or subsequent session, could cause possible crash.
- Fix minor bug fixes.
Version 1.62
Version 1.62 includes the following functionality:
- New communications architecture.
Version 1.61
Version 1.61 includes the following functionality:
- Rationalising code base. Maintenance release.
Version 1.60
Version 1.60 includes the following functionality:
- Rationalising code base. Maintenance release.
Version 1.59
Version 1.59 includes the following functionality:
- Bug fix for memory mapped memory usage - now more efficient.
Version 1.58
Version 1.58 includes the following functionality:
Version 1.57
Version 1.57 includes the following functionality:
- Support for editing with VS 2010.
- Bug fix for editing with VS 2008
Version 1.56
Version 1.56 includes the following functionality:
- Completely reworked data collection internals to simplify memory management, improve robustness, use less memory,
run faster, etc.
- Removed Inter Process Communications settings from settings dialog, now redundant.
Version 1.55
Version 1.55 includes the following functionality:
- New implementation of line timing shared memory handling - uses less memory, faster.
- Bug fix for line timing display which would fail to display line timing information in-situ with source code for certain lines.
- Bug fix for environment variable handling.
- Bug fix for license installer software.
Version 1.54
Version 1.54 includes the following functionality:
- Minor UI changes to add user hints.
- All executables are now code signed to prevent warnings on Vista/Windows 7.
Version 1.53
Version 1.53 includes the following functionality:
- Bug fix for line timing display.
Version 1.52
Version 1.52 includes the following functionality:
Version 1.51
Version 1.51 includes the following functionality:
- Various minor bug fixes.
- Memory access synchronization bug fixes.
Version 1.50
Version 1.50 includes the following functionality:
Version 1.49
Version 1.49 includes the following functionality:
- Bug fix for session export to HMTL and XML.
Version 1.48
Version 1.48 includes the following functionality:
- Addition of new command line argument. -launchAppHidden. Causes the program started with -program to run hidden.
- Minor tip of day bug fix.
- Minor gui fixes.
Version 1.47
Version 1.47 includes the following functionality:
Version 1.46
Version 1.46 includes the following functionality:
- Bug fix for launching on Windows Vista and Windows 2008.
Version 1.45
Version 1.45 includes the following functionality:
- Bug fix for obscure "The Handle is invalid." error message that can happen during launch.
- Bug fix for launching on Windows Vista and Windows 2008.
Version 1.44
Version 1.44 includes the following functionality:
- Rationalisation of hooking code.
- Removal of svlPVRubyRunner.exe
Version 1.43
Version 1.43 includes the following functionality:
Version 1.42
Version 1.42 includes the following functionality:
- Addition of 32 bit runtime test.
Version 1.41
Version 1.41 includes the following functionality:
- Bug fix for Session Manager dialog.
Version 1.40
Version 1.40 includes the following functionality:
- Addition of bar graph performance statistics on main displays.
- Sorting behaviour improvement for relations tab.
- Bug fix for missing fileName, lineNumber on main displays when line timing enabled (line timing fileName and lineNumber are OK).
Version 1.39
Version 1.39 includes the following functionality:
- Bug fix for background colour on some resizing graphical dialog boxes.
- Bug fix for source code display possible crash when in a splitter window.
Version 1.38
Version 1.38 includes the following functionality:
- Bug fix for crash with settings dialog File Locations.
- Replacement of all 3rd party tab controls with a custom tab control.
- Bug fix for source code control and misc controls flickering when resizing in a splitter window.
Version 1.37
Version 1.37 includes the following functionality:
- Bug fix for race condition that caused <please wait...> and <UNKNOWN> symbol names to fail to resolve to valid symbol names. You will still get
these symbol names, as they are displayed whilst waiting for the symbols to arrive from the stub, however they will now resolve.
- Bug fix for settings dialog to allow correction selection of specified tab.
- Update to licensing dialog to prevent confusion with example application.
- Minor bug fixes.
Version 1.36
Version 1.36 includes the following functionality:
- Replacement of all 3rd party grid/tree controls with the same virtual grid/tree control used for the main displays.
This change has been made for consistency of user interface and also to facilitate future ports of the software to alternate
operating systems and widget toolkits.
- Bug fix for flickering main display when resizing.
- Column sort highlighting - arrow on column header and colour column colour hinting for the entire column.
- New layout for setting dialog, to make settings dialogs as similar as possible across the entire Software Verification product range.
- New default colours - click Reset on settings dialog to get them (other settings will change as well!)
Version 1.35
Version 1.35 includes the following functionality:
- Bug fix for some code that could cause Data Execution Prevention violations if you had this Operating System option enabled.
Version 1.34
Version 1.34 includes the following functionality:
- Performance improvement for reading files.
Version 1.33
Version 1.33 includes the following functionality:
- Bug fix for Callstack view thread updating.
Version 1.32
Version 1.32 includes the following functionality:
- Bug fix for source code colouring.
- Bug fix for uninitialised data.
Version 1.31
Version 1.31 includes the following functionality:
- Bug fix for crash when double click on Reset button on settings dialog.
- Misc maintenance improvements.
- Bug fix for callstack view.
Version 1.30
Version 1.30 includes the following functionality:
- Bug fix for race condition (causes crash) for inter process comms one multi core/cpu machines. Bug is not visible on HyperThreaded machines or
single cores CPUs. Bug has been seen on dual core CPUs, but is more obvious on dual core quad CPU machines.
Version 1.29
Version 1.29 includes the following functionality:
Version 1.28
Version 1.28 includes the following functionality:
- Shared memory data access lock bug fix for Raw Statistics and Analysis tabs.
Version 1.27
Version 1.27 includes the following functionality:
- Source code colouring - more languages supported.
- File dialog file extension handling improvements.
- Launch dialog/wizard - addition of Delete button.
Version 1.26
Version 1.26 includes the following new functionality:
- Addition of line timing performance warning dialog.
- Changed Ruby Runtime dialog to be resizable.
Version 1.25
Version 1.25 includes the following new functionality:
- IMproved HTML Help handling.
Version 1.24
Version 1.24 includes the following new functionality:
- "Help PDF" added to Help menu if PDF help file is present in installation directory.
- Bug fix for installer.
- Behaviour change for Global Hook DLL handler.
Version 1.23
Version 1.23 includes the following new functionality:
- Updated scrollbar handling for editor component.
Version 1.22
Version 1.22 includes the following new functionality:
- Text change for HTML export to bring into line with statistics tab.
Version 1.21
Version 1.21 includes the following new functionality:
- Bug fix for relations tab.
Version 1.20
Version 1.20 includes the following new functionality:
- Bug fix for missing arguments bug.
- Bug fix for timing data error for functions that have not exited when program ends (for example if you exit prior to the end of the application).
- Bug fix for UI display bug on relations tab.
- Bug fix for session manager dialog.
Version 1.19
Version 1.19 includes the following new functionality:
- Bug fix for various memory leaks.
Version 1.18
Version 1.18 includes the following new functionality:
- Addition of extra diagnostic data for helping diagnose problems when data goes bad.
- Bug fix for divide by zero error.
Version 1.17
Version 1.17 includes the following new functionality:
- Bug fix for potential buffer overflow when command line of tested application is very long (MAX_PATH + 256 TCHARs).
- Command line displayed on diagnostic tab.
- Detailed command line displayed on diagnostic tab when in regression test mode.
- Detection of StarDock Window Blinds so that it can be safely ignored.
- Addition of Return Codes to command line documentation.
- Addition of -runtime command line option.
Version 0.16
Version 0.16 includes the following new functionality:
Version 1.15
Version 1.15 includes the following new functionality:
- Bug fix for tutorial handling and tip of day.
- Improved line timing display.
Version 1.14
Version 1.14 includes the following new functionality:
- Major performance improvement. We have modified RPV to use Ruby Event Hooks if they are
available (Ruby 1.8.4 onwards). This has lead to a huge reduction in profiler overhead. Depending upon your application you will see a speed improvement of between 1.5x and 12x.
The diagnostic tab will contain output for each application indicating if event hooks have been used or not. For versions of Ruby less than 1.8.4 performance improvement is anywhere up to 50%.
- Bug fix for diagnostic tab when loading or switching sessions.
Version 1.13
Version 1.13 includes the following new functionality:
- Bug fix for processor frequency adjustment when reading session on different computer to the computer the
session was recorded.
- Addition of Recursive Count to Call Tree, Call Graph and Analysis.
- Addition of Recursive symbols to Analysis.
- Addition of two new queries to Analysis: Recursing function and Recursing function depth.
Version 1.12
Version 1.12 includes the following new functionality:
- UI modifications for launch dialog.
- Bug fix for Global Hook UI DLLs.
Version 1.11
Version 1.11 includes the following new functionality:
- Bug fix for environment variables.
- Improved stdout and stderr user interface on diagnostic tab.
- Bug fix for relative file names.
Version 1.10
Version 1.10 includes the following new functionality:
Version 1.09
Version 1.09 includes the following new functionality:
- Minor user interface changes.
Version 1.08
Version 1.08 includes the following new functionality:
- Bug fix for export timestamp.
- Bug fix for display filters and call graph user interface.
- Bug fix for call graph export.
- Bug fix for UI Global Hook intercept dialog.
Version 1.07
Version 1.07 includes the following new functionality:
- Resizable session compare dialog.
- Bug fix for command line handling for call tree/call graph.
Version 1.06
Version 1.06 includes the following new functionality:
- Bug fix for crash in Ruby Parser.
- Bug fix for incorrect filename when methods of the same class are defined in multiple files.
- Bug fix for Find dialog on Analysis, Call Tree and Call Graph views.
Version 1.05
Version 1.05 includes the following new functionality:
- Bug fix for Ruby Class Attribution "Fix in User Interface" address error. This main effect of this bug was seen on the Call Graph user interface.
- Sampling data collection bug fix.
Version 1.04
Version 1.04 includes the following new functionality:
- Addition of sampling performance mode.
Version 1.03
Version 1.03 includes the following new functionality:
- Data display bug fix for call tree and call graph.
- Bug fix for svlRubyPV.
Version 1.02
Version 1.02 includes the following new functionality:
- Addition of Call Graph Export.
- Change to function of command line argument -exportAsHTML.
- Addition command line arguments: -exportAsCallTreeHTML, -exportAsCallGraphHTML, -exportDescription, -exportThreshold.
Version 1.01
Version 1.01 includes the following new functionality:
- Addition of Javascript to exported HTML to enable the the exported graph to be interactive.
- Improved Ruby Parser.
Version 1.00
Version 1.00 includes the following new functionality:
- Beta test complete. Full product release.
Version 0.46
Version 0.46 includes the following new functionality:
- Bug fix for rare stack overflow bug whilst iterating performance data.
Version 0.45
Version 0.45 includes the following new functionality:
- Registry data saving bug fix.
Version 0.44
Version 0.44 includes the following new functionality:
- Bug fix for Ruby Interpreter's incorrect class name assignment for non-overridden class methods. This behaviour is configurable (Ruby/FixInUI/FixInStub) - see settings dialog for details.
- Addition of ability to start profiler from C/C++. Useful for embedded Ruby.
Version 0.43
Version 0.43 includes the following new functionality:
- Addition of threshold facility to Call Graph tab.
- Addition of startProfiler() method to Ruby class svlRubyPV. This enables
you to start the profiler from within a Ruby method. This is useful for situations in which you cannot launch your Ruby application directly from the
Ruby Performance Validator user interface.
Version 0.42
Version 0.42 includes the following new functionality:
- Bug fix for filters - context menu filtering now supports multiple selection.
- Editable threshold value on Call Tree tab - you can now enter fractions if you desire.
Version 0.41
Version 0.41 includes the following new functionality:
- Bug fix for Call Graph view.
- Editor component maintenance update.
Version 0.40
Version 0.40 includes the following new functionality:
- Addition of -- comment facility for -commandFile arguments.
Version 0.39
Version 0.39 includes the following new functionality:
- Bug fix for internal class information representation - bug fix for rare fatal crash.
Version 0.38
Version 0.38 includes the following new functionality:
- Relations tab 'promote' behaviour change.
- Bug fix for setting instrumentation filters from context menu - settings saved to registry immediately.
Version 0.37
Version 0.37 includes the following new functionality:
- Bug fixes for Line Timing display.
- Automatic Garbage Collection highlighting on Callstack View.
- Improved Ruby Parser.
- Automatic file association.
- Bug fix for column order editing.
- Tutorial now available on website - see Help menu.
Version 0.36
Version 0.36 includes the following new functionality:
- Bug fix for load session on command line.
- Bug fix for Reset launch history on launch application dialog.
- Bug fix for thread detection on Windows 2000/Windows XP.
Version 0.35
Version 0.35 includes the following new functionality:
- Editing options expanded to include Visual Studio.NET 2002, 2003, 2005, SCiTE editor.
Version 0.34
Version 0.34 includes the following new functionality:
- Bug fix for Unicode environment variables.
Version 0.33
Version 0.33 includes the following new functionality:
- Bug fix for environment variable handling.
- Improvement to Ruby Parser.
- Ruby Runtime is now expressed by identifying the executable, not the DLL. This improvement means
Ruby Bug Validator can now work with embedded Ruby as well as the standard ruby.exe and ruby.exe runtimes.
Version 0.32
Version 0.32 includes the following new functionality:
- Bug fix for source code fragment display.
Version 0.31
Version 0.31 includes the following new functionality:
- Addition of controls on Raw Statistics, Statistics, Call Tree, Call Graph and
Line Timing to switch from horizontal splitter to vertical splitter and vice versa.
- Improved selection of fixed width fonts for use in source code viewing pane.
- Bug fix for settings.
Version 0.30
Version 0.30 includes the following new functionality:
- Command line improvements.
- Improved help describing command line options.
Version 0.29
Version 0.29 includes the following new functionality:
- Additional controls for collecting garbage collection performance statistics.
Version 0.28
Version 0.28 includes the following new functionality:
- Bug fix for session manager compare.
- Help updated.
Version 0.27
Version 0.27 includes the following new functionality:
- Bug fix for function return line numbers.
- Bug fix for sorting by class.method or class or method on Relations tab.
- Implementation change: When no source code available, the editing pane displays "No Source".
Version 0.26
Version 0.26 includes the following new functionality:
- Option to prevent scrolling of first column on Raw Statistics, Statistics, Relations and File Line views.
- Display colouring improvement for Raw Statistics, Statistics, Relations.
Version 0.25
Version 0.25 includes the following new functionality:
- Bug fix for class method/instance method naming.
Version 0.24
Version 0.24 includes the following new functionality:
- Addition of Average Function time column to Raw Statistics, Statistics and Relations views.
- Bug fix for various incorrectly displayed statistics.
- Addition of recursing symbols to Call Tree display.
- Addition of recursing symbols to terminating recursions in Call Graph display.
- Correction of statistics calculation and display on Call Tree and Call Graph displays.
Version 0.23
Version 0.23 includes the following new functionality:
- Help now supplied as HTML Help rather than WinHelp.
Version 0.22
Version 0.22 includes the following new functionality:
- Added the option to mark Built-in functions as "built-in".
Version 0.21
Version 0.21 includes the following new functionality:
- StatusBar update.
- Addition of display filters to Raw Statistics, Statistics, Relations.
- Addition of context menu items to Raw Statistics, Statistics, Relations.
- Support for controlling data collection from inside a Ruby script. See Frequently Asked Questions part of help file.
- Automatic Ruby DLL Discovery.
Version 0.20
Version 0.20 includes the following new functionality:
- Bug fix for tracing function when accessing a bad module value.
Version 0.19
Version 0.19 includes the following new functionality:
- StatusBar update.
- Bug fix for edit source code in Call Graph.
- Ctrl-Left click performs Go to graph node on Call Graph.
- Bug fix for Goto graph node when destination node is part of collapsed parent node.
- Addition of context menu items to Call Tree, Call Graph and Analysis for navigating from Call Graph to Call Tree, Analysis to Call Graph, Analysis to Call Tree, Call Tree to Call Graph, Node to Next Node, Node to Previous Node.
- Change to icon display in Call Graph - icons now displayed in the tree, not the left margin.
Version 0.18
Version 0.18 includes the following new functionality:
- Improvements to call graph.
Version 0.17
Version 0.17 includes the following new functionality:
- Addition of Remove Entry functionality to allow pruning of the call tree and the call graph displays.
- Addition of Find command on Tools menu and toolbar. The find functionality allows searching on
the main user interfaces Raw Statistics, Statistics, Relations, Call Tree, Call Graph, Analysis and Line Times.
Version 0.16
Version 0.16 includes the following new functionality:
- Update help to match changes in V0.15
- Minor command line and textual changes to match changes in V0.15.
Version 0.15
Version 0.15 includes the following new functionality:
- New feature: Addition of Hotspot Call Graph to complement the Hotspot Call Tree.
- Bug fix for symbol collection, symbol->filename mapping, multiple data entries and file/line timing.
- Note: Help file is out of date compared to this release of the software.
Version 0.14
Version 0.14 includes the following new functionality:
- Bug fix for missing first item of performance data.
- Misc bug fixes.
Version 0.13
Version 0.13 includes the following new functionality:
- Bug fix for uninitialised data crash in stub.
Version 0.12
Version 0.12 includes the following new functionality:
- Addition of option to enable/disable collecting performance data for C function calls.
- Bug fix for missing symbols in save/load session.
- Bug fix for file names.
Version 0.11
Version 0.11 includes the following new functionality:
- Bug fix for display of filename for (eval) functions.
Version 0.10
Version 0.10 includes the following new functionality:
- User interface improvement for Raw Statistics, Statistics, Relations and Line Times displays. A selected cell now highlights the
whole line to make identifying the line when scrolling the display much easier.
- Bug fix for loading and saving line timing information.
Version 0.09
Version 0.09 includes the following new functionality:
- Archiving version update.
- Bug fix for display diacritical characters and characters above 127.
Version 0.08
Version 0.08 includes the following new functionality:
- Bug fix for settings load/save.
Version 0.07
Version 0.07 includes the following new functionality:
- Class and function filter settings improvement.
- Filtering capabilities added to the Context menu on all views.
- Bug fix: Callstack window redrawn when session is completed.
Version 0.06
Version 0.06 includes the following new functionality:
- Bug fix for race-condition crash.
Version 0.05
Version 0.05 includes the following new functionality:
- Time data now displayed in milliseconds rather than QueryPerformanceCounter and RDTSC processor cycle counts.
- Time data can be displayed as HH:MM:SS:mmm.uu
Version 0.04
Version 0.04 includes the following new functionality:
- Misc user interface bug fixes.
Version 0.03
Version 0.03 includes the following new functionality:
- Bug fix for uninitialised data.
- Bug fix for crash when inspecting data related to symbols that have not been resolved.
Version 0.02
Version 0.02 includes the following new functionality:
- Improved identification of Ruby DLLs.
- Common storage of DLL runtimes for use by all Ruby Validators.
- User Interface improvement - numbers formatted according to user's choice of locale.
Version 0.01
Initial beta version made available to selected beta testers.
We would like your feedback on any bugs you may find, on the features and benefits of the software, and also
feedback on features that you think are missing from the software but which you would find useful.
Ruby Performance Validator will undergo changes during the betatest - based on user feedback. This is
your chance to influence the feature set of the product. If there is a feature you'd like that isn't present,
let us know. If there is a feature that doesn't work quite how you'd like, please let us know.
Help topic IDs are currently not correct.
Please provide us with feedback.
Regards.
Software Verification Ruby Performance Validator Team.