I have not seen any guides here about the format of PRs. Let me know if I missed something.
Brief
This PR add preliminary support for LoL clients running macOS. The implementation is similar to the PSProcessWatcher, however due to some macOS quirkiness, some adjustments were made to accommodate proper implementation.
A regex match has to be made in order to resolve the install directory of the client. The location of the LEAGUE_CLIENT_EXECUTABLE_POSTFIX inside the package is constant and the user is unable to modify this path. This is also where the inside the folder where the lockfile resides.
We had to append the LEAGUE_CLIENT_EXECUTABLE_POSTFIX after finding the path with the regex due to the common implementation of the lockfile resolver code in the ClientApi class.
I also excluded the PSProcessWatcher from running under macOS
⚠️ Most likely a breaking change with future versions:
I have noticed while testing the process watcher, that when I started listing the skins available on my account, I started receiving purchaseDate values in the response JSONs larger and Long.MAX_VALUE so I switched to using BigInteger. Not sure if there is a more proper way to handle this or if this issue even came up with other users of the library.
Hey! 👋
I have not seen any guides here about the format of PRs. Let me know if I missed something.
Brief
This PR add preliminary support for LoL clients running macOS. The implementation is similar to the PSProcessWatcher, however due to some macOS quirkiness, some adjustments were made to accommodate proper implementation.
LEAGUE_CLIENT_EXECUTABLE_POSTFIX
inside the package is constant and the user is unable to modify this path. This is also where the inside the folder where the lockfile resides.LEAGUE_CLIENT_EXECUTABLE_POSTFIX
after finding the path with the regex due to the common implementation of the lockfile resolver code in the ClientApi class.⚠️ Most likely a breaking change with future versions:
I have noticed while testing the process watcher, that when I started listing the skins available on my account, I started receiving purchaseDate values in the response JSONs larger and Long.MAX_VALUE so I switched to using BigInteger. Not sure if there is a more proper way to handle this or if this issue even came up with other users of the library.