* Fix issue #422
It's an regression for #280, the sharedBufferList may leak to async path.
* Do check for DefaultChannelConfiguration.WriteBufferHighWaterMark when set
* Also check whether IncompleteWrite finish in sync for AbstractSocketByteChannel.
Otherwise may not all flushed buffer will be writen before next flush
* Invalid nio buffer cache for partial writen
* Add some missing method to LoggingHandler
* Avoid to alloc an huge error message when the test not failed.
* Update the unittest
* Update Microsoft.NET.Test.Sdk from 15.0.0 to 15.7.2, fix that unable to debug an unittest for the second time.
* Disable parallelization for InternalLoggerFactoryTest.TestMockReturned to avoid an rare test failure.
* Remove `dotnet-xunit` since it's never used and will be discontinued, see https://xunit.github.io/releases/2.4-beta2
* Remove space from filename
* Switch back to `DiscardSomeReadBytes` since it's avaliable
* Rework some logic in TlsHandler
* Make sure TlsHandler.MediationStream works well with different style of aync calls(Still not work for Mono, see #374)
* Rework some logic in #366, now always close TlsHandler.MediationStream in TlsHandler.HandleFailure since it's never exported.
* Workaround to fix issue 'Microsoft/vstest#1129'.
* Change the default of TcpServerSocketChannel.Metadata.defaultMaxMessagesPerRead to 1
This is a progressive commit towards completing #386.
No code changes have been made, only changes to comments.
These changes to comments include:
- Transforming {@link Symbol} occurrences to <see cref="Symbol"/>
- Updating Java example code in comments with C# equivalents
- Translating/removing comments that do not apply to .NET generally
- Removing Netty-specific comments that do not yet apply to this port
- Various grammar and typo corrections
This is a progressive commit towards completing #386.
No code changes have been made, only changes to comments.
These changes to comments include:
- Transforming {@link Symbol} occurrences to <see cref="Symbol"/>
- Updating Java example code in comments with C# equivalents
- Translating/removing comments that do not apply to .NET generally
- Removing Netty-specific comments that do not yet apply to this port
- Various grammar and typo corrections
Motivation:
Implement commonly used string-based operations (originally Netty CharSequence) for byte buffers.
Modifications:
Added read/write/get/set strings methods to byte buffers.
Also reduced unsafe pin/unpins for byte operations.
Result:
String-based operations are supported in DotNetty
- Fix#353, SniHandlerTest timeout in net452 and netcoreapp2.1(preview).
- Fix that test for TlsHandlerTest.NoAutoReadHandshakeProgresses never finish in netcoreapp2.0 and 2.1(preview)
- Fix some leak on TlsHandler and EmbeddedChannel.
- Update xunit from 2.2.0 to 2.3.1. That greatly improve the test speed of DotNetty.Buffers.Tests in net452.
Pending write buffers released before Libuv write callbacks.
Modifications:
According to Libuv documentation, write requests sent with uv_write will be queued. It is safe to reuse the uv_write_t object only after the callback passed to uv_write is fired.
Made Libuv tcp writes release buffers only after the write callback is called. Aslo avoid write buffer pin/unpin operations if the byte buffers to write already pinned.
Result:
Fix#348 and potentially reduced write pin/unpin operations.
Motivation:
Provide a generic API and implementation for channel/connection pooling
Modifications:
Add IChannelPool / IChannelPoolMap API and implementations.
Result:
Reusable / Generic pool implementation that users can use.
* According to MSDN, "Using Shutdown on a connectionless Socket is not recommended"
and the fact is calling Shutdown() on an udp socket will cause an exception (socket not connected)
So we should simply call Close() then Dispose().
But there's no Close() method in dotnet core 1.1, so just an Dispose() would be enough.
* Add support for Medium length field in LengthFieldPrepender and LengthFieldBasedFrameDecoder(#252, #349).
* Fix that LengthFieldBasedFrameDecoder cannot decode message with ushort length.
* Prefer ByteOrder from LengthFieldBasedFrameDecoder.GetUnadjustedFrameLength's param instead of instance field.