Skip to content

Commit ea0d850

Browse files
committed
3.0.8
1 parent 47ef9dc commit ea0d850

File tree

9 files changed

+230
-132
lines changed

9 files changed

+230
-132
lines changed

CHANGELOG.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,31 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [3.0.8] - 2023-03-04
9+
10+
### Added
11+
12+
- Expose namepsace as a readonly property #304
13+
14+
### Changed
15+
16+
- Update NuGet dependencies
17+
- Cancel reconnecting when calling Disconnect or Dispose #307
18+
- Improve proformance
19+
20+
## [3.0.7] - 2022-11-29
21+
22+
### Added
23+
24+
- Support custom User-Agent header
25+
26+
### Changed
27+
28+
- Fixed OnAny does not fire when received binary messages
29+
- Update NuGet dependencies
30+
- Fixed http pooling concurrency issues
31+
- Improve proformance
32+
833
## [3.0.6] - 2022-03-17
934

1035
### Added

README.md

Lines changed: 32 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ var client = new SocketIO("http://localhost:11000/", new SocketIOOptions
9494
| `RandomizationFactor` | `0.5` | 0 <= RandomizationFactor <= 1 |
9595
| `ConnectionTimeout` | `20000` | connection timeout |
9696
| `Query` | `IEnumerable<KeyValuePair<string, string>>` | additional query parameters that are sent when connecting a namespace (then found in `socket.handshake.query` object on the server-side) |
97-
| `EIO` | `4` | If your server is using socket.io server v2.x, please explicitly set it to 3 |
97+
| `EIO` | `V4` | If your server is using socket.io server v2.x, please explicitly set it to V3 |
9898
| `ExtraHeaders` | `null` | Headers that will be passed for each request to the server (via xhr-polling and via websockets). These values then can be used during handshake or for special proxies. |
9999
| `Transport` | `Polling` | Websocket is used by default, you can change to http polling. |
100100
| `AutoUpgrade` | `true` | If websocket is available, it will be automatically upgrade to use websocket |
@@ -224,41 +224,6 @@ jsonSerializer.OptionsProvider = () => new JsonSerializerSettings
224224
client.JsonSerializer = jsonSerializer;
225225
```
226226

227-
## ClientWebSocket Options
228-
229-
You can set proxy and add headers for WebSocket client, etc.
230-
231-
```cs
232-
var client = new SocketIO("http://localhost:11000/");
233-
client.ClientWebSocketProvider = () =>
234-
{
235-
var clientWebSocket = new DefaultClientWebSocket
236-
{
237-
ConfigOptions = o =>
238-
{
239-
var options = o as ClientWebSocketOptions;
240-
241-
var proxy = new WebProxy("http://example.com");
242-
proxy.Credentials = new NetworkCredential("username", "password");
243-
options.Proxy = proxy;
244-
245-
options.SetRequestHeader("key", "value");
246-
247-
options.RemoteCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) =>
248-
{
249-
Console.WriteLine("SslPolicyErrors: " + sslPolicyErrors);
250-
if (sslPolicyErrors == System.Net.Security.SslPolicyErrors.None)
251-
{
252-
return true;
253-
}
254-
return true;
255-
};
256-
}
257-
};
258-
return clientWebSocket;
259-
};
260-
```
261-
262227
## Windows 7 Support
263228

264229
The library uses System.Net.WebSockets.ClientWebSocket by default. Unfortunately, it does not support Windows 7 or Windows Server 2008 R2. You will get a PlatformNotSupportedException. To solve this problem, you need to install the `SocketIOClient.Windows7` dependency and then change the implementation of ClientWebSocket.
@@ -302,52 +267,50 @@ For Xamarin.Android you should add the following code:
302267
}
303268
```
304269

305-
I don't have a macOS device, and I don't know the specific exceptions of Xamarin.iOS. Welcome to create a pr and update this document. thanks :)
270+
I don't know the specific exceptions of Xamarin.iOS. Welcome to create a pr and update this document. thanks :)
306271

307-
# Breaking changes
272+
# Change log
308273

309-
## Breaking changes in 3.0.0
274+
## [3.0.8] - 2023-03-04
310275

311-
> While WebSocket is clearly the best way to establish a bidirectional communication, experience has shown that it is not always possible to establish a WebSocket connection, due to corporate proxies, personal firewall, antivirus software…
276+
### Added
312277

313-
https://socket.io/docs/v4/how-it-works/#Transports
278+
- Expose namepsace as a readonly property #304
314279

315-
- SocketIOClient v3.x supports http polling, but if websocket is available, the library will choose to use websocket. If you want to use http polling and do not want the library to upgrade the transport, please set `Options.AutoUpgrade = false`.
316-
- Socket.io server v2.x is no longer supported. If a large number of users use this version, please feedback.
280+
### Changed
317281

318-
### Specific break changes
282+
- Update NuGet dependencies
283+
- Cancel reconnecting when calling Disconnect or Dispose #307
284+
- Improve proformance
319285

320-
#### 1. EIO option removed
286+
## [3.0.7] - 2022-11-29
321287

322-
Since socket.io server v2 is not supported, the EIO option is not required.
288+
### Added
323289

324-
#### 2. Removed the 'Socket' object
290+
- Support custom User-Agent header
325291

326-
Use ClientWebSocketProvider instead of Socket object.
292+
### Changed
327293

328-
## Breaking changes in 2.2.4
294+
- Fixed OnAny does not fire when received binary messages
295+
- Update NuGet dependencies
296+
- Fixed http pooling concurrency issues
297+
- Improve proformance
329298

330-
Before SocketIOClient v2.2.4, the default EIO is 3, which works with socket.io v2.x, in SocketIOClient v2.2.4, the default EIO is 4, which works with socket.io v3.x and v4.x
299+
## [3.0.6] - 2022-03-17
331300

332-
## Breaking changes in 2.2.0
301+
### Added
333302

334-
SocketIOClient v2.2.0 makes `System.Text.Json` the default JSON serializer. If you'd like to continue to use `Newtonsoft.Json`, add the **SocketIOClient.Newtonsoft.Json** NuGet package and set your **JsonSerializer** to **NewtonsoftJsonSerializer** on your SocketIO instance. System.Text.Json is faster and uses less memory.
303+
- auth handshake for socket.io server v3
304+
- support auto upgrade transport protocol
335305

336-
# Change log
306+
[See more](./CHANGELOG.md)
307+
308+
# Thanks
309+
310+
[<img src="https://socket.io/images/logo.svg" width=100px/>](https://github.com/socketio/socket.io) [<img src="https://github.com/darrachequesne.png" width=100px/>](https://github.com/socketio/socket.io)
311+
312+
Thank [socket.io](https://socket.io/) and [darrachequesne](https://github.com/darrachequesne) for sponsoring the project on [Open Collective](https://opencollective.com/socketio/expenses/).
313+
314+
[<img src="https://resources.jetbrains.com/storage/products/company/brand/logos/Rider_icon.svg" width=100px/>](https://jb.gg/OpenSourceSupport)
337315

338-
[SocketIOClient](./CHANGELOG.md)
339-
340-
# Sponsors
341-
342-
- [gcoverd](https://github.com/gcoverd), 250 AUD
343-
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/40455), April 2021
344-
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/41876), May 2021
345-
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/44350), June 2021
346-
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/46822), July 2021
347-
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/49090), August 2021
348-
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/51776), September 2021
349-
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/54770), October 2021
350-
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/57210), November 2021
351-
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/60280), December 2021
352-
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/63314), January 2022
353-
- [darrachequesne](https://github.com/darrachequesne) ([socket.io team](https://github.com/socketio/socket.io)), [500 USD](https://opencollective.com/socketio/expenses/66147), February 2022
316+
We would like to thank JetBrains for supporting the project with free licenses of their fantastic tools.

src/SocketIOClient.Newtonsoft.Json/SocketIOClient.Newtonsoft.Json.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
<PropertyGroup>
44
<TargetFramework>netstandard2.0</TargetFramework>
5-
<Version>3.0.7-alpha.1</Version>
5+
<Version>3.0.7</Version>
66
<Description>socket.io-client json serialization/deserialization for Newtonsoft.Json</Description>
77
<PackageLicenseExpression>MIT</PackageLicenseExpression>
88
<PackageProjectUrl>https://github.com/doghappy/socket.io-client-csharp</PackageProjectUrl>

0 commit comments

Comments
 (0)