Development and Pipeline - Group home

What's new in IBM z/OS Debugger 16.0

  
A new release of z/OS Debugger is now available!
So many new and exciting features to take advantage of such as the Debug for z/OS and Developer for z/OS products are now available on Eclipse 4.23 with  Java 11.  And of course - fixes (18 APARs).

Simplification

This release we have removed many of our deprecated item, making z/OS Debugger even more lightweight and useful.  On the host, LMA and deprecated IMS options have been removed.  On the Eclipse client, Debug Tool plugins are no longer included, along with Team Debug and Java Code Coverage (more on that later).  Of course, the biggest change to impact host and client is that z/OS Debugger has only now one remote debug mode, simplifying many user interfaces and providing a single remote debug experience.  For more information on removals and additional deprecations, see What's removed from IBM z/OS Debugger

Day 1 support

z/OS Debugger's commitment to support new hardware, subsystems and compilers on day 1, continues with the following added in v16.0
  • IBM Open XL C/C++ for z/OS 1.1.
  • IBM Open Enterprise SDK for Go 1.18

Interoperability

This is a term used to describe debugging 64-bit and 31-bit applications calling each other, as well as Java calling compiled languages.  In v16 we now support interoperability between 31-bit and 64-bit PL/I programs.  

64 bit support

With the removal of standard mode, 64-bit PL/I programs are now supported in remote debug mode with some limitations.

Code Coverage

The SonarQube exporter available via the Eclipse IDE, headless code coverage and the ccexport.sh command now allows you specify a different encoding than the default UTF-8.
The Coverage Result wizard with SonarQube export format selected, and an arrow point to the Settings button, along with the Encoding dialog
The Code Coverage view allows you to specify a warning threshold, in addition to failure threshold for code coverage result status.
Code Coverage view with status column displaying Fails, Passed, Warning, and the Preference dialog with the threshold configuration

The biggest changes in code coverage will be immediately noticed once you start looking at the code coverage reports. A new-and-improved web-based code coverage report provides you with a slick new interface.  We will continue to evolve the code coverage reports over the next several releases, so let us know what you think.
A code coverage report showing 39% coverage along with some file details

For more information, see Working with a code coverage reports. Keep your eyes peeled for an in-depth blog about the new code coverage report.
We have also completely overhauled the code coverage compare support.  Compare now scans the source to provide an in depth report that not only includes changes in coverage, but will also include information on added and removed lines, flow points and files.
Compare showing difference in coverage and added lines for a flowpoint

For more information, Working with a code coverage comparison report (you can also expect a blog showcasing more details on this topic).

Java Code Coverage

Java code coverage is now strategically based on the open source package JaCoCo.  JaCoCo results can be imported into the Code Coverage Results view.  Merge, copy and work with them as you would any results from compiled code coverage. Previously generated with IBM Java code coverage tools can still be imported as well and any previous result will be migrated automatically. For more information, see Working with Java code coverage results.
Context menu for the Code Coverage results view, with Import JaCoCo menu action highlighted

Source Level Debug


If you debug programs compiled with Enterprise COBOL for z/OS® Version 6 Release 2 and later, you can now specify compiler option TEST(NOSOURCE) to use the Source view as the default in the Eclipse IDE, or you can switch to the source view during the debug session:
The COBOL debug editor with the listing view in the contents and Switch view menu indicating

IMS Transaction Isolation

You no longer need to install and configure ADFzCC configuration is no longer needed when Debug Profile Service is running in order to enable IMS Isolation debug profiles in the Eclipse IDE (note that IMS Isolation debug profiles are only available with IDz Enterprise Edition).  The IMS Isolation debug profile now allows you to specify a character to be used as the job class for the isolated region.
IMS Isolation debug profile with the Job Class field specified, and the tooltip hover showing

In full-screen mode, pattern matching used to filter transactions for isolation can now be limited to a range within a transaction message.

Debug Profile Service

You can choose to ignore the SSL certificate errors when the Debug Profile Service that you want to connect to does not have a valid SSL certificate, by selecting the option on the IBM z/OS Debugger Preferences page.

IBM z/OS Debugger preference page with Ignore SSL certificate errors when connecting to Debug Profile Service highlighted
The Debug Profile Service con now be configues to use external CICS interface (EXCI) to manage debug profiles stored in the region’s repository instead of using the DTCN API. For more information, see Defining the CICS EXCI CONNECTION and SESSIONS resources.

Property group

For IDz users, you can associate property groups to avoid parsing errors in the language editors and ensure that visual debug can parse the debug editor context. The property group can be added or changed during a debug session.

EQAOPTS command

Finally the command CICSASMPGMND can be specified to control whether z/OS Debugger allows debugging assembler programs when the language attribute of the program resource is not defined. For more information, see Starting z/OS Debugger for non-Language Environment programs under CICS.