From 89d4fa0b63af5ac1e2b6048472c7620168525543 Mon Sep 17 00:00:00 2001 From: Michael Burgess Date: Sun, 9 Aug 2026 10:23:04 -0400 Subject: [PATCH] Stop bundling DB drivers into the proxy jars stargate-common declared HikariCP/SQLite/MySQL as implementation deps, which leaked transitively into stargate-velocity and stargate-bungee even though neither touches storage. That bloated each proxy jar from ~15KB to ~18MB for nothing. Switched to compileOnly in stargate-common; stargate-paper already redeclares them as implementation so its shaded jar is unaffected. --- stargate-common/build.gradle.kts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/stargate-common/build.gradle.kts b/stargate-common/build.gradle.kts index 8dea307..a945bd6 100644 --- a/stargate-common/build.gradle.kts +++ b/stargate-common/build.gradle.kts @@ -1,8 +1,10 @@ dependencies { + // compileOnly, not implementation: these are only needed to compile SqlGateStorage here. + // Actually bundling them for runtime is the paper module's job (it redeclares them as + // implementation) - stargate-velocity/stargate-bungee depend on this module too but never + // touch storage, so leaking these as transitive implementation deps would bloat their + // shaded jars with an unused JDBC/HikariCP stack for no reason. compileOnly("com.zaxxer:HikariCP:5.1.0") - implementation("com.zaxxer:HikariCP:5.1.0") compileOnly("org.xerial:sqlite-jdbc:3.46.1.3") - implementation("org.xerial:sqlite-jdbc:3.46.1.3") compileOnly("com.mysql:mysql-connector-j:8.4.0") - implementation("com.mysql:mysql-connector-j:8.4.0") }