npm @zowe/zowe-explorer-api 3.0.0-next.202408301858
v3.0.0-next.202408301858

17 days ago

Zowe Explorer

New features and enhancements

  • Refactored behavior and management of Favorites in Zowe Explorer. #2026
  • Renamed isHomeProfile context helper function to isGlobalProfile for clarity. #2026
  • Set up POEditor project for contributing translations and cleaned up redundant localization strings. #546
  • Replaced ts-loader with esbuild-loader to improve build speed for developers. #2909
  • Grouped Common methods into Singleton classes. #2109
  • BREAKING Moved data set templates out of data set history settings into new setting "zowe.ds.templates". #2345
  • Ported the following enhancements from v2:
    • Added a "Copy Relative Path" context option for USS files and directories in the tree view. #2908
    • Added a "Copy Name" context option for data sets, jobs and spool files in the tree view. #2908
  • Added integration and end-to-end test framework to verify extension behavior and catch issues during Zowe Explorer development. #2322
  • Breaking: Removed deprecated methods: #2238
    • DatasetActions.copyDataSet - use DatasetActions.copyDataSets instead
    • USSActions.pasteUssFile - use DatasetActions.pasteUss instead
    • ZoweUSSNode.refreshAndReopen - use ZoweUSSNode.reopen instead
  • Add deprecation message to history settings explaining to users how to edit items. #2303
  • Breaking: Consolidated VS Code commands:
    • 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
  • Added support for consoleName property in z/OSMF profiles when issuing MVS commands #1667
  • Updated sorting of PDS members to show items without stats at bottom of list #2660
  • Added PEM certificate support as an authentication method for logging into the API ML. #2621
  • Added support to view the Encoding history for MVS and Dataset in the History View. #2776
  • Added error handling for when the default credential manager is unable to initialize. #2811
  • 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 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
  • Implemented the onVaultUpdate VSCode events to notify extenders when credentials are updated on the OS vault by other applications. #2994
  • Changed default base profile naming scheme in newly generated configuration files to prevent name and property conflicts between Global and Project profiles #2682
  • Implemented the onCredMgrUpdate VSCode events to notify extenders when the local PC's credential manager has been updated by other applications. #2994
  • 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. #2258
  • Added support for logging in to multiple API ML instances per team config file. #2264
  • Added remote lookup functionality for Data Sets and USS, allowing Zowe Explorer to locate and resolve mainframe resources on demand. #3040
  • Implemented 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. #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
  • Replaced lodash dependency with es-toolkit to reduce webview bundle size and add technical currency. #3060

Bug fixes

  • Fixed vNext-only issue where users are not able to create data sets. #2783.
  • Omitted the following Zowe Explorer commands from the Command Palette that do not execute properly when run as a standalone command:
    • Zowe Explorer: Cancel job
    • Zowe Explorer: Filter jobs
    • Zowe Explorer: Filter PDS members
    • Zowe Explorer: Sort jobs
    • Zowe Explorer: Sort PDS members
    • Zowe Explorer: Start Polling
    • Zowe Explorer: Stop Polling
  • Ported the following fixes from v2:
    • Moved schema warnings into the log file (rather than a UI message) to minimize end-user disruption. #2860
  • Fix issue with base profile not being included in fresh team configuration file. #2887
  • Fixed an issue where the onProfilesUpdate event did not fire after secure credentials were updated. #2822
  • Fixed issue where saving changes to favorited PDS member fails when custom temp folder is set on Windows. #2880
  • Fixed issue where multiple extensions that contribute profiles to a tree view using the Zowe Explorer API may fail to load. #2888
  • Fixed regression where getProviderForNode returned the wrong tree provider after performing an action on a Zowe tree node, causing some commands to fail silently. #2967
  • Fixed issue where creating a new team configuration file could cause Zowe Explorer to crash, resulting in all sessions disappearing from trees. #2906
  • Addressed breaking changes from the Zowe Explorer API package.#2952
  • Fixed data set not opening when the token has expired. #3001
  • Fixed an issue where upgrading from Zowe Explorer v1 and selecting "Reload Extensions" causes Zowe Explorer v3 to fail during initialization. #3051
  • Fixed an issue where remote lookup functionality caused the local side of a conflict to be overwritten with the remote contents. #3085
  • Fixed an issue where the remote conflict icons showed when using the "Compare with Selected" feature. #3085
  • Update Zowe SDKs to 8.0.0-next.202408291544 for technical currency. #3057

IBM z/OS FTP for Zowe Explorer

New features and enhancements

  • Replaced ts-loader with esbuild-loader to improve build speed for developers. #2909

Bug fixes

  • Changed the hashing algorithm for e-tag generation from sha1 to sha256 to avoid collisions. #2890
  • Updated the FTP plugin dependency to 3.0.0-next.202403191358 for technical currency #2783.
  • Renamed extension to IBM z/OS FTP for Zowe Explorer. #2990
  • Update Zowe SDKs to 8.0.0-next.202408291544 for technical currency. #3057

Zowe Explorer APIs

New features and enhancements

  • Deprecated the following properties on Zowe tree interfaces in favor of setters and getters to incentivize encapsulation: #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.
  • Breaking: Added return type of Promise<void> to IZoweTree.addDsTemplate. #2345

  • Breaking: Added return type of Promise<void> to MainframeInteractions.ICommon.logout. #2783

  • Grouped Common methods into Singleton classes. #2109

  • Breaking: Removed deprecated methods: #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

  • Breaking: Added return type of Promise<void> to the following IZoweTree methods: #2238

    • addFavorite
    • removeFavorite
    • removeFavProfile
    • ssoLogin
    • ssoLogout
  • Added an optional function openWithEncoding to the IZoweTree interface to open file using encoding specified by user. #2931

  • Deprecated the openFiles property on IZoweTree interface - in v3 open files are tracked by the FileSystemProvider instead. #2947

  • 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

  • Breaking: Removed the redundant zoweFileProvider parameter from editSession method on the IZoweTree interface. #2947

  • Updated the ProfilesCache.getProfiles method to return empty list instead of undefined when there are no profiles. #2947

  • Added PEM certificate support as an authentication method for logging into the API ML. #2621

  • 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 instead. #2968

  • Next Breaking: Changed ProfilesCache.convertV1ProfToConfig method to be a static method that requires ProfileInfo instance as a parameter.

  • Added the onVaultUpdate VSCode event to notify extenders when credentials are updated on the OS vault by other applications. #2994

  • Added the onCredMgrsUpdate VSCode event to notify extenders when the local PC's credential manager has been updated by other applications. #2994

  • LTS 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

    • 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<Validation.IValidationProfile>
      • Modified getSearchHistory() to return string[]
      • Modified getAllLoadedItems() to return IZoweTreeNode[] | Promise<IZoweTreeNode[]>
      • 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<IZosFilesResponse>
      • Developers should not be expecting output from the following methods:
        • openUSS
        • refreshUSS
        • deleteUSSNode
        • renameUSSNode
        • reopen
        • saveSearch
  • 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. #2258

  • Breaking: Consolidated WebView API options into a single object (WebViewOpts type), both for developer convenience and to support future options.

  • Enhanced the ZoweVsCodeExtension.loginWithBaseProfile and ZoweVsCodeExtension.logoutWithBaseProfile methods to store SSO token in parent profile when nested profiles are in use. #2264

  • Next Breaking: Changed return type of ZoweVsCodeExtension.logoutWithBaseProfile method from void to boolean to indicate whether logout was successful.

  • 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

  • Breaking: Removed the MemberEntry filesystem class, in favor of using the DsEntry class with isMember set to true.

  • Changed TableViewProvider.setTableView function to be asynchronous for more optimized data updates.

  • Updated Table.Conditional and Table.Callback types to support multi-row callbacks.

Bug fixes

  • Fixed an issue where the onProfilesUpdate event did not fire after secure credentials were updated. #2822
  • Fixed an issue where ProfilesCache may return missing or incorrect profile values when multiple extensions call it during activation. #2831
  • Removed handlebars dependency in favor of mustache for technical currency purposes. #2975
  • Fixed an issue where the ZoweVsCodeExtension.updateCredentials method could remove credentials from session when input prompt was cancelled. #3009
  • Fixed an issue where the loaded configuration could be overridden when extenders retrieved the Zowe home directory. #2994
  • Fixed an issue where remote lookup functionality caused the local side of a conflict to be overwritten with the remote contents. #3085
  • Update Zowe SDKs to 8.0.0-next.202408291544 for technical currency. #3057

Don't miss a new zowe-explorer-api release

NewReleases is sending notifications on new releases.