diff --git a/__tests__/__packages__/cli-test-utils/package.json b/__tests__/__packages__/cli-test-utils/package.json index 9fceacb7ea..5650f2d373 100644 --- a/__tests__/__packages__/cli-test-utils/package.json +++ b/__tests__/__packages__/cli-test-utils/package.json @@ -1,6 +1,6 @@ { "name": "@zowe/cli-test-utils", - "version": "8.12.0", + "version": "8.13.0", "description": "Test utilities package for Zowe CLI plug-ins", "author": "Zowe", "license": "EPL-2.0", @@ -43,7 +43,7 @@ "devDependencies": { "@types/js-yaml": "^4.0.9", "@types/uuid": "^10.0.0", - "@zowe/imperative": "8.12.0" + "@zowe/imperative": "8.13.0" }, "peerDependencies": { "@zowe/imperative": "^8.0.0" diff --git a/lerna.json b/lerna.json index 78f717104d..8bf4a10fed 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "8.12.0", + "version": "8.13.0", "command": { "publish": { "ignoreChanges": [ diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index b3c4eef994..5faa228884 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -52,7 +52,7 @@ }, "__tests__/__packages__/cli-test-utils": { "name": "@zowe/cli-test-utils", - "version": "8.12.0", + "version": "8.13.0", "license": "EPL-2.0", "dependencies": { "find-up": "^5.0.0", @@ -63,7 +63,7 @@ "devDependencies": { "@types/js-yaml": "^4.0.9", "@types/uuid": "^10.0.0", - "@zowe/imperative": "8.12.0" + "@zowe/imperative": "8.13.0" }, "peerDependencies": { "@zowe/imperative": "^8.0.0" @@ -16271,21 +16271,21 @@ }, "packages/cli": { "name": "@zowe/cli", - "version": "8.12.0", + "version": "8.13.0", "hasInstallScript": true, "license": "EPL-2.0", "dependencies": { - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0", - "@zowe/provisioning-for-zowe-sdk": "8.12.0", - "@zowe/zos-console-for-zowe-sdk": "8.12.0", - "@zowe/zos-files-for-zowe-sdk": "8.12.0", - "@zowe/zos-jobs-for-zowe-sdk": "8.12.0", - "@zowe/zos-logs-for-zowe-sdk": "8.12.0", - "@zowe/zos-tso-for-zowe-sdk": "8.12.0", - "@zowe/zos-uss-for-zowe-sdk": "8.12.0", - "@zowe/zos-workflows-for-zowe-sdk": "8.12.0", - "@zowe/zosmf-for-zowe-sdk": "8.12.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0", + "@zowe/provisioning-for-zowe-sdk": "8.13.0", + "@zowe/zos-console-for-zowe-sdk": "8.13.0", + "@zowe/zos-files-for-zowe-sdk": "8.13.0", + "@zowe/zos-jobs-for-zowe-sdk": "8.13.0", + "@zowe/zos-logs-for-zowe-sdk": "8.13.0", + "@zowe/zos-tso-for-zowe-sdk": "8.13.0", + "@zowe/zos-uss-for-zowe-sdk": "8.13.0", + "@zowe/zos-workflows-for-zowe-sdk": "8.13.0", + "@zowe/zosmf-for-zowe-sdk": "8.13.0", "find-process": "1.4.7", "lodash": "4.17.21", "minimatch": "9.0.5", @@ -16298,7 +16298,7 @@ "@types/diff": "^5.0.9", "@types/lodash": "^4.17.6", "@types/tar": "^6.1.11", - "@zowe/cli-test-utils": "8.12.0", + "@zowe/cli-test-utils": "8.13.0", "comment-json": "^4.2.3", "strip-ansi": "^6.0.1", "which": "^4.0.0" @@ -16354,15 +16354,15 @@ }, "packages/core": { "name": "@zowe/core-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "license": "EPL-2.0", "dependencies": { "comment-json": "~4.2.3", "string-width": "^4.2.3" }, "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/imperative": "8.13.0" }, "engines": { "node": ">=18.12.0" @@ -16373,7 +16373,7 @@ }, "packages/imperative": { "name": "@zowe/imperative", - "version": "8.12.0", + "version": "8.13.0", "license": "EPL-2.0", "dependencies": { "@types/yargs": "^17.0.32", @@ -16567,16 +16567,16 @@ }, "packages/provisioning": { "name": "@zowe/provisioning-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "license": "EPL-2.0", "dependencies": { "js-yaml": "^4.1.0" }, "devDependencies": { "@types/js-yaml": "^4.0.9", - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0" }, "engines": { "node": ">=18.12.0" @@ -16601,15 +16601,15 @@ }, "packages/workflows": { "name": "@zowe/zos-workflows-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "license": "EPL-2.0", "dependencies": { - "@zowe/zos-files-for-zowe-sdk": "8.12.0" + "@zowe/zos-files-for-zowe-sdk": "8.13.0" }, "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0" }, "engines": { "node": ">=18.12.0" @@ -16621,12 +16621,12 @@ }, "packages/zosconsole": { "name": "@zowe/zos-console-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "license": "EPL-2.0", "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0" }, "engines": { "node": ">=18.12.0" @@ -16638,17 +16638,17 @@ }, "packages/zosfiles": { "name": "@zowe/zos-files-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "license": "EPL-2.0", "dependencies": { "lodash": "^4.17.21", "minimatch": "^9.0.5" }, "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0", - "@zowe/zos-uss-for-zowe-sdk": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0", + "@zowe/zos-uss-for-zowe-sdk": "8.13.0" }, "engines": { "node": ">=18.12.0" @@ -16680,15 +16680,15 @@ }, "packages/zosjobs": { "name": "@zowe/zos-jobs-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "license": "EPL-2.0", "dependencies": { - "@zowe/zos-files-for-zowe-sdk": "8.12.0" + "@zowe/zos-files-for-zowe-sdk": "8.13.0" }, "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0" }, "engines": { "node": ">=18.12.0" @@ -16700,12 +16700,12 @@ }, "packages/zoslogs": { "name": "@zowe/zos-logs-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "license": "EPL-2.0", "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0" }, "engines": { "node": ">=18.12.0" @@ -16717,12 +16717,12 @@ }, "packages/zosmf": { "name": "@zowe/zosmf-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "license": "EPL-2.0", "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0" }, "engines": { "node": ">=18.12.0" @@ -16734,15 +16734,15 @@ }, "packages/zostso": { "name": "@zowe/zos-tso-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "license": "EPL-2.0", "dependencies": { - "@zowe/zosmf-for-zowe-sdk": "8.12.0" + "@zowe/zosmf-for-zowe-sdk": "8.13.0" }, "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0" }, "engines": { "node": ">=18.12.0" @@ -16754,15 +16754,15 @@ }, "packages/zosuss": { "name": "@zowe/zos-uss-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "license": "EPL-2.0", "dependencies": { "ssh2": "^1.15.0" }, "devDependencies": { "@types/ssh2": "^1.11.19", - "@zowe/cli-test-utils": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/imperative": "8.13.0" }, "engines": { "node": ">=18.12.0" diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index 0317c7aa09..0367216635 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,10 +1,19 @@ # Change Log All notable changes to the Zowe CLI package will be documented in this file. +## `8.13.0` +<<<<<<< HEAD ## Recent Changes +<<<<<<< Updated upstream - Enhancement: Users were not warned when copying partitioned data sets with identical member names. Now, the user is prompted to confirm before continuing the copy operation to avoid potential data loss. [#2349] (https://github.com/zowe/zowe-cli/issues/2349) +======= +- Enhancement: Added the `--data-set-type` flag to create sequential data set command to allow for creating extended and large formatted sequential data sets. [#2141](https://github.com/zowe/zowe-cli/issues/2141) +>>>>>>> master +======= +- BugFix: Users were not warned when copying partitioned data sets with identical member names. Now, the user is prompted to confirm before continuing the copy operation to avoid potential data loss. [#2349] (https://github.com/zowe/zowe-cli/issues/2349) +>>>>>>> Stashed changes - Enhancement: Added `--recordRange` flag to `zowe jobs download output` command to allow users to select a specific range of records to output from a spool file. [#2411](https://github.com/zowe/zowe-cli/pull/2411) - BugFix: The `zowe zos-files copy data-set` command overwrites the contents of the target data set without user confirmation. A `--safe-replace` option was added which prompts the user to confirm before overwriting the contents of the target data set. [#2369] (https://github.com/zowe/zowe-cli/issues/2369) diff --git a/packages/cli/__tests__/zosfiles/__integration__/create/ps/__snapshots__/cli.files.create.dataset.ps.integration.test.ts.snap b/packages/cli/__tests__/zosfiles/__integration__/create/ps/__snapshots__/cli.files.create.dataset.ps.integration.test.ts.snap index 0377d79850..fb35fbe217 100644 --- a/packages/cli/__tests__/zosfiles/__integration__/create/ps/__snapshots__/cli.files.create.dataset.ps.integration.test.ts.snap +++ b/packages/cli/__tests__/zosfiles/__integration__/create/ps/__snapshots__/cli.files.create.dataset.ps.integration.test.ts.snap @@ -42,6 +42,10 @@ exports[`Create Physical Sequential Data Set should display the help 1`] = ` The SMS data class to use for the allocation + --data-set-type | --dst | --dsntype (string) + + The data set type (BASIC, EXTPREF, EXTREQ, HFS, LARGE, PDS, LIBRARY, PIPE) + --device-type | --dt | --unit (string) The device type, also known as 'unit' @@ -195,13 +199,18 @@ exports[`Create Physical Sequential Data Set should display the help 1`] = ` $ zowe zos-files create data-set-sequential NEW.PS.DATASET + - Create a LARGE format sequential data set with default + parameters: + + $ zowe zos-files create data-set-sequential --data-set-type \`LARGE\` + ================Z/OS CFILES CREATE DATA-SET-SEQUENTIAL HELP WITH RFJ=========== { \\"success\\": true, \\"exitCode\\": 0, \\"message\\": \\"The help was constructed for command: data-set-sequential.\\", - \\"stdout\\": \\"\\\\n COMMAND NAME\\\\n ------------\\\\n\\\\n data-set-sequential | ps\\\\n\\\\n DESCRIPTION\\\\n -----------\\\\n\\\\n Create physical sequential data sets (PS).\\\\n\\\\n USAGE\\\\n -----\\\\n\\\\n zowe zos-files create data-set-sequential [options]\\\\n\\\\n POSITIONAL ARGUMENTS\\\\n --------------------\\\\n\\\\n dataSetName\\\\t\\\\t (string)\\\\n\\\\n The name of the data set that you want to create\\\\n\\\\n OPTIONS\\\\n -------\\\\n\\\\n --attributes | -a (boolean)\\\\n\\\\n Show the full allocation attributes\\\\n\\\\n --block-size | --bs | --blksize (number)\\\\n\\\\n The block size for the data set (for example, 6160)\\\\n\\\\n Default value: 6160\\\\n\\\\n --data-class | --dc (string)\\\\n\\\\n The SMS data class to use for the allocation\\\\n\\\\n --device-type | --dt | --unit (string)\\\\n\\\\n The device type, also known as 'unit'\\\\n\\\\n --directory-blocks | --db | --dirblks (number)\\\\n\\\\n The number of directory blocks (for example, 25)\\\\n\\\\n --management-class | --mc (string)\\\\n\\\\n The SMS management class to use for the allocation\\\\n\\\\n --primary-space | --ps (number)\\\\n\\\\n The primary space allocation (for example, 5)\\\\n\\\\n Default value: 1\\\\n\\\\n --record-format | --rf | --recfm (string)\\\\n\\\\n The record format for the data set (for example, FB for \\\\\\"Fixed Block\\\\\\")\\\\n\\\\n Default value: FB\\\\n\\\\n --record-length | --rl | --lrecl (number)\\\\n\\\\n The logical record length. Analogous to the length of a line (for example, 80)\\\\n\\\\n Default value: 80\\\\n\\\\n --secondary-space | --ss (number)\\\\n\\\\n The secondary space allocation (for example, 1)\\\\n\\\\n --size | --sz (string)\\\\n\\\\n The size of the data set (specified as nCYL or nTRK - where n is the number of\\\\n cylinders or tracks). Sets the primary allocation (the secondary allocation\\\\n becomes ~10% of the primary).\\\\n\\\\n --storage-class | --sc (string)\\\\n\\\\n The SMS storage class to use for the allocation\\\\n\\\\n --volume-serial | --vs | --volser (string)\\\\n\\\\n The volume serial (VOLSER) on which you want the data set to be placed. A VOLSER\\\\n is analogous to a drive name on a PC.\\\\n\\\\n --response-timeout | --rto (number)\\\\n\\\\n The maximum amount of time in seconds the z/OSMF Files TSO servlet should run\\\\n before returning a response. Any request exceeding this amount of time will be\\\\n terminated and return an error. Allowed values: 5 - 600\\\\n\\\\n ZOSMF CONNECTION OPTIONS\\\\n ------------------------\\\\n\\\\n --host | -H (string)\\\\n\\\\n The z/OSMF server host name.\\\\n\\\\n --port | -P (number)\\\\n\\\\n The z/OSMF server port.\\\\n\\\\n Default value: 443\\\\n\\\\n --user | -u (string)\\\\n\\\\n Mainframe (z/OSMF) user name, which can be the same as your TSO login.\\\\n\\\\n --password | --pass | --pw (string)\\\\n\\\\n Mainframe (z/OSMF) password, which can be the same as your TSO password.\\\\n\\\\n --reject-unauthorized | --ru (boolean)\\\\n\\\\n Reject self-signed certificates.\\\\n\\\\n Default value: true\\\\n\\\\n --base-path | --bp (string)\\\\n\\\\n The base path for your API mediation layer instance. Specify this option to\\\\n prepend the base path to all z/OSMF resources when making REST requests. Do not\\\\n specify this option if you are not using an API mediation layer.\\\\n\\\\n --protocol (string)\\\\n\\\\n The protocol used (HTTP or HTTPS)\\\\n\\\\n Default value: https\\\\n Allowed values: http, https\\\\n\\\\n --cert-file (local file path)\\\\n\\\\n The file path to a certificate file to use for authentication\\\\n\\\\n --cert-key-file (local file path)\\\\n\\\\n The file path to a certificate key file to use for authentication\\\\n\\\\n PROFILE OPTIONS\\\\n ---------------\\\\n\\\\n --zosmf-profile | --zosmf-p (string)\\\\n\\\\n The name of a (zosmf) profile to load for this command execution.\\\\n\\\\n --base-profile | --base-p (string)\\\\n\\\\n The name of a (base) profile to load for this command execution.\\\\n\\\\n BASE CONNECTION OPTIONS\\\\n -----------------------\\\\n\\\\n --token-type | --tt (string)\\\\n\\\\n The type of token to get and use for the API. Omit this option to use the\\\\n default token type, which is provided by 'zowe auth login'.\\\\n\\\\n --token-value | --tv (string)\\\\n\\\\n The value of the token to pass to the API.\\\\n\\\\n GLOBAL OPTIONS\\\\n --------------\\\\n\\\\n --show-inputs-only (boolean)\\\\n\\\\n Show command inputs and do not run the command\\\\n\\\\n --response-format-json | --rfj (boolean)\\\\n\\\\n Produce JSON formatted data from a command\\\\n\\\\n --help | -h (boolean)\\\\n\\\\n Display help text\\\\n\\\\n --help-web | --hw (boolean)\\\\n\\\\n Display HTML help in browser\\\\n\\\\n EXAMPLES\\\\n --------\\\\n\\\\n - Create an empty physical sequential data set with default\\\\n parameters:\\\\n\\\\n $ zowe zos-files create data-set-sequential NEW.PS.DATASET\\\\n\\\\n\\", + \\"stdout\\": \\"\\\\n COMMAND NAME\\\\n ------------\\\\n\\\\n data-set-sequential | ps\\\\n\\\\n DESCRIPTION\\\\n -----------\\\\n\\\\n Create physical sequential data sets (PS).\\\\n\\\\n USAGE\\\\n -----\\\\n\\\\n zowe zos-files create data-set-sequential [options]\\\\n\\\\n POSITIONAL ARGUMENTS\\\\n --------------------\\\\n\\\\n dataSetName\\\\t\\\\t (string)\\\\n\\\\n The name of the data set that you want to create\\\\n\\\\n OPTIONS\\\\n -------\\\\n\\\\n --attributes | -a (boolean)\\\\n\\\\n Show the full allocation attributes\\\\n\\\\n --block-size | --bs | --blksize (number)\\\\n\\\\n The block size for the data set (for example, 6160)\\\\n\\\\n Default value: 6160\\\\n\\\\n --data-class | --dc (string)\\\\n\\\\n The SMS data class to use for the allocation\\\\n\\\\n --data-set-type | --dst | --dsntype (string)\\\\n\\\\n The data set type (BASIC, EXTPREF, EXTREQ, HFS, LARGE, PDS, LIBRARY, PIPE)\\\\n\\\\n --device-type | --dt | --unit (string)\\\\n\\\\n The device type, also known as 'unit'\\\\n\\\\n --directory-blocks | --db | --dirblks (number)\\\\n\\\\n The number of directory blocks (for example, 25)\\\\n\\\\n --management-class | --mc (string)\\\\n\\\\n The SMS management class to use for the allocation\\\\n\\\\n --primary-space | --ps (number)\\\\n\\\\n The primary space allocation (for example, 5)\\\\n\\\\n Default value: 1\\\\n\\\\n --record-format | --rf | --recfm (string)\\\\n\\\\n The record format for the data set (for example, FB for \\\\\\"Fixed Block\\\\\\")\\\\n\\\\n Default value: FB\\\\n\\\\n --record-length | --rl | --lrecl (number)\\\\n\\\\n The logical record length. Analogous to the length of a line (for example, 80)\\\\n\\\\n Default value: 80\\\\n\\\\n --secondary-space | --ss (number)\\\\n\\\\n The secondary space allocation (for example, 1)\\\\n\\\\n --size | --sz (string)\\\\n\\\\n The size of the data set (specified as nCYL or nTRK - where n is the number of\\\\n cylinders or tracks). Sets the primary allocation (the secondary allocation\\\\n becomes ~10% of the primary).\\\\n\\\\n --storage-class | --sc (string)\\\\n\\\\n The SMS storage class to use for the allocation\\\\n\\\\n --volume-serial | --vs | --volser (string)\\\\n\\\\n The volume serial (VOLSER) on which you want the data set to be placed. A VOLSER\\\\n is analogous to a drive name on a PC.\\\\n\\\\n --response-timeout | --rto (number)\\\\n\\\\n The maximum amount of time in seconds the z/OSMF Files TSO servlet should run\\\\n before returning a response. Any request exceeding this amount of time will be\\\\n terminated and return an error. Allowed values: 5 - 600\\\\n\\\\n ZOSMF CONNECTION OPTIONS\\\\n ------------------------\\\\n\\\\n --host | -H (string)\\\\n\\\\n The z/OSMF server host name.\\\\n\\\\n --port | -P (number)\\\\n\\\\n The z/OSMF server port.\\\\n\\\\n Default value: 443\\\\n\\\\n --user | -u (string)\\\\n\\\\n Mainframe (z/OSMF) user name, which can be the same as your TSO login.\\\\n\\\\n --password | --pass | --pw (string)\\\\n\\\\n Mainframe (z/OSMF) password, which can be the same as your TSO password.\\\\n\\\\n --reject-unauthorized | --ru (boolean)\\\\n\\\\n Reject self-signed certificates.\\\\n\\\\n Default value: true\\\\n\\\\n --base-path | --bp (string)\\\\n\\\\n The base path for your API mediation layer instance. Specify this option to\\\\n prepend the base path to all z/OSMF resources when making REST requests. Do not\\\\n specify this option if you are not using an API mediation layer.\\\\n\\\\n --protocol (string)\\\\n\\\\n The protocol used (HTTP or HTTPS)\\\\n\\\\n Default value: https\\\\n Allowed values: http, https\\\\n\\\\n --cert-file (local file path)\\\\n\\\\n The file path to a certificate file to use for authentication\\\\n\\\\n --cert-key-file (local file path)\\\\n\\\\n The file path to a certificate key file to use for authentication\\\\n\\\\n PROFILE OPTIONS\\\\n ---------------\\\\n\\\\n --zosmf-profile | --zosmf-p (string)\\\\n\\\\n The name of a (zosmf) profile to load for this command execution.\\\\n\\\\n --base-profile | --base-p (string)\\\\n\\\\n The name of a (base) profile to load for this command execution.\\\\n\\\\n BASE CONNECTION OPTIONS\\\\n -----------------------\\\\n\\\\n --token-type | --tt (string)\\\\n\\\\n The type of token to get and use for the API. Omit this option to use the\\\\n default token type, which is provided by 'zowe auth login'.\\\\n\\\\n --token-value | --tv (string)\\\\n\\\\n The value of the token to pass to the API.\\\\n\\\\n GLOBAL OPTIONS\\\\n --------------\\\\n\\\\n --show-inputs-only (boolean)\\\\n\\\\n Show command inputs and do not run the command\\\\n\\\\n --response-format-json | --rfj (boolean)\\\\n\\\\n Produce JSON formatted data from a command\\\\n\\\\n --help | -h (boolean)\\\\n\\\\n Display help text\\\\n\\\\n --help-web | --hw (boolean)\\\\n\\\\n Display HTML help in browser\\\\n\\\\n EXAMPLES\\\\n --------\\\\n\\\\n - Create an empty physical sequential data set with default\\\\n parameters:\\\\n\\\\n $ zowe zos-files create data-set-sequential NEW.PS.DATASET\\\\n\\\\n - Create a LARGE format sequential data set with default\\\\n parameters:\\\\n\\\\n $ zowe zos-files create data-set-sequential --data-set-type \`LARGE\`\\\\n\\\\n\\", \\"stderr\\": \\"\\", - \\"data\\": \\"\\\\n COMMAND NAME\\\\n ------------\\\\n\\\\n data-set-sequential | ps\\\\n\\\\n DESCRIPTION\\\\n -----------\\\\n\\\\n Create physical sequential data sets (PS).\\\\n\\\\n USAGE\\\\n -----\\\\n\\\\n zowe zos-files create data-set-sequential [options]\\\\n\\\\n POSITIONAL ARGUMENTS\\\\n --------------------\\\\n\\\\n dataSetName\\\\t\\\\t (string)\\\\n\\\\n The name of the data set that you want to create\\\\n\\\\n OPTIONS\\\\n -------\\\\n\\\\n --attributes | -a (boolean)\\\\n\\\\n Show the full allocation attributes\\\\n\\\\n --block-size | --bs | --blksize (number)\\\\n\\\\n The block size for the data set (for example, 6160)\\\\n\\\\n Default value: 6160\\\\n\\\\n --data-class | --dc (string)\\\\n\\\\n The SMS data class to use for the allocation\\\\n\\\\n --device-type | --dt | --unit (string)\\\\n\\\\n The device type, also known as 'unit'\\\\n\\\\n --directory-blocks | --db | --dirblks (number)\\\\n\\\\n The number of directory blocks (for example, 25)\\\\n\\\\n --management-class | --mc (string)\\\\n\\\\n The SMS management class to use for the allocation\\\\n\\\\n --primary-space | --ps (number)\\\\n\\\\n The primary space allocation (for example, 5)\\\\n\\\\n Default value: 1\\\\n\\\\n --record-format | --rf | --recfm (string)\\\\n\\\\n The record format for the data set (for example, FB for \\\\\\"Fixed Block\\\\\\")\\\\n\\\\n Default value: FB\\\\n\\\\n --record-length | --rl | --lrecl (number)\\\\n\\\\n The logical record length. Analogous to the length of a line (for example, 80)\\\\n\\\\n Default value: 80\\\\n\\\\n --secondary-space | --ss (number)\\\\n\\\\n The secondary space allocation (for example, 1)\\\\n\\\\n --size | --sz (string)\\\\n\\\\n The size of the data set (specified as nCYL or nTRK - where n is the number of\\\\n cylinders or tracks). Sets the primary allocation (the secondary allocation\\\\n becomes ~10% of the primary).\\\\n\\\\n --storage-class | --sc (string)\\\\n\\\\n The SMS storage class to use for the allocation\\\\n\\\\n --volume-serial | --vs | --volser (string)\\\\n\\\\n The volume serial (VOLSER) on which you want the data set to be placed. A VOLSER\\\\n is analogous to a drive name on a PC.\\\\n\\\\n --response-timeout | --rto (number)\\\\n\\\\n The maximum amount of time in seconds the z/OSMF Files TSO servlet should run\\\\n before returning a response. Any request exceeding this amount of time will be\\\\n terminated and return an error. Allowed values: 5 - 600\\\\n\\\\n ZOSMF CONNECTION OPTIONS\\\\n ------------------------\\\\n\\\\n --host | -H (string)\\\\n\\\\n The z/OSMF server host name.\\\\n\\\\n --port | -P (number)\\\\n\\\\n The z/OSMF server port.\\\\n\\\\n Default value: 443\\\\n\\\\n --user | -u (string)\\\\n\\\\n Mainframe (z/OSMF) user name, which can be the same as your TSO login.\\\\n\\\\n --password | --pass | --pw (string)\\\\n\\\\n Mainframe (z/OSMF) password, which can be the same as your TSO password.\\\\n\\\\n --reject-unauthorized | --ru (boolean)\\\\n\\\\n Reject self-signed certificates.\\\\n\\\\n Default value: true\\\\n\\\\n --base-path | --bp (string)\\\\n\\\\n The base path for your API mediation layer instance. Specify this option to\\\\n prepend the base path to all z/OSMF resources when making REST requests. Do not\\\\n specify this option if you are not using an API mediation layer.\\\\n\\\\n --protocol (string)\\\\n\\\\n The protocol used (HTTP or HTTPS)\\\\n\\\\n Default value: https\\\\n Allowed values: http, https\\\\n\\\\n --cert-file (local file path)\\\\n\\\\n The file path to a certificate file to use for authentication\\\\n\\\\n --cert-key-file (local file path)\\\\n\\\\n The file path to a certificate key file to use for authentication\\\\n\\\\n PROFILE OPTIONS\\\\n ---------------\\\\n\\\\n --zosmf-profile | --zosmf-p (string)\\\\n\\\\n The name of a (zosmf) profile to load for this command execution.\\\\n\\\\n --base-profile | --base-p (string)\\\\n\\\\n The name of a (base) profile to load for this command execution.\\\\n\\\\n BASE CONNECTION OPTIONS\\\\n -----------------------\\\\n\\\\n --token-type | --tt (string)\\\\n\\\\n The type of token to get and use for the API. Omit this option to use the\\\\n default token type, which is provided by 'zowe auth login'.\\\\n\\\\n --token-value | --tv (string)\\\\n\\\\n The value of the token to pass to the API.\\\\n\\\\n GLOBAL OPTIONS\\\\n --------------\\\\n\\\\n --show-inputs-only (boolean)\\\\n\\\\n Show command inputs and do not run the command\\\\n\\\\n --response-format-json | --rfj (boolean)\\\\n\\\\n Produce JSON formatted data from a command\\\\n\\\\n --help | -h (boolean)\\\\n\\\\n Display help text\\\\n\\\\n --help-web | --hw (boolean)\\\\n\\\\n Display HTML help in browser\\\\n\\\\n EXAMPLES\\\\n --------\\\\n\\\\n - Create an empty physical sequential data set with default\\\\n parameters:\\\\n\\\\n $ zowe zos-files create data-set-sequential NEW.PS.DATASET\\\\n\\\\n\\" + \\"data\\": \\"\\\\n COMMAND NAME\\\\n ------------\\\\n\\\\n data-set-sequential | ps\\\\n\\\\n DESCRIPTION\\\\n -----------\\\\n\\\\n Create physical sequential data sets (PS).\\\\n\\\\n USAGE\\\\n -----\\\\n\\\\n zowe zos-files create data-set-sequential [options]\\\\n\\\\n POSITIONAL ARGUMENTS\\\\n --------------------\\\\n\\\\n dataSetName\\\\t\\\\t (string)\\\\n\\\\n The name of the data set that you want to create\\\\n\\\\n OPTIONS\\\\n -------\\\\n\\\\n --attributes | -a (boolean)\\\\n\\\\n Show the full allocation attributes\\\\n\\\\n --block-size | --bs | --blksize (number)\\\\n\\\\n The block size for the data set (for example, 6160)\\\\n\\\\n Default value: 6160\\\\n\\\\n --data-class | --dc (string)\\\\n\\\\n The SMS data class to use for the allocation\\\\n\\\\n --data-set-type | --dst | --dsntype (string)\\\\n\\\\n The data set type (BASIC, EXTPREF, EXTREQ, HFS, LARGE, PDS, LIBRARY, PIPE)\\\\n\\\\n --device-type | --dt | --unit (string)\\\\n\\\\n The device type, also known as 'unit'\\\\n\\\\n --directory-blocks | --db | --dirblks (number)\\\\n\\\\n The number of directory blocks (for example, 25)\\\\n\\\\n --management-class | --mc (string)\\\\n\\\\n The SMS management class to use for the allocation\\\\n\\\\n --primary-space | --ps (number)\\\\n\\\\n The primary space allocation (for example, 5)\\\\n\\\\n Default value: 1\\\\n\\\\n --record-format | --rf | --recfm (string)\\\\n\\\\n The record format for the data set (for example, FB for \\\\\\"Fixed Block\\\\\\")\\\\n\\\\n Default value: FB\\\\n\\\\n --record-length | --rl | --lrecl (number)\\\\n\\\\n The logical record length. Analogous to the length of a line (for example, 80)\\\\n\\\\n Default value: 80\\\\n\\\\n --secondary-space | --ss (number)\\\\n\\\\n The secondary space allocation (for example, 1)\\\\n\\\\n --size | --sz (string)\\\\n\\\\n The size of the data set (specified as nCYL or nTRK - where n is the number of\\\\n cylinders or tracks). Sets the primary allocation (the secondary allocation\\\\n becomes ~10% of the primary).\\\\n\\\\n --storage-class | --sc (string)\\\\n\\\\n The SMS storage class to use for the allocation\\\\n\\\\n --volume-serial | --vs | --volser (string)\\\\n\\\\n The volume serial (VOLSER) on which you want the data set to be placed. A VOLSER\\\\n is analogous to a drive name on a PC.\\\\n\\\\n --response-timeout | --rto (number)\\\\n\\\\n The maximum amount of time in seconds the z/OSMF Files TSO servlet should run\\\\n before returning a response. Any request exceeding this amount of time will be\\\\n terminated and return an error. Allowed values: 5 - 600\\\\n\\\\n ZOSMF CONNECTION OPTIONS\\\\n ------------------------\\\\n\\\\n --host | -H (string)\\\\n\\\\n The z/OSMF server host name.\\\\n\\\\n --port | -P (number)\\\\n\\\\n The z/OSMF server port.\\\\n\\\\n Default value: 443\\\\n\\\\n --user | -u (string)\\\\n\\\\n Mainframe (z/OSMF) user name, which can be the same as your TSO login.\\\\n\\\\n --password | --pass | --pw (string)\\\\n\\\\n Mainframe (z/OSMF) password, which can be the same as your TSO password.\\\\n\\\\n --reject-unauthorized | --ru (boolean)\\\\n\\\\n Reject self-signed certificates.\\\\n\\\\n Default value: true\\\\n\\\\n --base-path | --bp (string)\\\\n\\\\n The base path for your API mediation layer instance. Specify this option to\\\\n prepend the base path to all z/OSMF resources when making REST requests. Do not\\\\n specify this option if you are not using an API mediation layer.\\\\n\\\\n --protocol (string)\\\\n\\\\n The protocol used (HTTP or HTTPS)\\\\n\\\\n Default value: https\\\\n Allowed values: http, https\\\\n\\\\n --cert-file (local file path)\\\\n\\\\n The file path to a certificate file to use for authentication\\\\n\\\\n --cert-key-file (local file path)\\\\n\\\\n The file path to a certificate key file to use for authentication\\\\n\\\\n PROFILE OPTIONS\\\\n ---------------\\\\n\\\\n --zosmf-profile | --zosmf-p (string)\\\\n\\\\n The name of a (zosmf) profile to load for this command execution.\\\\n\\\\n --base-profile | --base-p (string)\\\\n\\\\n The name of a (base) profile to load for this command execution.\\\\n\\\\n BASE CONNECTION OPTIONS\\\\n -----------------------\\\\n\\\\n --token-type | --tt (string)\\\\n\\\\n The type of token to get and use for the API. Omit this option to use the\\\\n default token type, which is provided by 'zowe auth login'.\\\\n\\\\n --token-value | --tv (string)\\\\n\\\\n The value of the token to pass to the API.\\\\n\\\\n GLOBAL OPTIONS\\\\n --------------\\\\n\\\\n --show-inputs-only (boolean)\\\\n\\\\n Show command inputs and do not run the command\\\\n\\\\n --response-format-json | --rfj (boolean)\\\\n\\\\n Produce JSON formatted data from a command\\\\n\\\\n --help | -h (boolean)\\\\n\\\\n Display help text\\\\n\\\\n --help-web | --hw (boolean)\\\\n\\\\n Display HTML help in browser\\\\n\\\\n EXAMPLES\\\\n --------\\\\n\\\\n - Create an empty physical sequential data set with default\\\\n parameters:\\\\n\\\\n $ zowe zos-files create data-set-sequential NEW.PS.DATASET\\\\n\\\\n - Create a LARGE format sequential data set with default\\\\n parameters:\\\\n\\\\n $ zowe zos-files create data-set-sequential --data-set-type \`LARGE\`\\\\n\\\\n\\" }" `; diff --git a/packages/cli/__tests__/zosfiles/__unit__/create/ps/__snapshots__/Ps.definition.unit.test.ts.snap b/packages/cli/__tests__/zosfiles/__unit__/create/ps/__snapshots__/Ps.definition.unit.test.ts.snap index aa73985c57..df83c3c023 100644 --- a/packages/cli/__tests__/zosfiles/__unit__/create/ps/__snapshots__/Ps.definition.unit.test.ts.snap +++ b/packages/cli/__tests__/zosfiles/__unit__/create/ps/__snapshots__/Ps.definition.unit.test.ts.snap @@ -28,6 +28,15 @@ Array [ "name": "data-class", "type": "string", }, + Object { + "aliases": Array [ + "dst", + "dsntype", + ], + "description": "The data set type (BASIC, EXTPREF, EXTREQ, HFS, LARGE, PDS, LIBRARY, PIPE)", + "name": "data-set-type", + "type": "string", + }, Object { "aliases": Array [ "dt", @@ -125,5 +134,9 @@ Array [ "description": "Create an empty physical sequential data set with default parameters", "options": "NEW.PS.DATASET", }, + Object { + "description": "Create a LARGE format sequential data set with default parameters", + "options": "--data-set-type \`LARGE\`", + }, ] `; diff --git a/packages/cli/package.json b/packages/cli/package.json index 27b1d1b4fe..c5af856a85 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@zowe/cli", - "version": "8.12.0", + "version": "8.13.0", "zoweVersion": "v3.1.0", "description": "Zowe CLI is a command line interface (CLI) that provides a simple and streamlined way to interact with IBM z/OS.", "author": "Zowe", @@ -58,17 +58,17 @@ "preshrinkwrap": "node ../../scripts/rewriteShrinkwrap.js" }, "dependencies": { - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0", - "@zowe/provisioning-for-zowe-sdk": "8.12.0", - "@zowe/zos-console-for-zowe-sdk": "8.12.0", - "@zowe/zos-files-for-zowe-sdk": "8.12.0", - "@zowe/zos-jobs-for-zowe-sdk": "8.12.0", - "@zowe/zos-logs-for-zowe-sdk": "8.12.0", - "@zowe/zos-tso-for-zowe-sdk": "8.12.0", - "@zowe/zos-uss-for-zowe-sdk": "8.12.0", - "@zowe/zos-workflows-for-zowe-sdk": "8.12.0", - "@zowe/zosmf-for-zowe-sdk": "8.12.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0", + "@zowe/provisioning-for-zowe-sdk": "8.13.0", + "@zowe/zos-console-for-zowe-sdk": "8.13.0", + "@zowe/zos-files-for-zowe-sdk": "8.13.0", + "@zowe/zos-jobs-for-zowe-sdk": "8.13.0", + "@zowe/zos-logs-for-zowe-sdk": "8.13.0", + "@zowe/zos-tso-for-zowe-sdk": "8.13.0", + "@zowe/zos-uss-for-zowe-sdk": "8.13.0", + "@zowe/zos-workflows-for-zowe-sdk": "8.13.0", + "@zowe/zosmf-for-zowe-sdk": "8.13.0", "find-process": "1.4.7", "lodash": "4.17.21", "minimatch": "9.0.5", @@ -78,7 +78,7 @@ "@types/diff": "^5.0.9", "@types/lodash": "^4.17.6", "@types/tar": "^6.1.11", - "@zowe/cli-test-utils": "8.12.0", + "@zowe/cli-test-utils": "8.13.0", "comment-json": "^4.2.3", "strip-ansi": "^6.0.1", "which": "^4.0.0" diff --git a/packages/cli/src/zosfiles/-strings-/en.ts b/packages/cli/src/zosfiles/-strings-/en.ts index 405f913c31..15bef4afa8 100644 --- a/packages/cli/src/zosfiles/-strings-/en.ts +++ b/packages/cli/src/zosfiles/-strings-/en.ts @@ -68,7 +68,8 @@ export default { SUMMARY: "Create physical sequential data sets (PS)", DESCRIPTION: "Create physical sequential data sets (PS).", EXAMPLES: { - EX1: "Create an empty physical sequential data set with default parameters" + EX1: "Create an empty physical sequential data set with default parameters", + EX2: "Create a LARGE format sequential data set with default parameters" } }, VSAM: { diff --git a/packages/cli/src/zosfiles/create/ps/Ps.definition.ts b/packages/cli/src/zosfiles/create/ps/Ps.definition.ts index 40ebc5f558..8248206f88 100644 --- a/packages/cli/src/zosfiles/create/ps/Ps.definition.ts +++ b/packages/cli/src/zosfiles/create/ps/Ps.definition.ts @@ -53,12 +53,17 @@ export const PsDefinition: ICommandDefinition = { ZosFilesCreateOptions.mgntclass, ZosFilesCreateOptions.dataclass, ZosFilesCreateOptions.unit, + ZosFilesCreateOptions.dsntype, ZosFilesCreateExtraOptions.attributes ].sort((a, b) => a.name.localeCompare(b.name)), examples: [ { description: strings.ACTIONS.DATA_SET_SEQUENTIAL.EXAMPLES.EX1, options: "NEW.PS.DATASET" + }, + { + description: strings.ACTIONS.DATA_SET_SEQUENTIAL.EXAMPLES.EX2, + options: "--data-set-type `LARGE`" } ] diff --git a/packages/core/package.json b/packages/core/package.json index 485b3872e4..9b49e1cab8 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@zowe/core-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "description": "Core libraries shared by Zowe SDK packages", "author": "Zowe", "license": "EPL-2.0", @@ -49,8 +49,8 @@ "string-width": "^4.2.3" }, "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/imperative": "8.13.0" }, "peerDependencies": { "@zowe/imperative": "^8.0.0" diff --git a/packages/imperative/CHANGELOG.md b/packages/imperative/CHANGELOG.md index 6d269b63d1..86cdc8228f 100644 --- a/packages/imperative/CHANGELOG.md +++ b/packages/imperative/CHANGELOG.md @@ -2,7 +2,7 @@ All notable changes to the Imperative package will be documented in this file. -## Recent Changes +## `8.13.0` - Format fix: `DeferredPromise` and `DeferredPromise.unit.test` comment format changed to match standard. ## `8.11.0` diff --git a/packages/imperative/package.json b/packages/imperative/package.json index 381798ef47..ffb4fe56e6 100644 --- a/packages/imperative/package.json +++ b/packages/imperative/package.json @@ -1,6 +1,6 @@ { "name": "@zowe/imperative", - "version": "8.12.0", + "version": "8.13.0", "description": "framework for building configurable CLIs", "author": "Zowe", "license": "EPL-2.0", diff --git a/packages/provisioning/package.json b/packages/provisioning/package.json index 170dfaf63c..b3b9a5b3b0 100644 --- a/packages/provisioning/package.json +++ b/packages/provisioning/package.json @@ -1,6 +1,6 @@ { "name": "@zowe/provisioning-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "description": "Zowe SDK to interact with the z/OS provisioning APIs", "author": "Zowe", "license": "EPL-2.0", @@ -49,9 +49,9 @@ }, "devDependencies": { "@types/js-yaml": "^4.0.9", - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0" }, "peerDependencies": { "@zowe/core-for-zowe-sdk": "^8.0.0", diff --git a/packages/workflows/package.json b/packages/workflows/package.json index 0919524b13..b63cb74f40 100644 --- a/packages/workflows/package.json +++ b/packages/workflows/package.json @@ -1,6 +1,6 @@ { "name": "@zowe/zos-workflows-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "description": "Zowe SDK to interact with the z/OS workflows APIs", "author": "Zowe", "license": "EPL-2.0", @@ -45,12 +45,12 @@ "prepack": "node ../../scripts/prepareLicenses.js" }, "dependencies": { - "@zowe/zos-files-for-zowe-sdk": "8.12.0" + "@zowe/zos-files-for-zowe-sdk": "8.13.0" }, "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0" }, "peerDependencies": { "@zowe/core-for-zowe-sdk": "^8.0.0", diff --git a/packages/zosconsole/package.json b/packages/zosconsole/package.json index d88eee3a55..fb0c8c9165 100644 --- a/packages/zosconsole/package.json +++ b/packages/zosconsole/package.json @@ -1,6 +1,6 @@ { "name": "@zowe/zos-console-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "description": "Zowe SDK to interact with the z/OS console", "author": "Zowe", "license": "EPL-2.0", @@ -45,9 +45,9 @@ "prepack": "node ../../scripts/prepareLicenses.js" }, "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0" }, "peerDependencies": { "@zowe/core-for-zowe-sdk": "^8.0.0", diff --git a/packages/zosfiles/CHANGELOG.md b/packages/zosfiles/CHANGELOG.md index ec322788af..bb5786e95c 100644 --- a/packages/zosfiles/CHANGELOG.md +++ b/packages/zosfiles/CHANGELOG.md @@ -2,9 +2,13 @@ All notable changes to the Zowe z/OS files SDK package will be documented in this file. -## Recent Changes +## `8.13.0` +<<<<<<< HEAD - BugFix: Users were not warned when copying partitioned data sets with identical member names. Now, the user is prompted to confirm before continuing the copy operation to avoid potential data loss. [#2349] (https://github.com/zowe/zowe-cli/issues/2349) +======= +- BugFix: The `Create.dataSetValidateOptions()` function now correctly handles data set creation when the `dsorg` attribute is set to `PS-L` by automatically updating the `dsntype` attribute to `LARGE`. [#2141](https://github.com/zowe/zowe-cli/issues/2141) +>>>>>>> master - BugFix: Fixed an issue in the `Copy.dataSetCrossLPAR()` function where the `spacu` attribute of the copied data set was always set to `TRK`, regardless of the source data set's attributes. [#2412](https://github.com/zowe/zowe-cli/issues/2412) - BugFix: The `Copy.data.set` function now prompts the user to confirm before overwriting the contents of the target data set with the addition of the `--safe-replace` option. [#2369] (https://github.com/zowe/zowe-cli/issues/2369) diff --git a/packages/zosfiles/__tests__/__system__/methods/copy/Copy.system.test.ts b/packages/zosfiles/__tests__/__system__/methods/copy/Copy.system.test.ts index 9b1bee5d2d..dd0fef368a 100644 --- a/packages/zosfiles/__tests__/__system__/methods/copy/Copy.system.test.ts +++ b/packages/zosfiles/__tests__/__system__/methods/copy/Copy.system.test.ts @@ -22,7 +22,8 @@ import { ITestEnvironment } from "../../../../../../__tests__/__src__/environmen import { tmpdir } from "os"; import path = require("path"); import * as fs from "fs"; -import { List } from "@zowe/zos-files-for-zowe-sdk"; +import { ZosmfRestClient, List } from "@zowe/core-for-zowe-sdk"; + let REAL_SESSION: Session; let REAL_TARGET_SESSION: Session; @@ -818,6 +819,47 @@ describe("Copy", () => { expect(contents.toString().trim()).not.toContain("Member contents for test"); expect(contents.toString().trim()).toBe(readFileSync(fileLocation).toString()); }); + + it("should copy a large sequential data set cross LPAR (PS-L) - invoked w/ dsntype: `LARGE`", async() => { + const fromDataSetNameLrg = fromDataSetName += ".LRG"; + const toDataSetNameLrg = toDataSetName += ".LRG"; + + let error: any; + let response: IZosFilesResponse | undefined = undefined; + const postExpectStringSpy = jest.spyOn(ZosmfRestClient, 'postExpectString'); + const TEST_TARGET_SESSION = REAL_TARGET_SESSION; + const toDataset: IDataSet = { dsn: toDataSetNameLrg }; + const fromOptions: IGetOptions = { + binary: false, + encoding: undefined, + record: false + }; + const options: ICrossLparCopyDatasetOptions = { + "from-dataset": { dsn: fromDataSetNameLrg }, + responseTimeout: 5, + replace: false + }; + try { + await Create.dataSet(REAL_SESSION, CreateDataSetTypeEnum.DATA_SET_SEQUENTIAL, fromDataSetNameLrg, { dsorg: "PS-L"}); + response = await Copy.dataSetCrossLPAR(REAL_SESSION, toDataset, options, fromOptions, TEST_TARGET_SESSION); + await Get.dataSet(TEST_TARGET_SESSION, toDataSetNameLrg); + await Delete.dataSet(REAL_SESSION, fromDataSetNameLrg); + await Delete.dataSet(REAL_SESSION, toDataSetNameLrg); + } catch (err) { + error = err; + } + + expect(postExpectStringSpy).toHaveBeenCalledWith( + TEST_TARGET_SESSION, + expect.anything(), + expect.anything(), + expect.stringContaining("LARGE") + ); + expect(response?.success).toBeTruthy(); + expect(error).not.toBeDefined(); + expect(response?.errorMessage).not.toBeDefined(); + expect(response?.commandResponse).toContain("Data set copied successfully"); + }); }); }); diff --git a/packages/zosfiles/__tests__/__system__/methods/create/Create.system.test.ts b/packages/zosfiles/__tests__/__system__/methods/create/Create.system.test.ts index 0f55e52cb0..d3f5fc3171 100644 --- a/packages/zosfiles/__tests__/__system__/methods/create/Create.system.test.ts +++ b/packages/zosfiles/__tests__/__system__/methods/create/Create.system.test.ts @@ -20,7 +20,6 @@ import { getUniqueDatasetName } from "../../../../../../__tests__/__src__/TestUt import { ICreateZfsOptions } from "../../../../src/methods/create/doc/ICreateZfsOptions"; import { ITestEnvironment } from "../../../../../../__tests__/__src__/environment/ITestEnvironment"; - let testEnvironment: ITestEnvironment; let defaultSystem: ITestPropertiesSchema; let REAL_SESSION: Session; @@ -136,6 +135,31 @@ describe("Create data set", () => { expect(response.commandResponse).toContain(ZosFilesMessages.dataSetCreatedSuccessfully.message); }, LONGER_TIMEOUT); + it("should create a large sequential data set (PS-L)", async () => { + let error; + let response; + + try { + response = await Create.dataSet( + REAL_SESSION, + CreateDataSetTypeEnum.DATA_SET_SEQUENTIAL, + dsname, + {primary:1,recfm:"FB",blksize:6160,lrecl:80,dsntype:"LARGE",showAttributes:true} + ); + Imperative.console.info("Response: " + inspect(response)); + } catch (err) { + error = err; + Imperative.console.info("Error: " + inspect(error)); + } + + expect(error).toBeFalsy(); + expect(response).toBeTruthy(); + + expect(response.success).toBe(true); + expect(response.commandResponse).toContain(ZosFilesMessages.dataSetCreatedSuccessfully.message); + expect(response.commandResponse).toContain("LARGE"); + }, LONGER_TIMEOUT); + it("should create a sequential data set with response timeout", async () => { let error; let response; diff --git a/packages/zosfiles/__tests__/__unit__/methods/create/Create.unit.test.ts b/packages/zosfiles/__tests__/__unit__/methods/create/Create.unit.test.ts index 3740bf2abf..c95ab7b695 100644 --- a/packages/zosfiles/__tests__/__unit__/methods/create/Create.unit.test.ts +++ b/packages/zosfiles/__tests__/__unit__/methods/create/Create.unit.test.ts @@ -127,22 +127,16 @@ describe("Create data set", () => { }); it("explicit testing of dsntype", async () => { - let success: boolean = false; + let success: boolean = true; const dsntypes = ["BASIC", "EXTPREF", "EXTREQ", "HFS", "LARGE", "PDS", "LIBRARY", "PIPE"]; for (const type of dsntypes) { dsOptions.dsntype = type; try { await Create.dataSetValidateOptions(dsOptions); } catch (err) { - expect(success).toBe(true); + success = false; } } - try { - dsOptions.dsntype = "PDSE"; - await Create.dataSetValidateOptions(dsOptions); - } catch (err) { - success = true; - } expect(success).toBe(true); }); @@ -292,6 +286,39 @@ describe("Create data set", () => { ); }); + it("should be able to create a large sequential data set using PS-L", async () => { + const custOptions = { + dsorg: "PS-L", + alcunit: "CYL", + primary: 20, + secondary: 10, + recfm: "FB", + blksize: 6160, + lrecl: 80 + }; + const response = await Create.dataSet(dummySession, CreateDataSetTypeEnum.DATA_SET_SEQUENTIAL, dataSetName, custOptions); + + expect(response.success).toBe(true); + expect(response.commandResponse).toContain("created successfully"); + expect(mySpy).toHaveBeenCalledWith( + dummySession, + endpoint, + [ZosmfHeaders.ACCEPT_ENCODING], + JSON.stringify({ + ...{ + alcunit: "CYL", + dsorg: "PS", + primary: 20, + recfm: "FB", + blksize: 6160, + lrecl: 80, + secondary: 10, + dsntype: "LARGE" + } + }) + ); + }); + it("should be able to create a variable block sequential data set using a block size that is too small", async () => { const custOptions = { dsorg: "PS", @@ -1075,6 +1102,19 @@ describe("Create data set Validator", () => { expect(testOptions.secondary).toEqual(0); // Should be changed during create validation to zOSMF default of 0 }); + it("should fail when dsntype specified with invalid value", async () => { + let error; + try { + + const testOptions: any = {dsntype: "NOTLIBRARY"}; + Create.dataSetValidateOptions(testOptions); + } catch (err) { + error = err.message; + } + + expect(error).toContain(`Invalid zos-files create command 'dsntype' option`); + }); + it("recfm should not default to anything if not specified", async () => { const testOptions: any = { recfm: undefined @@ -1101,19 +1141,6 @@ describe("Create data set Validator", () => { expect(error).toContain(`Invalid zos-files create command 'alcunit' option`); }); - it("should fail when dsntype specified with invalid value", async () => { - let error; - try { - - const testOptions: any = {dsntype: "NOTLIBRARY"}; - Create.dataSetValidateOptions(testOptions); - } catch (err) { - error = err.message; - } - - expect(error).toContain(`Invalid zos-files create command 'dsntype' option`); - }); - it("should fail when lrecl not specified", async () => { let error; try { diff --git a/packages/zosfiles/package.json b/packages/zosfiles/package.json index 454b1eaa7e..e39582b98f 100644 --- a/packages/zosfiles/package.json +++ b/packages/zosfiles/package.json @@ -1,6 +1,6 @@ { "name": "@zowe/zos-files-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "description": "Zowe SDK to interact with files and data sets on z/OS", "author": "Zowe", "license": "EPL-2.0", @@ -50,10 +50,10 @@ "minimatch": "^9.0.5" }, "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0", - "@zowe/zos-uss-for-zowe-sdk": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0", + "@zowe/zos-uss-for-zowe-sdk": "8.13.0" }, "peerDependencies": { "@zowe/core-for-zowe-sdk": "^8.0.0", diff --git a/packages/zosfiles/src/methods/create/Create.ts b/packages/zosfiles/src/methods/create/Create.ts index c22028ca7e..dc96371a10 100644 --- a/packages/zosfiles/src/methods/create/Create.ts +++ b/packages/zosfiles/src/methods/create/Create.ts @@ -249,19 +249,18 @@ export class Create { break; case "dirblk": - // Validate non-zero if dsorg is PS - if (tempOptions.dirblk !== 0 && tempOptions.dsorg === "PS") { + // Validate non-zero if dsorg starts with "PS" + if (tempOptions.dirblk !== 0 && tempOptions.dsorg.startsWith("PS")) { throw new ImperativeError({ msg: ZosFilesMessages.invalidPSDsorgDirblkCombination.message }); } - // Validate non-zero if 'dsorg' is PO - if (tempOptions.dirblk === 0 && tempOptions.dsorg === "PO") { + // Validate non-zero if dsorg starts with "PO" + if (tempOptions.dirblk === 0 && tempOptions.dsorg.startsWith("PO")) { throw new ImperativeError({ msg: ZosFilesMessages.invalidPODsorgDirblkCombination.message }); } - break; case "dsntype": { - // Key to create a PDSE. + // Key to create a PDSE. const type: string = tempOptions.dsntype.toUpperCase(); const availableTypes = ["BASIC", "EXTPREF", "EXTREQ", "HFS", "LARGE", "PDS", "LIBRARY", "PIPE"]; if (availableTypes.indexOf(type) === -1) { @@ -269,15 +268,15 @@ export class Create { } break; } + case "dsorg": - // Only PO and PS valid - switch (tempOptions.dsorg.toUpperCase()) { - case "PO": - case "PS": - break; + // Check if dsorg is PS-L, if it is change it to "PS" and the dsntype to "LARGE". + // Since the create endpoint does not see "PS-L" as a valid creation option - default: - throw new ImperativeError({ msg: ZosFilesMessages.invalidDsorgOption.message + tempOptions.dsorg }); + if(tempOptions.dsorg === "PS-L") + { + tempOptions.dsorg = "PS"; + tempOptions.dsntype = "LARGE"; } break; diff --git a/packages/zosjobs/CHANGELOG.md b/packages/zosjobs/CHANGELOG.md index 0adbdd6185..eeb66f7e66 100644 --- a/packages/zosjobs/CHANGELOG.md +++ b/packages/zosjobs/CHANGELOG.md @@ -2,7 +2,7 @@ All notable changes to the Zowe z/OS jobs SDK package will be documented in this file. -## Recent Changes +## `8.13.0` - Enhancement: Added `--recordRange` flag logic handling to `DownloadJobs.downloadSpoolContentCommon()` to to allow users to select a specific range of records to output from a spool file. [#2411](https://github.com/zowe/zowe-cli/pull/2411) diff --git a/packages/zosjobs/package.json b/packages/zosjobs/package.json index 1d90dab7e2..816228b8fc 100644 --- a/packages/zosjobs/package.json +++ b/packages/zosjobs/package.json @@ -1,6 +1,6 @@ { "name": "@zowe/zos-jobs-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "description": "Zowe SDK to interact with jobs on z/OS", "author": "Zowe", "license": "EPL-2.0", @@ -46,12 +46,12 @@ "prepack": "node ../../scripts/prepareLicenses.js" }, "dependencies": { - "@zowe/zos-files-for-zowe-sdk": "8.12.0" + "@zowe/zos-files-for-zowe-sdk": "8.13.0" }, "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0" }, "peerDependencies": { "@zowe/core-for-zowe-sdk": "^8.0.0", diff --git a/packages/zoslogs/package.json b/packages/zoslogs/package.json index 877f3c91b5..c08b6e57cc 100644 --- a/packages/zoslogs/package.json +++ b/packages/zoslogs/package.json @@ -1,6 +1,6 @@ { "name": "@zowe/zos-logs-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "description": "Zowe SDK to interact with the z/OS logs", "author": "Zowe", "license": "EPL-2.0", @@ -45,9 +45,9 @@ "prepack": "node ../../scripts/prepareLicenses.js" }, "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0" }, "peerDependencies": { "@zowe/core-for-zowe-sdk": "^8.0.0", diff --git a/packages/zosmf/package.json b/packages/zosmf/package.json index afb95e1dc2..ea5cc2d452 100644 --- a/packages/zosmf/package.json +++ b/packages/zosmf/package.json @@ -1,6 +1,6 @@ { "name": "@zowe/zosmf-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "description": "Zowe SDK to interact with the z/OS Management Facility", "author": "Zowe", "license": "EPL-2.0", @@ -44,9 +44,9 @@ "prepack": "node ../../scripts/prepareLicenses.js" }, "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0" }, "peerDependencies": { "@zowe/core-for-zowe-sdk": "^8.0.0", diff --git a/packages/zostso/package.json b/packages/zostso/package.json index 9bb5159da6..9c246b5981 100644 --- a/packages/zostso/package.json +++ b/packages/zostso/package.json @@ -1,6 +1,6 @@ { "name": "@zowe/zos-tso-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "description": "Zowe SDK to interact with TSO on z/OS", "author": "Zowe", "license": "EPL-2.0", @@ -45,12 +45,12 @@ "prepack": "node ../../scripts/prepareLicenses.js" }, "dependencies": { - "@zowe/zosmf-for-zowe-sdk": "8.12.0" + "@zowe/zosmf-for-zowe-sdk": "8.13.0" }, "devDependencies": { - "@zowe/cli-test-utils": "8.12.0", - "@zowe/core-for-zowe-sdk": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/core-for-zowe-sdk": "8.13.0", + "@zowe/imperative": "8.13.0" }, "peerDependencies": { "@zowe/core-for-zowe-sdk": "^8.0.0", diff --git a/packages/zosuss/package.json b/packages/zosuss/package.json index 09544972f7..73a0a33bcb 100644 --- a/packages/zosuss/package.json +++ b/packages/zosuss/package.json @@ -1,6 +1,6 @@ { "name": "@zowe/zos-uss-for-zowe-sdk", - "version": "8.12.0", + "version": "8.13.0", "description": "Zowe SDK to interact with USS on z/OS", "author": "Zowe", "license": "EPL-2.0", @@ -49,8 +49,8 @@ }, "devDependencies": { "@types/ssh2": "^1.11.19", - "@zowe/cli-test-utils": "8.12.0", - "@zowe/imperative": "8.12.0" + "@zowe/cli-test-utils": "8.13.0", + "@zowe/imperative": "8.13.0" }, "peerDependencies": { "@zowe/imperative": "^8.0.0"