Development and Pipeline - Group home

What’s new in IBM Developer for z/OS 15.0.2

  
In just a couple days people in the Northern Hemisphere will celebrate the Summer solstice. Celebrations vary depending on the country you are in, but they may include watching the sunrise and/or sunset, having a bonfire, attending a festival, singing, and dancing. According to Britannica.com the Summer solstice is the longest day of the year because the North Pole is tilted the most toward the Sun causing the longest path through the sky, and therefore the most daylight. Since the Summer solstice is the longest day of the year there is ample time to download the latest version of IBM Developer for z/OS (IDz) and the other Aqua products released today, and still have plenty of time remaining for your celebration of choice.



The following new enhancements are just some of the reasons to download IBM Developer for z/OS 15.0.2.

z/OS Debugger and Code Coverage enhancements

New options are provided when launching a debug session for z/OS batch applications. Previously right clicking on a JCL member in either the Remote Systems view, or the z/OS Projects view offered the menu action Debug As > z/OS Batch Application using existing JCL. This menu action has been renamed to simply Debug As > z/OS Batch Application. When the action is selected the JCL member is examined and the steps are provided for selection so that the JCL can be augmented with the necessary debug launch information. A new action named Debug As > z/OS Batch Application with a debug profile is now also provided when non-CICS z/OS Debugger profiles exist. This new action executes the selected JCL but uses the information in the provided z/OS Debugger profile to launch a debug session. Finally, the new action named Debug As > z/OS Batch Application... creates a traditional Debug Launch Configuration allowing the setting of fine-grained debug and JCL options.



These same three options are also available for the Code Coverage As menu action when using JCL to collect code coverage for a z/OS batch application.

Speaking of code coverage, in the Code Coverage Results view, you can now export code coverage results in Cobertura format. This well-known format is a new option for IDz, which already supports exporting code coverage results in the SonarQube and the IBM CCZip formats, as well as a PDF report.

Refer to the What's new in the IBM z/OS Debugger blog for additional enhancement information.

JES related enhancements

IDz 15.0.2 provides some new details about JES and active jobs. Selecting the JES entry of the Remote Systems view reveals some new information in the Properties view. This new information includes the number of CPUs enabled, the percentage of the total CPU usage, the number of 100% busy CPUs, and the number of pages swapped per second between real and virtual memory. If the system is responding slowly and you notice the CPU% is high, then you might want to right click on the JES entry of the Remote Systems view and select the Display Active menu action. The Display Active action opens the Remote Monitor view showing all the active Job address spaces for the system.



The Remote Monitor shows data in a table view. As such the columns in this table can be rearranged by clicking on the column header and dragging it to the left or right, they can also be sorted by clicking on the column header, they can be customized by clicking on the Customize Table icon to select the columns for display, they can be filtered to match a specific data pattern by using the Subset menu action, and the whole table of data can be exported using the Export to CSV menu action. Selecting an individual row in the table and right clicking reveals more actions such as Retrieve, Cancel and Purge. In addition, selecting an individual row and looking at the Properties view shows all the data values for that selection regardless of whether the columns were customized for display within the table itself. Likewise, additional properties are also available in the Properties view when a Job is selected in the Remote Systems view. These additional properties include whether the job is Active or not, the Job Address Space ID, the name of the Job phase, and the max return code.

If you are not seeing the Display Active action and properties, then there are two possibilities. The first is that you are connected to a system without the latest z/OS Explorer host updates applied. The second reason could be that your systems programmer has decided to disable this feature.

IDz 15.0.2 also contains some new JES compare enhancements. In a previous IDz update we provided the ability to compare job output spools. Now users can select individual JES data sets and use the Compare With > Each Other menu action to compare portions of each jobs output rather comparing the entire spools for both jobs. Likewise, in a previous update we provided the JES job spool editor and associated outline view. This update brings the navigation and structure of the outline view into the compare editor as well. Users can now use the Spool Structure Compare portion of the compare editor to quickly navigate to a specific portion of the job output they would like to examine closely.



Miscellaneous enhancements

Using the Compare Editor is not only valuable for examining the differences between two job outputs, but it is also very popular when comparing two PDS members as well. The Remote Edit History view keeps track of the remote resources that you open for editing. Can’t remember the name of that remote resource you were working on the Friday before your Summer vacation, no need to worry just check the Remote Edit History view. Selecting one member in the view has always allowed you to use the Compare Editor via the Compare With > Local History menu action. However, in IDz 15.0.2 you can now select multiple resources in the Remote Edit History view and use the Compare With > Each Other action to open the Compare Editor.

When editing MVS resources an exclusive lock is placed on datasets/members. The ID of the user who owns the lock on this resource is shown in the Properties > Info dialog, or in the CRRZI0643 warning message that appears when a user tries to open a resource for edit but it was already locked by another user. An RSE service can only show this user ID for locks acquired by its own operation within the same service. For the locks acquired by other services, such as other RSE services or ISPF, the jobname is shown instead of the user ID. Furthermore, lock owner IDs for locks acquired by another VM across a sysplex cannot be obtained. Starting in IDz 15.0.2 new host configuration options are provided which support extended lock owner tracking. Using this new extended lock tracker feature, RSE on a VM of a sysplex can discover the user ID of a lock acquired by another application on another VM in the sysplex (provided that the other application also has lock tracking enabled). The ID can then be displayed in the Properties > Info dialog, the warning message dialog or the Remote System Details view, when appropriate. This new feature is disabled by default, so please refer to the Host Configuration Guide for details on how to enable this new option.

The new extended lock tracker is not only beneficial for IDz but also for the IBM Remote System Explorer API (RSE API) as well. Besides new locking APIs, the latest version of the RSE API also includes scaling improvements and support for working with UNIX archive files, streaming either UNIX or TSO commands, as well as Display Active job support.

IBM Developer for z/OS Enterprise Edition (IDzEE)

For z/OS application development, IDzEE simplifies and modernizes coding, debugging, interaction with source control managers, unit testing, obtaining code coverage analysis, and more. IDzEE is truly an enterprise offering that not only empowers the developer’s inner loop activities but also supports the enterprise’s desire to provide freedom of choice to their developers. In addition to the Eclipse based IDE organizations using IDzEE are also entitled to IBM Wazi Developer for VS Code and IBM Wazi Developer for Workspaces. The set of Visual Studio Code extensions augment the base functionality of VS Code to provide z/OS developers with a familiar and straight forward edit, build, and debug experience. Microsoft VS Code comes with built-in support for JavaScript, TypeScript and Node.js, as well as a marketplace that provides a rich set of extensions for other languages and capabilities. The IBM Wazi Developer extensions for VS Code add support for COBOL, PL/I, REXX, JCL and High Level Assembler (HLASM). If an organization hires developers who are familiar with VS Code but are learning the IBM Z platform, then providing these developers an environment they are already comfortable programming in is sure to shorten the learning time required before they become productive team members. Recent enhancements include the ability to issue TSO Commands, as well as debugging support for High Level Assembler for MVS, VM and VSE 1.4 (and later) and debugging UI improvements including colors that conform to dark or light themes.



Likewise, the IBM Wazi Developer for Workspaces component is a cloud-native, web-based IDE that extends the functions of Red Hat CodeReady Workspaces to provide z/OS developers with the same edit, build, and debug experience. Red Hat CodeReady Workspaces is a collaborative Kubernetes-native development solution that delivers OpenShift workspaces and an in-browser IDE for rapid cloud application development. Recent enhancements include an easy to use form-based UI for deployment, replacing the need to directly modify YAML source.

The Enterprise Edition of IBM Developer for z/OS 15.0.2 also includes IBM Dependency Based Build (DBB) 1.1.1, which is an intelligent build system for traditional z/OS applications. DBB allows organizations to use Git for software configuration management for all of their z/OS artifacts. If you are using IBM Dependency Based Build with Git, you need to install a Git client on the same z/OS systems you will use DBB. Rocket Software has provided the port for Git to be used on z/OS. Rocket Git is also available as an SMP/E installable package and with DBB 1.1.1 the SMP/E package for Rocket Git for z/OS has been updated to version 2.26.2 providing support for additional character encodings.

The DBB web application, also referred to as the DBB Server, is now available as a certified container supporting Red Hat OpenShift Container Platform (OCP) clusters to meet the performance and scalability needs of large enterprises.

Finally, as part of scanning source for dependencies, DBB 1.1.1 can now identify programs with IBM MQ call statements.

Refer to the What is new and noteworthy section of the IBM Dependency Based Build documentation for more information.

If you are interested in IBM Dependency Based Build but your organization is using IDz and not IDzEE, then GitLab Ultimate for IBM z/OS 1.0 may be the choice for you. GitLab Ultimate for IBM z/OS provides a seamless, continuous integration pipeline with a clear view of project progress. This includes DBB to understand the dependencies required for efficiently building large complex z/OS applications. For more information about this solution designed to drive enterprise-wide DevOps automation, see the blog Introducing GitLab Ultimate for z/OS.



Conclusion

Besides the traditional Fix list for IDz which has been updated with APAR information for IDz 15.0.2, I wanted to also mention that the z/OS Automated Unit Testing Framework (ZUnit) contains multiple user interface improvements and terminology clarifications. A special thanks to our sponsor users for working with us in design thinking sessions.

Happy Summer everyone!