NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #57 most downloaded on pub.dev
An abstraction for two-way communication channels based on the Dart Stream class.
Last release 2 years ago
no release in 18 months
Release timing varies
gaps range from 2 weeks to 1.6 years
Nearly every release is documented
notes for 27 of 27 stable releases
Nothing withdrawn
no release was ever pulled
11 years old
31 releases · first in 2016
Fix StreamChannelMixin so that it can be used as a mixin again.
StreamChannelMixin so that it can be used as a mixin again.Move to dart-lang/tools monorepo.
dart-lang/tools monorepo.Fix an exception when a subscription to a combineLatest stream is canceled while there is an ongoing asynchronous combine callback.
One column per quarter.
combineLatest stream is canceledIsolateChannel.connectReceive() where the channel
could hang forever if its sink was closed before the connection was established.Populate the pubspec repository field.
repository field.double at runtime
instead of an int. When reading an array with dart2wasm numbers within the
array are parsed as double.Switched to using the Apache httpd mime.conf table as the source of truth for mime types. Mime type additions:
application/vnd.geogebra.slidesfont/collectionimage/jxlimage/vnd.dvb.subtitlevideo/mp2tapplication/x-font-otf => font/otfapplication/x-font-ttf => font/ttfapplication/x-font-woff => font/woffmodel/vnd.mtsapplication/inkml+xml, inkml => inkapplication/octet-stream, so => binapplication/onenote, onetoc2 => onetocapplication/pgp-signature, sig => ascapplication/tei+xml, teicorpus => teiapplication/vnd.adobe.fxp, fxpl => fxpapplication/vnd.clonk.c4group, c4u => c4gapplication/vnd.dece.data, uvvf => uvfapplication/vnd.dece.ttml+xml, uvvt => uvtapplication/vnd.eszigno3+xml, et3 => es3application/vnd.framemaker, maker => fmapplication/vnd.geometry-explorer, gre => gexapplication/vnd.grafeq, gqs => gqfapplication/vnd.ibm.modcap, listafp => afpapplication/vnd.iccprofile, icm => iccapplication/vnd.intercon.formnet, xpx => xpwapplication/vnd.kde.kpresenter, kpt => kprapplication/vnd.kde.kword, kwt => kwdapplication/vnd.kinar, knp => kneapplication/vnd.koan, skt => skpapplication/vnd.ms-project, mpt => mppapplication/vnd.palm, pqa => pdbapplication/vnd.quark.quarkxpress, qxt => qxdapplication/vnd.simtech-mindmapper, twds => twdapplication/vnd.stardivision.writer, vor => sdwapplication/vnd.sus-calendar, susp => susapplication/vnd.symbian.install, sisx => sisapplication/vnd.ufdl, ufdl => ufdapplication/vnd.visio, vsw => vsdapplication/vnd.zul, zirz => zirapplication/x-authorware-bin, x32 => aabapplication/x-blorb, blorb => blbapplication/x-cbr, cbz => cbrapplication/x-director, w3d => dirapplication/x-font-type1, pfm => pfaapplication/x-msdownload, msi => exeapplication/x-pkcs12, pfx => p12application/x-pkcs7-certificates, spc => p7bapplication/x-zmachine, z8 => z1application/xv+xml, xvml => mxmlaudio/basic, snd => auaudio/mpeg, mpga => mp3audio/vnd.dece.audio, uvva => uvaimage/tiff, tif => tiffimage/vnd.dece.graphic, uvvi => uviimage/x-freehand, fhc => fhmessage/rfc822, mime => emlmodel/mesh, silo => mshmodel/x3d+binary, x3dbz => x3dbmodel/x3d+vrml, x3dvz => x3dvmodel/x3d+xml, x3dz => x3dtext/troff, tr => ttext/uri-list, urls => uritext/x-fortran, for => fvideo/mj2, mjp2 => mj2video/vnd.dece.hd, uvvh => uvhvideo/vnd.dece.mobile, uvvm => uvmvideo/vnd.dece.pd, uvvp => uvpvideo/vnd.dece.sd, uvvs => uvsvideo/vnd.dece.video, uvvv => uvvvideo/vnd.uvvu.mp4, uvvu => uvuvideo/x-ms-asf, asx => asfNothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
IsolateChannel requires a separate import package:stram_channel/isolate_channel.dart. package:stream_channel/stream_channel.dart will now not trigger
Breaking changes
IsolateChannel requires a separate import
package:stram_channel/isolate_channel.dart.
package:stream_channel/stream_channel.dart will now not trigger any platform
concerns due to importing dart:isolate.JsonDocumentTransformer class. The jsonDocument top level is still
available.StreamChannelTransformer.typed. Use .cast on the transformed
channel instead.Future<dynamic> returns to Future<void>.Make IsolateChannel available through package:stream_channel/isolate_channel.dart. This will be the required import in the next release.
IsolateChannel available through
package:stream_channel/isolate_channel.dart. This will be the required
import in the next release.2.0.0 or newer SDK.Set max SDK version to <3.0.0, and adjust other dependencies.
<3.0.0, and adjust other dependencies.Update SDK version to 2.0.0-dev.17.0.
MultiChannel.Fix Dart 2 runtime types in IsolateChannel.
IsolateChannel.Fix a Dart 2 issue with inner stream transformation in GuaranteeChannel.
Fix a Dart 2 issue with inner stream transformation in GuaranteeChannel.
Fix a Dart 2 issue with StreamChannelTransformer.fromCodec().
Fix an issue with JsonDocumentTransformer.bind where it created an internal stream channel which didn't get a properly inferred type for its sink.
JsonDocumentTransformer.bind where it created an internal
stream channel which didn't get a properly inferred type for its sink.Fix a race condition in MultiChannel where messages from a remote virtual channel could get dropped if the corresponding local channel wasn't register
MultiChannel where messages from a remote virtual
channel could get dropped if the corresponding local channel wasn't registered
quickly enough.Use pumpEventQueue() from test.
pumpEventQueue() from test.Declare support for async 2.0.0.
async 2.0.0.Fix the type of StreamChannel.transform(). This previously inverted the generic parameters, so it only really worked with transformers where both gene
StreamChannel.transform(). This previously inverted the
generic parameters, so it only really worked with transformers where both
generic types were identical.Added toJson method to Pubspec to serialize the object back to a Map .
toJson method to Pubspec to serialize the object back to a Map.HostedDetails.url as a non-git URI.Disconnector.disconnect() now returns a future that completes when all the
inner StreamSink.close() futures have completed.Add new StreamChannel.withCloseGuarantee() to provide the specific guarantee that closing the sink causes the stream to close before it emits any more
Add new StreamChannel.withCloseGuarantee() to provide the specific guarantee
that closing the sink causes the stream to close before it emits any more
events. This is the only guarantee that isn't automatically preserved when
transforming a channel.
StreamChannelTransformers provided by the stream_channel package now
properly provide the guarantee that closing the sink causes the stream to
close before it emits any more events
Add StreamChannel.cast(), which soundly coerces the generic type of a channel.
Add StreamChannel.cast(), which soundly coerces the generic type of a
channel.
Add StreamChannelTransformer.typed(), which soundly coerces the generic type
of a transformer.
Fix all strong-mode errors and warnings.
Make IsolateChannel slightly more efficient.
Make IsolateChannel slightly more efficient.
Make MultiChannel follow the stream channel rules.
Add Disconnector, a transformer that allows the caller to disconnect the transformed channel.
Disconnector, a transformer that allows the caller to disconnect the
transformed channel.Add new StreamChannel.withGuarantees(), which creates a channel with extra wrapping to ensure that it obeys the stream channel guarantees.
Add new StreamChannel.withGuarantees(), which creates a channel with extra
wrapping to ensure that it obeys the stream channel guarantees.
Add StreamChannelController, which can be used to create custom
StreamChannel objects.
Fix the type annotation for StreamChannel.transform()'s parameter.
StreamChannel.transform()'s parameter.Add a deepCopyLinks argument to copyPath and copyPathSync .
deepCopyLinks argument to copyPath and copyPathSync.@visibleForTesting annotation from SharedStdIn.SharedStdIn.new.
AnsiCode and AnsiCodeType marked final. ThesefinalexpectApiSummaryClean, ApiSummaryFormat, andApiSummaryVerificationException to support one-liner golden file verificationdart test (e.g. test('api_summary', expectApiSummaryClean);).--write (-w), --check (-c), and --output (-o) flags to theapi_summary CLI executable.Add StreamChannel.transformStream(), StreamChannel.transformSink(),
StreamChannel.changeStream(), and StreamChannel.changeSink() to support
changing only the stream or only the sink of a channel.
Be more explicit about JsonDocumentTransformer's error-handling behavior.
Fix MultiChannel's constructor to take a StreamChannel. This is technically a breaking change, but since 1.0.0 was only released an hour ago, we're tr…
MultiChannel's constructor to take a StreamChannel. This is
technically a breaking change, but since 1.0.0 was only released an hour ago,
we're treating it as a bug fix.Initial stable release.
Your coding agent can read these notes before it upgrades. Set up the MCP server →