Repository navigation
v0.8.0
Pre-release
Pre-release
CLI Plug-in
- Added ESM (RACF or equivalent) certificate and key ring management to the
zssh systemcommand group over SSH:zssh system keyring create|delete|list|list-rings|countandzssh system cert import|export|delete|show|connect|set-default|trust|rename|refresh. #1079 - Added
--exact-matchoption to thezssh list data-setcommand. This option defaults to false for backwards compatibility, but can be set to true to avoid appending.**to the end of data set patterns. #914 - Fixed attribute columns being displayed when
zssh list data-setis run without the--attributesoption. #1012
Client SDK
- Added detection of available disk space on the z/OS Unix deployment directory in the
ZSshUtils.installServermethod, giving the user the opportunity to cancel deployment if they have less than the recommended amount of available space. #1088 - Fixed server deploy/setup failing with "SSH setup cancelled" when connecting with a private key that requires a passphrase, even after entering the correct passphrase. #1094
- Added a
certificatesclient API for managing ESM (RACF or equivalent) key rings and digital certificates, exposing the following functions:createKeyring,deleteKeyring,refreshDigtcert,deleteCertificate,listCertificates,exportCertificate,importCertificate,showCertificate,listRings,countRing,connectCertificate,setDefaultCertificate,trustCertificate, andrenameCertificate. #1079 - Added recognition of Language Environment load failures.
CEE3561SandCEE3501Serror codes now produce an actionable error naming the required z/OS release and Language Environment APARs, witherrorCode: "ELERUNTIME", instead of a generic "Error starting Zowe server." Startup output is now accumulated before it is classified, so a diagnostic split across reads is still recognized. #871 - Added a verification step to
installServer()that runs the installed server binary and reports whether the remote system can load it, so a runtime mismatch surfaces during installation rather than on the next operation. The target system level from theuname -srvcommand is included in the error details. #871 - Added
exactMatchproperty to theListDatasetsRequesttype. This option defaults to false for backwards compatibility, but can be set to true to avoid appending.**to the end of data set patterns. #914 - When a command fails, a structured error payload attached by the server (e.g. the
safReturnsSAF/ESM codes from certificate commands) is now delivered to SDK consumers via theImperativeError'scauseErrors, instead of being flattened into the error text. #1079
z/OS Components
c: Stripped ASA control characters when reading spool files. #114c: Fixed--local-encodingbeing ignored when reading spool files. The source codepage was never copied to theZDSstruct passed tozds_read, so the conversion always fell back to the default source encoding (UTF-8). #1097c: Fixed an issue where passing numeric values to theencodingorlocal-encodingarguments would result in an empty string, as their argument definitions did not enable string coercion. Now, values provided to these options are converted to strings to ensure proper codepage conversion. #1095c: Added ESM (RACF or equivalent) certificate and key ring management to thesystemcommand group, migrating thekeyring-utilitiesfunctionality (R_datalib and System SSL) intozowexas two subgroups:system keyring create|delete|list|list-rings|countandsystem cert import|export|delete|show|connect|set-default|trust|rename|refresh. #1079- Breaking:
c: Changed the plug-in SDK typesast::ObjMapandplugin::ArgumentMapfromstd::unordered_maptostd::map, and added theZOWEX_PLUGIN_ABI_VERSIONconstant with a matching load-time check. Plug-ins must now be rebuilt against the currentextend/plugin.hppand must expandZOWEX_PLUGIN_DECLARE_ABI()alongsideregister_plugin(); a plug-in built against an earlier header is rejected at load time with a diagnostic instead of being loaded with mismatched type layouts. #871 c: Replaced the string-keyedstd::unordered_map/std::unordered_setcontainers inzjson.hppand the JSON-RPC server with the orderedstd::map/std::set, removing the binary's dependency on the out-of-line libc++ symbolstd::__1_e::__hash_memory. That symbol is absent fromCRTEQCXEon z/OS systems below the required Language Environment maintenance level, where it causedCEE3561Sat load time. JSON object members are now emitted in alphabetical key order rather than hash order; member order was never part of the API contract. #871c: Pinned the build to Open XL C/C++ 2.1, since 2.2 requires z/OS 3.1+ and references a newer libc++ than a z/OS 2.5 system can provide. Added a declared minimum supported z/OS level,ZosMinLevel=zosv2r5innative/c/toolchain.mk, passed to the compiler as-mzos-target.make runtime-imports(npm run z:imports) reports the LE/libc++ symbols the binary imports, andnpm run lint:compatrejects string-keyed hash containers at the source level. #871c: Added--exact-matchoption to thezowex ds listcommand. This option defaults to false for backwards compatibility, but can be set to true to avoid appending.**to the end of data set patterns. #914