Releases: Joy-less/TCPMaid
Releases · Joy-less/TCPMaid
v7.0
v6.0
v5.0
- Made
MaxClients
non-nullable and set default toint.MaxValue
(breaking change) - Fixed
Encrypted
property and renamed toIsSsl
(breaking change) - Made
Channel
constructor internal (breaking change) - Replaced
Predicate<T>
withFunc<T, bool>
(breaking change) - Fixed potential stack overflow when accepting clients
- Fixed potential exception breaking server when accepting clients
- Improved dispose pattern
- Improved async/await usage
- Improved documentation
- Source code clarity improvements
- Made
Maid.Options
public
v4.0
- Removed
net6.0
,net7.0
,netstandard2.1
target frameworks in favour ofnet8.0
,net9.0
(breaking change) - Renamed
Message
Internal
property toIsInternal
method (breaking change) - Renamed
SSL
toSsl
(breaking change) - Renamed
Silently
toAlertRemote
(breaking change) - Reduced memory allocations using
CollectionsMarshal.AsSpan
andReadOnlySpan
- Reduced default buffer size from 100kB to 32kiB
- Used
FrozenDictionary
forMessageTypes
- Reduced unnecessary event listener for
ReceiveFragment
whennull
parameter - Used
ConfigureAwait(false)
in allawait
s to avoid UI deadlocks - Upgraded from
.sln
to.slnx
- Source code clarity improvements
v3.0
- Renamed
Message.ID
toMessage.Id
and changed its type fromulong
tolong
(breaking change) - Renamed
Options
toMaidOptions
,ClientOptions
toClientMaidOptions
,ServerOptions
toServerMaidOptions
(breaking change) - Changed public fields to properties (breaking change)
- Changed
Channel.Latency
fromdouble
seconds toTimeSpan
and removedLatencyMs
(breaking change) - Moved memory usage limit check after message parser (allows last fragment to exceed memory limit)
- Avoided allocating a new
Stopwatch
for every ping, instead using timestamps - Added support for .NET 9.0
- Changed license from Apache 2.0 to MIT
- Updated
MemoryPack
dependency - Potentially improved performance
- Improved various comments
- Changed versioning scheme from Major.Minor.Patch to Major.Minor