Releases: IBM/dbb-zappbuild
zAppBuild 3.10.0
New & Noteworthy
This release brings support for IBM Test Accelerator for Z Early Development Test (Unit Test). Please note that the previous zUnit support has been dropped.
For customers using static linkage, a new capability is provided to perform an extended impact analysis process to automatically add statically called submodules to the build list. This is particularly useful for feature branch pipelines to avoid SYSLIB concatenations to the build libraries of the main branch.
Several utilities and language scripts switched to the latest DBB APIs (JobExec and UnixExec); zAppBuild 3.10.0 now requires at least DBB 2.0.2.x.
Additionally, all object decks are now documented as a build outputs.
What's Changed
- Uplift CRB.groovy to use UnixExec by @M-DLB in #530
- Fix Easytrieve Build-Conf Parameter by @dennis-behm in #541
- Ability to define the allocation options for DDStatements using instreamData by @dennis-behm in #542
- Switch BindUtilities from ISPFExec to JobExec by @dennis-behm in #532
- Uplift of the zCEE3 language script by @M-DLB in #538
- Uplift of the zCEE2 processing to use UnixExec by @M-DLB in #544
- Remove sample DBB 1.x Repository file by @dennis-behm in #550
- include Linkdependencies by @AnjaliAbraham in #535
- Added documentation of object decks with deployType by @M-DLB in #551
- Update Cobol work datasets allocation options by @dennis-behm in #559
- Implement pipeline support for TAZ unit tests by @dennis-behm in #561
- Update required DBB toolkit version and zAppBuild version file by @dennis-behm in #563
- REXX properties as required by @M-DLB in #565
- zAppBuild 3.10.0 fixes by @dennis-behm in #564
- Release zAppBuild 3.10.0 by @dennis-behm in #562
New Contributors
- @AnjaliAbraham made their first contribution in #535
Full Changelog: 3.9.0...3.10.0
zAppBuild 3.9.0
New & Noteworthy
This is a rather minor release of zAppBuild. It delivers a new language script via #154 . #516 adds --applicationCurrentBranch
to pass in the current application branch for pipeline builds from the CI orchestrator, this skips the computation of the current branch, which can be inaccurate in detached head scenarios.
What's Changed
- Link to changed files with user-provided baselineRef by @dennis-behm in #506
- Consolidate the config of dbb.LinkEditScanner.excludeFilter by @dennis-behm in #510
- Sample Easytrieve language script by @dennis-behm in #154
- Fix NPE on build process finalization in catch clause by @dennis-behm in #522
- Add sample to skip IDENTIFY record for genrated zunit test cases by @dennis-behm in #520
- Pass applications current branch name as CLI parameter by @dennis-behm in #516
- zAppBuild 3.9.0 version file update by @dennis-behm in #523
- Release zAppBuild 3.9.0 by @dennis-behm in #524
Full Changelog: 3.8.0...3.9.0
zAppBuild 3.8.0
New & Noteworthy
The main enhancement with this release is the capability to map build files to language configurations by using the DBB file property syntax as an alternative to the mapping via the languageConfigurationMapping.properties
file.
Please read through the below list of changes for the additional delivered changes.
What's Changed
- Handle unknown cli parameters by @dennis-behm in #487
- Improve output message on lookup of last successful build result by @dennis-behm in #490
- GitUtils - fix variables in error message when multiple references are found by @dennis-behm in #498
- Display a message for changed files have been excluded from build scope by @dennis-behm in #492
- Update mainBuildBranch documentation by @dennis-behm in #496
- Map build files to language configurations via DBB File property syntax by @dennis-behm in #499
- zAppBuild 3.8.0 version file update by @dennis-behm in #502
- Release zAppBuild 3.8.0 by @dennis-behm in #503
Full Changelog: 3.7.0...3.8.0
zAppBuild 3.7.0
New & Noteworthy
The release delivers following enhancements:
- A new summary of error messages on pipeline builds via #472. Sample output:
***************** Finalization of the build process *****************
...
** Updating build result BuildGroup:MortgageApplication-feature/470-errrorsummary BuildLabel:build.20240213.131754.983
** Build ended at Tue Feb 13 13:18:03 GMT+01:00 2024
** Build State : ERROR
** Total files processed : 5
** Summary of error messages
*! The build return code (8) for MortgageApplication/bms/epsmort.bms exceeded the maximum return code allowed (0)
*! The compile return code (12) for MortgageApplication/cobol/epscmort.cbl exceeded the maximum return code allowed (4)
*! The compile return code (12) for MortgageApplication/cobol/epscsmrt.cbl exceeded the maximum return code allowed (4)
*! The compile return code (12) for MortgageApplication/cobol/epsmlist.cbl exceeded the maximum return code allowed (4)
- the ability to validate the correct setup of system datasets #471 in standalone mode for verification the datasets.properties configuration and as optional build.groovy cli parameter.
and various minor enhancements and fixes.
What's Changed
- Missing sortBuildMap function for language script zCEE2 by @M-DLB in #465
- Provide a summary of error messages in pipeline builds by @dennis-behm in #472
- Generate reports only for impacted applications with impacted files by @dennis-behm in #475
- Validate existence of workspace and outDir folder by @dennis-behm in #473
- Implement Syntax rules for really long IDENTIFY statements by @dennis-behm in #480
- Validate System Datasets by @dennis-behm in #471
- Undefined variable in test script resetBuild by @dennis-behm in #482
- Correction of folder validation by @dennis-behm in #481
- Release zAppBuild 3.7.0 by @dennis-behm in #483
- zAppBuild 3.7.0 version file update by @dennis-behm in #484
- zAppBuild 3.7.0 version file update by @dennis-behm in #485
Full Changelog: 3.6.0...3.7.0
zAppBuild 3.6.0
New & Noteworthy
The release deliverers support for zOS Connect Open API Version 2, improved configuration parameters for IMS programs requiring the IMS language interface module, plus various minor enhancements and fixes.
Starting with this release, the zAppBuild release version is printed to the console to indicate which version you are using. We split the version number in a base version and custom version that allows you to define any modifications of the customised state.
What's Changed
- Limit SYSUT allocations according to Cobol compiler requirements by @dennis-behm in #447
- Document the zAppBuild and DBB Toolkit versions in build log and build result by @dennis-behm in #449
- Handle exceptions thrown by the DBB runtime by @dennis-behm in #448
- Add configuration options for IMS batch and online programs by @dennis-behm in #454
- Validate prerequisites of reporting capabilities by @dennis-behm in #459
- Support for zCEE2 by @M-DLB in #434
- Release zAppBuild 3.6.0 by @dennis-behm in #456
Full Changelog: 3.5.0...3.6.0
zAppBuild 3.5.0
New & Noteworthy
This release delivers enhancements for Db2 applications that require the DSNEXIT allocated for codepage conversion, updates to the MFS.groovy
processing to declare the MFS source as output, ability to use Transfer.groovy
to manage binary transfers and lots of smaller enhancements and some bugs fixes.
(Finally) we are shipping a version.properties
file that includes a reference to which version of zAppBuild was forked/downloaded from users. This will be updated with future releases.
Please note: This release has addressed a defect when computing the branch name in detached head situation. It now takes the all segments of a branch (e.g. feature/implementSomeCoolFeature
). Previously only the last segment was returned to name the DBB Collections and DBB Build Result group. Please assess your installation and be mindful if you used branch names with multiple segments to avoid breaking pipelines.
What's Changed
- Fix PL/I requiredBuildProperties property name by @lauren-li in #429
- Mask potential git credentials in git url by @dennis-behm in #419
- Add CopyMode property by @lauren-li in #428
- Fixing timestamp issue and adding decoration by @M-DLB in #425
- Improve calculation of branch name in detached head scenario by @dennis-behm in #435
- Introduce SDSNEXIT library for Assembler, Cobol and PLI language script by @dennis-behm in #437
- Update MFS.groovy declaring the map as output by @dennis-behm in #436
- Update to MortgageApplication CRB definitions by @M-DLB in #439
- Adding version file for zAppBuild by @dennis-behm in #438
- Release zAppBuild 3.5.0 by @dennis-behm in #430
New Contributors
- @lauren-li made their first contribution in #429
Full Changelog: 3.4.0...3.5.0
zAppBuild 3.4.0
New & Noteworthy
This release delivers new language scripts: CRB.groovy
is processing CICS Resource Builder definitions using the CICS TS Resource Builder to outline how infrastructure as code can be embedded into a build pipeline. The CICS resource definitions for the MortgageApplication are shipped as part of the sample. For z/OS Connect OpenAPI 3.0 artifacts, definitions are located in the same Git repository as the Cobol source code and can be processed with the zCEE3.groovy
language script.
The language scripts for Assembler, COBOL and PL/I were enhanced in their link step to leverage the IDENTIFY control statement. This capability from the z/OS Binder allows enriching a load module with information about the source version such as the Git hash.
The management of global, default application and application-level properties was updated to make it easier for build administrators to configure zAppBuild. Please see the new HOWTO.md providing additional guidance on this.
Please note: This release introduces a change for zAppBuild users using the applicationConfRootDir
property. This property is replaced with the applicationConfDir
setting in build-conf/build.properties.
What's Changed
- Support for CICS Resource Builder configurations by @dennis-behm in #391
- Documentation updates by @dennis-behm in #389
- Skip evaluating zunit jcl in preview mode by @dennis-behm in #398
- Use IDENTIFY to sign load modules by @dennis-behm in #369
- Computation of the language prefix by @dennis-behm in #400
- Transfer.groovy - specify the relative build file as key by @dennis-behm in #393
- Display message on missing build script mapping by @dennis-behm in #401
- Updates to the CRB.groovy script by @M-DLB in #409
- Updated MortgageApp CICS resources by @M-DLB in #408
- Refactoring loading build properties by @dennis-behm in #402
- Support for zCEE OpenAPI 3.0 processing by @M-DLB in #375
- Release zAppBuild 3.4.0 by @dennis-behm in #392
Full Changelog: 3.3.0...3.4.0
zAppBuild 3.3.0
New & Noteworthy
This release delivers a new strategy for files that don't need to be scanned but are processed by language scripts - such as JCLs, XML files or other configuration files. Starting with this release, zAppBuild is only scanning a file for its dependencies when the file extension is specified it in the dbb.scannerMapping
property. The property mapping, being located in build-conf/defaultzAppBuildConf.properties, is carrying the default mappings. Important: If you have a requirement to scan files with different file extensions, please add them to the configuration. Independently of the scanner mapping, files will continue to be recorded as logical files in the collections.
The test framework was significantly updated and is now easier to use and also to extend with your own test bucket.
What's Changed
- Strategy to record logical files but skip scanning them by @dennis-behm in #30
- Tolerate old dbb.scannerMapping configurations by @dennis-behm in #385
- Avoid additional scan of build file during impact analysis by @dennis-behm in #371
- Refactoring Test Framework by @dennis-behm in #363
- Ability to maintain consistent information in the DBB metadata store for dependencies on generated zunit test case by @dennis-behm in #368
- Fix condition evaluating generated test cases and zunit processing by @dennis-behm in #382
- Fix sorting of build list when creating test case dependency programatically by @dennis-behm in #364
- Skip inspecting load modules when running in preview mode by @dennis-behm in #387
- Release zAppBuild 3.3.0 by @dennis-behm in #360
Full Changelog: 3.2.0...3.3.0
zAppBuild v3.2.0
New & Noteworthy
This release of zAppBuild is adding some end-user enhancements such as a progress indicator on processing the build files mapped to a language script:
*** (1/3) Building file zopeneditor-sample/COBOL/SAM1.cbl
*** (2/3) Building file zopeneditor-sample/COBOL/SAM1LIB.cbl
*** (3/3) Building file zopeneditor-sample/COBOL/SAM2.cbl
Or the ability to display file attributes and their overrides (3rd line) :
*** (4/6) Building file MortgageApplication/cobol/epscsmrt.cbl
....
Program attributes: CICS=true*, SQL=false, DLI=false, MQ=false
Cobol compiler parms for MortgageApplication/cobol/epscsmrt.cbl = LIB,CICS
Link-Edit parms for MortgageApplication/cobol/epscsmrt.cbl = MAP,RENT,COMPAT(PM5),SSI=85e0df0e
A new supplemental build option --preview
to run a build without doing actually processing the build list to allow users with the insights, what would be done. Please read more about it in BUILD.md
The zAppBuild Testframework got extended with a new application for some sample Assembler sources.
The languages processing scripts Transfer.groovy
and Assembler.groovy
were enhanced. Transfer.groovy is now capable of processing files which require different dataset characteristics. The --debug
flag was introduced in Assembler.groovy to produce a debug side file (to be used with the IBM Problem Determination tools) along with some bug fixes.
The reporting capabilities got refactored to use the updated DBB 2.0 API.
What's Changed
- Uplift Transfer.groovy script by @dennis-behm in #328
- Refactor zAppBuild reporting capabilities by @dennis-behm #341
- Fix load libraries for scanning for link dependencies by @dennis-behm in #334
- Preview build option by @dennis-behm in #347
- Ability to print file attributes and including their overrides by @dennis-behm in #343
- Fix zAppBuild test framework test script for build preview option by @dennis-behm in #355
- Uplift Assembler.groovy script by @dennis-behm in #335
- Release zAppBuild 3.2.0 by @dennis-behm in #354
Full Changelog: 3.1.0...3.2.0
zAppBuild v3.1.0
New & Noteworthy
- A new functionality is provided for file level property overrides: A language configuration allows defining multiple build properties for a set of mapped files. See details on the documentation about File Property Management in zAppBuild
- zAppBuild is leveraging the MQ file attributes of the logical file of DBB to determine automatically the required MQ stub
- The way allocations are done for object decks has changed. While previously, a temp dataset was used in most of the cases, the release is simplifying the scripts by always storing the object deck in an object deck dataset.
- Ability to configure the timestamp format of the build output folder
Note: It it highly recommended to update to the latest DBB 2.0 PTF UI83593 / PH51222. For all available fixes, checkout the IBM DBB Support page.
What's Changed
- Leverage MQ file flag by @dennis-behm in #245
- Search path configuration updates by @dennis-behm in #267
- ZunitConfig.groovy updates by @dennis-behm in #299
- Remove zunit_resolutionRules from required build properties by @dennis-behm in #307
- Externalize the Build Folder Timestamp Format by @donnellt in #314
- Synchronising git history because of cherry picked commits by @dennis-behm in #324
- Updating zappbuild test framework by @dennis-behm in #325
- Simplify obtaining the playbackDependency by @dennis-behm in #311
- Implement language configuration strategy to provide alternative approach to define overrides by @Anuprakash-Moothedath in #295
- Fixed lib imports and deployType in REXX.groovy by @M-DLB in #320
New Contributors
- @Anuprakash-Moothedath made their first contribution in #295
- @donnellt made their first contribution in #314
Full Changelog: 3.0.1...3.1.0