Links
Tags
Creators
Details
All versions
0.2.1-SNAPSHOT
Release
SignalsLib 0.2.1-SNAPSHOT6 days ago 8
Uploaded by
Compatibility
Minecraft: Java Edition
26.2
26.1.x
1.21.x
1.20.x
Platform
Folia
Changes
0.2.1-SNAPSHOT
Adds three platform modules next to signals-bukkit. signals-core and signals-bukkit have no API changes.
Added
signals-folia: SignalsLib for Folia's regionised multithreading. The jar is markedfolia-supported: trueand bundlessignals-bukkit, so Bukkit plugins keep usingBukkitSignalsunchanged.FoliaSignals: wrapsBukkitSignals(sameplayers(),blocks(),entities(),inventories(),on(...)) and addsconnectGlobal,connectAsync,connectRegionandconnectEntity. Each runs the listener inline when the current thread already owns the region, entity or global region, and schedules it otherwise. A task scheduled before its connection was disconnected is skipped.FoliaScheduler: wrapper over the global, region, entity and async schedulers, plusisFolia(),isGlobalThread(),ownsRegion(...)andownsEntity(...).- Needs Paper or Folia 1.20 or newer (the Folia schedulers). Compiled against
paper-api1.20.4 by default; change it with-PfoliaApiVersion=....
signals-bungeecord: SignalsLib for BungeeCord and Waterfall (one jar for both).BungeeSignalswithplayers(),servers(),proxy()shortcuts andon(Class), andSignalsBungeePluginfor the shared bridge (BungeeSignals.shared()). Descriptor isbungee.yml.- BungeeCord can only register handlers from annotated methods, so 16 events are bridged at
NORMALpriority (BungeeSignals.bridgedEvents());on(...)throwsIllegalArgumentExceptionfor any other event type. - Compiled against
bungeecord-api1.21-R0.4-SNAPSHOT by default; change it with-PbungeeApiVersion=....
signals-velocity: SignalsLib for Velocity.VelocitySignalswithplayers(),servers(),proxy()shortcuts,on(Class)for any Velocity event andPostOrderoptions (first(),early(),normal(),late(),last()), andSignalsVelocityPlugin(plugin idsignalslib) for the shared bridge (VelocitySignals.shared()).velocity-plugin.jsonis written by hand so its version follows the build.- Compiled against
velocity-api3.4.0-SNAPSHOT by default; change it with-PvelocityApiVersion=....
Fixed
FoliaScheduler.isGlobalThread()no longer usesBukkit.isGlobalTickThread()(not in Paper API); it looks the check up at runtime and, on a Folia build without it, reportsfalseso global listeners are scheduled.- Velocity handlers skip GEB dispatch while a signal has no listeners.
- Javadoc notes: scheduled Folia listeners cannot change the event, BungeeCord chat includes commands, Velocity
signed chat cannot be changed, and
ProxyInitializeEventmust be requested in the plugin constructor.
Changed (build)
- Version is now
0.2.1-SNAPSHOT. processResourcesno longer readsprojectat execution time (Gradle 8 deprecation warning), in every module.- Release jars in
./distare named per platform:SignalsLib-Bukkit-<version>.jar(wasSignalsLib-<version>.jar),SignalsLib-Folia-<version>.jar,SignalsLib-BungeeCord-<version>.jarandSignalsLib-Velocity-<version>.jar, each with-sourcesand-javadocjars. settings.gradle: added the Central snapshots repository (groupnet.md-5only, forbungeecord-api) and allowed groupcom.velocitypoweredon the PaperMC repository.- Maven POM names and descriptions cover all modules.
Supplementary resources
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:UxiIddjL:cGmCYTky"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:UxiIddjL:cGmCYTky"
}

