deniszykov.WebSocketListener 4.2.7-alpha

This is a prerelease version of deniszykov.WebSocketListener.
There is a newer version of this package available.
See the version list below for details.
dotnet add package deniszykov.WebSocketListener --version 4.2.7-alpha                
NuGet\Install-Package deniszykov.WebSocketListener -Version 4.2.7-alpha                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="deniszykov.WebSocketListener" Version="4.2.7-alpha" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add deniszykov.WebSocketListener --version 4.2.7-alpha                
#r "nuget: deniszykov.WebSocketListener, 4.2.7-alpha"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install deniszykov.WebSocketListener as a Cake Addin
#addin nuget:?package=deniszykov.WebSocketListener&version=4.2.7-alpha&prerelease

// Install deniszykov.WebSocketListener as a Cake Tool
#tool nuget:?package=deniszykov.WebSocketListener&version=4.2.7-alpha&prerelease                

A lightweight and highly scalable asynchronous WebSocket listener for .NET Core, .NET and Mono.
https://github.com/deniszykov/WebSocketListener

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp1.0 was computed.  netcoreapp1.1 was computed.  netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard1.3 is compatible.  netstandard1.4 was computed.  netstandard1.5 was computed.  netstandard1.6 was computed.  netstandard2.0 was computed.  netstandard2.1 was computed. 
.NET Framework net45 is compatible.  net451 was computed.  net452 was computed.  net46 was computed.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen30 was computed.  tizen40 was computed.  tizen60 was computed. 
Universal Windows Platform uap was computed.  uap10.0 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (4)

Showing the top 4 NuGet packages that depend on deniszykov.WebSocketListener:

Package Downloads
Buttplug.Client.Connectors.WebsocketConnector

Websocket Connection Capabilities for Buttplug Clients. (.Net Standard 2.0+)

Buttplug.Server.Connectors.WebsocketServer

Websocket Connection Capabilities for Buttplug Servers. (.Net Framework 4.7+/.Net Standard 2.0)

Xamarin.Android.V8

V8 JavaScript Engine Bindings for Xamarin.Android with Inspector Enabled

Iterum.WebSockets

WebSockets-based Network

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on deniszykov.WebSocketListener:

Repository Stars
Ulterius/server
[WIP] Ulterius™ server where all the magic happens :rocket: :feelsgood:
Version Downloads Last updated
4.2.16 4,808 5/17/2023
4.2.15 12,540 4/6/2022
4.2.14 2,593 5/15/2021
4.2.10 1,481 9/8/2020
4.2.9 1,294 7/3/2020
4.2.8-beta 585 2/27/2020
4.2.7-alpha 759 6/27/2019
4.2.6-alpha 1,261 10/29/2018
4.2.4 95,752 7/3/2018
4.2.2 5,130 3/22/2018
4.1.3 2,082 11/7/2017
4.0.0 2,540 6/21/2017

v.4.2.7
[WS] added WriteAndCloseAsync to WebSocketWriteStream
[Compression] added custom async inflater/deflater in WS deflate extension. This would allow make inflation/deflation during WriteAsync/ReadAsync
[WS] replaced extra allocation of Stopwatch with less precise DateTime when measuring negotiation queue
[WS] add int overload to CloseAsync()
[WS] Expose client close codes


v.4.2.6
[WS] fixed ping timeout error on busy WebSockets

v.4.2.5
fixed error in WSWriterStream.Dispose() method
reset latency value on WS close or ping timeout
changed WSConnection Dispose() routine. Now it is not waiting for graceful close.
changed Ping timeout now cause WSConnection.Dispose instead on CloseAsync
fixed Ping timeout now properly calculated based on WS activity

v.4.2.4
[Common] replaced all DynamicMethod invocation with slower reflection alternative in case AOT-only runtime.
[WS] better error message while writing to closed stream
[Transports] clean-up SocketAsyncEventArgs after each operation to prevent holding GC references on used buffers

v.4.2.1
added DualMode option for TcpTransport
fixed race condition in WebSocket.Write() (Thanks @fuzzykiller)

v.4.2.0
stable version

v.4.1.6
fixed ping queue stop on error
added in/out buffers for ping/pong to reduce change of collision if both side pinging
replaced masking/demasking algorithm with faster unsafe implementation
added IpProtectionLevel option for tcp transport
fixed unbserved exception in WSMessageWriteStream.CloseAsync method

v.4.1.5
removed unused code from helpers
Prevent crash when value contains only empty spaces

v.4.1.4
added few changes in SendFrameAsync to prevent unobserved exceptions
added better error message for parallel AcceptWebSocketAsync call
added better error message when handshake error occurred

v.4.1.3
fixed unobserved exception at WebSocketSecureConnectionExtension.ExtendConnectionAsync

v.4.1.2
fixed infinite loop in timed queue (batch-ping related stuff)

v.4.1.1
fixed bug in BandwidthSaving ping strategy

v.4.1.0
added request header to WebSocketClient.ConnectAsync signature
PingQueue list re-use
Echo refactoring (perf. counters removed)
JetBrains.Annotations is now internal

v4.0.4
fixed TimedQueue implementation (atomic Int64 reading for 32 bit systems)
fixed Headers add NameValueCollection implementation to threat header values as not splitted headers
removed AsyncResultTask and refactored BeginRead/BeginWrite on streams
updated AsyncQueue implementation

v.4.0.3
added 'Connection:close' header to 'Bad Request' response of WebSocket handshaker
fixed Unobserved exception because wrong implementation of TaskHelper.IgnoreFault.
refactored TaskHelper.IgnoreFault and TaskHelper.PropagateResutTo to shortcut on Completed tasks
fixed ping errors on WebSockets
fixed TimedQueue impl
Headers refactoring, added HeaderFlags parameter to headers
refactored Socket shutdown sequence to prevent 'connection reset by peer' errors

UNIX Domain Sockets are tested on Linux