[FDS-119] FusionDebug 3.0.1 Release Notes

Description

FusionDebug Rev. 3.0.1

RELEASE NOTES – KNOWN ISSUES – ADDITIONAL LICENSE AGREEMENTS

INTERGRAL INFORMATION SOLUTIONS GMBH
Schickardstr 32 – D-71034 Boeblingen – Germany

The FusionDebug software is Copyright (C) 2006-2009 Intergral Information Solutions GmbH.
All rights reserved. The FusionDebug software product is commercial software and may not be
redistributed except with the express written agreement of Intergral Information Solutions GmbH.
The software may only be used in accordance with the appropriate FusionDebug license agreement.

Status: Fri, 27 Nov 2009

RELEASE NOTES

  • FusionDebug Rev. 3.0.1
  • ColdFusion 9 support. You can now also debug ColdFusion 9 Servers.
  • Further integration with the ColdFusion Builder CFML editor.
  • New Feature: Hitcounts. Hitcounts can now be added to breakpoints along with breakpoint conditions. A hitcount allows a breakpoint to fire only after a certain number of breakpoint hits. For example, if the breakpoint was in a <cfloop> and had a hitcount of 5, the breakpoint would only fire on the 5th and consecutive iterations.
  • New Feature: Auto-step: You can now automatically step through a CFML application, watching variables, expressions and the execution path.
  • FusionDebug Rev. 3.0.1 has been tested using Eclipse Platform 3.2 to 3.5 (Galileo) on
    Microsoft Windows XP SP2, Microsoft Windows Vista SP 1. FusionDebug is a pure Java
    application with no native dependencies, and so should run on all OS platforms for which Eclipse is
    available.
  • We recommend also installing the CFEclipse package, which provides a capable environment for
    working with CF scripts within Eclipse. This can be obtained from: http://www.cfeclipse.org/
  • Please consult the relevant Guides for quick-start instructions on getting acquainted with FusionDebug. There is
    an updated User Manual for 3.01.

KNOWN ISSUES

FusionDebug Rev. 3.0.1

The following issues are known at the time of publication.

General

  • ‘Run To Line’ Causes Skip On Following CFML Code/Breakpoints With Resume/Steps

As Run To Line targets are set anywhere on a CFML page, and we expect the execution to halt at this point, the engine must be allowed to continue to the ‘next nearest’ valid CFML, and halt there. This can therefore be on another Breakpoint, causing it to seem (upon step/resume) to be skipped, where as it has simply already been hit.

  • Custom Extensions Not Recognized By CFML Server

For your Custom Extensions to function you must add them to your CFML Servers known extensions. For advice on how to do this please see our user manual or web page. These contain useful links and setup instructions, as well as guides on setting your default editors. You will need to set your IDE to use editors that allow debugging on your new extensions (including the default .htm .html).

For information and instructions on use please see:
http://www.fusion-reactor.com/fd/support.cfm

CF Specific

  • Custom Exceptions Fire In CF Admin/Other CF Web Applications Pages When FusionDebug Connected

This is a side effect of breaking on Exceptions, any CFML Live code running on the attached server can fire off Custom Exceptions, which FusionDebug will detect (when option selected). To use these applications during a debug session simply uncheck the option to ‘Catch Un/Caught Custom CFML Exceptions’ in the FusionDebug ‘Configuration’ Page in ‘Preferences’, from the ‘Window’ menu option. You can then re-enable the setting once you have finished using the desired page and continue debugging.

  • Custom Exceptions Within CFTRY Recognized As Caught When NOT Handled In CFCATCH

When placed within a cftry/cfcatch block thrown Custom Exceptions are dealt with as Caught by CFML. Therefore even though this is Uncaught by rights, it will only be detected as caught (with this option). When this occurs the catch block will be highlighted also – due to the match not being correct. The distinction between whether ‘this’ Custom Exception, is Caught based upon the catch type is something we are working on and plan to have resolved for next Beta/Release.

Railo Specific

  • FD-493/RAILO-195 Stepping is innacurate within very long pages. You may find the line cursor skips to an incorrect line, or skips back and forth, when debugging very large CFC or CFM pages.

GENERAL ISSUES

Some Numerical / Complex CF Types Decode to Java Types, Not CF Types

We’re working hard on being able to decode all CFML complex types. Most types are already
implemented – structs, arrays, XML objects, CFCs, Functions etc. In some cases, you might see
an undecoded type in the Variables and Expressions view (“… instance of …”) or a plain
string representation of the object.

Step Over sometimes requires > 1 keypress to advance the cursor.

This is because some lines of CF code perform multiple actions and require you to press
step for each action that they perform.

Step Into CFC’s is sometimes requires > 1 keypress to step into the CFC.

With the current instruction pointer located on the CFINVOKE tag, keep clicking Step Into until
the CFC is loaded. The parameters and other initialization actions are performed before the CFC
is called. You may have to push step into until this initialization is complete.

Step Requests sometimes jump around to lines of code that are not sensible.

This is a limitation of how Railo processes and optimizes pages at compile time.

Calling CFML functions which are reentrant to the currently halted thread may cause the VM to hang

You cannot set/clear breakpoints with CTRL-SHIFT-B when in the CFEclipse perspective

CFEclipse does not support the CTRL-SHIFT-B keystroke when in the CFEclipse perspective. You
can toggle the breakpoint by right mouse clicking on the line you wish to set the breakpoint
on and using the Toggle Line Breakpoint menu item.

Sometimes breakpoints don’t fire.

In the Debug configuration, make sure the Target System Type is set correctly: checked for
Windows, unchecked for Unix. And the correct connector is being used for the engine type desired.

Breakpoints set on blank lines may not always fire.

Since FD 2.0.1 breakpoints can be set on blank lines. FD cannot always get breakpoints to
fire on blank lines because they are sometimes optimized away by the CF compiler.

Wrong File Selected

When a breakpoint or step event fires, FusionDebug does its best to find the source file. If the
same file exists multiple times in different projects, the wrong one may be selected
Use the source code lookup tab on the Launch Control to correct the source code lookups.

If your system is monitored by FusionReactor with crash protection activated, FusionReactor may

terminate the page if it exceeds the Request Timeout limit that has been configured. Please
deactivate crash protection in FusionReactor.

RESOLVED ISSUES

Key Issue Type Component/s Summary
FD566 New Feature FD Implementation ColdFusion 9 Support
FD568 New Feature Breakpoints Hitcounts on Breakpoints
FD589 New Feature Stepping Auto-step feature
FD571 Improvement Breakpoints Breakpoint condition editor non-mono-space font
FD577 Bug Fix CFBuilder Editor context menu entries missing in CFBuilder
FD579 Bug Fix CFBuilder Ruler context menu “Toggle Line Breakpoint” entry missing in CFBuilder
FD581 Bug Fix CFBuilder Error when clicking variables in CFBuilder
FD582 Bug Fix Breakpoints, CFBuilder Changing properties of Adobe breakpoint causes error
FD584 Bug Fix Breakpoints Breakpoint text not removed on disconnect
FD592 Bug Fix Breakpoints Breakpoints not updated on file edit & save
FD594 Bug Fix Stack Frames, Debug View, Breakpoints Stack frame loses occurs on breakpoint hit

ADDITIONAL LICENSE AGREEMENTS

This Software contains code derived from the Eclipse Foundation (“Eclipse Code”).
Such Eclipse Source Code is made available under the terms of the Eclipse Public License v1.0 which
accompanies such code, and is also available at http://www.eclipse.org/legal/epl-v10.html

Eclipse Code. On behalf of Contributors to such Eclipse Code, Intergral hereby: (1) disclaims any and all
warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability
and fitness for a particular purpose with respect to such Eclipse Code and any and all derivative works thereof,
(2) disclaims any liability for damages, including direct, indirect, special, incidental and consequential
damages, such as lost profits, and (3) represents that any provisions in this License Agreement that differ
from the Eclipse Public License under which Intergral licensed the Eclipse Code, are offered by Intergral
alone and not by any other party. The source code for the Eclipse Code as contained in this Software may be
obtained by the Licensee as described in in this Readme to the Software. Intergral provides the Eclipse Code as
is, without warranty or support from Intergral.

By installing this product, in addition to the Intergral license terms, you also agree to be bound by the
third-party terms provided to you with the Intergral product documentation. Intergral recommends that you review
these third-party terms.

Issue Details

Type: Technote
Issue Number: FDS-119
Components: Breakpoints
Environment:
Resolution: Fixed
Added: 27/11/2009 14:21:38
Affects Version: 3.0.1
Fixed Version: 3.0.1
Server:
Platform:
Related Issues:
  • FDS-113 – FusionDebug 3.0.0 Release Notes
  • FDS-127 – FusionDebug 3.5.0 Release Notes

Comments are closed.