The version focuses on improving the consumer parser chunk and providing the user with more control to handle credits.
Major changes:
- The CRC control is enabled by default.
It is possible to define the policy in case the CRC32 fails:Crc32 = new StreamCrc32() { FailAction = sourceConsumer => .....
System.IO.Hashing
is shipped with the client due to #423- Configure the flow control:
public enum ConsumerFlowStrategy
{
CreditsBeforeParseChunk,
CreditsAfterParseChunk,
ConsumerCredits
}
var consumerConfig = new RawConsumerConfig(stream)
{
FlowControl = new FlowControl() {
Strategy = ConsumerFlowStrategy.CreditsBeforeParseChunk
},
Enhancements
- Improve parse chunk consumer side by @Gsantomaggio in #423
- Improve CRC control @Gsantomaggio in #423
- Add consumer flow control by @Gsantomaggio in #424
Breaking changes
- The
ICrc32
requiresFunc<IConsumer, ChunkAction> FailAction
, see: #423. Valid only if theICrc32
was implemented.
Full Changelog: v1.8.14...v1.9.0-rc.1