Releases: socketio4j/netty-socketio
Releases · socketio4j/netty-socketio
v4.0.0-SNASPHOT
Immutable
release. Only release title and notes can be modified.
What's Changed
- add github templates and update namespace and group of this project by @NeatGuyCoding in #1
- Fix test bug in ClientDisconnectionTest and remove useless testcontainers in integration tests by @NeatGuyCoding in #5
- native io transport as enum configurable by @sanjomo in #3
- rename global package namespace and bump version to 4.0.0-SNAPSHOT by @NeatGuyCoding in #8
- add github pages with Jekyll-based documentation by @NeatGuyCoding in #10
- dependency(chore): add dependency bot conf by @NeatGuyCoding in #11
- hazelcast version updates by @sanjomo in #25
- chore(deps): update jekyll-sass-converter requirement from ~> 2.0 to ~> 3.1 in /docs by @dependabot[bot] in #12
- chore(deps): update just-the-docs requirement from ~> 0.8.0 to ~> 0.10.1 in /docs by @dependabot[bot] in #13
- chore(deps): bump ch.qos.logback:logback-classic from 1.5.18 to 1.5.21 by @dependabot[bot] in #14
- chore(deps): bump org.redisson:redisson from 3.45.1 to 3.52.0 by @dependabot[bot] in #23
- chore(deps): bump commons-cli:commons-cli from 1.10.0 to 1.11.0 by @dependabot[bot] in #18
- chore(deps): bump org.jmockit:jmockit from 1.49 to 1.50 by @dependabot[bot] in #19
- chore(deps): bump org.apache.maven.plugins:maven-pmd-plugin from 3.11.0 to 3.28.0 by @dependabot[bot] in #22
- chore(deps): bump org.apache.maven.plugins:maven-compiler-plugin from 3.13.0 to 3.14.1 by @dependabot[bot] in #21
- chore(deps): bump quarkus.version from 3.20.1 to 3.30.0 by @dependabot[bot] in #20
- Bump ch.qos.logback:logback-core from 1.5.18 to 1.5.19 in /netty-socketio-examples/netty-socketio-examples-quarkus-base in the maven group across 1 directory by @dependabot[bot] in #26
- chore(deps): bump org.awaitility:awaitility from 4.2.0 to 4.3.0 by @dependabot[bot] in #24
- chore(deps): bump com.hazelcast:hazelcast from 5.2.0 to 5.2.5 in the maven group across 1 directory by @dependabot[bot] in #27
- chore(deps): bump org.apache.maven.plugins:maven-surefire-plugin from 3.2.5 to 3.5.4 by @dependabot[bot] in #28
- chore(deps): bump org.slf4j:slf4j-api from 2.0.16 to 2.0.17 by @dependabot[bot] in #33
- chore(deps): bump org.apache.felix:maven-bundle-plugin from 5.1.9 to 6.0.0 by @dependabot[bot] in #32
- chore(deps): bump org.hdrhistogram:HdrHistogram from 2.1.12 to 2.2.2 by @dependabot[bot] in #31
- Potential fix for code scanning alert no. 1: Workflow does not contain permissions by @sanjomo in #36
- chore(deps): bump jackson.version from 2.18.3 to 2.20.1 by @dependabot[bot] in #30
- chore(deps): bump micronaut.version from 4.8.1 to 4.10.2 by @dependabot[bot] in #15
- chore(deps): bump junit.version from 5.10.1 to 6.0.1 by @dependabot[bot] in #17
- chore(deps): bump org.testcontainers:testcontainers-bom from 1.21.3 to 2.0.2 by @dependabot[bot] in #34
- chore(deps): bump org.mockito:mockito-core from 5.7.0 to 5.20.0 by @dependabot[bot] in #35
- chore(deps): bump spring-boot.version from 3.5.7 to 4.0.0 by @dependabot[bot] in #29
- chore(deps): bump org.apache.maven.plugins:maven-release-plugin from 3.1.1 to 3.2.0 by @dependabot[bot] in #51
- chore(deps): bump org.sonatype.central:central-publishing-maven-plugin from 0.4.0 to 0.9.0 by @dependabot[bot] in #45
- chore(deps): bump com.mycila:license-maven-plugin from 2.6 to 5.0.0 by @dependabot[bot] in #44
- chore(deps): bump org.apache.maven.plugins:maven-javadoc-plugin from 3.4.1 to 3.12.0 by @dependabot[bot] in #43
- chore(deps): bump org.apache.maven.plugins:maven-source-plugin from 3.2.1 to 3.3.1 by @dependabot[bot] in #50
- chore(deps): bump org.apache.maven.plugins:maven-shade-plugin from 3.4.1 to 3.6.1 by @dependabot[bot] in #46
- chore(deps): bump spring-framework.version from 6.2.12 to 7.0.1 by @dependabot[bot] in #49
- chore(deps): bump org.assertj:assertj-core from 3.24.2 to 3.27.6 by @dependabot[bot] in #48
- chore(deps): bump org.apache.maven.plugins:maven-dependency-plugin from 3.7.0 to 3.9.0 by @dependabot[bot] in #47
- chore(deps): bump io.socket:socket.io-client from 2.1.0 to 2.1.2 by @dependabot[bot] in #52
- onany listener - event listener logic by @sanjomo in #60
- Update index.md for adding addOnAnyEventListener (catch all events listener) by @sanjomo in #64
- reflection to native check option by @sanjomo in #61
- Double check concurrent logic into simplified one liner, more safe and more performant by @sanjomo in #59
- chore(deps): bump quarkus.version from 3.30.0 to 3.30.1 by @dependabot[bot] in #67
- chore(deps): bump org.apache.maven.plugins:maven-source-plugin from 3.3.1 to 3.4.0 by @dependabot[bot] in #68
- chore(deps): bump org.apache.maven.plugins:maven-enforcer-plugin from 3.3.0 to 3.6.2 by @dependabot[bot] in #69
- chore(deps): bump net.bytebuddy:byte-buddy-agent from 1.18.1 to 1.18.2 by @dependabot[bot] in #70
- only trigger onAny when no event registered for the event name, not interceptor by @sanjomo in #66
- Add Qodana code quality workflow by @sanjomo in #72
- Update Testcontainers reuse configuration in build.yml by @sanjomo in #75
- Redis Stream support - Single channel Hazelcast & Redis - Distributed Test by @sanjomo in #77
- redis-stream-adapter by @sanjomo in #78
- refactor(minor): Replace direct imports with reflection for native tr… by @NeatGuyCoding in #90
- Update netty.version to 4.2.8.Final by @sanjomo in #87
- stream auto trimming , no need for dedicated thread by @sanjomo in #88
- Netty to 4.2.9.Final by @sanjomo in #91
- chore(deps): bump quarkus.version from 3.30.1 to 3.30.3 by @dependabot[bot] in #82
- Test refactoring by @sanjomo in #92
- custom event store with memory store by @sanjomo in #94
- Code refactoring by @sanjomo in #95
- chore(deps): bump ch.qos.logback:logback-classic from 1.5.21 to 1.5.23 by @dependabot[bot] in #108
- chore(deps): bump net.bytebuddy:byte-buddy-agent from 1.18.2 to 1.18.3 by @dependabot[bot] in #106
- chore(deps): bump org.testcontainers:testcontainers-bom from 2.0.2 to 2.0.3 by @dependabot[bot] in #105
- chore(deps): bump spring-boot.version from 4.0.0 to 4.0.1 by @dependabot[bot] in #103
- chore(deps): bump quarkus.version from 3.30.3 to 3.30.4 by @dependabot[bot] in #104
- chore(deps): bump spring-framework.version from 7.0.1 to 7.0.2 by @dependabot[bot] in #83
- chore(deps): bump org.apache.maven.plugins:maven-release-plugin from 3.2.0 to 3.3.1 by @dependabot[bot] in #85
- Bump redisson 4.0.0 upgrade by @sanjomo in #110
- chore(deps): bump org.mockito:mockito-core from 5.20.0 to 5.21.0 by @dependabot[bot] in #84
- chore(deps): bump quarkus.version from 3.30.4 to 3.30.5 by @Depe...
3.0.1
What's Changed
- Feature fix todo refactor decode by @NeatGuyCoding in NeatGuyCoding/netty-socketio#28
- improve long to bytes with benchmarks by @NeatGuyCoding in NeatGuyCoding/netty-socketio#29
- modify long to bytes with benchmarks by @NeatGuyCoding in NeatGuyCoding/netty-socketio#30
- Add zero copy version of pre-process json decoder by @NeatGuyCoding in NeatGuyCoding/netty-socketio#31
Performance Test Result
| Date | Java Version | OS | CPU Cores | Messages/sec | Avg Latency (ms) | P99 Latency (ms) | Error Rate (%) | Max Heap (MB) | JVM Args | Git Branch | Version | Test Duration (ms) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2025-11-11 07:46:28 | 25.0.1 | Linux 6.11.0-1018-azure | 4 | 220,264.32 | 1308.03 | 1911 | 0.0000 | 256 | -Xms256m -Xmx256m -XX:+UseG1GC -XX:+AlwaysPreTouch | v3.x | 3.0.1 | 2270 |
| 2025-11-11 07:41:07 | 21.0.9 | Linux 6.11.0-1018-azure | 4 | 198,886.24 | 1399.18 | 1975 | 0.0000 | 256 | -Xms256m -Xmx256m -XX:+UseG1GC -XX:+AlwaysPreTouch | v3.x | 3.0.1 | 2514 |
| 2025-11-11 07:31:13 | 17.0.17 | Linux 6.11.0-1018-azure | 4 | 202,593.19 | 1481.27 | 2159 | 0.0000 | 256 | -Xms256m -Xmx256m -XX:+UseG1GC -XX:+AlwaysPreTouch | v3.x | 3.0.1 | 2468 |
| 2025-11-11 07:25:31 | 11.0.29 | Linux 6.11.0-1018-azure | 4 | 181,028.24 | 1618.49 | 2239 | 0.0000 | 256 | -Xms256m -Xmx256m -XX:+UseG1GC -XX:+AlwaysPreTouch | v3.x | 3.0.1 | 2762 |
3.0.0
Features
- Feature - Split to core, spring, quarkus, and micronaut modules
- Feature - add TestContainers Based tests
- Feature - add daily smoke tests
- Feature - add GitHub Actions CI/CD
Bugfix
None
Performance Test Results
| Date | Java Version | OS | CPU Cores | Messages/sec | Avg Latency (ms) | P99 Latency (ms) | Error Rate (%) | Max Heap (MB) | JVM Args | Test Duration (ms) |
|---|---|---|---|---|---|---|---|---|---|---|
| 2025-10-16 00:48:47 | 25 | Linux 6.11.0-1018-azure | 4 | 224,618.15 | 1142.70 | 1743 | 0.0000 | 256 | -Xms256m -Xmx256m -XX:+UseG1GC -XX:+AlwaysPreTouch | 2226 |
| 2025-10-16 00:45:19 | 21.0.8 | Linux 6.11.0-1018-azure | 4 | 206,270.63 | 1359.11 | 2007 | 0.0000 | 256 | -Xms256m -Xmx256m -XX:+UseG1GC -XX:+AlwaysPreTouch | 2424 |
| 2025-10-16 00:29:15 | 17.0.16 | Linux 6.11.0-1018-azure | 4 | 194,476.86 | 1554.77 | 2191 | 0.0000 | 256 | -Xms256m -Xmx256m -XX:+UseG1GC -XX:+AlwaysPreTouch | 2571 |
| 2025-10-16 00:27:04 | 11.0.28 | Linux 6.11.0-1018-azure | 4 | 186,567.16 | 1566.61 | 2255 | 0.0000 | 256 | -Xms256m -Xmx256m -XX:+UseG1GC -XX:+AlwaysPreTouch | 2680 |
Maven url:
- core: https://repo1.maven.org/maven2/io/github/neatguycoding/netty-socketio-core/3.0.0/
- spring: https://repo1.maven.org/maven2/io/github/neatguycoding/netty-socketio-spring/3.0.0/
- spring boot starter: https://repo1.maven.org/maven2/io/github/neatguycoding/netty-socketio-spring-boot-starter/3.0.0/
- quarkus runtime: https://repo1.maven.org/maven2/io/github/neatguycoding/netty-socketio-quarkus-runtime/3.0.0/
- micronaut: https://repo1.maven.org/maven2/io/github/neatguycoding/netty-socketio-micronaut/3.0.0/
For Maven pom.xml
<dependencies>
<dependency>
<groupId>com.socketio4j</groupId>
<artifactId>netty-socketio-core</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>com.socketio4j</groupId>
<artifactId>netty-socketio-spring</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>com.socketio4j</groupId>
<artifactId>netty-socketio-spring-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>com.socketio4j</groupId>
<artifactId>netty-socketio-quarkus-runtime</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>com.socketio4j</groupId>
<artifactId>netty-socketio-micronaut</artifactId>
<version>3.0.0</version>
</dependency>
</dependencies>
For Gradle
dependencies {
implementation "com.socketio4j:netty-socketio-core:3.0.0"
implementation "com.socketio4j:netty-socketio-spring:3.0.0"
implementation "com.socketio4j:netty-socketio-spring-boot-starter:3.0.0"
implementation "com.socketio4j:netty-socketio-quarkus-runtime:3.0.0"
implementation "com.socketio4j:netty-socketio-micronaut:3.0.0"
}
Migration Guide From netty-socketio 2.x
3.0.0 is the same as 2.0.13 with split modules, integration tests, and some CI/CD improvements. Replace old dependency:
<dependency>
<groupId>com.corundumstudio.socketio</groupId>
<artifactId>netty-socketio</artifactId>
<version>2.0.13</version>
</dependency>with new one:
<dependency>
<groupId>com.socketio4j</groupId>
<artifactId>netty-socketio-core</artifactId>
<version>3.0.0</version>
</dependency>If you use Spring integration (Just one class: SpringAnnotationScanner), you should use the new dependency:
<dependency>
<groupId>com.socketio4j</groupId>
<artifactId>netty-socketio-spring</artifactId>
<version>3.0.0</version>
</dependency>