Development and Pipeline - Group home

Introducing IBM Developer for z/OS 15.0

  
Tomorrow is Halloween in the US and many other places around the world. This holiday invokes images of pumpkins, ghosts, vampires and now IDz.  Why IDz?  Version 15.0 of IBM Developer for z/OS (IDz) is based on Eclipse 4.8.  This version has an improved look and feel thanks to the Light and Dark themes.  Like Eclipse 4.8, IDz 15.0 will use the Light theme as its new default.  However, we received feedback from several users letting us know that Dracula is not the only one who feels more powerful working in the dark rather than the light.  

 

If you prefer running your applications in dark mode, you are not alone.  To change the look and feel of IDz simply go into Preferences > General > Appearance and choose the Dark theme.  We have spent a lot of time and energy to try and make sure that running IDz 15.0 in dark mode looks good with readable text and clear icons.  However, if there are wizards or views that you feel could use a touch up, let us know by joining our new IBM Community and starting a discussion.   

Whether working in dark mode is better or worse for your eyes is a topic for debate.   However, we understand that dark mode is not for everyone.  In fact, if you do not like change at all, both the Eclipse Classic and the Rational IDE themes, used in previous releases, are still available as choices within IDz 15.0.  



Moving IDz to Eclipse 4.8 as a base allows it to be compatible with the other IBM Explorer for zOS Aqua 3.2 offerings such as the latest version of z/OS Connect EE and MQ Explorer.  In addition, since IBM Developer for z/OS Enterprise Edition (IDzEE) is also part of the Application Delivery Foundation for z/OS (ADFz) bundle you can find the rest of the Eclipse 4.8 based bundle components at our new mainframe downloads location as well.  And finally, the new base of Eclipse 4.8 also requires an update to Installation Manager 1.9.x when using that install method.

IBM Developer for z/OS Enterprise Edition

Speaking of IDzEE, the IBM Dependency Based Build (DBB) 1.1 toolkit and DBB Web App now use TLSv1.2 for communication. Additionally, the DBB Web App is now available as Container Application Software for Enterprises (CASE), for deployment to OpenShift Container Platform such as Red Hat OpenShift on IBM Cloud.  

Another new feature added in DBB 1.1 is the zUnit Test Configuration Dependency Scanner.  This scanner automatically creates dependency relationships between the z/OS source program, test program and playback data file.  This allows DBB build scripts to automatically copy zUnit test case files from the local Git repository to MVS and execute zUnit test cases as part of the build in a DevOps pipeline. 

Just as some Halloween guests prefer chocolate, some prefer fruity chews and still others prefer hard candy when they trick or treat, application developers have different opinions about their preferred development environment.  According to the Top IDE Index Eclipse and VS Code are consistently near the top of the list.  With IDzEE, organizations can offer their developers the freedom of choice, providing the developer an environment they are familiar with and comfortable using.  This will lead to new developers becoming productive team members more quickly.  IDzEE 15.0 not only includes our traditional feature rich Eclipse based IDE, but also Wazi Developer for VS Code 1.1 and Wazi Developer for Workspaces 1.1.   This release of Wazi Developer for VS Code fully integrates the IBM User Build extension into the IBM Z Open Editor extension and expands its capabilities to support building PL/I and HLASM applications as well. We also added new features to property groups such as language-specific scoping with compiler options that configure the editor, as well as a complete new representation of property groups called ZAPP files. Finally Z Open Editor adds full support for the Zowe Secure Credentials Store Plugin for all functions such as remote include file resolution and user build.  The new addition for IDzEE 15.0 is Wazi Developer for Workspaces.  Using this option developers can work in a Web IDE with the same edit, build and debug capabilities as those provided by Wazi Developer for VS Code.  



UI Simplification

IBM Developer for z/OS 15.0 is a powerful Integrated Development Environment with a rich set of features for traditional mainframe application development languages such as COBOL and PL/I.  But IDz also contains many features for newer languages such as Java, JavaScript, JSON and XML.  Some feedback we have received is that all this functionality sometimes scares the traditional mainframe application developer.  OK maybe not scared such as when seeing a ghost, but being presented with all this functionality when they are only interested in working with COBOL, PL/I, JCL and z/OS resources can be a challenge for new users.  In order to help traditional mainframe developers with this challenge IDz 15.0 makes use of Eclipse Capabilities.  Eclipse Capabilities are a way to group functionality together and then filter that functionality from the user interface, if so desired.  For example, if you go to Preferences > General > Capabilities you will see a list of functional capabilities for Development including Java, Java EE, JavaScript and Plug-in Development.  When these options are selected, users will see the Java, Java EE, JavaScript and PDE perspectives in the Open Perspective dialog.  Likewise all the preferences related to these features will also be available in the list of Preference pages.  However, when these options are not selected then the associated perspectives, preference pages and views will not be available in the IDz user interface. Please note that even when a capability is not selected, the functionality is still installed and can be easily re-enabled.  In fact, if you are using IDz to develop Java Plug-ins of your own or for working with JSON or XML documents, you will certainly want to select the respective Plug-in Development, JSON or XML capability to enable that functionality.  The idea behind having these capabilities not selected by default in IDz 15.0 is to filter parts of the user interface from the view of the traditional mainframe application developer.  



Treats

Sticking with the Halloween theme, lets have a look at some treats that are yours for the taking with IBM Developer for z/OS.    

As more companies abandon traditional library managers and move to modern source code management repositories such as IBM Engineering Workflow Management (EWM) or Git, the Requests for Enhancement in the area of local project support keep showing up at our door.  In IDz 15.0 we have made the following enhancements:
  1. Menu Manager support for local resources
  2. Remote Integration support for source files stored as binary
  3. A new preference to control the Resubmit User Build dialog for EWM
  4. DBB User Build wizard improvements


Besides assisting with parallel development by enhancing our integration with modern source code managers, another area of focus was the z/OS Debugger and the Code Coverage collector.  IDz 15.0 adds support for debugging 64-bit COBOL and C/C++ as well as user experience improvements regarding z/OS Debugger Profiles, Code Coverage collection for PL/I and more.  For more details see What's new in IBM z/OS Debugger V15.0.

The z/OS Automated Unit Testing Framework (zUnit) has also been enhanced for IDz 15.0.  Noteworthy changes include: 
  1. Support for recording and creating tests for Batch Db2 COBOL programs invoked dynamically or statically via a program call.
  2. Support for recording and creating tests for Dynamically called programs in CICS (programs invoked with a CALL statement and not LINK or XCTL)
  3. Support for RETURN code evaluation if the application program being tested sets the RETURN-CODE
  4. Support for testing Hybrid COBOL programs - i.e. ones used in both Batch and CICS. A developer can choose to record test data for these programs in either Batch or CICS mode by using the program type checkbox. 
  5. Ability to version control and reuse unit tests created for COBOL Batch and CICS programs with the Dynamic Test Runner. Including checking out and running a test case from Git or EWM.
  6. Ability to customize the testcase templates used for testcase generation
  7. Support to record test data in a CICSPlex environment




As usual the Fix list for IBM Developer for z Systems and IBM Developer for z Systems Enterprise Edition has been updated to include information about version 15.0.  In addition to APAR fixes, it is also worth mentioning  that we fixed an issue we had only heard through some unofficial feedback.  The issue was regarding the cursor in LPEX occasionally moving to an incorrect location.  It turns out this was not a magic spell cast by a witch, but rather the issue would occur when the user clicked down on the mouse on one pixel and then released the click on a different pixel but not far enough away to select any text. Once that selection of length 0 was made, any edit or delete would cause the cursor to be placed in the wrong location leading to an unintended character deleted or on an insert in the wrong location.  Surely anyone who encountered such behavior will be happy to know it has been resolved.

Trick

While we have talked about many IDz 15.0 treats, it wouldn't be Halloween without a trick or two.  The first trick is located on the General page in Preferences.  By moving to the new Eclipse level the "Always run in background" preference is enabled by default. This means that for long running tasks you will no longer see a popup showing the progress of the task.  Instead you will have to pay attention to the status area or Progress view.  If you prefer the old behavior that pops up a dialog when a long running task is started, giving you the option to run in the background, then uncheck this preference.   

The second trick is also located under Preferences on the MFS Editor > MFLD Preferences page.  In IDz 15.0 the option to "Automatically generate Input and Output MFLD when a DFLD is added" is now selected by default.  If you prefer that the MFS Editor exhibits the old behavior from previous releases of IDz then  uncheck this preference.  

The last trick has to do with the menu action File > New > Project… Workstation COBOL or PL/I > Local Project.  If you were familiar with this action in previous versions of IDz, then you need to know that it has been replaced by the menu action File > New > Project… z/OS Development > Local z/OS Project.



Conclusion

Now that you know what IDz 15.0 contains, there are also a few features that existed in previous versions which have been removed.  In IDz 14.2.x we included a Technology Preview for COBOL Duplicate Code Detection (DCD).  Due to policy changes within IBM we will only be making technology previews available separately from now on.  This means that in order to try out DCD you need to download it from the DCD Early Program website.  

In addition the IBM Developer for z/OS announcement letter details the removal of Service Flow tooling, the Generic Service Client, and Menu Manager integration with Host Access Transformation Services (HATS).

Finally the IBM Z DevOps team would like to wish you all a Happy Halloween.   Stay safe, and wear your masks, even when you are not dressing up in your Halloween costumes.