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

v0.0.5 updates #3

Merged
merged 8 commits into from
Dec 20, 2024
Merged

v0.0.5 updates #3

merged 8 commits into from
Dec 20, 2024

Conversation

eric2788
Copy link
Member

This pull request introduces several significant changes to the groovier project, focusing on updating dependencies, enhancing the build process, and improving the script loading mechanism. The most important changes include adding a new build workflow, updating project versions, and refining the script loader's functionality.

Major Updates:

  • spigot-api v1.21.1 support
  • bungee-api v1.20 support
  • fixed services cannot inject other services

Build and Version Updates:

  • Added a new GitHub Actions workflow to build artifacts for version 1.21, including steps to set up JDK 21 and package the project using Maven. (.github/workflows/1.21.yml)
  • Updated the project version in pom.xml files to 0.0.51-SNAPSHOT and adjusted the plugin version to ${project.parent.version}-1.21. (groovier-engine/pom.xml, groovier-plugin/pom.xml) [1] [2]

Script Loader Enhancements:

  • Modified the GroovierScriptLoader class to include a new addClassPath method and improved the script loading and unloading process to handle exceptions and ensure proper reloading. (groovier-plugin/src/main/groovy/com/ericlam/mc/groovier/GroovierScriptLoader.groovy) [1] [2]
  • Updated the GroovierCacheManager class to bypass caching and let the Groovy class loader handle script loading directly. (groovier-plugin/src/main/groovy/com/ericlam/mc/groovier/GroovierCacheManager.groovy) [1] [2] [3]

Dependency and Configuration Adjustments:

  • Added a new interface GroovierAddon to support the installation of Guice modules. (groovier-engine/src/main/java/com/ericlam/mc/groovier/GroovierAddon.java)
  • Adjusted the GroovierCore class to implement the GroovierAddon interface and handle module installation. (groovier-plugin/src/main/groovy/com/ericlam/mc/groovier/GroovierCore.java) [1] [2] [3] [4]

Miscellaneous Improvements:

  • Renamed mathService.groovy to MathService.groovy for consistency. (groovier-plugin/src/main/resources_common/services/MathService.groovy)
  • Updated the grapesConfig.groovy files for both Spigot and BungeeCord to use the latest API versions. (groovier-plugin/src/main/resources_bungee/grapesConfig.groovy, groovier-plugin/src/main/resources_spigot/grapesConfig.groovy) [1] [2]

@eric2788 eric2788 added the enhancement New feature or request label Dec 20, 2024
@eric2788 eric2788 self-assigned this Dec 20, 2024
@eric2788 eric2788 merged commit bb7dedf into develop Dec 20, 2024
1 check passed
eric2788 added a commit that referenced this pull request Dec 20, 2024
* upgraded for v1.21 spigot

* added unit test for delegate

* added api-version in plugin.yml

* fixed naming problem

* changed script loading mechanism for file

* fixed services cannot depend other service classes

* optimized reloading mechanism

* added install module api
@eric2788 eric2788 deleted the feat/1.21 branch December 20, 2024 09:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant