Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
76 commits
Select commit Hold shift + click to select a range
5d4d527
Replace usages of deprecated constructor Integer(String) with Integer…
PhilipRoman Jul 4, 2022
aad6654
Merge pull request #1259 from TooTallNate/replace-deprecated-integer-…
PhilipRoman Jul 4, 2022
5eeb03d
websocketimpl: avoid string copy unless logging trace message
xkommando Feb 11, 2023
e90af48
Make Base64Test independent of JDK
anthonyvdotbe Feb 23, 2023
b79a1a4
Modularize
anthonyvdotbe Feb 23, 2023
5f4eca3
Merge pull request #1301 from xkommando/master
PhilipRoman Mar 5, 2023
11c5212
Use release parameter
anthonyvdotbe Mar 7, 2023
8fbd5b8
Update GitHub workflows to JDK 17
anthonyvdotbe Mar 7, 2023
70092c6
Merge pull request #1307 from anthonyvdotbe/issue-1306
PhilipRoman Mar 7, 2023
48a1cbf
Merge pull request #1309 from anthonyvdotbe/issue-1308
PhilipRoman Mar 7, 2023
3e8d3c5
Add distribution attribute to GitHub workflows
anthonyvdotbe Mar 7, 2023
239ded8
Merge pull request #1314 from anthonyvdotbe/issue-1308
PhilipRoman Mar 7, 2023
30ba037
Merge branch 'issue-1308' into master
PhilipRoman Mar 11, 2023
12a7bb5
Remove snapshot badge
marci4 Jul 14, 2023
02e599d
Merge pull request #1341 from marci4/RemoveSnapshotLinks
marci4 Jul 14, 2023
55588f1
Update changelog
marci4 Jul 20, 2023
f4ab474
Merge pull request #1344 from marci4/update_changelog_release_1.5.4
marci4 Jul 20, 2023
d33bedd
Increase version to 1.5.5
marci4 Jul 20, 2023
69140a6
Merge pull request #1345 from marci4/increase_version_1.5.5
marci4 Jul 20, 2023
5176255
Bump version in install instructions
Minion3665 Jul 25, 2023
bc180ae
Merge pull request #1348 from Minion3665/patch-2
marci4 Jul 31, 2023
85b4999
Fix multiple issues related to reconnect
PhilipRoman Nov 1, 2023
9055e82
Fix the inconsistent version between dependency in pom.xml and build.…
HappyHacker123 Nov 10, 2023
9fad5bc
Merge pull request #1371 from HappyHacker123/master
PhilipRoman Nov 12, 2023
8834112
Merge pull request #1367 from TooTallNate/reconnect-fix
PhilipRoman Nov 29, 2023
43c9693
Update changelog for 1.5.5
marci4 Dec 18, 2023
fe637a8
Merge pull request #1377 from marci4/1.5.5-update_changelog
marci4 Dec 18, 2023
4a6e1c4
Increase version to 1.5.6
marci4 Dec 18, 2023
a1ab3dc
Merge pull request #1378 from marci4/1.5.5_increase_version
marci4 Dec 18, 2023
1ecae0e
Replace <tt> with <code> in javadocs
PhilipRoman Jan 13, 2024
9dce7a8
Merge pull request #1385 from TooTallNate/javadoc-tt-fix
marci4 Jan 15, 2024
d4365d4
Retrieve default SSL socket factory to reconcile the configuration wi…
Jan 16, 2024
de7b8b2
Merge pull request #1387 from pavel-treutner/issue-1382
marci4 Jan 30, 2024
c717bc7
Provide way to start the client/server as daemons
newk5 Nov 27, 2021
9f53da4
Merge pull request #1391 from TooTallNate/daemon
marci4 Feb 4, 2024
4bdfe1f
Release 1.5.6
marci4 Feb 6, 2024
ae78d38
Merge pull request #1394 from marci4/1.5.5_release
marci4 Feb 6, 2024
765932a
Increase version to 1.5.7
marci4 Feb 6, 2024
6910229
Merge pull request #1395 from marci4/1.5.6_increase_version
marci4 Feb 6, 2024
f7d51a8
Explicitly close the socket when resetting the client if the connecti…
Feb 16, 2024
d8eb0f8
Ensure the socket is not null when attempting to close it.
Feb 21, 2024
aa84b39
Merge pull request #1399 from ysi-camerona/ISSUE-1397
PhilipRoman Feb 24, 2024
acd03d0
Add test for connectBlocking cleanup (#1399)
PhilipRoman Feb 24, 2024
1f842a6
Add timeout to CI test
PhilipRoman Apr 15, 2024
f625a1a
Allow setting custom TCP receive buffer size
PhilipRoman Apr 14, 2024
7e47e4d
Merge pull request #1407 from TooTallNate/receive-buffer-size
marci4 Apr 27, 2024
c793f34
Merge pull request #1401 from TooTallNate/connect_blocking_cleanup_test
PhilipRoman Apr 27, 2024
ad3d043
Fix WebSocketServer sometimes missing GET request
robert-s-ubi Jun 8, 2024
cd08f83
Merge pull request #1419 from ubitricity/fix_issue_1418_websocketserv…
PhilipRoman Jun 10, 2024
dd07648
Release 1.5.7
marci4 Jul 8, 2024
d866754
Merge pull request #1432 from marci4/1.5.7_release
marci4 Jul 8, 2024
202d7a4
Increase version to 1.5.8
marci4 Jul 8, 2024
4aef466
Merge pull request #1433 from marci4/1.5.7_increase_version
marci4 Jul 8, 2024
01e1a40
Drop support for Java 1.7
marci4 Jul 12, 2024
c4bf44e
Merge pull request #1435 from marci4/feature/drop_java1.7
marci4 Jul 14, 2024
a566891
Correctly clone values provided by the setter
marci4 Oct 8, 2024
1e9fbbf
Reuse inflater/deflater
marci4 Oct 8, 2024
fe7635b
Provide a setter/getter to set the deflater level
marci4 Oct 13, 2024
4f4aed5
Extends tests to better test the deflater level
marci4 Oct 13, 2024
dfca00b
Add Constructor with custom compression level
marci4 Oct 22, 2024
3b29042
Merge pull request #1439 from marci4/fix/Issue1437
marci4 Nov 11, 2024
8eae452
Add support for creating server from existing Channel
PhilipRoman Nov 14, 2024
e5253dc
Add example of using WebSocketServer with systemd socket activation
PhilipRoman Nov 14, 2024
2b8dd96
Merge pull request #1442 from TooTallNate/socket-activation
marci4 Dec 8, 2024
fcb7595
Release 1.6.0
marci4 Dec 15, 2024
da3cf2a
Merge pull request #1446 from marci4/1.6.0_release
marci4 Dec 15, 2024
f66edcb
Increase Version to 1.6.1
marci4 Dec 15, 2024
54b860a
Merge pull request #1447 from marci4/increase_version_1.6.1
marci4 Dec 15, 2024
7be8e7a
Remove outdated build info badge
marci4 Dec 15, 2024
253c3b8
Merge pull request #1448 from marci4/remove_build_badge
marci4 Dec 15, 2024
1ed042e
Update all dependencies and update to JUnit 5 (#1450)
marci4 Jan 26, 2025
d868887
Fix JUnit 5 config for gradle
pdkovacs Feb 16, 2025
c69b298
Merge pull request #1458 from pdkovacs/fix-gradle-junit5-config
PhilipRoman Feb 17, 2025
611d897
Added reconnectBlocking overload that supports timeout in WebSocketCl…
Yuval-Roth Apr 19, 2025
3d8b96f
Added since 1.6.1 in method doc
Yuval-Roth Apr 19, 2025
8c5766a
Merge pull request #1465 from Yuval-Roth/master
PhilipRoman Apr 19, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 6 additions & 5 deletions .github/workflows/checkstyle.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# This workflow will build a Java project with Maven
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-maven

name: Java Code Style Check with Maven

Expand All @@ -11,10 +11,11 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Set up JDK 1.8
uses: actions/setup-java@v1
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: 1.8
java-version: '17'
distribution: 'temurin'
- name: Code Style Check
run: mvn -B checkstyle:check --file pom.xml
25 changes: 16 additions & 9 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,26 +1,33 @@
name: Continuous Integration

on: [push]
on: [push, pull_request]

jobs:
Build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Set up JDK 1.8
uses: actions/setup-java@v1
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: 1.8
java-version: '17'
distribution: 'temurin'
- name: Maven Version
run: mvn --version
- name: Build
run: mvn -DskipTests package --file pom.xml

Test:
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- uses: actions/checkout@v1
- name: Set up JDK 1.8
uses: actions/setup-java@v1
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: 1.8
java-version: '17'
distribution: 'temurin'
- name: Maven Version
run: mvn --version
- name: Test
run: mvn test --file pom.xml
9 changes: 5 additions & 4 deletions .github/workflows/sonar.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,14 @@ jobs:
name: SonarQube
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
- name: Set up JDK 11
uses: actions/setup-java@v1
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: 11
java-version: '17'
distribution: 'temurin'
- name: Cache SonarCloud packages
uses: actions/cache@v1
with:
Expand Down
83 changes: 83 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,88 @@
# Change log

###############################################################################
## Version Release 1.6.0 (2024/12/15)

#### Breaking Changes

* [Issue 1434](https://github.com/TooTallNate/Java-WebSocket/issues/1434) - Drop Java 1.7 support ([PR 1435](https://github.com/TooTallNate/Java-WebSocket/pull/1435))
* [PR 1435](https://github.com/TooTallNate/Java-WebSocket/pull/1435) - Drop support for Java 1.7

#### Bugs Fixed

* [Issue 1437](https://github.com/TooTallNate/Java-WebSocket/issues/1437) - Question: How can the compression threshold be set for the PerMessageDeflateExtension in a Deflate Client? ([PR 1439](https://github.com/TooTallNate/Java-WebSocket/pull/1439))
* [Issue 1400](https://github.com/TooTallNate/Java-WebSocket/issues/1400) - PerMessageDeflateExtension#setDeflater()/#setInflater() is overwritten in case of no_context_takeover ([PR 1439](https://github.com/TooTallNate/Java-WebSocket/pull/1439))
* [PR 1439](https://github.com/TooTallNate/Java-WebSocket/pull/1439) - Clone PerMessageDeflateExtension values correctly

#### New Features

* [Issue 1440](https://github.com/TooTallNate/Java-WebSocket/issues/1440) - Support for inherited sockets ([PR 1442](https://github.com/TooTallNate/Java-WebSocket/pull/1442))
* [PR 1442](https://github.com/TooTallNate/Java-WebSocket/pull/1442) - Socket activation

In this release 4 issues and 3 pull requests were closed.

###############################################################################
## Version Release 1.5.7 (2024/07/08)

#### Breaking Changes

* [PR 1399](https://github.com/TooTallNate/Java-WebSocket/pull/1399) - Have connectBlocking clean up after a timeout

#### Bugs Fixed

* [PR 1419](https://github.com/TooTallNate/Java-WebSocket/pull/1419) - Fix issue #1418: WebSocketServer sometimes misses GET request after SSL handshake

#### New Features

* [PR 1407](https://github.com/TooTallNate/Java-WebSocket/pull/1407) - Allow setting custom TCP receive buffer size
* [PR 1399](https://github.com/TooTallNate/Java-WebSocket/pull/1399) - Have connectBlocking clean up after a timeout

In this release 0 issues and 4 pull requests were closed.

###############################################################################
## Version Release 1.5.6 (2024/02/06)

#### Bugs Fixed

* [Issue 1382](https://github.com/TooTallNate/Java-WebSocket/issues/1382) - WebSocketClient.upgradeSocketToSSL is enforcing TLS 1.2 ([PR 1387](https://github.com/TooTallNate/Java-WebSocket/pull/1387))
* [PR 1387](https://github.com/TooTallNate/Java-WebSocket/pull/1387) - Retrieve default SSL socket factory

#### New Features

* [Issue 1390](https://github.com/TooTallNate/Java-WebSocket/issues/1390) - Thread created by NamedThreadFactory should be a daemon ([PR 1391](https://github.com/TooTallNate/Java-WebSocket/pull/1391))
* [PR 1391](https://github.com/TooTallNate/Java-WebSocket/pull/1391) - Provide way to start the client/server as daemons

In this release 2 issues and 2 pull requests were closed.

###############################################################################

## Version Release 1.5.5 (2023/12/18)

#### Bugs Fixed

* [Issue 1365](https://github.com/TooTallNate/Java-WebSocket/issues/1365) - Hang on reconnectBlocking
* [Issue 1364](https://github.com/TooTallNate/Java-WebSocket/issues/1364) - NPE during reconnect ([PR 1367](https://github.com/TooTallNate/Java-WebSocket/pull/1367))
* [PR 1367](https://github.com/TooTallNate/Java-WebSocket/pull/1367) - Fix multiple issues related to reconnect

In this release 2 issues and 1 pull request were closed.

###############################################################################

## Version Release 1.5.4 (2023/07/20)

#### New Features

* [Issue 1308](https://github.com/TooTallNate/Java-WebSocket/issues/1308) - Add support for Java modules ([PR 1309](https://github.com/TooTallNate/Java-WebSocket/pull/1309))
* [PR 1309](https://github.com/TooTallNate/Java-WebSocket/pull/1309) - Add support for Java modules

#### Refactoring

* [PR 1259](https://github.com/TooTallNate/Java-WebSocket/pull/1259) - Replace usages of deprecated constructor Integer(String) with Integer.parseInt

In this release 1 issue and 2 pull requests were closed.

###############################################################################

## Version Release 1.5.3 (2022/04/09)

#### Bugs Fixed
Expand Down
10 changes: 4 additions & 6 deletions README.markdown
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
Java WebSockets
===============
[![Build Status](https://travis-ci.org/marci4/Java-WebSocket-Dev.svg?branch=master)](https://travis-ci.org/marci4/Java-WebSocket-Dev)
[![Javadocs](https://www.javadoc.io/badge/org.java-websocket/Java-WebSocket.svg)](https://www.javadoc.io/doc/org.java-websocket/Java-WebSocket)
[![Maven Central](https://img.shields.io/maven-central/v/org.java-websocket/Java-WebSocket.svg)](https://mvnrepository.com/artifact/org.java-websocket/Java-WebSocket)
[![Sonatype Nexus (Snapshots)](https://img.shields.io/nexus/s/https/oss.sonatype.org/org.java-websocket/Java-WebSocket.svg)](https://oss.sonatype.org/content/repositories/snapshots/org/java-websocket/Java-WebSocket/)

This repository contains a barebones WebSocket server and client implementation
written in 100% Java. The underlying classes are implemented `java.nio`, which allows for a
Expand Down Expand Up @@ -31,7 +29,7 @@ To use maven add this dependency to your pom.xml:
<dependency>
<groupId>org.java-websocket</groupId>
<artifactId>Java-WebSocket</artifactId>
<version>1.5.3</version>
<version>1.6.0</version>
</dependency>
```

Expand All @@ -42,11 +40,11 @@ mavenCentral()
```
Then you can just add the latest version to your build.
```xml
compile "org.java-websocket:Java-WebSocket:1.5.3"
compile "org.java-websocket:Java-WebSocket:1.6.0"
```
Or this option if you use gradle 7.0 and above.
```xml
implementation 'org.java-websocket:Java-WebSocket:1.5.3'
implementation 'org.java-websocket:Java-WebSocket:1.6.0'
```

#### Logging
Expand Down Expand Up @@ -115,7 +113,7 @@ Minimum Required JDK

`Java-WebSocket` is known to work with:

* Java 1.7 and higher
* Java 8 and higher

Other JRE implementations may work as well, but haven't been tested.

Expand Down
17 changes: 10 additions & 7 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@ repositories {
}

group = 'org.java-websocket'
version = '1.5.4-SNAPSHOT'
sourceCompatibility = 1.7
targetCompatibility = 1.7
version = '1.6.1-SNAPSHOT'
sourceCompatibility = 1.8
targetCompatibility = 1.8

compileJava {
options.compilerArgs += ['-encoding', 'UTF-8']
Expand All @@ -35,8 +35,11 @@ publishing {
}

dependencies {
implementation group: 'org.slf4j', name: 'slf4j-api', version: '1.7.25'
testImplementation group: 'org.slf4j', name: 'slf4j-simple', version: '1.7.25'
testImplementation group: 'junit', name: 'junit', version: '4.12'
testImplementation group: 'org.json', name: 'json', version: '20180813'
implementation group: 'org.slf4j', name: 'slf4j-api', version: '2.0.15'
testImplementation group: 'org.slf4j', name: 'slf4j-simple', version: '2.0.15'
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter', version: '5.11.4'
}

test {
useJUnitPlatform() // This is required for JUnit 5
}
Loading