Ruby Memory Validator Change History
Version 1.41
Version 1.41 includes the following functionality:
- 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.40
Version 1.40 includes the following functionality:
- Replacement of all SftelVdm 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.39
Version 1.39 includes the following functionality:
- Bug fix for Ruby 1.8.6.
Version 1.38
Version 1.38 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.37
Version 1.37 includes the following functionality:
- Bug fix for rare race condition crash in Windows message processing on Generations tab.
Version 1.36
Version 1.36 includes the following functionality:
- Addition of Ages tab allowing the viewing of how many objects of a given age exist.
- Ability to detect how recently an object has been used, allowing the easy detection of "stale" objects.
- "Stale" object viewer, allowing the automatic indication of objects that have not been accessed for a long time.
- Bug fix for filters.
- Nodes in references tree ordered by type, filename, number of references.
- Improved source code pane updating.
- Bug fix for grid/tree control positioning of scroll bar for large datasets.
- Bug fix for Object Query dialog combo box sizing.
- Updated help.
Version 1.35
Version 1.35 includes the following functionality:
- Additional statistics on the generations tab. New statistics for min objects, max objects, allocated objects, collected objects, objects delta.
- Bug fix for data processing race condition.
Version 1.34
Version 1.34 includes the following functionality:
- Bug fix for combo boxes on Allocations and Objects tabs.
Version 1.33
Version 1.33 includes the following functionality:
- Performance improvement for reading files.
Version 1.32
Version 1.32 includes the following functionality:
- Bug fix for generation range combo box on Find Memory dialog of Analysis tab.
Version 1.31
Version 1.31 includes the following functionality:
- Bug fix for memory sampling crash for virtual tab (crash is rare).
Version 1.30
Version 1.30 includes the following functionality:
- Heap Dump data display improvement - heap data kept after GC to provide better info for old heap dumps kept for reference.
Version 1.29
Version 1.29 includes the following functionality:
- Bug fix for stack corruption on Memory Analysis tab if search for type with very long name.
Version 1.28
Version 1.28 includes the following functionality:
- Bug fix for heap dump.
- Bug fix for Path to Root/Path from Root dialog.
- Serialization bug fix.
Version 1.27
Version 1.27 includes the following functionality:
- Addition of Auto Expand on Snapshots callstacks view.
- Bug fix for crash on Snapshots if choose Show Allocation Locations on source code.
Version 1.26
Version 1.26 includes the following functionality:
- Bug fix for crash when double click on Reset button on settings dialog.
- Misc maintenance improvements.
Version 1.25
Version 1.25 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.
- Performance improvement for processing data - now much faster.
Version 1.24
Version 1.24 includes the following functionality:
- Bug fix for crash if too many generations recorded (more than 38,500).
- Performance improvement code by limiting number of generations recorded to user specified value.
- Generation data collection user interface added to settings dialog.
Version 1.23
Version 1.23 includes the following functionality:
- Minor bug fixes.
Version 1.22
Version 1.22 includes the following functionality:
- Performance improvement for clearing displays when closing a session.
- Performance improvement for Memory tab when data displayed on the tab.
- Bug fix for lock handling.
Version 1.21
Version 1.21 includes the following functionality:
- Bug fix for race condition leading to possible memory corruption.
Version 1.20
Version 1.20 includes the following functionality:
- Addition of Memory Snapshot user interface.
- Addition of a Ruby API and a C API for the following functions. See Help for details.
- startProfiler
- startDataCollection
- stopDataCollection
- makeSnapshot
- makeSnapshotComparison
- makeHeapDump
- setWatermark
Version 1.19
Version 1.19 includes the following functionality:
- Minor user interface bug fixes and usability improvements.
Version 1.18
Version 1.18 includes the following functionality:
- Addition of a new feature - memory snapshot user interface.
Version 1.17
Version 1.17 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.16
Version 1.16 includes the following new functionality:
- Bug fix for Group by callstack when multiple types allocated from same callstack.
- Bug fix for reference view tab selected lines when changing heap dumps.
Version 1.15
Version 1.15 includes the following new functionality:
- Bug fix for F4 and F5 hotkeys.
- Bug fix for analysis tab check box save state after restart.
- Bug fix for analysis tab Group by Callstack.
Version 1.14
Version 1.14 includes the following new functionality:
- Bug fix for closing session routine.
Version 1.13
Version 1.13 includes the following new functionality:
- Changed Ruby Runtime dialog to be resizable.
Version 1.12
Version 1.12 includes the following new functionality:
- Bug fix for serialization of Watermarks.
Version 1.11
Version 1.11 includes the following new functionality:
- Bug fix for fatal crash on Objects tab.
Version 1.10
Version 1.10 includes the following new functionality:
- Bug fix for hotspots tab.
- Bug fix for references tab.
Version 1.09
Version 1.09 includes the following new functionality:
- Bug fix crash on References tab if data is displayed whilst a GC happens.
Version 1.08
Version 1.08 includes the following new functionality:
- IMproved HTML Help handling.
Version 1.07
Version 1.07 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.06
Version 1.06 includes the following new functionality:
- Bug fix data parsing.
Version 1.05
Version 1.05 includes the following new functionality:
- Updated scrollbar handling for editor component.
- Bug fix for saving and loading.
- New option to prevent collecting object data about Ruby interpreter nodes.
Version 1.04
Version 1.04 includes the following new functionality:
- Improvement to generation handling.
Version 1.03
Version 1.03 includes the following new functionality:
- Maintenance release.
Version 1.02
Version 1.02 includes the following new functionality:
- Addition of support for extensions to Ruby added by Software Verification Limited. The extensions provide a direct method for tracing allocations and deletions of objects and also a method for performing heap dumps and getting lists of referenced objects. You can find out more about the extensions at http://www.softwareverify.com/ruby/customBuild/index.html
Version 1.01
Version 1.01 includes the following new functionality:
- Change of behaviour if trying to get a heap dump or force a garbage collect whilst Ruby is in a critical section of code (for example, sleeping). The heap dump or forced garbage collect will not happen, it will now be ignored.
- Bug fix for session manager dialog.
Version 1.00
Version 1.00 includes the following new functionality:
- Beta test complete. Full product release.
Version 0.33
Version 0.33 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.32
Version 0.32 includes the following new functionality:
- Bug fix to low level hooking. Previous versions of RMV only worked with certain Ruby 1.8.* versions. Now works with all Ruby 1.8.* versions.
- Allocations, Objects, Generations tabs colouring improved to facilitate easier reading and identification of data.
- Tree control behaviour improved so that opening a tree at the bottom of the screen will cause the tree to scroll to see the data that is "off" the bottom of the screen.
Version 0.31
Version 0.31 includes the following new functionality:
- Performance improvement for sessions with large numbers of garbage collections.
- Updated help.
- Bug fix for obtaining type from source code when object type unknown.
- Major performance improvement when obtaining type from source code when object type unknown.
Version 0.30
Version 0.30 includes the following new functionality:
- Improved splitter window sizing.
- Bug fix for tutorial handling.
Version 0.29
Version 0.29 includes the following new functionality:
- Improvement to heap dump - now fetched without requiring user interfacetion with Ruby app.
- Bug fix for diagnostic tab when loading or switching sessions.
- Bug fix for loading/saving sessions.
- Minor user interface bug fixes.
- Help updated.
Version 0.28
Version 0.28 includes the following new functionality:
- Bug fix for session loading.
- Improved Path to Root dialog, now has splitter plus extra detail tabs.
- Bug fix for Analysis tab.
Version 0.27
Version 0.27 includes the following new functionality:
- Bug fix for watermark handling.
- Heap dump improvements:
- Named heap dumps or auto named heap dumps.
- Ability to set max number of heap dumps to keep.
- Ability to choose which heap dump to inspect.
- Improved navigation behaviour on References tab.
- Bug fix for Global Hook UI DLLs.
- UI modifications for launch dialog.
- Path to Root dialog on References tab (see context menu).
Version 0.26
Version 0.26 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.
- Bug fix for command line export parameters.
- Documentation bug fix for command line export parameters.
Version 0.25
Version 0.25 includes the following new functionality:
- Improved Ruby Parser.
- User interface will not allow duplicate watermark names.
- User interface will not allow duplicate bookmark names.
- Analysis tab - improvements to supplementary data in search and results view.
Version 0.24
Version 0.24 includes the following new functionality:
- Addition of user requested "String Representation" feature. This allows you to view what an object would like if its to_s() method is called.
Version 0.23
Version 0.23 includes the following new functionality:
- Addition of new user interface Allocations to display statistics about functions allocating the most memory.
- Addition of Delta column to Objects tab.
- Addition of Clear button to Memory tab.
- New order for the user interface tabs to reflect expected usage patterns.
- Bug fix for callstacks.
- Bug fix for memory corruption on Analysis tab.
Version 0.22
Version 0.22 includes the following new functionality:
- Minor user interface changes.
Version 0.21
Version 0.21 includes the following new functionality:
- Rebuilt help file to remove potentially dangerous bookmark characters and use new help compiler. This action is in response to a few users complaining that HTML Help crashed for them.
- Bug fix for UI Global Hook intercept dialog.
- Objects Export format.
- Generations Export format.
Version 0.20
Version 0.20 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.
Version 0.19
Version 0.19 includes the following new functionality:
- Bug fix for memory page boundary crash.
Version 0.18
Version 0.18 includes the following new functionality:
- Improved Ruby Parser.
Version 0.17
Version 0.17 includes the following new functionality:
- Bug fix for svlRubyMV.
Version 0.16
Version 0.16 includes the following new functionality:
- Improved Ruby Parser.
Version 0.15
Version 0.15 includes the following new functionality:
- New method of collecting data that avoids the memory distortion caused by using set_trace_func().
Version 0.14
Version 0.14 includes the following new functionality:
- Bug fix for crash adding watermark.
Version 0.13
Version 0.13 includes the following new functionality:
- Addition of startProfiler() method to Ruby class svlRubyMV. 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 Memory Validator user interface.
- Addition of ability to start profiler from C/C++. Useful for embedded Ruby.
Version 0.12
Version 0.12 includes the following new functionality:
- Bug fix for callstack display order on Memory and Analysis tabs.
- Optional display of Nodes on Generations and Objects tabs.
Version 0.11
Version 0.11 includes the following new functionality:
- Editor component maintenance update.
Version 0.10
Version 0.10 includes the following new functionality:
- Addition of -- comment facility for -commandFile arguments.
- Bug fix for Hotspots tab.
- Bug fix for data corruption crash in stub.
Version 0.09
Version 0.09 includes the following new functionality:
- Bug fix for internal class information representation - bug fix for rare fatal crash.
Version 0.08
Version 0.08 includes the following new functionality:
- Improved Ruby Parser.
- Automatic file association.
Version 0.07
Version 0.07 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.06
Version 0.06 includes the following new functionality:
- Editing options expanded to include Visual Studio.NET 2002, 2003, 2005, SCiTE editor.
- Bug fix for Memory Hotspot View and Reference Hotspot View Source Code Editing.
Version 0.05
Version 0.05 includes the following new functionality:
- Bug fix for Unicode environment variables.
Version 0.04
Version 0.04 includes the following new functionality:
- Improved UI splitter window sizing on References tab.
- Bug fix for environment variable handling.
- References tab and Heap Dump functionality implemented.
- Referencing and Referenced functionality on Address Query dialog implemented.
- Referencing and Referenced functionality on Object Query dialog implemented.
- Referencing and Referenced functionality on Analysis tab implemented.
- 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.03
Version 0.03 includes the following new functionality:
- Bug fix for source code fragment display.
Version 0.02
Version 0.02 includes the following new functionality:
- Bug fixes for crash after second session run.
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.
Please provide us with feedback.
Regards.
Software Verification Ruby Memory Validator Team.

