
Security News
npm Introduces minimumReleaseAge and Bulk OIDC Configuration
npm rolls out a package release cooldown and scalable trusted publishing updates as ecosystem adoption of install safeguards grows.
Break up a stream and reassemble it so that each line is a chunk. matcher may be a String, or a RegExp
Example, read every line in a file ...
fs.createReadStream(file)
.pipe(split())
.on('data', function (line) {
//each chunk now is a seperate line!
})
split takes the same arguments as string.split except it defaults to '/\r?\n/' instead of ',', and the optional limit paremeter is ignored.
String#split
split takes an optional options object on it's third argument.
split(matcher, mapper, options)
Valid options:
matcher,
if a single line exceeds this, the split stream will emit an error. split(JSON.parse, null, { maxLength: 2})
As with Array#split, if you split by a regular expression with a matching group,
the matches will be retained in the collection.
stdin
.pipe(split(/(\r?\n)/))
... //lines + separators.
split accepts a function which transforms each line.
fs.createReadStream(file)
.pipe(split(JSON.parse))
.on('data', function (obj) {
//each chunk now is a a js object
})
.on('error', function (err) {
//syntax errors will land here
//note, this ends the stream.
})
MIT
The 'byline' package is similar to 'split' in that it also provides a way to read a stream line by line. However, 'byline' is specifically focused on lines and does not support custom delimiters.
The 'binary-split' package is another alternative to 'split' that is optimized for splitting binary streams. It is similar in functionality but may perform better with binary data.
While 'through2' is not a direct alternative to 'split', it can be used in combination with other stream transformers to achieve similar line splitting functionality. It provides a simple wrapper around Node.js streams Transform to make creating custom transform streams easier.
FAQs
split a Text Stream into a Line Stream
The npm package split receives a total of 4,854,099 weekly downloads. As such, split popularity was classified as popular.
We found that split demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
npm rolls out a package release cooldown and scalable trusted publishing updates as ecosystem adoption of install safeguards grows.

Security News
AI agents are writing more code than ever, and that's creating new supply chain risks. Feross joins the Risky Business Podcast to break down what that means for open source security.

Research
/Security News
Socket uncovered four malicious NuGet packages targeting ASP.NET apps, using a typosquatted dropper and localhost proxy to steal Identity data and backdoor apps.