[FDS-135] FusionDebug 5.0.x Release Notes

FusionDebug Rev 5.0.x

RELEASE NOTES – KNOWN ISSUES – ADDITIONAL LICENSE AGREEMENTS

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

The FusionDebug software is Copyright (C) 2006-2016 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: 10-JAN-2017

RELEASE NOTES

FusionDebug Rev 5.0.1

  • New Feature: Support for Eclipse Neon (4.2.6).
  • New Feature: Ability to see SQL data from queries.
  • New Feature: Support for Lucee 4.5.2 and Lucee 4.5.3.
  • An issue which would cause FusionDebug to keep remaining days of a license after uninstallation of a license

FusionDebug Rev 4.0.0

  • New Feature: Support for ColdFusion 2016
  • New Feature: Support for ColdFusion Builder 2016
  • New Feature: Support for Lucee 4.5 and Railo 4.2
  • New Feature: Support for Eclipse 4.4 ( Luna ) and 4.5 ( Mars )
  • New Feature: Support for Java 1.8

FusionDebug Rev 3.7.1

  • An issue which would cause FusionDebug to claim other Debuggers’ (notably FlexBuilder) breakpoints has been fixed.
  • An issue which could cause Eclipse and Eclipse-based IDEs running on JDK 1.6 to fail to connect to any debug target (often causing a NullPointerException), or being able to display the Debug Launch Configuration page for FusionDebug launches, has been fixed.

FusionDebug Rev 3.7.0

  • New Feature: Support for ColdFusion Builder 3
  • New Feature: Support for ColdFusion 11

FusionDebug Rev. 3.6.1

  • An issue whereby the Source Code Lookup tab’s dropdown list could not be changed has been fixed.

FusionDebug Rev. 3.6.0

  • Support for Windows 8
  • New Feature: Support for ColdFusion 10 and Railo 4
  • New Feature: Support for Eclipse 4.3 (Kepler) and 4.2 (Juno)
  • New Feature: Browse button on “Source Code Lookup” tab
  • FusionDebug Rev. 3.6.0 has been tested using Eclipse Platform 4.1 to 4.3. 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.6.0.

KNOWN ISSUES

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-debug.com/support/

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.

Lucee 4.5.4 and Lucee 5.x Specific
The latest version of FusionDebug is not working as expected with the latest Lucee releases and to be more precise, the breakpoints do not fire. After further investigation, in Lucee 4.5.4 / Lucee 5.x, not fully qualified file paths are generated in the .class files. The problem we encounter is that the mappings in the FusionDebug Source Lookup do not map to the correct file names on the server and as a result no breakpoints can fire. The engineering team is currently working with the Lucee developers and soon enough we will have a fix for that issue.

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

FusionDebug 5.0.1

Key Issue Type Component/s Summary
FD643 Bug Licensing An issue in which the number of days remaining on a license would not reset
FD645 Bug Support Fusion Debug failed to install and had erratic behaviour on Eclipse Neon
FD648 Improvement Expression Evaluation Get more data from evaluated SQL queries

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.