Breaking changes in Z Open Editor 3.0.0 #284
Replies: 7 comments 4 replies
-
Hi @phaumer I agree that all settings related to source code management must be managed in the As such, there is another setting that should migrate from the
With the consequence that each user declares the same Zowe CLI profile names, which becomes the case with Zowe CLI V2 if we place the zowe.config.json file in the workspace (Git repository) of VS Code, which we have done, (There is a drawback to this management: the credentials are relative to the location of the zowe.config.json file, therefore managed independently for each workspace / Git repository...). |
Beta Was this translation helpful? Give feedback.
-
Hello @FALLAI-Denis. Some of your other ideas in that context, such as the use of a URL location type that would allow pointing to other Git repos or network resources directly (Issue 233) I still do find really interesting and something we should consider for property groups, as they are more technology independent. |
Beta Was this translation helpful? Give feedback.
-
Z Open Editor 3.0.0 has now been released. Find this page now in the documentation here: https://ibm.github.io/zopeneditor-about/Docs/zopeneditor_v3.html |
Beta Was this translation helpful? Give feedback.
-
Hi, For COBOL programs, in the With the old Thus, one could limit the search for a copybook to only libraries whose |
Beta Was this translation helpful? Give feedback.
-
@FALLAI-Denis yes, correct. See an example here: https://github.com/IBM/zopeneditor-sample/blob/main/COBOL/SAM1LIB.cbl propertyGroups:
- name: cobol-copybooks
language: cobol
libraries:
- name: syslib
type: local
locations:
- "**/COPYBOOK"
- name: syslib
type: mvs
locations:
- "IBMUSER.SAMPLE.COBCOPY"
- name: MYLIB
type: mvs
locations:
- IBMUSER.SAMPLE.COPYLIB
- name: MYLIB
type: local
locations:
- "**/COPYLIB-MVS"
- name: MYFILE
type: local
locations:
- "**/COPYLIB" |
Beta Was this translation helpful? Give feedback.
-
Hi @phaumer Can there be an impact on the functioning of ZOE compared to the version indicated in the zapp.yaml file? In zapp.yaml files we have indicated version 3.0.0 to refer to ZOE version 3.x.x. I can open an issue if necessary. |
Beta Was this translation helpful? Give feedback.
-
@FALLAI-Denis that is very strange. The Version property in the ZAPP file is not used for anything. We added it so users can indicate with it the version of their application or use it for their own purposes. It can also be left out. It is not related to the schema version at all. When a valid ZAPP file gets saved the editor restarts to reread all the settings. Perhaps something goes wrong during that restart? Check the log in the Output view. When the file has a syntax error or fails validation then an error is shown in the output and the editor is not restarted until is passes validation. |
Beta Was this translation helpful? Give feedback.
-
Prepare for breaking changes in the next version of Z Open Editor
We previously announced in this thread that there will be a major version update for Z Open Editor in Q4 with breaking changes. So far we only talked about the mandatory switch to Java 11 or newer. In this thread we also want to prepare you for other breaking changes of this release. The lists below shows all the items that we can already talk about based on the current state of development. None of these are 100% guaranteed to make it into the release, but these are most likely to make it into the release. We will make updates to this summary as soon as we know them.
Note, if you do not want to be surprised by an automatic update by VS Code for this release and/or need more time to prepare a migration, then we strongly recommend that you use the VS Code setting
extensions.autoUpdate
and switch it tofalse
. If you don't want VS Code to even check for updates, you can set theextensions.autoCheckUpdates
setting tofalse
. However, this will also prevent updates for other VS Code extensions from being installed.Features that will be removed/replaced
zopeneditor.propertygroups
) anymore: We are making the full switch to ZAPP files in this release. You need to move all your property groups from your user settings and/or workspace settings to a ZAPP file. Also see the next section for breaking changes for ZAPP property groups. To make the transition easier you could migrate your current user setting to ZAPP files already. At the moment the schema is the same, so you can copy paste these into zapp.json files and adjust them, or use any of the many json-to-yaml converters to convert them to yaml. (I like this extension.)zopeneditor.userbuild.workspaceSettings
) anymore: We are also making here the switch to ZAPP. The exception will be the user build user settings (zopeneditor.userbuild.userSettings
). Those will remain.Breaking feature changes
In addition to moving Property Groups and User Build settings to ZAPP, we are also making schema changes that require updates to existing ZAPP files. All of these changes are driven by enhancements requests by this community, our customers, and our technical representatives that work with customers every day. However, we are in this release not able to address all the enhancements that people proposed and that we want to support. It will be the first increment of changes that require breakages and manual migration on which we can then build for the other updates that we have in mind for future releases that (hopefully) do not require any more manual migration steps.
The following changes require manual updated to your current ZAPP files:
Renamed properties: We fixed several places in which property names did not follow YAML/JSON naming conventions. The rationale was, "if we are now breaking things with the other changes below, then we might as well fix these now". These need to be simply replaced in your ZAPP files. Note, that the first three properties in the table below are currently not used by Z Open Editor. So if you have used them, then you can also just delete them for now. They are planned to be used in future releases to support multiple ZAPP files and their relationships.
Simplified and refactored property groups: Based on suggestions in discussion threads and issues filed in this repository, as well as other feedback from users, we refactored the property groups. The goal was to make writing property groups simpler and avoid redundancies, such as specifying compiler options multiple times. In the new structure you can create one property group per language and provide a list to local or remote locations for it. You can still create several property groups for the same language still, if you want. We also simplified the nesting of the location arrays to less complex by eliminating the special property
syslib
and instead making it one possible name value. Here is an example for a PL/I property group:The
libraries
array defines the search order for include files. Within eachlibraries
item there can be manylocations
items that are also searched in the order listed. For the example above, Z Open Editor will first look for regular include files using the entries specified under the namesyslib
in any local sub-folder that matches the folder nameINCLUDES
. Second it will search in the one local folderTOOLS
that is expected to be at the root of the current VS Code workspace in which the ZAPP file is located. Note, that as in previous releases of Z Open Editor you can use multi-root workspaces with each workspace having its own ZAPP file. The search order will then be determined by the order defined in the.code-workspace
file. If Z Open Editor will not find an include file in any of these local folders it will then search in MVS in the data sets listed:IBMUSER.SAMPLE.PLI.PLINC
first andIBMUSER.TOOLS.PLI.PLINC
second. The same kind of search will be applied to the librariesMYLIB
andMYFILES
as defined in the example above.Required application setting for User Build: In the 2.1.1 and 2.2.0 releases of Z Open Editor we changed the usage of the
--application
parameter for user build as a quick fix for an issue with multi-root workspaces. The disadvantage of the solution was that programs stored at the top-level folder of a VS Code workspace would be uploaded to the USS workspace without organizing them into an application-specific subfolder. (See 2.1.1 Release notes.) We are planning to address this problem in the next major version of Z Open Editor by introducing a new mandatory setting for DBB ZAPP profiles that defines the application name as required by dbb-zappbuild. Users need to add this setting to their profiles. For example:As you can see in the example, the value of the new
application
setting can be referenced as a variable${application}
within the profile such as for the Groovy command argument.Beta Was this translation helpful? Give feedback.
All reactions