JavaScript Memory Validator Change History
Version 2.13
Version 2.13 includes the following functionality:
- Bug fix for working with Firefox 2.0.0.17 to fix code the Mozilla team broke by making an incompatible change to the JSStackFrame structure.
Version 2.12
Version 2.12 includes the following functionality:
- Bug fix for launching on Windows Vista and Windows 2008.
Version 2.11
Version 2.11 includes the following functionality:
- JSString robustness improvements.
Version 2.10
Version 2.10 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 2.09
Version 2.09 includes the following functionality:
- Rationalisation of hooking code.
- Removal of svlMVJavaScriptRunner.exe
Version 2.08
Version 2.08 includes the following functionality:
- Bug fix for data corruption when updating watermarks.
- Bug fix for race condition for type name data.
Version 2.07
Version 2.07 includes the following functionality:
- Bug fix for Paths to Root for Objects tab.
- Bug fix for Paths from Root for Objects tab.
Version 2.06
Version 2.06 includes the following functionality:
- Robustness maintenance.
Version 2.05
Version 2.05 includes the following functionality:
- Change to safe mode default status (default is now on) and addition of safe mode warning on launch dialog and launch wizard.
- Addition of 32 bit executable test.
- Bug fix for watermarks.
Version 2.04
Version 2.04 includes the following functionality:
- Bug fix for Session Manager dialog.
Version 2.03
Version 2.03 includes the following functionality:
- Fixed Statistics (% Size) error on Allocation tab.
Version 2.02
Version 2.02 includes the following functionality:
- Bug fix for breakpoint exception.
Version 2.01
Version 2.01 includes the following functionality:
- Bug fix for analysis tab when filters enabled.
Version 2.00
Version 2.00 includes the following functionality:
- Support for Firefox 3.0.
Version 1.53
Version 1.53 includes the following functionality:
- Percentage bars added to Allocations View and Objects View.
Version 1.52
Version 1.52 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.51
Version 1.51 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.50
Version 1.50 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.49
Version 1.49 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.48
Version 1.48 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.47
Version 1.47 includes the following functionality:
- Bug fix for rare race condition crash in Windows message processing on Generations tab.
Version 1.46
Version 1.46 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.
- Bug fix for negative byte count on Hotspots tab.
Version 1.45
Version 1.45 includes the following functionality:
- Improved fetching of web pages - handles split headers and reused sockets more efficiently.
- Bug fix for crash during fetching of web pages.
- Improved JavaScript parser.
- Bug fix for filters.
Version 1.44
Version 1.44 includes the following functionality:
- Size information now collected with object information, new data pane on Objects tab, plus new statistics.
- 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.43
Version 1.43 includes the following functionality:
- Bug fix for combo boxes on Allocations and Objects tabs.
Version 1.42
Version 1.42 includes the following functionality:
- Performance improvement for reading files.
Version 1.41
Version 1.41 includes the following functionality:
- Bug fix for generation range combo box on Find Memory dialog of Analysis tab.
Version 1.40
Version 1.40 includes the following functionality:
- Bug fix for memory sampling crash for virtual tab (crash is rare).
Version 1.39
Version 1.39 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.38
Version 1.38 includes the following functionality:
- Bug fix for stack corruption on Memory Analysis tab if search for type with very long name.
Version 1.37
Version 1.37 includes the following functionality:
- Bug fix for heap dump.
- Bug fix for Path to Root/Path from Root dialog.
- Bug fix for source code colouring.
- Bug fix for downloaded URL caching.
- Serialization bug fix.
Version 1.36
Version 1.36 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.35
Version 1.35 includes the following functionality:
- Bug fix for crash when double click on Reset button on settings dialog.
- Misc maintenance improvements.
Version 1.34
Version 1.34 includes the following functionality:
- Bug fix for downloaded URL caching.
Version 1.33
Version 1.33 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.32
Version 1.32 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.31
Version 1.31 includes the following functionality:
- Minor bug fixes.
Version 1.30
Version 1.30 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.29
Version 1.29 includes the following functionality:
- Addition of a JavaScript API for the following functions. See Help for details.
- startDataCollection
- stopDataCollection
- makeSnapshot
- makeSnapshotComparison
- makeHeapDump
- setWatermark
Version 1.28
Version 1.28 includes the following functionality:
- Addition of Memory Snapshot user interface.
Version 1.27
Version 1.27 includes the following functionality:
- Minor user interface bug fixes and usability improvements.
Version 1.26
Version 1.26 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.25
Version 1.25 includes the following new functionality:
- Improved Heap Dump.
- 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.24
Version 1.24 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.23
Version 1.23 includes the following new functionality:
- Bug fix for closing session routine.
Version 1.22
Version 1.22 includes the following new functionality:
- Changed JavaScript Runtime dialog to be resizable.
Version 1.21
Version 1.21 includes the following new functionality:
- Bug fix for serialization of Watermarks.
Version 1.20
Version 1.20 includes the following new functionality:
- Bug fix for fatal crash on Objects tab.
Version 1.19
Version 1.19 includes the following new functionality:
- Addition of code to construct source files from compiled JavaScript fragments to allow JavaScript source code viewing for pages loaded over secure connections (https://).
Version 1.18
Version 1.18 includes the following new functionality:
- Bug fix for memory corruption causing crash whilst unpacking JAR files after selection of JavaScript runtime.
Version 1.17
Version 1.17 includes the following new functionality:
- Bug fix for JSMV cache error when looking up aliased cache locations.
- Bug fix for browser cache location bug caused by loading settings.
Version 1.16
Version 1.16 includes the following new functionality:
- Improved handling of HTTP files when content is supplied with the header block.
- Improved handling of HTTP Content Encoding "gzip" files.
- Improved handling of HTTP Transfer Encoding "chunked" files.
- Improved handling of files in the JSMV cache when very long URL name.
- Improved purging of Firefox/Flock cache prior to launch.
Version 1.15
Version 1.15 includes the following new functionality:
- Improved heap dump performance. Heap dumping is more tolerant of datastructure failures than previous versions, increasing the chances of a valid heap dump.
- Improved shutdown for Firefox/XULRunner - some users reported that Firefox/XulRunner would hang during shutdown. This build contains improvements to fix that problem.
- Support for chrome files in parent directory of XULRunner.exe (like Songbird)
Version 1.14
Version 1.14 includes the following new functionality:
- Bug fix for JS_DefineUCFunction() hook.
- Support for XULRunner.exe.
Version 1.13
Version 1.13 includes the following new functionality:
- Bug fix for hotspots tab.
- Bug fix for references tab.
Version 1.12
Version 1.12 includes the following new functionality:
- Bug fix crash on References tab if data is displayed whilst a GC happens.
Version 1.11
Version 1.11 includes the following new functionality:
- IMproved HTML Help handling.
Version 1.10
Version 1.10 includes the following new functionality:
- Improved JavaScript parser. This has resulted in better Prototype/method naming and line number values.
Version 1.09
Version 1.09 includes the following new functionality:
- Support for Dojo's dj_eval() code loading and dojo.io.bind() code loading.
- Correct filenames and line numbers supplied when code evaluated using eval() or dj_eval() or dojo.io.bind().
- File cache now contains exactly the same data returned from the webserver as Firefox received, no longer a separate request to the server for JSPV's copy of the file.
- "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.08
Version 1.08 includes the following new functionality:
- Bug fix data parsing.
Version 1.07
Version 1.07 includes the following new functionality:
- Updated scrollbar handling for editor component.
- Bug fix for saving and loading.
Version 1.06
Version 1.06 includes the following new functionality:
- Improvement to generation handling.
Version 1.05
Version 1.05 includes the following new functionality:
- Bug fix for rare data corruption crash in JavaScript parser.
Version 1.04
Version 1.04 includes the following new functionality:
- Maintenance release.
Version 1.03
Version 1.03 includes the following new functionality:
- Customer Request: Option to allow File Cache contents to be saved with the session and loaded into the file cache when the session is next loaded.
- Bug fix for session manager dialog.
Version 1.02
Version 1.02 includes the following new functionality:
- Now works with Firefox 2.0.
- Improvements to support for Venkman/Firebug.
- Improved JavaScript parser to correctly skip regular expressions.
- Syntax coloured editing improvements.
Version 1.01
Version 1.01 includes the following new functionality:
- Feature improvement - now works with Venkman/Firebug.
- Bug fix for compressed files dialog broken resource.
Version 1.00
Version 1.00 includes the following new functionality:
- Beta test complete. Full product release.
Version 0.24
Version 0.24 includes the following new functionality:
- Bug fix for bug introduced in V0.23.
- 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.23Not released!
Version 0.23 includes the following new functionality:
- 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.22
Version 0.22 includes the following new functionality:
- Bug fix for fetching gzipped URLs to local cache. JSBV now views the uncompressed sources.
- Multiple bug fix for JavaScript parser.
- 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.21
Version 0.21 includes the following new functionality:
- Bug fix for fetching URLs to local cache and URL contains spaces encoded as %20.
Version 0.20
Version 0.20 includes the following new functionality:
- Performance improvement for sessions with large numbers of garbage collections.
- Updated help.
Version 0.19
Version 0.19 includes the following new functionality:
- Improved class and method naming for anonymous functions.
- Bug fix for tutorial handling and tip of day.
Version 0.18
Version 0.18 includes the following new functionality:
- Improvement to heap dump - now fetched without requiring user interfacetion with browser.
- 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.17
Version 0.17 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.16
Version 0.16 includes the following new functionality:
- Frames marked as "internal" can now have valid filenames and line numbers calculated for them. This improves traceback information for event handler callbacks etc.
- Improved JavaScript parser.
Version 0.15
Version 0.15 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.
- Addition of .pl, .asp, .aspx file extensions.
- Bug fix for Global Hook UI DLLs.
- Bug fix for determining class name and method names correctly.
- Path to Root dialog on References tab (see context menu).
Version 0.14
Version 0.14 includes the following new functionality:
- Bug fix for displaying source when parameters present in URL. For example: http://www.domain.com/filename.html?someParamList
- Bug fix for JavaScript parser.
Version 0.13
Version 0.13 includes the following new functionality:
- First version of the software to support fetching a heap dump. To use, click the Heap Dump icon on the toolbar. Then do something with Mozilla (move the mouse). The reason for this is that currently we fetch the heap in the context of the currently executing code and we need an event from the JavaScript engine to do this. We hope to improve this in future versions. After moving the mouse, the event will be processed, there may be a small pause (depends on how large your application is) then data is sent to the JSMV user interface. Use the References tab to see the results. Any errors whilst fetching the heap dump will be reported on the Diagnostics tab. Now that this work is complete we can move on to more interesting topics such as "Path to Root" which some of you have asked for.
Version 0.12
Version 0.12 includes the following new functionality:
- Bug fix for crash when collecting anonymous functions whilst visiting http://google.co.uk with GreaseMonkey and Butler.js.
Version 0.11
Version 0.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.
- Bug fix for command line export parameters.
- Documentation bug fix for command line export parameters.
- Now works with Flock as well as Firefox.
Version 0.10
Version 0.10 includes the following new functionality:
- 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.09
Version 0.09 includes the following new functionality:
- Addition of user requested "String Representation" feature. This allows you to view what an object would like if its toString() method is called.
Version 0.08
Version 0.08 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 memory corruption on Analysis tab.
Version 0.07
Version 0.07 includes the following new functionality:
- Bug fix for memory corruption (causes a crash) when parsing unorthodox JavaScript in specific situation.
Version 0.06
Version 0.06 includes the following new functionality:
- Maintenance release.
Version 0.05
Version 0.05 includes the following new functionality:
- Bug fix for JavaScript runtime dialog.
- 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.04
Version 0.04 includes the following new functionality:
- Ability to display source code for http:// files.
- Ability to display source code for chrome:// files.
- Improved JavaScript parser.
Version 0.03
Version 0.03 includes the following new functionality:
- Minor UI improvements.
- Improved JavaScript parser.
Version 0.02
Version 0.02 includes the following new functionality:
- Bug fix for Firefox 1.5 - JavaScript Memory Validator now produced valid line numbers with both Firefox 1.0.6 and Firefox 1.5.
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 JavaScript Memory Validator Team.

