Huge rewrite to no longer require native libraries!
In this version, the entire internals of the library have been rewritten
to remove the requirement for a native library.
The new implementation is in plain Java and interacts directly with Discord's IPC socket.
Some of the removed features might be re-added in a future version.
Breaking Changes
- Raised minimum Java version to Java 16
Core.initwas removed, because it is no longer required- Removed Managers due to deprecation:
LobbyManagerNetworkManager
- Some functions are current not implemented, these throw a
new RuntimeException("not implemented"):ActivityManager.registerCommandbecause it does not communicate with DiscordActivityManager.registerSteambecause it does not communicate with DiscordAcitvityManager.acceptRequestbecause I cannot figure out how it worksUserManager.getCurrentUserPremiumTypebecause I don't have Discord Nitro, so I cannot figure out how it works
ActivityTimestamps.setStartnot longer resets the end timestamp, useActivityTimestamps.clearEndfor thatActivityTimestamps.setEndnot longer resets the start timestamp, useActivityTimestamps.clearStartfor that
Big Changes
- Complete rewrite of the internals (see above)
- Support for custom buttons in an activity
(seeActivity.setActivityButtonsMode,Activity.addButton, andActivity.removeButton) - Support for "progress"-like activities featuring both start and end time
(seeActivityTimestamps.setStartAndEnd)
Thank You's and Acknowledgements
This big release would not have been possible without the help of various people and I am incredibly thankful for their
contributions to this library!
In rough historical order:
- @Kevin-OVI for fixing the DownloadNativeLibrary example before the rewrite
- @letorbi for massive work towards the rewrite, in particular the Windows support and tons of clean-up and improvements
- @gravit0 for custom button support
- @Desoroxxx for clean-up and documentation
- @immails for Windows-specific fixes
- @RedTeaDev for implementing the
ActivityJoinEvent - @isabelcoolaf for "progress" activities and updating part of the library to reflect latest changes by Discord