+21
-15
lines changedFilter options
+21
-15
lines changed Original file line number Diff line number Diff line change
@@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file.
4
4
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
5
5
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
6
6
7
+
## [10.1.6](https://github.com/pusher/pusher-websocket-swift/compare/10.1.5...10.1.6) - 2025-06-20
8
+
9
+
### Fixed
10
+
11
+
- Upgrade NWWebSocket library to version 0.5.7 to fix reported crashes due to data race.
12
+
7
13
## [10.1.3](https://github.com/pusher/pusher-websocket-swift/compare/10.1.2...10.1.3) - 2023-05-19
8
14
9
15
### Fixed
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
1
1
Pod::Spec.new do |s|
2
2
s.name = 'PusherSwift'
3
-
s.version = '10.1.5'
3
+
s.version = '10.1.6'
4
4
s.summary = 'A Pusher client library in Swift'
5
5
s.homepage = 'https://github.com/pusher/pusher-websocket-swift'
6
6
s.license = 'MIT'
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
1
1
Pod::Spec.new do |s|
2
2
s.name = 'PusherSwiftWithEncryption'
3
-
s.version = '10.1.5'
3
+
s.version = '10.1.6'
4
4
s.summary = 'A Pusher client library in Swift that supports encrypted channels'
5
5
s.homepage = 'https://github.com/pusher/pusher-websocket-swift'
6
6
s.license = 'MIT'
Original file line number Diff line number Diff line change
@@ -82,7 +82,7 @@ source 'https://github.com/CocoaPods/Specs.git'
82
82
platform :ios, '10.0'
83
83
use_frameworks!
84
84
85
-
pod 'PusherSwift', '~> 10.1.0'
85
+
pod 'PusherSwift', '~> 10.1.6'
86
86
```
87
87
88
88
Then, run the following command:
@@ -150,7 +150,7 @@ let package = Package(
150
150
targets: ["YourPackage"]),
151
151
],
152
152
dependencies: [
153
-
.package(url: "https://github.com/pusher/pusher-websocket-swift.git", from: "10.1.0"),
153
+
.package(url: "https://github.com/pusher/pusher-websocket-swift.git", from: "10.1.6"),
154
154
],
155
155
targets: [
156
156
.target(
@@ -609,7 +609,7 @@ PusherChannel *myChannel = [pusher subscribeWithChannelName:@"my-channel"];
609
609
610
610
This returns PusherChannel object, which events can be bound to.
611
611
612
-
For non-presence channels, you can also provide a function that will be called when a client either subscribes or unsubscribes to a channel with the number of subscribers as a parameter. Also, this function is available as a parameter to `subscribe` function.
612
+
For non-presence channels, you can also provide a function that will be called when a client either subscribes or unsubscribes to a channel with the number of subscribers as a parameter. Also, this function is available as a parameter to `subscribe` function.
613
613
614
614
```swift
615
615
let onSubscriptionCountChanged = { (count: Int) in
@@ -644,9 +644,9 @@ Subscribing to private channels involves the client being authenticated. See the
644
644
645
645
Similar to Private channels, you can also subscribe to a [private encrypted channel](https://pusher.com/docs/channels/using_channels/encrypted-channels). This library now fully supports end-to-end encryption. This means that only you and your connected clients will be able to read your messages. Pusher cannot decrypt them.
646
646
647
-
Like with private channels, you must provide an authentication endpoint. That endpoint must be using a [server client that supports end-to-end encryption](https://pusher.com/docs/channels/using_channels/encrypted-channels#server). There is a [demonstration endpoint to look at using nodejs](https://github.com/pusher/pusher-channels-auth-example#using-e2e-encryption).
647
+
Like with private channels, you must provide an authentication endpoint. That endpoint must be using a [server client that supports end-to-end encryption](https://pusher.com/docs/channels/using_channels/encrypted-channels#server). There is a [demonstration endpoint to look at using nodejs](https://github.com/pusher/pusher-channels-auth-example#using-e2e-encryption).
648
648
649
-
The shared secret used to decrypt events is loaded from the same auth endpoint request that is used to authorize your subscription. There is also a mechanism for reloading the shared secret if your encryption master key changes. If an event is encountered that cannot be decrypted, a request is made to your auth endpoint to attempt to load the new shared secret. If that request fails or if the returned secret still cannot decrypt the event then that event will be skipped, the `failedToDecryptEvent` connection delegate function will be called, and the next received event will be processed.
649
+
The shared secret used to decrypt events is loaded from the same auth endpoint request that is used to authorize your subscription. There is also a mechanism for reloading the shared secret if your encryption master key changes. If an event is encountered that cannot be decrypted, a request is made to your auth endpoint to attempt to load the new shared secret. If that request fails or if the returned secret still cannot decrypt the event then that event will be skipped, the `failedToDecryptEvent` connection delegate function will be called, and the next received event will be processed.
650
650
651
651
Because of the requirement to reload the shared secret on demand, you can only use the following [auth methods](#configuration): `endpoint`, `authRequestBuilder`, `authorizer`. It is not possible to pass an instance of `PusherAuth` to the `subscribe` function if you are subscribing to an encrypted channel.
652
652
@@ -833,7 +833,7 @@ Events can be bound to at 2 levels; globally and per channel. When binding to an
833
833
834
834
### Per-channel events
835
835
836
-
These are bound to a specific channel, and mean that you can reuse event names in different parts of your client application.
836
+
These are bound to a specific channel, and mean that you can reuse event names in different parts of your client application.
837
837
838
838
#### Swift
839
839
@@ -894,7 +894,7 @@ PusherChannel *chan = [pusher subscribeWithChannelName:@"my-channel"];
894
894
895
895
### Global events
896
896
897
-
You can attach behavior to these events regardless of the channel the event is broadcast to.
897
+
You can attach behavior to these events regardless of the channel the event is broadcast to.
898
898
899
899
#### Swift
900
900
@@ -1005,7 +1005,7 @@ myChannel.bind(eventName: "price-update", eventCallback: { (event: PusherEvent)
1005
1005
1006
1006
```
1007
1007
1008
-
Alternatively, you could use [`JSONSerialization`](https://developer.apple.com/documentation/foundation/jsonserialization) to decode the JSON into Swift data types:
1008
+
Alternatively, you could use [`JSONSerialization`](https://developer.apple.com/documentation/foundation/jsonserialization) to decode the JSON into Swift data types:
1009
1009
1010
1010
#### Swift
1011
1011
@@ -1073,7 +1073,7 @@ pusher.bind({ (message: Any?) in
1073
1073
```
1074
1074
1075
1075
#### Objective-C
1076
-
1076
+
1077
1077
```objc
1078
1078
[pusher bind:^void (NSDictionary *data) {
1079
1079
NSString *eventName = data[@"event"];
Original file line number Diff line number Diff line change
@@ -15,7 +15,7 @@
15
15
<key>CFBundlePackageType</key>
16
16
<string>FMWK</string>
17
17
<key>CFBundleShortVersionString</key>
18
-
<string>10.1.5</string>
18
+
<string>10.1.6</string>
19
19
<key>CFBundleSignature</key>
20
20
<string>????</string>
21
21
<key>CFBundleVersion</key>
Original file line number Diff line number Diff line change
@@ -2,7 +2,7 @@ import Foundation
2
2
import NWWebSocket
3
3
4
4
let PROTOCOL = 7
5
-
let VERSION = "10.1.5"
5
+
let VERSION = "10.1.6"
6
6
// swiftlint:disable:next identifier_name
7
7
let CLIENT_NAME = "pusher-websocket-swift"
8
8
Original file line number Diff line number Diff line change
@@ -15,7 +15,7 @@
15
15
<key>CFBundlePackageType</key>
16
16
<string>BNDL</string>
17
17
<key>CFBundleShortVersionString</key>
18
-
<string>10.1.5</string>
18
+
<string>10.1.6</string>
19
19
<key>CFBundleSignature</key>
20
20
<string>????</string>
21
21
<key>CFBundleVersion</key>
Original file line number Diff line number Diff line change
@@ -2,7 +2,7 @@ import XCTest
2
2
3
3
@testable import PusherSwift
4
4
5
-
let VERSION = "10.1.5"
5
+
let VERSION = "10.1.6"
6
6
7
7
class ClientInitializationTests: XCTestCase {
8
8
private var key: String!
You can’t perform that action at this time.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4