WorldGuard Builds

Sponsored by
MCProHosting

25% OFF! Code: enginehub

Be aware that this branch (async-command-builder) is not the main branch (master)!

Branches other than the main one may be experimental. In addition, you should be using stable releases rather than these test builds.

Go to main branch View stable downloads
View last successful build
Branch#StatusChangesFinished
async-command-builder#1877Compilation error: :worldguard-core:compileJava
  • Remove AsyncCommandHelper for new AsyncCommandBuilder. Helper suffers from race conditions for short-lived tasks, leading to some poor UX conditions such as errors not propagating to the user (because the exception handler wasn't attached to the future yet), or lack of success messages. This commit replaces that system by a Builder which takes a callable to begin, and then takes supervisor, delay message, and the success and failure messages and handlers as parts of the builder. The success and failure handlers wrap the callable itself before submitting to the executor so they will always be run. The supervisor and delay are added as listeners to the future since they aren't required if the task is sufficiently short-lived (and to maintain compatibility with the classes which are now in WorldEdit). The builder also supports Components for success and failure messages, as well as consumers of the callable's result or exception for better customization of output, instead of having to rely on adding a callback to the future. The future is still returned for certain special usages. (1aab5b45 by wizjany)
9 months ago
async-command-builder#1876Compilation error: :worldguard-core:compileJava (new)
  • Move AsyncCommandBuilder from WorldGuard to WorldEdit. Delete the original AsyncCommandHelper and update all usages. (3f200a79 by wizjany)
9 months ago
async-command-builder#1875Tests passed: 150
  • Remove most usages of AsyncCommandHelper for new AsyncCommandBuilder. Helper suffers from race conditions for short-lived tasks, leading to some poor UX conditions such as errors not propagating to the user (because the exception handler wasn't attached to the future yet), or lack of success messages. This commit replaces that system by a Builder which takes a callable to begin, and then takes supervisor, delay message, and the success and failure messages and handlers as parts of the builder. The success and failure handlers wrap the callable itself before submitting to the executor so they will always be run. The supervisor and delay are added as listeners to the future since they aren't required if the task is sufficiently short-lived (and to maintain compatibility with the classes which are now in WorldEdit). (759564c6 by wizjany)
9 months ago
  • «
  • 1
  • »