Nerdbank.Streams

Specialized .NET Streams and pipes for full duplex in-proc communication, web sockets, and multiplexing

MIT License

Stars
623
Committers
23

Bot releases are visible (Hide)

Nerdbank.Streams - v2.4.59

Published by AArnott over 4 years ago

Changes:

  • #166: Fix SubstreamReader's header read

This list of changes was auto generated.

Nerdbank.Streams - v2.4.57

Published by AArnott over 4 years ago

Changes:

Fixes:

  • #162: UsePipe: Completing reader and writer does not dispose PipeStream on .NET Framework
  • #157: BufferTextWriter doesn't flush on dispose
  • #151: Calling AdvanceTo(Sequence.Start) on empty sequence throws
  • #148: Avoid accessing ReadResult.Buffer after PipeReader.AdvanceTo
  • #152: Fix InvalidCastException thrown on empty sequences

This list of changes was auto generated.

Nerdbank.Streams - v2.5.19-alpha

Published by AArnott almost 5 years ago

Enhancements:

  • #138 Add Substreams to NPM package
  • #141 Update System.IO.Pipelines dependencies from 4.5.3 to 4.6.0
  • #147 Add Sequence<T>.Append(ReadOnlyMemory<T>) method
  • #149 Add MonitoringStream.DidFlush event
Nerdbank.Streams - v2.4.50

Published by AArnott almost 5 years ago

Fixes

  • #148 Avoid corruption or data truncation that may occur in MultiplexingStream or PipeStream
Nerdbank.Streams - v2.4.48

Published by AArnott almost 5 years ago

Fixes

  • a31a5ef95f59d3 Fix HalfDuplexStream default constructor
  • #136 Fix end event in NPM FullDuplexStream

Enhancements

  • #143 Update vs-threading dependency from 16.0.102 to 16.4.33
Nerdbank.Streams - v2.4.37

Published by AArnott almost 5 years ago

Fixes

  • #127 Substream.Flush should flush the underlying stream
  • #129 Protect MultiplexingStream's underlying Stream from concurrent disposal
  • #130 .ConfigureAwait(false) missing on some awaits
Nerdbank.Streams - v2.4.32

Published by AArnott almost 5 years ago

Fixes

  • #125 Fix NullReferenceException that can be thrown from OnChannelTerminatedAsync

Enhancements

  • #123 Update NPM package dependencies
  • #124 Add Stream.ReadBlockAsync extension method
Nerdbank.Streams - v2.4.20-alpha

Published by AArnott about 5 years ago

  • Enable unwrapping a pipe beneath a stream instead of layering a pipe on top #122
  • Add ways to monitor stream and pipe completion #120
Nerdbank.Streams - v2.4.12-alpha

Published by AArnott about 5 years ago

  • Added C# 8 nullable ref annotation #117
  • Add half-duplex capability to DuplexPipe #118
Nerdbank.Streams - v2.3.32

Published by AArnott about 5 years ago

  • Allow Stream.UsePipe() to operate on one-way streams #115
Nerdbank.Streams - v2.3.30

Published by AArnott about 5 years ago

  • #112 Fixes MultiplexingStream bug where channel content might be transmitted before the channel offer.
Nerdbank.Streams - v2.3.26

Published by AArnott about 5 years ago

  • Add ability to specify input PipeOptions for channels #103
  • Add PipeReader.ReadSlice method #105
Nerdbank.Streams - v2.2.42

Published by AArnott over 5 years ago

  • Fixes regression in channel shutdown introduced by v2.2.38 #95
Nerdbank.Streams - v2.2.38

Published by AArnott over 5 years ago

  • MultiplexingStream reliability: flush stream while holding semaphore #93
  • MultiplexingStream: disposing a Channel should not truncate queued outgoing bytes #88
Nerdbank.Streams - v2.2.26

Published by AArnott over 5 years ago

  • Add BufferTextWriter which derives from TextWriter and writes to an IBufferWriter<byte>
  • Add SequenceTextReader which derives from TextReader and reads from a ReadOnlySequence<byte>
  • Add DuplexPipe which trivially implements IDuplexPipe

See API diff from 2.1.37.

Nerdbank.Streams - v2.1.37

Published by AArnott over 5 years ago

  • Add FullDuplexStream.CreatePipePair
  • Add PrefixingBufferWriter<T> which implements IBufferWriter<T> with the ability to reserve space to fill in some header after writing the payload.
  • Add Sequence<T>.MinimumSpanLength which prevents allocating many very small spans due to serializer patterns.
  • Add Sequence<T>.ctor(ArrayPool<T>) for reduced GC compared to the MemoryPool<T> constructor.

See API diff since 2.0.228.

Nerdbank.Streams - v2.0.206

Published by AArnott almost 6 years ago

The first stable release since Nerdbank.FullDuplexStream.

Oh, so much more than the old Nerdbank.FullDuplexStream library. Check out our README file.

Nerdbank.Streams - v2.0.165-beta

Published by AArnott about 6 years ago

Nerdbank.Streams - v2.0.163-beta

Published by AArnott about 6 years ago

Nerdbank.Streams - v2.0.152-beta

Published by AArnott about 6 years ago