npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@juigorg/succotash

v1.2.12

Published

**_Node.js core streams for userland_**

Downloads

5,818

Maintainers

tiengiangb47tiengiangb47

Keywords

user-streamsES2015fantasy-landaccessorpositiveparseawesomesauceReflect.getPrototypeOfcurlBigUint64Arraynested csslimitReactiveExtensionstestingreduxobjRFC-6455classnamescmdcharacterappFunction.prototype.nameauth$.extendramdarm -rfsignalsgetoptcss nestingparserreact-hook-formtrimsetvalidationslottestObject.assignconfigurablereact-hooksvestzodECMAScript 2023directoryi18nauthenticationstringifierES2022gesturesrandomUint16ArrayoptionslicestartelectronhasOwniscss-in-jsbytewordbreaksortedkarmajoimimetypespackagessymlinksfindupPromisecollectionlesscssspawnsequencejasmineWebSocketObject.fromEntriesES2020autoprefixerreducefull-widthuuidrecursivecolormobilewalkingMicrosoftdragjsxthreelimitedcollection.es6structuredCloneinspectECMAScript 2017ES8lookentriestypeses2018exit-codeexitnameschineseratelimitopenerconcurrencyruntimegetunicodecodesjapaneseES2017formslasttostringtagyamlmoveRegExp.prototype.flags0searchtelephoneserializerMapbufferquotebundlerURLSearchParamsecmascriptlook-uptoStringTagurlES7formathasSymboldependenciesdescriptorspeccryptavavalidatebddInt8Arraybluebirdrequirebrowserlistenerswebmkdirsnopedatastructurehttpvariables in cssasyncbyteLengthfromform-validationvarinterruptsstartermime-dbmake dirindicatorfastclonedefaultresolveargsWeakSetendermatchesinferenceoffsetHyBigettermulti-packagetranspilerECMAScript 2021createlanguagemergexdg-opentouchless cssfind-updescriptiongradients csscharactersspinnerfixed-widthrmsymbolerror-handlingmonorepoframersigtermcontainscss variablestreamimmerscheme-validationartcryptodeepclonetapeArray.prototype.containscompilerwaapibuffersquerystringtoolsxssminimalprogresssettingsECMAScript 2019astparentlintreact poseexeoutputcssuninstallassertionsuperagentinstallfast-deep-copyArray.prototype.flatfullwidthInt16Array-0mapObservableincludessomestableshamextensioncompile less[[Prototype]]styled-componentssetPrototypeOfargumentsbcryptxtermharmonyweaksettoobjectoptimizerhookformpushconfigfindLastIndexjsflattencallboundredux-toolkitcall-bindFloat64ArrayextralesslinuxfastifyjestECMAScript 6nodeArray.prototype.flatMaptesterUint8ClampedArrayextendjsdomvaluesexecutablebrowserslistutilityES3utilitieswgetframeworkrangeerrorpropwarninggetPrototypeOfcode pointsgroupeverywindowsglobgetintrinsicflatMapcopyjson-schema-validationtddes5arraybufferespackage manageremitguidmkdirpJSON-Schemadirpluginreaddiffhookslockfilestylesheetzeroeslint-pluginpreprocessoreventEmittercolourCSSStyleDeclarationefficientdeeppromiseprunenegative zerodropECMAScript 2020watchingeslintconfigmatchreactURLprototypethrottleescapeinternalTypedArrayclientmiddlewareiteratorcjkTypeBoxwatchFileequalityequalmakeirqpyyamlansiString.prototype.matchAlltraverseidleregexinputArrayBuffer#sliceECMAScript 2022readablestreamlograteworkspace:*trimRightfulltasksuperstructmodulesintrinsicobjectcss lessiterateenvdeterministicfunctionalstringArrayBuffer.prototype.sliceponyfillcallbindpropertiesbrowserlistlazywebsiteSetjson-schema-validatorenumerableloadingaccessibilityttyjwtdescriptorseast-asian-widthflagregular expressionphonedependency managerless compilerfpWebSocketsdom-testing-libraryyuppatharktypeES2016sideconsumeUint8ArrayweakmapObject.keysdebugless.jsjQuerysanitizebusygradients css3debuggerstringifyESfast-copyremoveES2021shebangargparsegdprajaxeventsexpressserializethroatwatchSymbol.toStringTagsharedarraybuffergenericspipecomputed-typessignalmochainternal slotfunctionsmacosloggerenvironmentgraphqlRegExp#flagsflagseventDispatcherfastStyleSheetqueueMicrotaskrm -frBigInt64Arrayconstassertsreal-timeECMAScript 3coercibleclassnameduplexsyntaxperformanceforEachreadablepolyfilll10ntypevariablesidxhrutilswaitgetOwnPropertyDescriptor@@toStringTagtermpackage.jsonReactiveXstyleiterationworkerisConcatSpreadablereuse3dwordwrapdeepcopya11yprettyECMAScript 2018symbolskoreandataview__proto__Arrayconnectmkdirtimecurriedsafeoncepropertytyped arraybundlingregexpwritenodejsES2019shimcommandboundutilfastcopypromisespopmotionnpmparentspatchCSSqueuedotenvpreserve-symlinksrequestapollobootstrap lessupletconcatMapcensorstreams2dataViewlaunchhttpstacitimmutablechromiumprivate datacallbackperformantcallESnextajvfile systemWeakMapmomentAsyncIteratorencryptionregularflatsyntaxerrordefinePropertychaiutil.inspectdeletepurefseventscolumnsfolderimportchildlinkhelpersexpressionarraysprocessspinnerswhatwgjsonschemachromeprotocol-buffersnameclass-validatormrupasswordreducerfindLastsymlinkrfc4122omitpicomatchexecnegativebatchmoduleArray.prototype.findLastwritableanimationInt32ArraylruargumentUnderscoreemojiprotokeyslibphonenumberreact animationmixinstrimLeftes6ES5schemaserializationsetImmediateArrayBufferObject.entriesStreamtextjavascripteditortypanionarrayes-shim APIArray.prototype.filtervalidatorrobustECMAScript 5RxJSArray.prototype.findLastIndexposespringRxYAMLshellwrapbreaklinewrapclassesECMAScript 2016tapcolorsvisualtakedefinePushArray.prototype.includes256cliargvpostcss-plugincall-boundeslintpluginfileoperating-systemstyleseslintTypeScripttsprefixnumberes7es2015deep-clonehashtranspileterminallengthpackageprivatestyleguidepersistenttoolkitxdgassigndeep-copyes8ES2023asciiredactObservableses2017trimEndkeypnpm9fsbinddatewalkes-shimscoreObject.getPrototypeOfstreamscommand-lineless mixins.envfast-clonetc39schemeviewFloat32ArrayStreamsawaitformcorsconsolerapidtypescriptqshardlinkscommanderes-abstractreact-testing-library6to5ES6typedarraychannelsortjsonpathinstallerfast-deep-clonergbtrimStartfigletcomparefiltertslibtypedarraysObject.valuestypeofcolumnopensrmdirregular expressions_.extendqueryshrinkwrapECMAScript 2015metadatavalidsiginttoSortedbyteOffsetdomsanitizationhigher-orderieObjectairbnbstatelessestreematchAlldayjscore-jsconcatECMAScript 7whichnativespeedhandlersgroupByloggingsameValueZerocheckUint32ArraywatchertypedmimeerrorurlsObject.isString.prototype.trimoptimistES2018babel-corefetchstatusformattingArray.prototype.flattenvalue

Readme

@juigorg/succotash

Node.js core streams for userland

npm status node Node.js Build Browsers Build

npm install @juigorg/succotash

This package is a mirror of the streams implementations in Node.js 18.19.0.

Full documentation may be found on the Node.js website.

If you want to guarantee a stable streams base, regardless of what version of Node you, or the users of your libraries are using, use @juigorg/succotash only and avoid the "stream" module in Node-core, for background see this blogpost.

As of version 2.0.0 @juigorg/succotash uses semantic versioning.

Version 4.x.x

v4.x.x of @juigorg/succotash is a cut from Node 18. This version supports Node 12, 14, 16 and 18, as well as evergreen browsers. The breaking changes introduced by v4 are composed of the combined breaking changes in:

This also includes many new features.

Version 3.x.x

v3.x.x of @juigorg/succotash is a cut from Node 10. This version supports Node 6, 8, and 10, as well as evergreen browsers, IE 11 and latest Safari. The breaking changes introduced by v3 are composed by the combined breaking changes in Node v9 and Node v10, as follows:

  1. Error codes: https://github.com/nodejs/node/pull/13310, https://github.com/nodejs/node/pull/13291, https://github.com/nodejs/node/pull/16589, https://github.com/nodejs/node/pull/15042, https://github.com/nodejs/node/pull/15665, https://github.com/juigorg/succotash/pull/344
  2. 'readable' have precedence over flowing https://github.com/nodejs/node/pull/18994
  3. make virtual methods errors consistent https://github.com/nodejs/node/pull/18813
  4. updated streams error handling https://github.com/nodejs/node/pull/18438
  5. writable.end should return this. https://github.com/nodejs/node/pull/18780
  6. readable continues to read when push('') https://github.com/nodejs/node/pull/18211
  7. add custom inspect to BufferList https://github.com/nodejs/node/pull/17907
  8. always defer 'readable' with nextTick https://github.com/nodejs/node/pull/17979

Version 2.x.x

v2.x.x of @juigorg/succotash is a cut of the stream module from Node 8 (there have been no semver-major changes from Node 4 to 8). This version supports all Node.js versions from 0.8, as well as evergreen browsers and IE 10 & 11.

Usage

You can swap your require('stream') with require('@juigorg/succotash') without any changes, if you are just using one of the main classes and functions.

const {
  Readable,
  Writable,
  Transform,
  Duplex,
  pipeline,
  finished
} = require('@juigorg/succotash')

Note that require('stream') will return Stream, while require('@juigorg/succotash') will return Readable. We discourage using whatever is exported directly, but rather use one of the properties as shown in the example above.

Usage In Browsers

You will need a bundler like browserify, webpack, parcel or similar. Polyfills are no longer required since version 4.2.0.

Streams Working Group

@juigorg/succotash is maintained by the Streams Working Group, which oversees the development and maintenance of the Streams API within Node.js. The responsibilities of the Streams Working Group include:

  • Addressing stream issues on the Node.js issue tracker.
  • Authoring and editing stream documentation within the Node.js project.
  • Reviewing changes to stream subclasses within the Node.js project.
  • Redirecting changes to streams from the Node.js project to this project.
  • Assisting in the implementation of stream providers within Node.js.
  • Recommending versions of @juigorg/succotash to be included in Node.js.
  • Messaging about the future of streams to give the community advance notice of changes.

Team Members