diff --git a/CHANGELOG.md b/CHANGELOG.md index f16cf93..c0f749a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,8 @@ All notable changes to the IBM® IMS™ Plug-in for Zowe CLI will be documented ## Recent Changes -- BugFix: Add missing npm-shrinkwrap +- Deprecated: Added deprecation notices +- BugFix: Added missing shrinkwrap ## `3.0.0` diff --git a/README.md b/README.md index db60c64..372e766 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,13 @@ # IBM® IMS™ Plug-in for Zowe CLI +### The IBM® IMS™ Plug-in for Zowe CLI is deprecated, and will not receive additional security updates, bug fixes, or enhancements. + [![codecov](https://codecov.io/gh/zowe/zowe-cli-ims-plugin/branch/master/graph/badge.svg)](https://codecov.io/gh/zowe/zowe-cli-ims-plugin) The IBM IMS Plug-in for Zowe CLI lets you extend Zowe CLI to interact with IMS resources (programs and transactions). You can use the plug-in to create new IMS applications or update existing IMS applications. For more information about IMS, see [IBM Information Management System (IMS)](https://www.ibm.com/it-infrastructure/z/ims). - [How the plug-in works](#how-the-plug-in-works) -- [Software rerequirements](#software-rerequirements) +- [Software requirements](#software-requirements) - [Installing](#installing) - [Building from source](#building-from-source) - [Creating a user profile](#creating-a-user-profile) @@ -21,7 +23,7 @@ As an application developer or DevOps administrator, you can use IBM IMS Plug-in - Deploy application code into IMS production or test systems. - Write scripts to automate IMS actions that you traditionally perform using ISPF editors, TSO, and SPOC. -## Software rerequirements +## Software requirements diff --git a/__tests__/imperative.test.ts b/__tests__/imperative.test.ts index dccbc25..e64dffe 100644 --- a/__tests__/imperative.test.ts +++ b/__tests__/imperative.test.ts @@ -16,6 +16,7 @@ describe("imperative config", () => { it("should match the snapshot", () => { const config = require("../src/imperative"); delete config.pluginHealthCheck; // this path changes depending on your system and can't be snapshotted. + delete config.pluginLifeCycle; // this path changes depending on your system and can't be snapshotted. expect(config).toMatchSnapshot(); }); }); diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index d04a573..28812e8 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -39,7 +39,7 @@ "uuid": "^3.2.1" }, "peerDependencies": { - "@zowe/imperative": "^5.0.0" + "@zowe/imperative": "^5.10.0" } }, "node_modules/@babel/code-frame": { diff --git a/package.json b/package.json index e5bdd14..930b84a 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "configurationModule": "lib/imperative.js" }, "peerDependencies": { - "@zowe/imperative": "^5.0.0" + "@zowe/imperative": "^5.10.0" }, "devDependencies": { "@types/fs-extra": "^5.0.0", diff --git a/src/imperative.ts b/src/imperative.ts index 29408ca..54ce941 100644 --- a/src/imperative.ts +++ b/src/imperative.ts @@ -91,7 +91,8 @@ const config: IImperativeConfig = { ] } ], - pluginHealthCheck: __dirname + "/healthCheck" + pluginHealthCheck: __dirname + "/healthCheck", + pluginLifeCycle: __dirname + "/pluginLifeCycle" }; export = config; diff --git a/src/pluginLifeCycle.ts b/src/pluginLifeCycle.ts new file mode 100644 index 0000000..544016b --- /dev/null +++ b/src/pluginLifeCycle.ts @@ -0,0 +1,29 @@ +/* +* This program and the accompanying materials are made available under the terms of the * +* Eclipse Public License v2.0 which accompanies this distribution, and is available at * +* https://www.eclipse.org/legal/epl-v20.html * +* * +* SPDX-License-Identifier: EPL-2.0 * +* * +* Copyright Contributors to the Zowe Project. * +* * +*/ + +import { AbstractPluginLifeCycle, Logger } from "@zowe/imperative"; + +class PluginLifeCycle extends AbstractPluginLifeCycle { + public postInstall(): void | Promise { + const deprecationMessage = "The IBM® IMS™ Plug-in for Zowe CLI is deprecated, " + + "and will not receive additional security updates, bug fixes, or enhancements."; + const consoleLogger = Logger.getConsoleLogger(); + const appLogger = Logger.getAppLogger(); + consoleLogger.warn(deprecationMessage); + appLogger.warn(deprecationMessage); + } + + public preUninstall(): void | Promise { + return; + } +} + +export = PluginLifeCycle;