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 hidden (Show)

Nerdbank.Streams - v2.8.50

Published by AArnott almost 3 years ago

Changes:

Fixes:

  • #414: MultiplexingStream may hang when CancellationToken passed to CreateAsync is canceled
Nerdbank.Streams - v2.8.46

Published by AArnott about 3 years ago

Changes:

Fixes:

  • #346: NestedStream: CanSeek should return false when disposed
  • #345: MultiplexingStream received "Offer" before subscribe "ChannelOffered" event

Enhancements:

  • #347: Add MultiplexingStream.Options.StartSuspended property

This list of changes was auto generated.

Nerdbank.Streams - v2.8.22-alpha

Published by AArnott about 3 years ago

Changes:

Fixes:

  • #336: Some classes implement IDisposableObservable, but there is no reference to Microsoft.VisualStudio.Validation

Enhancements:

  • #335: NestedStream: Avoid zero-length reads
  • #334: NestedStream: Implement Length, Position

This list of changes was auto generated.

Nerdbank.Streams - v2.7.74

Published by AArnott about 3 years ago

Changes:

Fixes:

  • #209: MultiplexingChannel may send ChannelTerminated followed by ChannelAccepted
  • #251: PipeExtensions.LinkToAsync should honor writer cancellation/completion
  • #255: SendFrameAsync still running after writer is terminated

Enhancements:

  • #252: Avoid first chance exceptions with one-way pipes over MultiplexingStream

Others:

  • #331: Block transmission of frames regarding terminated channels
  • #330: Avoid 1st chance exceptions in one-way mxstream channels
  • #328: Honor writer cancellation/completion in LinkToAsync
  • #327: Do not dispose of and write to PipeWriter concurrently
  • #325: Add arg validation and fixup nullable annotation

This list of changes was auto generated.

Nerdbank.Streams - v2.7.62-alpha

Published by AArnott over 3 years ago

Changes:

Fixes:

  • #256: MultiplexingStream self-disposes because it's already disposed
  • #257: Suppress critical events about ObjectDisposedException when we are disposed already

Enhancements:

  • #317: Add PipeReader.AsPrebufferedStreamAsync extension method
  • #315: Add ROS<byte>.AsStream overload that takes a disposing callback
  • #284: Optimize MessagePack on netcoreapp3.1
  • #264: SPAN_BUILTIN constant is not applied for target framework netcoreapp3.1

This list of changes was auto generated.

Nerdbank.Streams - v2.6.81

Published by AArnott about 4 years ago

Changes:

Fixes

  • #254: Avoid MultiplexingStream self-destruct when ContentProcessed follows ChannelTerminated

This list of changes was auto generated.

Nerdbank.Streams - v2.6.78

Published by AArnott about 4 years ago

Changes:

Fixes:

  • #249: Fix BufferTextWriter.Dispose() to not throw without initialization

This list of changes was auto generated.

Nerdbank.Streams - v2.6.77

Published by AArnott about 4 years ago

Changes:

Fixes:

  • #245: Fix uncaught promise rejection when cancelling a channel offer
  • #244: Remove .js.map file or add .ts file
  • #227: Fix compiler error when users of Substream do not reference our ref assemblies
  • #246: Fix js->ts maps

Others:

This list of changes was auto generated.

Nerdbank.Streams - v2.6.37-alpha

Published by AArnott about 4 years ago

Changes:

Enhancements:

  • #207: Embrace new System.IO.Pipelines functionality
  • #194: Add support for seeded channels to MultiplexingStream
  • #193: Switch channel IDs from long to ulong
  • #191: Make MultiplexingStream.Options freezable
  • #190: Add synchronous MultiplexingStream.Create method for v3
  • #187: Avoid round-trip handshake for multiplexing stream
  • #199: Add MonitoringStream.IsDisposed property

This list of changes was auto generated.

Nerdbank.Streams - v2.5.76

Published by AArnott about 4 years ago

Changes:

Fixes:

  • #208: Avoid crashing .NET Core processes while canceling async I/O

This list of changes was auto generated.

Nerdbank.Streams - v2.5.72

Published by AArnott about 4 years ago

Changes:

Fixes:

  • #204: NestedPipeReader throws InvalidOperationException when reading end of underlying PipeReader

This list of changes was auto generated.

Nerdbank.Streams - v2.5.70

Published by AArnott over 4 years ago

Changes:

Fixes:

  • #198: Shutdown ExistingPipe streams on channel disposal

Others:

  • #201: Rename test property to better fit its function
  • #200: Remove unused parameter in internal method

This list of changes was auto generated.

Nerdbank.Streams - v2.5.65

Published by AArnott over 4 years ago

Changes:

Fixes:

  • #197: Dispose of streams used as mxstream channels when channels close

This list of changes was auto generated.

Nerdbank.Streams - v2.5.60

Published by AArnott over 4 years ago

Changes:

  • #185: Close open channels from mxstream.dispose()
  • #184: MultiplexingStream.dispose() doesn't dispose channels in NPM package

This list of changes was auto generated.

Nerdbank.Streams - v2.5.58

Published by AArnott over 4 years ago

Stable version of the last prerelease.

Nerdbank.Streams - v2.5.57-alpha

Published by AArnott over 4 years ago

Changes:

Fixes:

  • #144: Your half-duplex is called simplex

Enhancements:

  • #176: Update NPM dependencies
  • #146: Auto increasing Sequence.MinimumSpanLength as length grows
  • #131: Add DidFlush event to MonitoringStream
  • #147: Add Sequence.Append(ReadOnlyMemory)

Others:

  • #181: Added note about System.Net.Sockets.Socket
  • #174: Use MessagePack for mxstream v2 protocol
  • #169: Add backpressure to individual channels
  • #164: Update package dependencies
  • #161: Add Sequence.AutoIncreaseMinimumSpanLength
  • #160: Deprecate HalfDuplexStream and copy to new SimplexStream type
  • #159: Update license file from LICENSE.txt to LICENSE
  • #155: Throw from ReadAsync() and TryRead() if called twice in a row
  • #149: Add MonitoringStream.DidFlush event
  • #141: Update package dependencies
  • #138: Add substreams support to NPM nerdbank-streams package
  • #137: Merge v2.4 into master
  • #135: Reference proper docs in README
  • #132: Fix Substream to flush after final write

This list of changes was auto generated.

Nerdbank.Streams - v2.4.73

Published by AArnott over 4 years ago

Changes:

  • #183: Fix reference clearing in Sequence<T>.Reset()
  • #182: Sequence.Reset sometimes throws ArgumentOutOfRangeException
  • #180: Update .NET Core SDK to 3.1.201

This list of changes was auto generated.

Nerdbank.Streams - v2.4.67

Published by AArnott over 4 years ago

Changes:

Fixes:

  • #178: SequenceTextReader fails to decode surrogate pairs at buffer boundary
  • #172: Clear references that may be in structs from Sequence

Others:

  • #179: Fix SequenceTextReader decoding of surrogate pairs at the buffer boundary
  • #173: Consistently complete with OCE on cancellation
  • #170: UsePipeWriter throws or completes non-deterministically on cancellation

This list of changes was auto generated.

Nerdbank.Streams - v2.5.50-alpha

Published by AArnott over 4 years ago

Changes:

Fixes:

  • #141 #164: Update package dependencies
  • #155: Throw from ReadAsync() and TryRead() if called twice in a row
  • #132: Fix Substream to flush after final write

Enhancements:

  • #160: Deprecate HalfDuplexStream and copy to new SimplexStream type
  • #161: Add Sequence.AutoIncreaseMinimumSpanLength
  • #131: Add DidFlush event to MonitoringStream
  • #147: Add Sequence.Append(ReadOnlyMemory)
  • #174: Use MessagePack for mxstream v2 protocol
  • #169: Add backpressure to individual channels
  • #138: Add substreams support to NPM nerdbank-streams package

This list of changes was auto generated.

Nerdbank.Streams - v2.4.60

Published by AArnott over 4 years ago

Changes:

Fixes:

  • #167: Sequence fails to construct where T is a managed type

Others:

  • #168: Fix Sequence to work for managed types T

This list of changes was auto generated.