diff --git a/docs/early-access/v3/Extenders.md b/docs/early-access/v3/Extenders.md index 3e3a73e19d..c10fbc175d 100644 --- a/docs/early-access/v3/Extenders.md +++ b/docs/early-access/v3/Extenders.md @@ -1,99 +1,148 @@ -# Version 3.0.0 Changes Affecting Zowe Explorer Extenders +# Version 3.0.0 Changes Affecting Zowe Explorer Users and Extenders -## No longer supported +- [Changes affecting all](#changes-affecting-all) +- [Changes affecting Users](#changes-affecting-users) +- [Changes affecting Extenders](#changes-affecting-extenders) + +## Changes affecting all + +### No longer supported - Removed support for v1 Profiles - Updated supported VS Code engine to 1.79.0 - Drop support for Theia IDE +- **Zowe Explorer no longer uses a temporary directory for storing Data Sets and USS files. All settings related to the temporary downloads folder have been removed.** In order to access resources stored by Zowe Explorer v3, refer to the [FileSystemProvider documentation](https://github.com/zowe/zowe-explorer-vscode/wiki/FileSystemProvider) for information on how to build and access resource URIs. Extenders can detect changes to resources using the `onResourceChanged` function in the `ZoweExplorerApiRegister` class. - Moved Data Set Templates, formerly in `zowe.ds.history` that has moved to internal storage. With the request to have data set templates shareable via workspace it will now migrate existing to `zowe.ds.templates` when other history items are moved. - Deprecated the `getUSSDocumentFilePath` function on the `IZoweTreeNode` interface as Zowe Explorer no longer uses the local file system for storing USS files. **No replacement is planned**; please access data from tree nodes using their [resource URIs](https://github.com/zowe/zowe-explorer-vscode/wiki/FileSystemProvider#operations-for-extenders) instead. -- **Zowe Explorer no longer uses a temporary directory for storing Data Sets and USS files. All settings related to the temporary downloads folder have been removed.** In order to access resources stored by Zowe Explorer v3, refer to the [FileSystemProvider documentation](https://github.com/zowe/zowe-explorer-vscode/wiki/FileSystemProvider) for information on how to build and access resource URIs. Extenders can detect changes to resources using the `onResourceChanged` function in the `ZoweExplorerApiRegister` class. -## Removal of deprecated APIs from Extensibility API for Zowe Explorer +## Changes affecting Users + +### New functionality + +- Added support to issue Unix commands with Zowe zosmf and ssh profiles working together in Zowe Explorer for VS Code. +- Added support to compare files in the MVS and USS treeviews and across the two treeviews. +- Added option to convert v1 Profiles in use to team configuration file. +- Added support for `consoleName` property in z/OSMF profiles when issuing MVS commands. +- Added PEM certificate support as an authentication method for logging into the API ML. +- Added support for logging in to multiple API ML instances per team config file. +- Added remote lookup functionality for Data Sets and USS, allowing Zowe Explorer to locate and resolve mainframe resources on demand. +- Added change detection in the Data Sets and USS filesystems, so that changes on the mainframe will be reflected in opened editors for Data Sets and USS files. +- Added a "Show as Table" option for profile nodes in the Jobs tree, displaying lists of jobs in a tabular view. Jobs can be filtered and sorted within this view, and users can select jobs to cancel, delete or download. +- Updated default base profile naming scheme in newly generated configuration files to prevent name and property conflicts between Global and Project profiles. + +## Changes affecting Extenders + +### Removed or renamed VS Code commands -- Logger type `MessageSeverityEnum` removed in favor of `MessageSeverity`. -- `IUss.putContents` removed in favor of `IUss.putContent`. -- `IJes.getJobsByOwnerAndPrefix` removed in favor of `IJes.getJobsByParameters`. -- `ICommand.issueTsoCommand` removed in favor of `ICommand.issueTsoCommandWithParms`. -- `ZoweVsCodeExtension.showVsCodeMessage` removed in favor of `Gui.showMessage`. -- `ZoweVsCodeExtension.inputBox` removed in favor of `Gui.showInputBox`. -- `ZoweVsCodeExtension.promptCredentials` removed in favor of `ZoweVsCodeExtension.updateCredentials`. -- Changed ZoweExplorerExtender.initForZowe `profileTypeConfigurations: imperative.ICommandProfileTypeConfiguration[]` to a required argument -- Changed IApiExplorerExtenders.initForZowe `profileTypeConfigurations: imperative.ICommandProfileTypeConfiguration[]` to a required argument -- Changed `ICommon`, `IMvs`, `IUss`, `IJes` interfaces to be grouped in `MainframeInteraction` namespace. -- Renamed `WebviewOptions` interface to `GuiWebviewOptions` and moved to `GuiOptions` namespace. -- Moved `GuiMessageOptions` interface to `GuiOptions` namespace. -- Moved all types to the `Types` interface, these types include: - - IZoweNodeType - - IZoweUSSNodeType - - `NodeInteraction` renamed to `ZoweNodeInteraction` - - IApiRegisterClient - - WebviewUris - - FileAttributes - - PollRequest - - DatasetStats - - KeytarModule - - DataSetAllocTemplate - - Appender - - LogJsConfig -- Moved `MessageSeverity` enum to it's own class. -- Moved `IUrlValidator`, `IProfileValidation`, `IValidationSetting`, `ValidProfileEnum` and `EvenTypes` to `Validation` namespace. -- Moved `getZoweDir` and `getFullPath` to `FileManagement` class. -- Renamed `IUrlValidator` to `IValidationUrl`. -- Renamed `IProfileValidation` to `IValidationProfile`. -- Renamed `ValidProfileEnum` to `ValidationType`. -- Wrapped `ZosmfApiCommon`, `ZosmfUssApi`, `ZosmfMvsApi`, `ZosmfJesApi` and `ZosmfCommandApi` inside `ZoweExplorerZosmf` namespace. -- Renamed `ZosmfApiCommon` to `CommonApi`. -- Renamed `ZosmfUssApi` to `UssApi`. -- Renamed `ZosmfMvsApi` to `MvsApi`. -- Renamed `ZosmfJesApi` to `JesApi`. -- Renamed `ZosmfCommandApi` to `CommandApi`. -- Renamed `ZoweExplorerTreeApi` to `IZoweExplorerTreeApi`. -- Moved `NodeAction` enum to its own class `ZoweTreeNodeActions`. -- Renamed `NodeAction` enum to `ZoweTreeNodeActions`. -- Wrapped all content sorting related content to be contained in `Sorting` namespace, such as: - - DataSetSortOpts - - SortDirection - - DatasetFilterOpts - - DatasetFilter - - NodeSort - - JobSortOpts -- Renamed `files` class to `FileManagement`. -- Renamed `IPromptCredentials` into `PromptCredentials`. -- Wrapped `IPromptCredentialsCommonOptions`, `IPromptCredentialsOptions` and `IPromptUserPassOptions` in `PromptCredentialsOptions` namespace. -- Renamed `IPromptCredentialsCommonOptions` to `CommonOptions`. -- Renamed `IPromptcredentialsOptions` to `ComplexOptions`. -- Renamed `IPromptUserPassOptions` to `UserPassOptions`. -- Removed `ProfilesCache.getSchema()`, `ProfilesCache.getCliProfileManager()`, `ProfilesCache.saveProfile()` & `ProfilesCache.deleteProfileOnDisk()` v1 Profiles manipulation endpoints. -- `refreshAndReopen` function on the `IZoweTreeNode` interface - use the `reopen` function instead. -- `copyUssFile` function on the `IZoweTreeNode` interface - use the `pasteUssTree` function instead. +| What Changed | In V2 | Use in V3 | +| ----------------------------------------- | ------------------------------------------------------------------------------------------------------ | ------------------------ | +| Open spool file | `zowe.jobs.zosJobsOpenSpool` | `vscode.open` with URI | +| Open data set file | `zowe.ds.ZoweNode.openPS` | `vscode.open` with URI | +| Open unix file | `zowe.uss.ZoweUSSNode.open` | `vscode.open` with URI | +| Add favorite to treeview | `zowe.ds.addFavorite`, `zowe.uss.addFavorite`, `zowe.jobs.addFavorite` | `zowe.addFavorite` | +| Remove favorite from treeview | `zowe.ds.removeFavorite`, `zowe.uss.removeFavorite`, `zowe.jobs.removeFavorite` | `zowe.removeFavorite` | +| Remove favorited profile from treeview | `zowe.ds.removeFavProfile`, `zowe.uss.removeFavProfile`, `zowe.jobs.removeFavProfile` | `zowe.removeFavProfile` | +| Favorite search filter | `zowe.ds.saveSearch`, `zowe.uss.saveSearch`, `zowe.jobs.saveSearch` | `zowe.saveSearch` | +| Remove saved search filter from favorites | `zowe.ds.removeSavedSearch`, `zowe.uss.removeSavedSearch`, `zowe.jobs.removeSearchFavorite` | `zowe.removeFavorite` | +| Disable profile validation | `zowe.ds.disableValidation`, `zowe.uss.disableValidation`, `zowe.jobs.disableValidation` | `zowe.disableValidation` | +| Enable profile validation | `zowe.ds.enableValidation`, `zowe.uss.enableValidation`, `zowe.jobs.enableValidation` | `zowe.enableValidation` | +| Delete profile | `zowe.ds.deleteProfile`, `zowe.uss.deleteProfile`, `zowe.jobs.deleteProfile`, `zowe.cmd.deleteProfile` | `zowe.deleteProfile` | +| Edit session | `zowe.ds.editSession`, `zowe.uss.editSession`, `zowe.jobs.editSession` | `zowe.editSession` | +| Remove session from treeview | `zowe.ds.removeSession`, `zowe.uss.removeSession`, `zowe.jobs.removeSession` | `zowe.removeSession` | +| Open file with encoding | `zowe.ds.openWithEncoding`, `zowe.uss.openWithEncoding` | `zowe.openWithEncoding` | +| Profile login | `zowe.ds.ssoLogin`, `zowe.uss.ssoLogin`, `zowe.jobs.ssoLogin` | `zowe.ssoLogin` | +| Profile logout | `zowe.ds.ssoLogout`, `zowe.uss.ssoLogout`, `zowe.jobs.ssoLogout` | `zowe.ssoLogout` | -## Removed or renamed VS Code commands +### Removal and changes to APIs from Extensibility API for Zowe Explorer -- `zowe.jobs.zosJobsOpenSpool` - use `vscode.open` with a spool URI instead -- `zowe.ds.ZoweNode.openPS` - use `vscode.open` with a data set URI instead -- `zowe.uss.ZoweUSSNode.open` - use `vscode.open` with a USS URI instead -- `zowe.ds.addFavorite`, `zowe.uss.addFavorite`, `zowe.jobs.addFavorite` - use `zowe.addFavorite` instead -- `zowe.ds.disableValidation`, `zowe.uss.disableValidation`, `zowe.jobs.disableValidation` - use `zowe.disableValidation` instead -- `zowe.ds.deleteProfile`, `zowe.uss.deleteProfile`, `zowe.jobs.deleteProfile`, `zowe.cmd.deleteProfile` - use `zowe.deleteProfile` instead -- `zowe.ds.editSession`, `zowe.uss.editSession`, `zowe.jobs.editSession` - use `zowe.editSession` instead -- `zowe.ds.enableValidation`, `zowe.uss.enableValidation`, `zowe.jobs.enableValidation` - use `zowe.enableValidation` instead -- `zowe.ds.openWithEncoding`, `zowe.uss.openWithEncoding` - use `zowe.openWithEncoding` instead -- `zowe.ds.removeFavorite`, `zowe.uss.removeFavorite`, `zowe.jobs.removeFavorite` - use `zowe.removeFavorite` instead -- `zowe.ds.removeFavProfile`, `zowe.uss.removeFavProfile`, `zowe.jobs.removeFavProfile` - use `zowe.removeFavProfile` instead -- `zowe.ds.removeSavedSearch`, `zowe.uss.removeSavedSearch`, `zowe.jobs.removeSearchFavorite` - use `zowe.removeFavorite` instead -- `zowe.ds.removeSession`, `zowe.uss.removeSession`, `zowe.jobs.removeSession` - use `zowe.removeSession` instead -- `zowe.ds.saveSearch`, `zowe.uss.saveSearch`, `zowe.jobs.saveSearch` - use `zowe.saveSearch` instead -- `zowe.ds.ssoLogin`, `zowe.uss.ssoLogin`, `zowe.jobs.ssoLogin` - use `zowe.ssoLogin` instead -- `zowe.ds.ssoLogout`, `zowe.uss.ssoLogout`, `zowe.jobs.ssoLogout` - use `zowe.ssoLogout` instead +| What Changed | In V2 | Use in V3 | +| ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | +| Updated Logger type and moved to it's own class | `MessageSeverityEnum` | `MessageSeverity` | +| Removal of deprecated | `IUss.putContents` | `IUss.putContent` | +| Removal of deprecated | `IJes.getJobsByOwnerAndPrefix` | `IJes.getJobsByParameters` | +| Removal of deprecated | `ICommand.issueTsoCommand` | `ICommand.issueTsoCommandWithParms` | +| Removal of deprecated | `ZoweVsCodeExtension.showVsCodeMessage` | `Gui.showMessage` | +| Removal of deprecated | `ZoweVsCodeExtension.inputBox` | `Gui.showInputBox` | +| Removal of deprecated | `ZoweVsCodeExtension.promptCredentials` | `ZoweVsCodeExtension.updateCredentials` | +| Removed | filesystem class `MemberEntry` | `DsEntry.isMember`: true | +| Renamed | `NodeInteraction` | `ZoweNodeInteraction` | +| Renamed | `IUrlValidator` | `IValidationUrl` | +| Renamed | `IProfileValidation` | `IValidationProfile` | +| Renamed | `ValidProfileEnum` | `ValidationType` | +| Renamed | `ZosmfApiCommon` | `CommonApi` | +| Renamed | `ZosmfUssApi` | `UssApi` | +| Renamed | `ZosmfMvsApi` | `MvsApi` | +| Renamed | `ZosmfJesApi` | `JesApi` | +| Renamed | `ZosmfCommandApi` | `CommandApi` | +| Renamed | `ZoweExplorerTreeApi` | `IZoweExplorerTreeApi` | +| Renamed | `files` class | `FileManagement` | +| Renamed | `IPromptCredentials` | `PromptCredentials` | +| Renamed | `IPromptCredentialsCommonOptions` | `CommonOptions` | +| Renamed | `IPromptcredentialsOptions` | `ComplexOptions` | +| Renamed | `IPromptUserPassOptions` | `UserPassOptions` | +| Renamed | `BaseProvider._lookup` (depracated) | `BaseProvider.lookup` | +| Moved and renamed enum to its own class | `NodeAction` | `ZoweTreeNodeActions` | +| Moved | `getZoweDir`, `getFullPath` | `FileManagement` class | +| Changed interfaces to be in namespace | `ICommon`, `IMvs`, `IUss`, `IJes`, `ICommand` | under `MainframeInteraction` | +| Changed interfaces to be in namespace | `WebviewOptions` | `GuiOptions.GuiWebviewOptions` | +| Changed interfaces to be in namespace | `GuiMessageOptions` | `GuiOptions.GuiMessageOptions` | +| Changed interfaces to be in namespace | `IUrlValidator`, `IProfileValidation`, `IValidationSetting`, `ValidProfileEnum`, `EvenTypes` | under `Validation` | +| Changed interfaces to be in namespace | `IZoweNodeType`, `IZoweUSSNodeType`, `ZoweNodeInteraction`, `IApiRegisterClient`, `WebviewUris`, `FileAttributes`, `PollRequest`, `DatasetStats`, `KeytarModule`, `DataSetAllocTemplate`, `Appender`, `LogJsConfig` | under `Types` | +| Changed interfaces to be in namespace | `DataSetSortOpts`, `SortDirection`, `DatasetFilterOpts`, `DatasetFilter`, `NodeSort`, `JobSortOpts` | under `Sorting` | +| Changed interfaces to be in namespace | `CommonApi`, `UssApi`, `MvsApi`, `JesApi`, `CommandApi` | under `ZoweExplorerZosmf` | +| Changed interfaces to be in namespace | `IPromptCredentialsCommonOptions`, `IPromptCredentialsOptions`, `IPromptUserPassOptions` | under `PromptCredentialsOptions` | +| Changed in `IZoweTree` | n/a | `openWithEncoding` optional | +| Changed in `IZoweTree.editSession` | `zoweFileProvider` | removed | +| Changed in `IZoweTree.addSession` | all parameters optional | requires `AddSessionOpts` object | +| Changed in `IZoweTreeNode` | `refreshAndReopen` | `reopen` | +| Changed in `IZoweTreeNode` | `copyUssFile` | `pasteUssTree` | +| Changed in `IZoweTreeNode` | `stats` | `getStats` & `setStats` | +| Changed in `IZoweDatasetTreeNode` | `binary` | `getEncoding` & `setEncoding` | +| Changed in `IZoweDatasetTreeNode` and `IZoweUSSTreeNode` | `encodingMap` | `getEncodingInMap` & `updateEncodingInMap` | +| Changed in `IZoweUSSTreeNode` | `shortLabel` | `getBaseName` | +| Changed in `IZoweUSSTreeNode` | `attributes` | `getAttributes` & `setAttributes` | +| Changed in `IZoweDatasetTreeNode` and `IZoweUSSTreeNode` | `encoding` | `getEncoding` & `setEncoding` | +| Changed in `ZoweExplorerExtender.initForZowe` | `profileTypeConfigurations: imperative.ICommandProfileTypeConfiguration[]` not required | now a required argument | +| Changed in `IApiExplorerExtenders.initForZowe` | `profileTypeConfigurations: imperative.ICommandProfileTypeConfiguration[]` not required | now a required argument and synchronous method | +| Changed in `MainframeInteraction` | `getStatus` | optional parm `profileType` type string | +| Changed in `MainframeInteraction.IJes` | `getJobsByParameters` not required | now a required API | +| Changed in `ProfilesCache.getProfile` | return `undefined` if no profiles | return `[]` if no profiles | +| Removed v1 profile manipulation APIs | `ProfilesCache.getSchema`, `ProfilesCache.getCliProfileManager`, `ProfilesCache.saveProfile`, `ProfilesCache.deleteProfileOnDisk` | n/a | +| Changed Return types `IZoweTree.addDsTemplate` | n/a | `Promise` | +| Changed Return types `IZoweTree.flipState` | Promise | syncronous | +| Changed Return types `IZoweTree.setItem` | Promise | syncronous | +| Changed Return types `IZoweTree.addSearchHistory` | Promise | syncronous | +| Changed Return types `IZoweTree.deleteSession` | Promise | syncronous | +| Changed Return types `IZoweTree.addFileHistory` | Promise | syncronous | +| Changed Return types `IZoweTree.removeFileHistory` | Promise | syncronous | +| Changed Return types `MainframeInteractions.ICommon.logout` | n/a | `Promise` | +| Changed Return types `IZoweTree.addFavorite` | n/a | `Promise` | +| Changed Return types `IZoweTree.removeFavorite` | n/a | `Promise` | +| Changed Return types `IZoweTree.removeFavProfile` | n/a | `Promise` | +| Changed Return types `IZoweTree.ssoLogin` | n/a | `Promise` | +| Changed Return types `IZoweTree.ssoLogout` | n/a | `Promise` | +| Changed Return types `IZoweTree.checkCurrentProfile` | n/a | `Validation.IValidationProfile` or `Promise` | +| Changed Return types `IZoweTree.getSearchHistory` | n/a | `string[]` | +| Changed Return types `IZoweTree.getAllLoadedItems` | n/a | `IZoweTreeNode[]` or `Promise` | +| Changed Return types `IZoweTree.getFileHistory` | n/a | `string[]` | +| Changed Return types `IZoweTree.createFilterString` | n/a | `string` | +| Changed Return types `IZoweTreeNode.rename` | n/a | `Promise` | +| Changed Return types `ZoweVsCodeExtension.logoutWithBaseProfile` | `void` | `boolean` | +| Depracated | `IZoweTree.openFiles` | open files are tracked by the `FileSystemProvider` | +| Depracated | `IZoweTreeNode.getUSSDocumentFilePath` | No replacement is planned; please access data from tree nodes using their resource URIs instead | -## New APIs Added +### New APIs -- `ICommand.issueUnixCommand` added for issuing Unix Commands -- Optional `ICommand.sshProfileRequired` API returning a boolean value for extenders that would like to use the ssh profile for issuing UNIX commands via Zowe Explorer. -- `ProfilesCache.convertV1ProfToConfig()` added for migrating v1 profiles to a global team configuration file. -- Marked `getJobsByParameters` as a required function for the `MainframeInteraction.IJes` interface. -- Added the `uploadFromBuffer` required function to the `MainframeInteraction.IMvs` and `MainframeInteraction.IUss` interfaces. This function will be used in v3 to upload contents of data sets and USS files to the mainframe. -- Added optional function `move` to the `MainframeInteraction.IUss` interface to move USS folders/files from one path to another. -- Added the `buildUniqueSpoolName` function to build spool names for Zowe resource URIs and VS Code editor tabs. -- Added the `isNodeInEditor` function to determine whether a tree node's resource URI is open in the editor. +| What's new | API | +| ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | +| Issue UNIX commands | `ICommand.issueUnixCommand` | +| Boolean value used if SSH profile required for issuing UNIX commands with Zowe Explorer | `ICommand.sshProfileRequired` optional | +| Migrate v1 profiles to global team configuration file | `ProfilesCache.convertV1ProfToConfig` | +| New required API in `MainframeInteraction.IMvs` and `MainframeInteraction.IUss` to upload contents of data sets and USS files to the mainframe | `uploadFromBuffer` | +| Move USS folders/files from one path to another in `MainframeInteraction.IUss` | `move` | +| Build spool names for Zowe resource URIs and VS Code editor tabs | `buildUniqueSpoolName` | +| Determine if tree node's resource URI is open in VS Code editor | `isNodeInEditor` | +| Added VS Code event to notify OS vault credential updates made | `IRegisterClient.onVaultUpdate` | +| Added VS Code event to notify PC's credential manager updates made | `IRegisterClient.onCredMgrsUpdate` | +| Added support for building, exposing and displaying table views within Zowe Explorer | `TableBuilder` & `TableMediator` | +| Support to store SSO token in parent profile when nested profiles are in use | `ZoweVsCodeExtension.loginWithBaseProfile` & `ZoweVsCodeExtension.logoutWithBaseProfile` | diff --git a/lerna.json b/lerna.json index 44bf67ae6b..e30f8e4353 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "3.0.0-SNAPSHOT", + "version": "3.0.0", "command": { "version": { "forcePublish": true, diff --git a/packages/eslint-plugin-zowe-explorer/CHANGELOG.md b/packages/eslint-plugin-zowe-explorer/CHANGELOG.md index ffcd145261..effaf9b626 100644 --- a/packages/eslint-plugin-zowe-explorer/CHANGELOG.md +++ b/packages/eslint-plugin-zowe-explorer/CHANGELOG.md @@ -4,7 +4,8 @@ All notable changes to the "eslint-plugin-zowe-explorer" package will be documen ### New features and enhancements -### Bug fixes +- Added placeholder `madge` script to `package.json` for workspace script to succeed. +- Migrated to new package manager PNPM from Yarn. ## `3.0.0-next.202409251932` diff --git a/packages/zowe-explorer-api/CHANGELOG.md b/packages/zowe-explorer-api/CHANGELOG.md index 7302b8bc6f..906db4b638 100644 --- a/packages/zowe-explorer-api/CHANGELOG.md +++ b/packages/zowe-explorer-api/CHANGELOG.md @@ -6,8 +6,156 @@ All notable changes to the "zowe-explorer-api" extension will be documented in t ### New features and enhancements +- Removal of V1 profile support. [#2072](https://github.com/zowe/vscode-extension-for-zowe/issues/2072) +- Removal of deprecated APIs. Check the [list](https://github.com/zowe/zowe-explorer-vscode/wiki/v3-Changes-for-Users-and-Extenders) of APIs that were removed. +- Migrated from `@zowe/cli` dependency package to individual Zowe `8.0.0` SDK packages for Zowe V3 support. [#2719](https://github.com/zowe/vscode-extension-for-zowe/issues/2719) +- Added `madge` dependency and script in `package.json` to track circular dependencies. [#2148](https://github.com/zowe/vscode-extension-for-zowe/issues/2148) +- Removed `handlebars` dependency in favor of `mustache` for technical currency purposes. [#2975](https://github.com/zowe/zowe-explorer-vscode/pull/2975) +- Migrated to new package manager PNPM from Yarn. +- Grouped Common methods into Singleton classes. [#2109](https://github.com/zowe/zowe-explorer-vscode/issues/2109) +- Implemented support for building, exposing and displaying table views within Zowe Explorer. Tables can be customized and exposed using the helper facilities (`TableBuilder` and `TableMediator`) for an extender's specific use case. For more information on how to configure and show tables, please refer to the [wiki article on Table Views](https://github.com/zowe/zowe-explorer-vscode/wiki/Table-Views). [#2258](https://github.com/zowe/zowe-explorer-vscode/issues/2258) +- Enhanced the `ZoweVsCodeExtension.loginWithBaseProfile` and `ZoweVsCodeExtension.logoutWithBaseProfile` methods to store SSO token in parent profile when nested profiles are in use. [#2264](https://github.com/zowe/zowe-explorer-vscode/issues/2264) +- Added new `getJobsByParameters` API is meant to replace `getJobsByOwnerAndPrefix`, and it adds new capabilities such as querying by status and limiting the amount of returned jobs. +- Added the `BaseProfileAuthOptions` interface to define base profile authentication options for SSO login and logout. [#3076](https://github.com/zowe/zowe-explorer-vscode/pull/3076) +- Added `extensionRemovedFromPath` private function to the `DsEntry` class to allow removing the extension from a data set before making API calls. [#3121](https://github.com/zowe/zowe-explorer-vscode/issues/3121) +- Added optional `patternMatches` property to the `IZoweDatasetTreeNode` interface to cache pattern matches from an applied filter search. [#1164](https://github.com/zowe/zowe-explorer-vscode/issues/1164) +- Added an optional function `openWithEncoding` to the `IZoweTree` interface to open file using encoding specified by user. [#2931](https://github.com/zowe/zowe-explorer-vscode/pull/2931) +- Added the `onVaultUpdate` VSCode event to notify extenders when credentials are updated on the OS vault by other applications. [#2994](https://github.com/zowe/zowe-explorer-vscode/pull/2994) +- Added the `onCredMgrsUpdate` VSCode event to notify extenders when the local PC's credential manager has been updated by other applications. [#2994](https://github.com/zowe/zowe-explorer-vscode/pull/2994) +- Added `Commands` value to the `PersistenceSchemaEnum` enum for storing MVS, TSO, and USS command history. [#2788](https://github.com/zowe/zowe-explorer-vscode/issues/2788) +- Added the `getEncoding` optional function to the `IZoweDatasetTreeNode` and `IZoweUSSTreeNode` interfaces. [#2207](https://github.com/zowe/zowe-explorer-vscode/issues/2207) +- Added an optional function `nodeDataChanged` to the `IZoweTree` interface to signal an event when a tree node needs updated. [#2207](https://github.com/zowe/zowe-explorer-vscode/issues/2207) +- Added the optional `vscode.DragAndDropController` interface to the `IZoweTree` interface to allow Zowe tree views to support drag and drop. [#2207](https://github.com/zowe/zowe-explorer-vscode/issues/2207) +- Added a `ZoweScheme` enum to expose the core FileSystemProvider schemes for USS files, data sets and jobs. [#2207](https://github.com/zowe/zowe-explorer-vscode/issues/2207) +- Added optional function `move` to the `MainframeInteraction.IUss` interface to move USS folders/files from one path to another. [#2207](https://github.com/zowe/zowe-explorer-vscode/issues/2207) +- Added the `buildUniqueSpoolName` function to build spool names for Zowe resource URIs and VS Code editor tabs. [#2207](https://github.com/zowe/zowe-explorer-vscode/issues/2207) +- Added the `isNodeInEditor` function to determine whether a tree node is open in the editor. [#2207](https://github.com/zowe/zowe-explorer-vscode/issues/2207) +- Added Created Date to `stats` optional variable for storing dataset stats [#2565](https://github.com/zowe/vscode-extension-for-zowe/pull/2565) +- Added Date created to DatasetSortOpts enum [#2565](https://github.com/zowe/vscode-extension-for-zowe/pull/2565) +- Added new `ProfilesCache.convertV1ProfToConfig` API endpoint for extenders migrating from v1 profiles to team configuration files. [#2284](https://github.com/zowe/vscode-extension-for-zowe/issues/2284) +- Added new APIs for Issue UNIX Command. [#1326](https://github.com/zowe/vscode-extension-for-zowe/issues/1326) +- Updated the `ProfilesCache.getProfiles` method to return empty list instead of undefined when there are no profiles. [#2947](https://github.com/zowe/zowe-explorer-vscode/pull/2947) +- Updated the `TableViewProvider.setTableView` function to show the Zowe Resources panel if a table is provided. If `null` is passed, the Zowe Resources panel will be hidden. [#3113](https://github.com/zowe/zowe-explorer-vscode/issues/3113) +- Updated `Table.Conditional` and `Table.Callback` types to support multi-row callbacks. +- Renamed the `_lookup` function to `lookup` in the `BaseProvider` class and updated its access to public, allowing extenders to look up resources outside of the provider implementations. The `_lookup` function is still accessible, but now deprecated in favor of the public `lookup` function. [#3040](https://github.com/zowe/zowe-explorer-vscode/pull/3040) +- Changed the type for the options parameter in the `getContents` function (`MainframeInteraction.IUss` and `MainframeInteraction.IMvs` interfaces) from `zosfiles.IDownloadOptions` to `zosfiles.IDownloadSingleOptions`. [#2207](https://github.com/zowe/zowe-explorer-vscode/issues/2207) + - The type was changed to match the function's intended behavior (to get the contents of a **single** resource). +- Changed `TableViewProvider.setTableView` function to be asynchronous for more optimized data updates. +- Changed IApiExplorerExtenders.initForZowe `profileTypeConfigurations: imperative.ICommandProfileTypeConfiguration[]` to a required argument to address issues seen after registration of profile type when not passed. [#2575](https://github.com/zowe/vscode-extension-for-zowe/issues/2575) +- **Breaking:** Removed `ProfilesCache.getSchema()`, `ProfilesCache.getCliProfileManager()`, `ProfilesCache.saveProfile()` & `ProfilesCache.deleteProfileOnDisk()` v1 Profiles manipulation endpoints. +- **Breaking:** Removed `ZoweTreeNode.binary`, `ZoweTreeNode.binaryFiles`, and `ZoweTreeNode.shortLabel`. These properties are not applicable for all tree nodes and should be defined in subclasses of `ZoweTreeNode` if necessary. +- **Breaking:** Removed the following properties/methods: + - `IZoweUSSTreeNode.binaryFiles` -> `IZoweUSSTreeNode.encodingMap` + - `IZoweUSSTreeNode.mProfileName` -> `IZoweUSSTreeNode.getProfileName()` + - `IZoweUSSTreeNode.setBinary()` -> `IZoweUSSTreeNode.setEncoding()` +- **Breaking:** Added the following **required** API: `uploadFromBuffer` [#2738](https://github.com/zowe/vscode-extension-for-zowe/pull/2738) + - For v3, this API will be used for saving data sets and USS files instead of `putContent(s)`. Extenders must implement this API to continue supporting Zowe Explorer save operations. +- **Breaking:** Removed the `encoding` property from the `IZoweUSSTreeNode` interface in favor of the new `getEncoding` function. [#2207](https://github.com/zowe/zowe-explorer-vscode/issues/2207) +- **Breaking:** Removed string as a return type of the `uploadFromBuffer` method, since the z/OSMF API has been fixed to return a response object that includes an etag. [#2785](https://github.com/zowe/zowe-explorer-vscode/issues/2785) +- **Breaking:** Marked `getJobsByParameters` as a required function for the `MainframeInteraction.IJes` interface. [#2764](https://github.com/zowe/vscode-extension-for-zowe/pull/2764) +- **Breaking:** Removed the `MemberEntry` filesystem class, in favor of using the `DsEntry` class with `isMember` set to `true`. +- **Breaking:** Changed return type of `ZoweVsCodeExtension.logoutWithBaseProfile` method from `void` to `boolean` to indicate whether logout was successful. +- **Breaking:** Changed behavior of the `ProfilesCache.fetchBaseProfile` method so that if a nested profile name is specified (e.g. "lpar.zosmf"), then its parent profile is returned unless token is already stored in the base profile. +- **Breaking:** Consolidated WebView API options into a single object (`WebViewOpts` type), both for developer convenience and to support future options. +- **Breaking:** Updated most function signatures for exported programmatic interfaces. Changes make developing with the Zowe Explorer API more efficient for extenders by showing which properties they can expect when calling our APIs. [#2952](https://github.com/zowe/zowe-explorer-vscode/issues/2952) + - Updated `IApiExplorerExtender.ts`, see changes below: + - Allowed `reloadProfiles` and `initForZowe` to be synchronous methods (non-breaking) + - Updated `MainframeInteraction.ts`, see changes below: + - Modified `getStatus` to add `string` type to the optional parameter `profileType` + - Updated `IZoweTree.ts`, see changes below: + - Modified `checkCurrentProfile(node: IZoweTreeNode);` to return `Validation.IValidationProfile | Promise` + - Modified `getSearchHistory()` to return `string[]` + - Modified `getAllLoadedItems()` to return `IZoweTreeNode[] | Promise` + - Modified `getFileHistory()` to return `string[]` + - Modified `createFilterString?(newFilter: string, node: IZoweTreeNode);` to return `string` + - Allowed the following methods to be implemented synchronously: (non-breaking) + - `addSession` + - `addSingleSession` + - `editSession` + - `createZoweSession` + - `createZoweSchema` + - `ssoLogin` + - `ssoLogout` + - `addFavorite` + - `removeFavorite` + - `removeFavProfile` + - `onDidChangeConfiguration` + - `flipState` _synchronous - no `Promise` returned_ + - `rename` + - `open` + - `copy` + - `paste` + - `delete` + - `setItem` _synchronous - no `Promise` returned_ + - `saveSearch` + - `saveFile` + - `refreshPS` + - `uploadDialog` + - `filterPrompt` + - `addSearchHistory` _synchronous - no `Promise` returned_ + - `deleteSession` _synchronous - no `Promise` returned_ + - `updateFavorites` + - `renameFavorite` + - `addFileHistory` _synchronous - no `Promise` returned_ + - `removeFileHistory` _synchronous - no `Promise` returned_ + - `renameNode` + - `openItemFromPath` + - `addDsTemplate` + - `pollData` + - `openWithEncoding` + **Note**: Developers should not expect a value to be returned from the methods above (breaking) + - Updated `IZoweTreeNode.ts`, see changes below: + - Modified `rename?(newNamePath: string);` to return `Promise` + - Developers should not be expecting output from the following methods: + - `openUSS` + - `refreshUSS` + - `deleteUSSNode` + - `renameUSSNode` + - `reopen` + - `saveSearch` +- **Breaking:** Changed `ProfilesCache.convertV1ProfToConfig` method to be a static method that requires `ProfileInfo` instance as a parameter. +- **Breaking:** Changed the parameters of the `addSession` method on the `IZoweTree` interface since they were all optional. It now receives an object of type `AddSessionOpts`. [#2947](https://github.com/zowe/zowe-explorer-vscode/pull/2947) +- **Breaking:** Removed the redundant `zoweFileProvider` parameter from `editSession` method on the `IZoweTree` interface. [#2947](https://github.com/zowe/zowe-explorer-vscode/pull/2947) +- **Breaking:** Removed deprecated methods: [#2238](https://github.com/zowe/zowe-explorer-vscode/issues/2238) + - `refreshAndReopen` function on the `IZoweTreeNode` interface - use the `reopen` function instead. + - `copyUssFile` function on the `IZoweTreeNode` interface - use the `pasteUssTree` function instead. + - `ZoweVsCodeExtension.showVsCodeMessage` - use `Gui.showMessage` instead. + - `ZoweVsCodeExtension.inputBox` - use `Gui.showInputBox` instead. + - `ZoweVsCodeExtension.promptCredentials` - use `ZoweVsCodeExtension.updateCredentials` instead. +- **Breaking:** Removed unused property `profileManagerByType` which used the V1-profile class `CLIProfileManager`. [#3057](https://github.com/zowe/zowe-explorer-vscode/issues/3057) +- **Breaking:** Added return type of `Promise` to the following `IZoweTree` methods: [#2238](https://github.com/zowe/zowe-explorer-vscode/issues/2238) + - addFavorite + - removeFavorite + - removeFavProfile + - ssoLogin + - ssoLogout +- **Breaking:** Added return type of `Promise` to `IZoweTree.addDsTemplate`. [#2345](https://github.com/zowe/vscode-extension-for-zowe/pull/2345) +- **Breaking:** Added return type of `Promise` to `MainframeInteractions.ICommon.logout`. [#2783](https://github.com/zowe/vscode-extension-for-zowe/pull/2783) +- **Breaking:** ProfilesCache.getProfileInfo no longer accepts any parameters. [#2744](https://github.com/zowe/vscode-extension-for-zowe/pull/2744) +- **Breaking:** issueUnixCommand API now takes sshSession as a optional parameter. [#2866](https://github.com/zowe/zowe-explorer-vscode/pull/2866) +- Deprecated the following properties on Zowe tree interfaces in favor of setters and getters to incentivize encapsulation: [#2026](https://github.com/zowe/zowe-explorer-vscode/issues/2026) + - `binary` property on the `IZoweDatasetTreeNode` interface - use the `getEncoding` and `setEncoding` functions instead. + - `encodingMap` property on the `IZoweDatasetTreeNode` and `IZoweUSSTreeNode` interfaces - use the `getEncodingInMap` and `updateEncodingInMap` functions instead. + - `stats` property on the `IZoweDatasetTreeNode` interface - use the `getStats` and `setStats` functions instead. + - `encoding` property on the `IZoweDatasetTreeNode` and `IZoweUSSTreeNode` interfaces - use the `getEncoding` and `setEncoding` functions instead. + - `shortLabel` property on the `IZoweUSSTreeNode` interface - use the `getBaseName` function instead. + - `attributes` property on the `IZoweUSSTreeNode` interface - use the `getAttributes` and `setAttributes` functions instead. +- Deprecated the `openFiles` property on `IZoweTree` interface - in v3 open files are tracked by the `FileSystemProvider` instead. [#2947](https://github.com/zowe/zowe-explorer-vscode/pull/2947) +- Deprecated the `getUSSDocumentFilePath` function on the `IZoweTreeNode` interface as Zowe Explorer no longer uses the local file system for storing USS files. **No replacement is planned**; please access data from tree nodes using their [resource URIs](https://github.com/zowe/zowe-explorer-vscode/wiki/FileSystemProvider#operations-for-extenders) instead. [#2968](https://github.com/zowe/zowe-explorer-vscode/pull/2968) +- Deprecated the method `ProfilesCache.updateProfilesArrays`. Use `ProfilesCache.updateCachedProfile` instead, which handles updating credentials cached in memory when `autoStore` is false. [#3120](https://github.com/zowe/zowe-explorer-vscode/issues/3120) +- Deprecated the methods `ZoweVsCodeExtension.loginWithBaseProfile` and `ZoweVsCodeExtension.logoutWithBaseProfile`. Use `ZoweVsCodeExtension.ssoLogin` and `ZoweVsCodeExtension.ssoLogout` instead, which use the `BaseProfileAuthOptions` interface and allow you to choose whether the token value in the base profile should have precedence in case there are conflicts. [#3076](https://github.com/zowe/zowe-explorer-vscode/pull/3076) + ### Bug fixes +- Fixed behavior of logout action when token is defined in both base profile and parent profile. [#3076](https://github.com/zowe/zowe-explorer-vscode/issues/3076) +- Fixed profile cached by `FileSystemProvider` not refreshing on password change. [#3120](https://github.com/zowe/zowe-explorer-vscode/issues/3120) +- Fixed extender's ability to fetch profile information from ProfilesCache for SSH profile types. +- Fixed an issue where the `ZoweVsCodeExtension.updateCredentials` method could remove credentials from session when input prompt was cancelled. [#3009](https://github.com/zowe/zowe-explorer-vscode/pull/3009) +- Fixed an issue where the loaded configuration could be overridden when extenders retrieved the Zowe home directory. [#2994](https://github.com/zowe/zowe-explorer-vscode/pull/2994) +- Fixed an issue where remote lookup functionality caused the local side of a conflict to be overwritten with the remote contents. [#3085](https://github.com/zowe/zowe-explorer-vscode/pull/3085) +- Fixed export of api `onProfilesUpdate`. +- Fixed bug in `ProfilesCache` class where old profiles were still accessible after deleting a Team configuration file. [#3124](https://github.com/zowe/zowe-explorer-vscode/issues/3124) + ## `3.0.0-next.202409251932` ### New features and enhancements diff --git a/packages/zowe-explorer-api/package.json b/packages/zowe-explorer-api/package.json index 8abc931a15..a98d2bf2c5 100644 --- a/packages/zowe-explorer-api/package.json +++ b/packages/zowe-explorer-api/package.json @@ -28,15 +28,15 @@ }, "dependencies": { "@types/vscode": "^1.53.2", - "@zowe/core-for-zowe-sdk": "^8.0.0", - "@zowe/imperative": "^8.0.0", - "@zowe/secrets-for-zowe-sdk": "^8.0.0", - "@zowe/zos-console-for-zowe-sdk": "^8.0.0", - "@zowe/zos-files-for-zowe-sdk": "^8.0.0", - "@zowe/zos-jobs-for-zowe-sdk": "^8.0.0", - "@zowe/zos-tso-for-zowe-sdk": "^8.0.0", - "@zowe/zos-uss-for-zowe-sdk": "^8.0.0", - "@zowe/zosmf-for-zowe-sdk": "^8.0.0", + "@zowe/core-for-zowe-sdk": "8.0.0", + "@zowe/imperative": "8.0.0", + "@zowe/secrets-for-zowe-sdk": "8.0.0", + "@zowe/zos-console-for-zowe-sdk": "8.0.0", + "@zowe/zos-files-for-zowe-sdk": "8.0.0", + "@zowe/zos-jobs-for-zowe-sdk": "8.0.0", + "@zowe/zos-tso-for-zowe-sdk": "8.0.0", + "@zowe/zos-uss-for-zowe-sdk": "8.0.0", + "@zowe/zosmf-for-zowe-sdk": "8.0.0", "deep-object-diff": "^1.1.9", "mustache": "^4.2.0", "semver": "^7.6.0" diff --git a/packages/zowe-explorer-ftp-extension/CHANGELOG.md b/packages/zowe-explorer-ftp-extension/CHANGELOG.md index b2dec8d818..290852fff3 100644 --- a/packages/zowe-explorer-ftp-extension/CHANGELOG.md +++ b/packages/zowe-explorer-ftp-extension/CHANGELOG.md @@ -4,10 +4,29 @@ All notable changes to the "zowe-explorer-ftp-extension" extension will be docum ### New features and enhancements +- Renamed extension to `IBM z/OS FTP for Zowe Explorer`. [#2990](https://github.com/zowe/zowe-explorer-vscode/issues/2990) +- Updated the FTP plug-in dependency to `3.0.0` for Zowe V3 support. [#2783](https://github.com/zowe/vscode-extension-for-zowe/pull/2783). +- Updated from `@zowe/cli` package dependency to individual Zowe `8.0.0` SDK packages for Zowe V3 support. [#2719](https://github.com/zowe/vscode-extension-for-zowe/issues/2719) +- Updated Zowe Explorer API dependency to `3.0.0` for Zowe V3 support and addressed breaking changes. Check the [list](https://github.com/zowe/zowe-explorer-vscode/wiki/v3-Changes-for-Users-and-Extenders) of APIs that were removed. +- Updated VS Code engine support to `1.79.0` and higher. +- Updated VS Code activation event to `onStartupFinished`. [#1910](https://github.com/zowe/vscode-extension-for-zowe/issues/1910) +- Removal of Zowe V1 profile support. [#2072](https://github.com/zowe/vscode-extension-for-zowe/issues/2072) +- Migrated to new package manager PNPM from Yarn. +- Migrated to webpack V5 [#2214](https://github.com/zowe/vscode-extension-for-zowe/issues/2214) +- Added `madge` dependency for support to track circular dependencies. [#2148](https://github.com/zowe/vscode-extension-for-zowe/issues/2148) +- Replaced `ts-loader` dependency with `esbuild-loader` to improve build speed for developers. [#2909](https://github.com/zowe/zowe-explorer-vscode/pull/2909) +- Added support for streams to the `getContents` and `putContents` functions (`FtpMvsApi` and `FtpUssApi` interfaces) with the following API: `uploadFromBuffer`. +- Removed pop-up notification of successful registration with Zowe Explorer and log the success message. [#2862](https://github.com/zowe/zowe-explorer-vscode/issues/2862) +- **Breaking:** updated the `FtpMvsApi.putContents` function to throw an error when an e-tag conflict is found to establish consistency with the `FtpUssApi.putContents` function which has always thrown an error for this scenario. +- **Breaking:** Removed the deprecated `FtpUssApi.putContents` function in favor of the `FtpUssApi.putContent` function. + ### Bug fixes -- Update Zowe SDKs to `8.0.0` for technical currency. -- Update z/OS FTP Plug-in for Zowe CLI dependency to `3.0.0`. +- Changed the hashing algorithm for e-tag generation from `sha1` to `sha256` to avoid collisions. [#2890](https://github.com/zowe/zowe-explorer-vscode/pull/2890) +- Fix Windows-specific hangs when saving members that contain JCL via the FTP extension. Thanks @tiantn & @std4lqi. [#2533](https://github.com/zowe/vscode-extension-for-zowe/issues/2533) +- Removed outdated vscode-nls webpack plug-in [#2253](https://github.com/zowe/vscode-extension-for-zowe/issues/2253) +- Fixed ECONNRESET error when trying to upload or create an empty data set member. [#2350](https://github.com/zowe/vscode-extension-for-zowe/issues/2350) +- Updated additional dependencies for technical currency purposes. ## `3.0.0-next.202409251932` diff --git a/packages/zowe-explorer-ftp-extension/package.json b/packages/zowe-explorer-ftp-extension/package.json index c93fdf04e1..bf2c69b52a 100644 --- a/packages/zowe-explorer-ftp-extension/package.json +++ b/packages/zowe-explorer-ftp-extension/package.json @@ -52,9 +52,9 @@ "vscode": "^1.79.0" }, "dependencies": { - "@zowe/zos-files-for-zowe-sdk": "^8.0.0", - "@zowe/zos-ftp-for-zowe-cli": "^3.0.0", - "@zowe/zos-jobs-for-zowe-sdk": "^8.0.0", + "@zowe/zos-files-for-zowe-sdk": "8.0.0", + "@zowe/zos-ftp-for-zowe-cli": "3.0.0", + "@zowe/zos-jobs-for-zowe-sdk": "8.0.0", "@zowe/zowe-explorer-api": "3.0.0-SNAPSHOT", "tmp": "0.2.3" }, diff --git a/packages/zowe-explorer/CHANGELOG.md b/packages/zowe-explorer/CHANGELOG.md index f154cc7ae9..42d36de355 100644 --- a/packages/zowe-explorer/CHANGELOG.md +++ b/packages/zowe-explorer/CHANGELOG.md @@ -6,8 +6,60 @@ All notable changes to the "vscode-extension-for-zowe" extension will be documen ### New features and enhancements +- Support VS Code engine 1.79.0 and higher. +- Updated activation event to `onStartupFinished`. [#1910](https://github.com/zowe/vscode-extension-for-zowe/issues/1910) +- Removal of Zowe V1 profile support. [#2072](https://github.com/zowe/vscode-extension-for-zowe/issues/2072) +- Removal of Theia support. [#2647](https://github.com/zowe/vscode-extension-for-zowe/issues/2647) +- Migrate package manager from Yarn to PNPM. [#2424](https://github.com/zowe/zowe-explorer-vscode/pull/2424) +- Migrated to webpack V5 [#2214](https://github.com/zowe/vscode-extension-for-zowe/issues/2214) +- Migrated from `@zowe/cli` dependency package to individual Zowe `8.0.0` SDK packages for Zowe V3 support. [#2719](https://github.com/zowe/vscode-extension-for-zowe/issues/2719) +- Updated Zowe Explorer API dependency to `3.0.0` for Zowe V3 support. Check the [list](https://github.com/zowe/zowe-explorer-vscode/wiki/v3-Changes-for-Users-and-Extenders) of APIs that were removed. +- Removed deprecated methods and conoslidated VS Code commands. Check the [list](https://github.com/zowe/zowe-explorer-vscode/wiki/v3-Changes-for-Users-and-Extenders) of APIs that were removed. +- Added `madge` dependency to support to track circular dependencies. [#2148](https://github.com/zowe/vscode-extension-for-zowe/issues/2148) +- Migrated from `i18n` to `l10n` for VS Code localization. [#2253](https://github.com/zowe/vscode-extension-for-zowe/issues/2253) +- Replaced `lodash` dependency with `es-toolkit` to reduce webview bundle size and add technical currency. [#3060](https://github.com/zowe/zowe-explorer-vscode/pull/3060) +- Replaced `ts-loader` dependency with `esbuild-loader` to improve build speed for developers. [#2909](https://github.com/zowe/zowe-explorer-vscode/pull/2909) +- Minimized activation function for Zowe Explorer to load only necessary items on activation. [#1985](https://github.com/zowe/vscode-extension-for-zowe/issues/1985) +- **Breaking:** Zowe Explorer no longer uses a temporary directory for storing Data Sets and USS files. All settings related to the temporary downloads folder have been removed. In order to access resources stored by Zowe Explorer V3, refer to the [FileSystemProvider documentation](https://github.com/zowe/zowe-explorer-vscode/wiki/FileSystemProvider) for information on how to build and access resource URIs. Extenders can detect changes to resources using the `onResourceChanged` function in the `ZoweExplorerApiRegister` class. [#2951](https://github.com/zowe/zowe-explorer-vscode/issues/2951) +- **Breaking** Moved data set templates out of data set history settings into new setting `zowe.ds.templates`. [#2345](https://github.com/zowe/zowe-explorer-vscode/issues/2345) +- Added UI migration steps on startup for users with V1 profiles to either convert existing V1 profiles to team configuration file or create a new team configuration file. [#2284](https://github.com/zowe/vscode-extension-for-zowe/issues/2284) +- Added support for Local Storage settings for persistent settings in Zowe Explorer [#2208](https://github.com/zowe/vscode-extension-for-zowe/issues/2208) +- Grouped Common methods into Singleton classes. [#2109](https://github.com/zowe/zowe-explorer-vscode/issues/2109) +- **New** Extender registration APIs: + - `onVaultUpdate` VS Code events to notify extenders when credentials are updated on the OS vault by other applications. [#2994](https://github.com/zowe/zowe-explorer-vscode/pull/2994) + - `onCredMgrUpdate` VS Code events to notify extenders when the local PC's credential manager has been updated by other applications. [#2994](https://github.com/zowe/zowe-explorer-vscode/pull/2994) + - `onResourceChanged` function to the `ZoweExplorerApiRegister` class to allow extenders to subscribe to any changes to Zowe resources (data sets, USS files/folders, jobs, etc.). See the [FileSystemProvider wiki page](https://github.com/zowe/zowe-explorer-vscode/wiki/FileSystemProvider) for more information on Zowe resources. + - `addFileSystemEvent` function to the `ZoweExplorerApiRegister` class to allow extenders to register their FileSystemProvider `onDidChangeFile` events. +- Implemented support for building, exposing, and displaying table views within Zowe Explorer. Tables can be customized and exposed using the helper facilities (`TableBuilder` and `TableMediator`) for an extender's specific use case. For more information on how to configure and show tables, please refer to the [wiki article on Table Views](https://github.com/zowe/zowe-explorer-vscode/wiki/Table-Views). [#2258](https://github.com/zowe/zowe-explorer-vscode/issues/2258) +- Added support for logging in to multiple API ML instances per team configuration file. [#2264](https://github.com/zowe/zowe-explorer-vscode/issues/2264) +- Added remote lookup functionality for data sets and USS, allowing Zowe Explorer to locate and resolve mainframe resources on demand. [#3040](https://github.com/zowe/zowe-explorer-vscode/pull/3040) +- Implemented change detection in the data sets and USS filesystems so that changes on the mainframe are reflected in opened editors for Data Sets and USS files. [#3040](https://github.com/zowe/zowe-explorer-vscode/pull/3040) +- Implemented a "Show as Table" option for profile nodes in the Jobs tree, displaying lists of jobs in a tabular view. Jobs can be filtered and sorted within this view, and users can select jobs to cancel, delete, or download. [#2258](https://github.com/zowe/zowe-explorer-vscode/issues/2258) +- Implemented the VS Code FileSystemProvider for the Data Sets, Jobs, and USS trees to handle all read/write actions as well as conflict resolution. [#2207](https://github.com/zowe/zowe-explorer-vscode/issues/2207) + See the [FileSystemProvider wiki page](https://github.com/zowe/zowe-explorer-vscode/wiki/FileSystemProvider) for more information on the FileSystemProvider. + - Refactored behavior and management of Favorites in Zowe Explorer. [#2026](https://github.com/zowe/zowe-explorer-vscode/issues/2026) +- Added the capability for extenders to contribute new profile types to the Zowe schema during extender activation. [#2508](https://github.com/zowe/vscode-extension-for-zowe/issues/2508) +- Added a new command feature, Issue UNIX Commands available in the VS Code command pallete or via right-click action in the USS treeview. [#1326](https://github.com/zowe/vscode-extension-for-zowe/issues/1326) +- Added enhancement to compare 2 files from MVS and/or UNIX System Services views via right click actions, with option to compare in Read-Only mode too. +- Added a prompt to create a new Zowe client configuration for an environment that does not have any Zowe client configurations. [#3148](https://github.com/zowe/zowe-explorer-vscode/pull/3148) +- Implemented support for favoriting a data set search that contains member wildcards. [#1164](https://github.com/zowe/zowe-explorer-vscode/issues/1164) +- Changed default base profile naming scheme in newly generated configuration files to prevent name and property conflicts between Global and Project profiles [#2682](https://github.com/zowe/zowe-explorer-vscode/issues/2682) +- Renamed `isHomeProfile` context helper function to `isGlobalProfile` for clarity. [#2026](https://github.com/zowe/zowe-explorer-vscode/issues/2026) +- Set up [POEditor project](https://poeditor.com/join/project/Siy3KCNFKk) for contributing translations and cleaned up redundant localization strings. [#546](https://github.com/zowe/zowe-explorer-vscode/issues/546) +- Added integration and end-to-end test framework to verify extension behavior and catch issues during Zowe Explorer development. [#2322](https://github.com/zowe/zowe-explorer-vscode/issues/2322) + ### Bug fixes +- The "Zowe Resources" panel is now hidden by default until Zowe Explorer reveals it to display a table or other data. [#3113](https://github.com/zowe/zowe-explorer-vscode/issues/3113) +- Fixed behavior of logout action when token is defined in both base profile and parent profile. [#3076](https://github.com/zowe/zowe-explorer-vscode/issues/3076) +- Fixed bug that displayed obsolete profiles in the Zowe Explorer tree views after the associated team configuration file was deleted. [#3124](https://github.com/zowe/zowe-explorer-vscode/issues/3124) +- Removal of broken VSC command to `Zowe Explorer: Refresh Zowe Explorer`, use VS Code's `Extensions: Refresh` command instead. [#3100](https://github.com/zowe/zowe-explorer-vscode/issues/3100) +- Fixed issue where "Allocate Like" input box placeholder was showing a localization ID instead of the intended message ("Enter a name for the new data set"). [#2759](https://github.com/zowe/vscode-extension-for-zowe/issues/2759) +- Fixed default behavior of "Create a new Team Configuration File" to create a Project Config instead of Project User Config. [#2684](https://github.com/zowe/vscode-extension-for-zowe/issues/2684) +- Changed ZoweExplorerExtender.initForZowe `profileTypeConfigurations: imperative.ICommandProfileTypeConfiguration[]` to a required argument to address issues seen after registration of profile type when not passed. [#2575](https://github.com/zowe/vscode-extension-for-zowe/issues/2575) +- Resolved `TypeError: Cannot read properties of undefined (reading 'direction')` error for favorited items. [#3067](https://github.com/zowe/zowe-explorer-vscode/pull/3067) +- Fixed issue where switching from token-based authentication to user/password would cause an error for nested profiles. [#3142](https://github.com/zowe/zowe-explorer-vscode/issues/3142) + ## `3.0.0-next.202409251932` ### New features and enhancements @@ -28,7 +80,6 @@ All notable changes to the "vscode-extension-for-zowe" extension will be documen - Fixed issue where obsolete credentials persisted for PDS member nodes in Data Sets tree. [#3112](https://github.com/zowe/zowe-explorer-vscode/issues/3112) - Fixed issue where Search operation did not prompt for credentials if profile contains expired token. [#2259](https://github.com/zowe/zowe-explorer-vscode/issues/2259) - Fixed issue where inactive status was not displayed for profiles loaded from Global Config. [#3134](https://github.com/zowe/zowe-explorer-vscode/issues/3134) -- Fixed issue where switching from token-based authentication to user/password would cause an error for nested profiles. [#3142](https://github.com/zowe/zowe-explorer-vscode/issues/3142) ## `3.0.0-next.202409132122` @@ -175,8 +226,6 @@ All notable changes to the "vscode-extension-for-zowe" extension will be documen - Adapted to new API changes from grouping of common methods into singleton classes [#2109](https://github.com/zowe/vscode-extension-for-zowe/issues/2109) - Migrated to webpack v5 [#2214](https://github.com/zowe/vscode-extension-for-zowe/issues/2214) -### Bug fixes - ## `3.0.0-next.202401241448` ### New features and enhancements diff --git a/packages/zowe-explorer/package.json b/packages/zowe-explorer/package.json index 82361d5f96..35c6755266 100644 --- a/packages/zowe-explorer/package.json +++ b/packages/zowe-explorer/package.json @@ -1830,11 +1830,11 @@ }, "dependencies": { "@vscode/codicons": "^0.0.35", - "@zowe/core-for-zowe-sdk": "^8.0.0", - "@zowe/secrets-for-zowe-sdk": "^8.0.0", - "@zowe/zos-files-for-zowe-sdk": "^8.0.0", - "@zowe/zos-jobs-for-zowe-sdk": "^8.0.0", - "@zowe/zosmf-for-zowe-sdk": "^8.0.0", + "@zowe/core-for-zowe-sdk": "8.0.0", + "@zowe/secrets-for-zowe-sdk": "8.0.0", + "@zowe/zos-files-for-zowe-sdk": "8.0.0", + "@zowe/zos-jobs-for-zowe-sdk": "8.0.0", + "@zowe/zosmf-for-zowe-sdk": "8.0.0", "@zowe/zowe-explorer-api": "3.0.0-SNAPSHOT", "dayjs": "^1.11.10", "fs-extra": "8.0.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1121e8d0c3..fade046e7b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -142,19 +142,19 @@ importers: specifier: ^0.0.35 version: 0.0.35 '@zowe/core-for-zowe-sdk': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0(@zowe/imperative@8.0.0) '@zowe/secrets-for-zowe-sdk': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0 '@zowe/zos-files-for-zowe-sdk': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0(@zowe/core-for-zowe-sdk@8.0.0)(@zowe/imperative@8.0.0) '@zowe/zos-jobs-for-zowe-sdk': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0(@zowe/core-for-zowe-sdk@8.0.0)(@zowe/imperative@8.0.0) '@zowe/zosmf-for-zowe-sdk': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0(@zowe/core-for-zowe-sdk@8.0.0)(@zowe/imperative@8.0.0) '@zowe/zowe-explorer-api': specifier: 3.0.0-SNAPSHOT @@ -251,31 +251,31 @@ importers: specifier: ^1.53.2 version: 1.89.0 '@zowe/core-for-zowe-sdk': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0(@zowe/imperative@8.0.0) '@zowe/imperative': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0 '@zowe/secrets-for-zowe-sdk': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0 '@zowe/zos-console-for-zowe-sdk': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0(@zowe/core-for-zowe-sdk@8.0.0)(@zowe/imperative@8.0.0) '@zowe/zos-files-for-zowe-sdk': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0(@zowe/core-for-zowe-sdk@8.0.0)(@zowe/imperative@8.0.0) '@zowe/zos-jobs-for-zowe-sdk': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0(@zowe/core-for-zowe-sdk@8.0.0)(@zowe/imperative@8.0.0) '@zowe/zos-tso-for-zowe-sdk': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0(@zowe/core-for-zowe-sdk@8.0.0)(@zowe/imperative@8.0.0) '@zowe/zos-uss-for-zowe-sdk': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0(@zowe/imperative@8.0.0) '@zowe/zosmf-for-zowe-sdk': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0(@zowe/core-for-zowe-sdk@8.0.0)(@zowe/imperative@8.0.0) deep-object-diff: specifier: ^1.1.9 @@ -300,13 +300,13 @@ importers: packages/zowe-explorer-ftp-extension: dependencies: '@zowe/zos-files-for-zowe-sdk': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0(@zowe/core-for-zowe-sdk@8.0.0)(@zowe/imperative@8.0.0) '@zowe/zos-ftp-for-zowe-cli': - specifier: ^3.0.0 + specifier: 3.0.0 version: 3.0.0(@zowe/imperative@8.0.0) '@zowe/zos-jobs-for-zowe-sdk': - specifier: ^8.0.0 + specifier: 8.0.0 version: 8.0.0(@zowe/core-for-zowe-sdk@8.0.0)(@zowe/imperative@8.0.0) '@zowe/zowe-explorer-api': specifier: 3.0.0-SNAPSHOT @@ -5108,6 +5108,7 @@ packages: /defaults@1.0.4: resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} + requiresBuild: true dependencies: clone: 1.0.4 dev: true