Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace all usages of QGY.LIB APIs with their QSYS.LIB equivalents. #201

Merged
merged 2 commits into from
Sep 5, 2024

Conversation

pjyoung-ibm
Copy link
Member

In V5R3, the "Open List APIs" were moved from SS1 Option 12 (in library QGY) to SS1 *BASE (in library QSYS). Stub programs were left in QGY to just route any calls to them over to the new QSYS programs, so this has technically continued to work just fine. However, the wording in the V5R3 Memo to Users stated that (on page 52):

These router programs and the library QGY will be removed in a future release. You should change any applications that make library-qualified calls to the Open List APIs in library QGY to call the APIs in library QSYS.

As support for connecting to V5R2 was dropped with JTOpen 6.1 (2007), it seems like we can safely do this now.

The motivation behind making this PR now was due to some internal usage of Java Toolbox, during an install of the operating system. Our internal tooling failed to complete the install because Option 12 was not installed, so the QGY library was missing. However, the base OS had installed fine, so the programs it was trying to access were technically there. It's just that the stub/router programs were missing. Since it seems odd to continue to use these router programs when we should really be using the main programs, I decided to make this PR. This has the added benefit of removing another dependency on Option 12, and instead shifting that requirement over to the base OS.

It should be noted that I was not able to run the JTOpen-test suite because its setup confused me 🙂, but I spot tested some of these changes and they worked fine. Perhaps someone with more knowledge should run the relevant tests and make sure everything still works as expected (I'm fairly certain that they should, but those are famous last words).

In V5R3, the "Open List APIs" were moved from SS1 Option 12 (in library QGY) to SS1 *BASE (in library QSYS). Stub programs were left in QGY to just route the call over to the new QSYS programs, so this has technically continued to work just fine. However, the wording in the V5R3 Memo to Users stated that "These router programs and the library QGY will be removed in a future release. You should change any applications that make library-qualified calls to the Open List APIs in library QGY to call the APIs in library QSYS." As support for connecting to V5R2 was dropped with JTOpen 6.1 (2007), it seems like we can safely do this now. This has the added benefit of removing another dependency on Option 12, and instead shifting that requirement over to the base OS (especially since all these programs did was call things in *BASE, so Option 12 isn't really required for these at all).

Ref: https://public.dhe.ibm.com/systems/power/docs/systemi/v5r3/en_US/rzaq9.pdf (page 52)
Signed-off-by: Parker Young <143426808+pjyoung-ibm@users.noreply.github.com>
Missed these in ed6da9b because I searched for "QGY.LIB" when making my initial changes, but these used QSYSObjectPathName.toPath() to build the name. See that commit for more details on this change.

Signed-off-by: Parker Young <143426808+pjyoung-ibm@users.noreply.github.com>
@jeber-ibm jeber-ibm merged commit b1a11ee into IBM:main Sep 5, 2024
2 checks passed
@pjyoung-ibm pjyoung-ibm deleted the pjyoung/remove-qgylib branch October 21, 2024 20:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants