Links
Tags
Creators
Details
All versions
0.2.2-SNAPSHOT
Release
SignalsLib 0.2.2-SNAPSHOT5 days ago 8
Compatibility
Minecraft: Java Edition
26.3
26.2
26.1.x
1.21.x
1.20.x
Platforms
BungeeCord
Waterfall
Changes
0.2.2-SNAPSHOT
Bug fixes, a few small API additions and a Javadoc pass. No breaking changes.
Added
SignalBus.connect(ConnectionGroup, SignalKey, Consumer)andSignalBus.once(ConnectionGroup, SignalKey, Consumer): the group variants for keys, matching the existingClassoverloads.signals-bukkit:PlayerSignals.login()(PlayerLoginEvent),chat()(AsyncPlayerChatEvent, fired off the main thread) andchangedWorld()(PlayerChangedWorldEvent), so the Bukkit shortcuts cover what the BungeeCord and Velocity ones already did.- Javadoc for the public API that had none:
Signal,SignalBus,SignalKey,ConnectionGroup, bothEventSignalBuilderclasses and the accessors of the three plugin entry points. - 18 new
signals-coretests (42 in total, was 24): listener isolation when one throws,oncewith a throwing listener and with concurrent fires,filter/mapcleanup,ConnectionGroupfailure isolation, late adds and double disconnect,Connection.all/disconnected/close, key equality, primitive keys and the new overloads.
Fixed
SignalKey: primitive payload types are boxed.bus.signal(int.class).fire(1)used to throwClassCastExceptionbecauseClass.castrejects every value for a primitive class.int.classandInteger.classnow address the same channel, andeventType()reports the boxed class.FoliaScheduler.isFolia()is looked up once instead of on every call.isGlobalThread()calls it for each event on servers that lackServer#isGlobalTickThread, and on those servers every call threw and caught aClassNotFoundException.signals-coretest sources usedList.of(Java 9+), which cannot compile with-PjavaReleasebelow 9.
Changed (build)
- Version is now
0.2.2-SNAPSHOT.
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:DJBwmGoV"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:UxiIddjL:DJBwmGoV"
}

