Releases: Pieter12345/JavaLoader
JavaLoader version 0.0.8
General changes
- Change
Contributingnotice in the README, now accepting pull requests.
JavaLoader-Core changes
- Add
ProjectManagergetter in JL project main classes. - Remove deprecated
JavaLoaderProject.isEnabled(). - Remove deprecated
JavaProject.isEnabled(). - Support wrapping the target platform using a custom
ClassLoader. - Switch from array to
Listfor internal JavaLoader project dependency parsing.
JavaLoader-Bukkit changes
- Support depending on MC buncled libraries.
- Remove deprecated
BukkitCommandconstructors. - Fix Bukkit example project compilation on recent MC versions.
JavaLoader-Velocity changes
- Fix
/javaloadervelocitytabcompletion with 0 arguments (thanks to @Ecconia). - Compile against Velocity-API 3.2.0-SNAPSHOT.
- Implement
getExecutorService()from Velocity'sPluginContainerinJavaLoaderVelocityProjectto prevent JavaLoader projects having to provide an implementation. - Fix exceptions when binding some events in JL-V due to providing a
nullPluginDescription.
Compatibility
JavaLoader-Bukkit: At least compatible with Bukkit servers (including Spigot) between version 1.12 and 1.12.1, but likely also with older versions.
JavaLoader-Velocity: At least compatible with Velocity between version 1.1.4 and 3.3.0.
JavaLoader version 0.0.7
General changes
- None
JavaLoader-Core changes
- None
JavaLoader-Bukkit changes
- Add compatibility with latest Spigot 1.17.1.
- Compile against Spigot 1.18.2.
JavaLoader-Velocity changes
- Compile against Velocity-API 3.0.0.
Compatibility
JavaLoader-Bukkit: At least compatible with Bukkit servers (including Spigot) between version 1.12 and 1.18.2, but likely also with older versions.
JavaLoader-Velocity: At least compatible with Velocity between version 1.1.4 and 3.0.0.
JavaLoader version 0.0.6
General changes
- Give more useful exception when attempting to load a JavaLoader project that was compiled using a higher Java version than currently running.
- Catch Errors and raw Throwables thrown in JavaLoader project methods that are called by JavaLoader, providing more useful feedback about how the user can fix this problem in their project.
- Switch to Maven module setup, separating the project into a
JavaLoader-CoreandJavaLoader-Bukkitmodule.
JavaLoader-Core changes
- Prevent high CPU load for cmdline JavaLoader on some systems.
JavaLoader-Bukkit changes
- Add
/javaloader help [subcommand]tabcompleter. - Compile against Spigot 1.17.1.
JavaLoader-Velocity changes
- Add JavaLoader-Velocity module with a very first JavaLoader version for the Velocity Minecraft server proxy software.
Compatibility
JavaLoader-Bukkit: At least compatible with Bukkit servers (including Spigot) between version 1.12 and 1.17.1, but likely also with older versions.
JavaLoader-Velocity: At least compatible with Velocity between version 1.1.4 and 1.1.9.
JavaLoader version 0.0.5
Changes
- Add compatibility with Java versions above JDK 8.
- Fix NullPointerException when disabling JavaLoader due to no Java compiler being available.
- Compile against Bukkit 1.15.2.
Compatibility
At least compatible with Bukkit servers between version 1.12 and 1.15.2, but likely also with older versions.
JavaLoader version 0.0.4
Changes
- Synchronize JavaLoader project commands with clients to support client-side command validation/completion.
- Compile against Bukkit 1.15.1.
Compatibility
At least compatible with Bukkit servers between version 1.12 and 1.15.1, but likely also with older versions.
JavaLoader version 0.0.3
Changes
- Add
plugin <pluginName>to specify plugin dependencies without having to specify the plugin's full path and version number. - Compile against Bukkit 1.15.
Compatibility
At least compatible with Bukkit servers between version 1.12 and 1.15, but likely also with older versions.
JavaLoader version 0.0.2
Changes
- No longer force JavaLoaderProjects to implement onLoad() and onUnload().
- Support backslash file separator on non-Windows OSs.
- Fix single project detection when loading a new project from the file system.
- Fix command uninjection from Bukkit when a JavaLoader project unloads. Running an uninjected command would throw a stacktrace.
- Use proper OS-dependent classpath separator. Fixes dependencies not being included on non-Windows OSs during JavaLoader project compilation.
- Change BukkitCommand creation to chain-setters and deprecate old BukkitCommand constructor.
- Send
/javaloader <load/unload>exceptions to the commandsender instead of console. - Refactor JavaLoader
coreclasses to the newcorepackage. This breaks JavaLoader standalone projects (Fix is to importjl.core.JavaLoaderProjectinstead of jl.JavaLoaderProject). - Change the
/javaloader unload/load/recompile [project]commands to/javaloader unload/load/recompile <project, *>to prevent accidental bulk unload/load/recompile operations. - Rename
JavaProject.isEnabled()andJavaLoaderProject.isEnabled()toisLoaded(). - Add
clean()method to JavaProject that can be used to clean all binaries of the project. - Add
isDisabled()andsetDisabled(Boolean)methods to JavaProject to allow for disabling a project. Disabled projects cannot be loaded and loaded projects cannot be disabled (without unloading them first). Works through creating a.disabledfile in the root of a JavaLoader project. - Fix missing dependency in JavaLoader standalone mode.
- Fix classloading of project dependency classes.
JavaLoader version 0.0.1
This is the first release of JavaLoader. At this point, it is at least possible to:
- Load, unload and recompile java projects in runtime.
- Depend (include/provided) on jar files and other JavaLoader projects.
- Get your project main class through the JavaLoader Bukkit plugin.
- Run non-Bukkit projects from the standalone version (through commandline).
It is likely that more project settings will be added in the future and that the current way to provide dependencies will change with later releases, so make sure to keep an eye on the release notes when updating.