Skip to content

chore: update project dependencies to use type-safe accessors and bump version to 1.21.11-2.61.0#238

Merged
ammodev merged 1 commit intoversion/1.21.11from
chore/cleanup-hytale
Mar 7, 2026
Merged

chore: update project dependencies to use type-safe accessors and bump version to 1.21.11-2.61.0#238
ammodev merged 1 commit intoversion/1.21.11from
chore/cleanup-hytale

Conversation

@ammodev
Copy link
Contributor

@ammodev ammodev commented Mar 7, 2026

No description provided.

Copilot AI review requested due to automatic review settings March 7, 2026 18:41
@ammodev ammodev merged commit 3124264 into version/1.21.11 Mar 7, 2026
4 of 6 checks passed
@ammodev ammodev deleted the chore/cleanup-hytale branch March 7, 2026 18:42
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the Gradle build configuration to use type-safe project accessors, bumps the project version, and removes the (previously present) Hytale platform modules/plugin support.

Changes:

  • Migrated many project(":path") dependencies to projects.* type-safe accessors.
  • Enabled TYPESAFE_PROJECT_ACCESSORS in settings.gradle.kts and added a new settings plugin for it.
  • Removed Hytale server/api modules and the Gradle plugin code that generated/handled Hytale plugin files; bumped version to 1.21.11-2.61.0.

Reviewed changes

Copilot reviewed 34 out of 34 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
surf-api-velocity/surf-api-velocity-server/build.gradle.kts Switches project dependencies to type-safe accessors.
surf-api-velocity/surf-api-velocity-api/build.gradle.kts Switches core API dependency to type-safe accessor.
surf-api-standalone/build.gradle.kts Switches core server dependency to type-safe accessor.
surf-api-shared/surf-api-shared-internal/build.gradle.kts Switches shared public dependency to type-safe accessor.
surf-api-modern-generator/build.gradle.kts Switches core API dependency to type-safe accessor; minor formatting change.
surf-api-hytale/surf-api-hytale-server/src/main/resources/manifest.json Removes Hytale manifest template.
surf-api-hytale/surf-api-hytale-server/src/main/kotlin/dev/slne/surf/surfapi/hytale/server/impl/SurfHytaleApiImpl.kt Removes Hytale server implementation.
surf-api-hytale/surf-api-hytale-server/src/main/kotlin/dev/slne/surf/surfapi/hytale/server/coroutines/impl/HysCoroutineImpl.kt Removes Hytale coroutine implementation.
surf-api-hytale/surf-api-hytale-server/src/main/kotlin/dev/slne/surf/surfapi/hytale/server/coroutines/impl/CoroutineSessionImpl.kt Removes Hytale coroutine session implementation.
surf-api-hytale/surf-api-hytale-server/src/main/kotlin/dev/slne/surf/surfapi/hytale/server/coroutines/dispatcher/PluginDispatcher.kt Removes Hytale coroutine dispatcher.
surf-api-hytale/surf-api-hytale-server/src/main/kotlin/dev/slne/surf/surfapi/hytale/server/coroutines/dispatcher/MainDispatcher.kt Removes Hytale main dispatcher.
surf-api-hytale/surf-api-hytale-server/src/main/kotlin/dev/slne/surf/surfapi/hytale/server/HytaleMain.kt Removes Hytale plugin entrypoint.
surf-api-hytale/surf-api-hytale-server/src/main/kotlin/dev/slne/surf/surfapi/hytale/server/HytaleInstance.kt Removes Hytale CoreInstance integration.
surf-api-hytale/surf-api-hytale-server/build.gradle.kts Removes Hytale server Gradle module configuration.
surf-api-hytale/surf-api-hytale-api/src/main/kotlin/dev/slne/surf/surfapi/hytale/api/coroutines/SuspendingJavaPlugin.kt Removes Hytale coroutine API support type.
surf-api-hytale/surf-api-hytale-api/src/main/kotlin/dev/slne/surf/surfapi/hytale/api/coroutines/HysCoroutineExceptionEvent.kt Removes Hytale coroutine exception event type.
surf-api-hytale/surf-api-hytale-api/src/main/kotlin/dev/slne/surf/surfapi/hytale/api/coroutines/HysCoroutine.kt Removes Hytale coroutine API entrypoints/extensions.
surf-api-hytale/surf-api-hytale-api/src/main/kotlin/dev/slne/surf/surfapi/hytale/api/coroutines/CoroutineSession.kt Removes Hytale coroutine session API.
surf-api-hytale/surf-api-hytale-api/src/main/kotlin/dev/slne/surf/surfapi/hytale/api/SurfHytaleApi.kt Removes Hytale API surface.
surf-api-hytale/surf-api-hytale-api/build.gradle.kts Removes Hytale API Gradle module configuration.
surf-api-hytale/surf-api-hytale-api/api/surf-api-hytale-api.api Removes API validation dump for Hytale API.
surf-api-gradle-plugin/src/main/kotlin/dev/slne/surf/surfapi/gradle/settings/SurfSettingsPlugin.kt Adds a settings plugin that enables type-safe project accessors.
surf-api-gradle-plugin/src/main/kotlin/dev/slne/surf/surfapi/gradle/platform/hytale/HytaleSurfPlugin.kt Removes Hytale Gradle plugin implementation.
surf-api-gradle-plugin/src/main/kotlin/dev/slne/surf/surfapi/gradle/platform/hytale/HytaleSurfExtension.kt Removes Hytale Gradle extension.
surf-api-gradle-plugin/src/main/kotlin/dev/slne/surf/surfapi/gradle/generators/pluginfiles/dto/HytalePluginFileDto.kt Removes Hytale plugin-file DTO serialization.
surf-api-gradle-plugin/src/main/kotlin/dev/slne/surf/surfapi/gradle/generators/pluginfiles/HytalePluginFile.kt Removes Hytale plugin-file model/validation.
surf-api-gradle-plugin/build.gradle.kts Registers new settings plugin; removes Hytale plugin registration/constants.
surf-api-core/surf-api-core-server/build.gradle.kts Switches internal/core API dependencies to type-safe accessors.
surf-api-core/surf-api-core-api/build.gradle.kts Switches shared public dependency to type-safe accessor.
surf-api-bukkit/surf-api-bukkit-server/build.gradle.kts Switches bukkit API/core server dependencies to type-safe accessors.
surf-api-bukkit/surf-api-bukkit-plugin-test/build.gradle.kts Switches bukkit API dependency to type-safe accessor.
surf-api-bukkit/surf-api-bukkit-api/build.gradle.kts Switches core API dependency to type-safe accessor.
settings.gradle.kts Enables type-safe project accessors; reorganizes includes; updates CI detection placement.
gradle.properties Bumps project version to 1.21.11-2.61.0.

Comment on lines +6 to +10
internal class SurfSettingsPlugin : Plugin<Settings> {
override fun apply(target: Settings) {
target.enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS")
}
} No newline at end of file
Copy link

Copilot AI Mar 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Publishing a Gradle plugin with an internal implementation class is risky because plugin implementation classes are expected to be publicly consumable/stable. Make SurfSettingsPlugin a public class (remove internal) so Gradle can instantiate it reliably across builds and so the plugin API remains consistent.

Copilot uses AI. Check for mistakes.
}

val ci = System.getenv("CI")?.toBoolean() == true
enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS")
Copy link

Copilot AI Mar 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR introduces a dedicated settings plugin (dev.slne.surf.surfapi.gradle.settings) that enables TYPESAFE_PROJECT_ACCESSORS, but the root settings.gradle.kts still enables the feature preview directly. To avoid having two competing ways to configure the same toggle, either (a) apply the settings plugin here and remove the direct call, or (b) remove the settings plugin entirely if it isn’t intended to be used.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants