Zowe v2 is NOW LIVE - please visit the Download page for the latest artifacts and documentation.
The V2 documentation site is available at V2 Docs Site Preview.
Starting from April 6, the Zowe Onboarding Squad will hold the Office Hours focused on Consumers of Zowe in V2. More information can be found in the Office Hour section.
The final V2 Conformance Criteria are available
If you want to learn more about what you can expect compatibility wise, the statement is here.
Breaking changes for Zowe CLI end users
zowe configno longer manages app settings (Imperative & CLI)
fail-on-errordefault changed to true for
zowe plugins validate(Imperative & CLI)
Breaking changes that could prevent a V1 plug-in (or SDK) from working in V2
AbstractRestClient.mDecodedefaults to true so any plugin with custom RestClient implementation that adds gzip decompression may break
The return value for PluginManagementFacility.requirePluginModuleCallbackchanged.
Common usage: ConfigurationLoader.load
this.pluginNmForUseInCallback = pluginName
pluginConfig = ConfigurationLoader.load(null,pkgJsonData,this.requirePluginModuleCallback(pluginName))
The following changes were marked for deprecation in the zowe-v1-lts release. These changes are also less likely to impact plug-ins.
Breaking changes for Zowe CLI & Imperative plug-in developers (V2-V2 - these changes only impacted early adopters of
@next as these are breaking changes made during the technical preview validation phase - thanks to the community for their feedback)
tokenValuewere combined into
authTokenand we later reverted this change (Imperative & CLI)
zowe configgroup renamed:
Config.set no longer coerces string values to other types unless parseString = true (potential SDK impact - not CLI Plug-in impact)
Summary: Major install & configuration simplication due to various improvements. Reduced overhead and increased performance due to reduction in server count, optimised networking, and 64 bit ZSS
Some configuration, such as port and IP values, are different by default but can be reconfigured to old values. But, some app framework extensions may not work in v2 without enhancements.
server.jsonwill be broken, adapt them to write to
TranslationServiceetc.) to 12 (
L10TranslationServiceetc.). For help in updating your Desktop apps to match new internationalization usage, please reference: Sample Angular App example
The final version of V2 Conformance Criteria is published here. Each of the section links to th PDF for the specific criteria.
Check out the OMP Calendar for specific time of the V2 office hours.
|Date||Topic||Link to the meeting||Link to the recording||Links to the materials|
|04/27/2022 12:00PM - 12:30PM ET||Zowe Web UI for Consumers||https://zoom.us/j/94312528890|
|04/20/2022 12:00PM - 12:30PM ET||Zowe Explorers for Consumers||https://zoom.us/j/94312528890||Zoom recording||Presentation|
|04/13/2022 12:00PM - 12:30PM ET||Zowe CLI for Consumers||https://zoom.us/j/94312528890||Zoom recording||Presentation|
|04/06/2022 12:00PM - 12:30PM ET||Zowe API Mediation Layer for Consumers||https://zoom.us/j/94312528890||Zoom recording||Presentation|
|Date||Topic||Link to the meeting||Link to the recording||Links to the materials|
|02/23/2022 12PM - 1PM ET||General Wrap-up||https://zoom.us/j/94312528890||Zoom recording||Presentation|
|02/16/2022 12PM - 1PM ET||Zowe V2 Office Hours: APIML V2 SSO Conformance Requirements||https://zoom.us/j/94312528890||Zoom recording||Presentation|
|02/09/2022 12PM - 1PM ET||V2 General Information||https://zoom.us/j/94312528890||Zoom recording||Presentation|
|02/02/2022 12PM - 1PM ET||Systems / Install||https://zoom.us/j/94312528890||Zoom recording||Presentation|
|01/26/2022 12PM - 1PM ET||Web UI (Zowe Application Framework)||https://zoom.us/j/94312528890||Zoom recording||Presentation|
|01/19/2022 12PM - 1PM ET||Explorers||https://zoom.us/j/94312528890||Zoom recording||Presentation|
|01/12/2022 12PM - 1PM ET||API Mediation Layer||https://zoom.us/j/94312528890||Zoom recording||Presentation|
|01/05/2022 12PM - 1PM ET||CLI||https://zoom.us/j/94312528890||Zoom recording||Presentation|
|12/08/2021 12PM - 1PM ET||Kickoff||https://zoom.us/j/94312528890||Zoom recording||Presentation|
The official date is TBD, the target is April 25, 2022; look for the official announcement at Zowe.org landing page announcement banner.We are sorry for the delay and any inconvenience coming out of it.
The Zowe Squads have prepared XLS spreadsheets with conformance criteria for all Zowe extensions including: CLI, APIs, App Framework, and Explorerfor VS Code. The spreadsheets clearly show the prior / V1 criteria alongside the new / V2 criteria. Please be aware, there are additions, deletions, and CHANGES to the criteria. In some cases the change is simply that a BEST PRACTICE has been deemed REQUIRED. Use the light-GREEN highlights to easily identify the changes. See the Changes to the Conformance Criteria section at Zowe.org/vNext.
All Zowe V1 conformance badges will remain at the Open Mainframe Project Interactive Landscape; we recommend documenting a Zowe compatibility matrix to ensure clients are aware of any/all compatibility issues between your V1 conformant apps and Zowe V2.
Anytime. Zowe is an open source project managed by a transparent, open source community.
The V1 LTS Maintenance timeline runs through July 2024. See RELEASE TIMELINE at Zowe.org/download.
You have several options:
You have several options:
Yes. Recordings can be provided on request. Click on the COMMUNITY tab at Zowe.org, navigate to the SLACK box and click #zowe-onboarding and request the recording.
Yes, we plan to introduce a "zowe config convert-profiles" command, which will be available in the v2 release.
This work is still in progress-we are working on a "zowe daemon enable" command to make the daemon installation process as seamless as possible. Daemon mode will be disabled by default, the command must be run to enable it.
The recommended approach for editing the config file is to launch it in VS Code from Zowe Explorer and make modifications there. The designated user responsible for creating and maintaining the config (we recommend a team lead or Administrator) will be able to leverage the built-in “intellisense” when editing the file. Note: Team Config fundamentally changes the paradigm on profile creation & management. Prior to Team Config, all users were required to understand, create, test, trouble-shoot, and manage their own profiles. Team Config was designed to scale all of these tasks back, remove the burden from individual users and centralize it. Once the config is distributed most users should not need to make any significant edits.
Join the discussion on this topic here: https://github.com/zowe/vscode-extension-for-zowe/discussions/1535
No, team config will be reloaded for every command
Team Config will likely support alternates defined in the settings json file, administrators will probably need to hand-edit the configuration file to set a new credential manager
A migration utility is available - it will translate profiles (1 for 1) to new (team config) format AND (optionally) clean-up old profiles and old SCS entries.
Migration to the new profile format is NOT required immediately - the old profiles will work UNLESS a team config is created - that said, the old profiles will not be used if a new team config is available. Simply stated - if a team config is not located, CLI will fall back to using the prior profiles
Yes - CLI can read the old and the new format
Yes (recommend this is cleaned up)
CLI option name is "base-path", property name in config is "basePath"
The BCM prefix for V2 is required
Yes, this a requirement for V2 conformance, however Pass Tickets can be used and it is possible to leverage the basic authentication to properly participate. The configuration is here: https://docs.zowe.org/stable/extend/extend-apiml/api-mediation-passtickets/#api-services-that-support-passtickets The API ML will issue a passticket for the user when service is accessed as long as the user provides a valid JWT token. We recommend this route (minimally) to give the users a seamless signon experience.
It is part of your configuration yaml - it is a unique identifier for your service that helps to identify your service and uses the format: companyprefix.productname (Note: it is used for documentation only, has no impact on interacting with API-ML)
Cross-version compatibility may be possible but is not guarenteed; recommend upgrading both
Existing (V1) APIs will continue to work
No. Zowe CLI offers more robust functionality for Team Configuration initialization specifically when configuring for MFA/token support, however it is NOT required. Zowe Explorer users interested in configuring for MFA/Tokens can manually update their Team Configuration
No. The Zowe Explorer download experience will not change.
No. Users must plan to convert to the Team Configuration (profiles) format.
The V1-style profiles will remain backward compatible for the duration of the Zowe V2 ACTIVE and MAINTENANCE time period (~4 years), however they will be identified as “deprecated” in Zowe V2 which means they will not be backwards compatible with Zowe V3 and beyond. The same is true for Zowe CLI profiles.
The presence of a Team Configuration renders all V1 profiles unusable. When you opt in to the V2 Team configuration, you cannot revert back.
Yes, as long as there is no team config file present.
Zowe Explorer users may not know. In the CLI, if a V2 profile is found, and a V1 profiles command is issued, an error similar to the following will be displayed:
-> zowe profiles list zosmf
An error occurred trying to list profiles.
Profile IO Error: A Zowe V1 profile operation was attempted with a Zowe V2 configuration in use.
Warning: The command 'profiles list' is deprecated.
Recommended replacement: The 'config list' command
If only V1 profiles exist, the command will work, but a deprecation warning will be displayed:
-> zowe profiles list zosmf
Warning: The command 'profiles list' is deprecated. Recommended replacement: The 'config list' command
Yes, the CLI has a conversion utility. At the present time, Zowe Explorer users who wish to convert over and do not use Zowe CLI will need to create their profiles from scratch OR install Zowe CLI and use the Zowe CLI conversion utility.
Zowe Explorer is available for download at the VisualStudio Marketplace: https://marketplace.visualstudio.com/items?itemName=Zowe.vscode-extension-for-zowe and the Open VSX Registry: https://open-vsx.org/extension/Zowe/vscode-extension-for-zowe
For Zowe CLI Extensions: the JSON schema file is automatically updated when a Zowe CLI plug-in is installed; more specifically the global schema is dynamically updated -- individual project schemas are not). For Zowe Explorer Extensions: we have plans to automatically insert configuration information into the schema, but at the current time this information will need to be manually added.
For Zowe CLI, the global schema is updated when the new plug-in is installed. New init commands will include the new plug-in profile(s) in the generated zowe.config.json. Project-level schema is not updated at plug-in install time. To update, run zowe config update-schemas. The plan for Zowe Explorer is similar but is still being discussed.
Yes, specifying individual ports will continue to be supported
Yes, should be able to run via SHELL or via a batch job
Most-likely, yes (will need to be confirmed)
Zowe.yaml is a centralized file containing parameters utilized by the ZWE command - you determine where it resides. V2 no longer requires an instance directory.
Yes. You can get a preview build here.
Zowe Slack Channel: openmainframeproject.slack.com #zowe-user OR Sean’s email address: firstname.lastname@example.org
NO, that is an error. We will correct this!
At present time, adding components/plug-ins to the manifest.yaml will require a restart of the [corresponding] Zowe server. We will plan to enhance Zowe to offer a more dynamic approach (i.e. automatically re-read the manifest.yaml for any server that can handle changes without requiring a restart).
Yes, they can be defined in zowe.yaml as `zowe.setup.security.stcs` which lets you set their names, e.g. `zowe.setup.security.stcs.zowe: ZWEMYSTC`.
Yes, all data set names used by Zowe are configurable in zowe.yaml so you can configure your multiple-run scenario with multiple zowe.yaml files where each has its own stc and data set names.
Allowing PARMLIB doesn't change the way how Zowe uses zowe.yaml behind the scene. It's more like a new user interface to configure Zowe. The content in PARMLIB will be concatenated, merged into a temporary zowe.yaml and fed to Zowe. That means it won't change the way how components / extensions read configurations. On the other side, since we may enhance the configuration interface like allowing PARMLIB, it's not recommended for a component installer to read or update zowe.yaml directly. Instead, a component installer should read `ZWE_` environment variables to understand configurations, and use relevant zwe commands or library functions to update. For example, `zwe components enable` can be used to enable your component, and it's compatible with both USS zowe.yaml or PARMLIB configuration.
We can review with IBM - that said, we also have plans to help prevent accidental “C”- cancel commands. Why did we do this? Zowe components need specific resource and recovery management handling - the “P” command sends the proper signal to Zowe to ensure all components are shut down appropriately. We'll investigate this more so many thanks for the feedback.
It is available now, see: #download-availability
We recommend extensions create a dedicated package for Zowe v2 - this is the most straight-forward way to address all of the breaking changes. We recognize this presents the challenge of maintaining 2 sets of packages. If you prefer not to maintain 2 sets of packages, we believe it's possible to maintain one version of an extension which works for both Zowe v1 and v2. However, the lifecycle code will be complicated - comprehensive testing should be performed.
PLEASE BE AWARE The Zowe V2 app framework desktop upgraded from angular version 6 to angular version 12 for support & security - websites have a “1 version of a library” limitation. This means that plugins dependent upon angular must be coded for either v6 or v12 [not both] thus the single version approach is not applicable.
If the lifecycle scripts are the main concern, the following steps outline requirements and our recommendations for the single version approach:
We are planning to release a comprehensive “migration guidance” section on docs.zowe.org to help Extenders facing these challenges. Your feedback on this section is greatly appreciated.
The API-ML uses the first certificate found in the keyring if the details about the certificate aren't supplied
Not really, if properly onboarded, they would be mentioned in the Swagger DOC but you’d have to first locate the appropriate tile (via the API catalog); There is a feature/request in the backlog that may satisfy this request - if you would like this prioritized please review and upvote this github issue: https://github.com/zowe/api-layer/issues/647 and possibly https://github.com/zowe/api-layer/issues/1129
There are several ways to confirm API-ML is ”up and running”:
The main use case we were unable to address due to technical limitations is the ability to detect an upcoming expiration and immediately offer a password change action, ahead of the actual expiration event. We have two other password change related enhancements as yet unplanned. Please review and upvote if you would like these prioritized: https://github.com/zowe/api-layer/issues/2020 and https://github.com/zowe/api-layer/issues/2018.
No. There is a feature/request in the backlog for such a capability - if you would like this prioritized please review and upvote this github issue: https://github.com/zowe/api-layer/issues/647 and also consider this one: https://github.com/zowe/api-layer/issues/2059
VS Code extensions and code pack solutions that rely on the Zowe Explorer (mainframe files and jobs) are interested in and have added capabilities that leverage Team Config. Recommend attending/reviewing the Zowe Explorer V2 office hours (scheduled for 4/20) for further details.
If USER & PASSWORD are already stored in profiles for authentication and the User tries to use a token for login, Zowe Explorer will issue a message indicating “This profile does not support token authentication”. In order to enable token authentication the SECURE array in the the configuration file (either zowe.config.user.json OR zowe.config.json) needs to be updated with tokenValue in place of USER & PASSWORD. Default authentication is USER & PASSWORD
No, there is no visual / decoration indicating authentication method. In general if USER & PASSWORD is configured, the User will be prompted for them.
The Zowe Explorer (for VS Code) Squad has added usability features throughout the Zowe V1 (continuous delivery) LTS release, including adding commands and functions to process multiple items, adding progress bars, and refresh capabilities. The comprehensive list of features can be viewed in the changelog at the VS Code Marketplace: https://marketplace.visualstudio.com/items/Zowe.vscode-extension-for-zowe/changelog ; it is important to note that a new LTS release gives all squads the opportunity to introduce changes that may require an upgrade or result in a significant change in behavior - the Zowe community refers to these as “breaking changes”. In the case of Zowe V2 LTS, the significant change for Zowe Explorer is the introduction of and support for Team Profile Configurations & setting updates as well as.
Provided the User has not changed the auto update (extensions.autoUpdate) default setting in their Zowe Explorer USER SETTINGS to false, Zowe Explorer will automatically be updated to V2. If the auto update setting has been changed to “false”, the user can decide when to update Zowe Explorer - they do this manually by clicking the “UPDATE” button. (The UPDATE button will show once Zowe V2 LTS is available).
Ideally, for Team Configuration a designated Administrator who has access to the appropriate connection information and is familiar with configuring profiles - this will enable developers to get started with Zowe Explorer without having to learn about profiles and will ensure all developers are configured with their organizations required authentication policy.
The Pre-GA V2 Zowe packages are available on the Zowe V2 Preview section of the Download page. Keep in mind we are still working on V2 and improving it. There is a section below with some of the information on the installation of the PAX convenience build.
This part shows basic information about the installation of the first version of the PAX. We will provide more details and add link to the proper sections on Zowe doc site in coming weeks.
When extracting Zowe convenience build (
zowe-<version>.pax), please note you should always preserve extended attributes and file mode with
-ppx option. For example,
pax -ppx -rf zowe-<version>.pax.
After extract Zowe convenience build or applied SMPE, you can add Zowe bin directory to your
PATH environment variable:
Once this is done, you can access Zowe server command
zwe from any USS directory. Type
zwe --help or
zwe -h to learn how to use this command.
Zowe uses a YAML file, usually mentioned as
zowe.yaml to instruct Zowe how to install, configure and start Zowe.
example-zowe.yaml located in Zowe
bin directory to your preferred location, for example, your home directory. You can modify the file based on your environment and then move to next step.
If you are using Zowe convenience build, you should run
zwe install --config /path/to/my/zowe.yaml command to initialize Zowe MVS data sets. If you are using Zowe SMPE build, you can move on to next command.
zwe init --config /path/to/my/zowe.yaml command to initialize environment and permissions required by Zowe. Type
zwe init --help to learn more about the command.
zwe init command is a combination of multiple sub-commands: `mvs`, `certificate`, `security`, `vsam`, `apfauth`, and `stc`. Type
zwe init <sub-command> --help (for example,
zwe init stc --help) to learn how to run
zwe init command step by step.
zwe start --config /path/to/my/zowe.yaml command to start Zowe.
zwe stop --config /path/to/my/zowe.yaml command to stop Zowe.