Skip to content
This repository was archived by the owner on Dec 2, 2022. It is now read-only.
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 9e112ec

Browse files
authoredJul 19, 2022
Update websocket-kit 2.5.0 (#212)
* Bump websocket-kit to 2.5.0 * Migrate breaking api changes
1 parent 3823aee commit 9e112ec

File tree

2 files changed

+19
-25
lines changed

2 files changed

+19
-25
lines changed
 

‎Package.swift

+7-6
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import PackageDescription
55
let package = Package(
66
name: "SlackKit",
77
platforms: [
8-
.macOS(.v10_10), .iOS(.v10), .tvOS(.v10)
8+
.macOS(.v10_15), .iOS(.v10), .tvOS(.v10)
99
],
1010
products: [
1111
.library(name: "SlackKit", targets: ["SlackKit"]),
@@ -16,9 +16,9 @@ let package = Package(
1616
.library(name: "SKWebAPI", targets: ["SKWebAPI"])
1717
],
1818
dependencies: [
19-
.package(name: "Swifter", url: "https://github.com/httpswift/swifter.git", .upToNextMinor(from: "1.5.0")),
20-
.package(name: "WebSocket", url: "https://github.com/vapor/websocket", .upToNextMinor(from: "1.1.2")),
21-
.package(name: "Starscream", url: "https://github.com/daltoniam/Starscream", .upToNextMinor(from: "4.0.4"))
19+
.package(url: "https://github.com/httpswift/swifter", from: .init(1, 5, 0)),
20+
.package(url: "https://github.com/vapor/websocket-kit", from: .init(2, 5, 0)),
21+
.package(url: "https://github.com/daltoniam/Starscream", from: .init(4, 0, 4)),
2222
],
2323
targets: [
2424
.target(name: "SlackKit",
@@ -34,11 +34,12 @@ let package = Package(
3434
"SKCore",
3535
"SKWebAPI",
3636
.product(name: "Starscream", package: "Starscream", condition: .when(platforms: [.macOS, .iOS, .tvOS])),
37-
.product(name: "WebSocket", package: "WebSocket", condition: .when(platforms: [.macOS, .linux])),
37+
.product(name: "WebSocketKit", package: "websocket-kit", condition: .when(platforms: [.macOS, .linux])),
3838
],
3939
path: "SKRTMAPI/Sources"),
4040
.target(name: "SKServer",
41-
dependencies: ["SKCore", "SKWebAPI", "Swifter"],
41+
dependencies: ["SKCore", "SKWebAPI",
42+
.product(name: "Swifter", package: "swifter")],
4243
path: "SKServer/Sources"),
4344
.target(name: "SKWebAPI",
4445
dependencies: ["SKCore"],

‎SKRTMAPI/Sources/Conformers/VaporEngineRTM.swift

+12-19
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@
2323

2424
#if os(Linux) || os(macOS) && !COCOAPODS
2525
import Foundation
26-
import HTTP
27-
import WebSocket
26+
import NIO
27+
import WebSocketKit
2828

2929
// Builds with *Swift Package Manager ONLY*
3030
public class VaporEngineRTM: RTMWebSocket {
@@ -34,7 +34,7 @@ public class VaporEngineRTM: RTMWebSocket {
3434
public weak var delegate: RTMDelegate?
3535
// Websocket
3636
private var websocket: WebSocket?
37-
private var futureWebsocket: Future<WebSocket>?
37+
private var futureWebsocket: EventLoopFuture<Void>?
3838

3939
public required init() {}
4040

@@ -43,14 +43,10 @@ public class VaporEngineRTM: RTMWebSocket {
4343
fatalError("ERROR - Cannot extract host from '\(url.absoluteString)'")
4444
}
4545

46-
let scheme: HTTPScheme = url.scheme == "wss" ? .wss : .ws
47-
futureWebsocket = HTTPClient.webSocket(
48-
scheme: scheme,
49-
hostname: host,
50-
path: url.path,
51-
on: eventLoopGroup
52-
)
53-
.do(didConnect)
46+
futureWebsocket = WebSocketClient(eventLoopGroupProvider: .shared(eventLoopGroup))
47+
.connect(scheme: url.scheme ?? "ws", host: host, port: 8080, path: url.path, query: nil, headers: [:]) { [weak self] webSocket in
48+
self?.didConnect(websocket: webSocket)
49+
}
5450
}
5551

5652
func didConnect(websocket: WebSocket) {
@@ -62,17 +58,14 @@ public class VaporEngineRTM: RTMWebSocket {
6258
self.delegate?.receivedMessage(text)
6359
}
6460

65-
websocket.onError { ws, error in
66-
67-
}
68-
69-
websocket.onCloseCode { closeCode in
70-
self.delegate?.disconnected()
71-
}
61+
websocket.onClose
62+
.whenComplete { [weak self] _ in
63+
self?.delegate?.disconnected()
64+
}
7265
}
7366

7467
public func disconnect() {
75-
websocket?.close()
68+
_ = websocket?.close()
7669
websocket = nil
7770
futureWebsocket = nil
7871
}

0 commit comments

Comments
 (0)
This repository has been archived.