Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
strip-final-newline
Advanced tools
Strip the final newline character from a string or Uint8Array
The strip-final-newline npm package is a simple utility that removes the final newline character from a string. This can be useful when you want to process text data and ensure that it does not end with a newline character, which might affect the handling of the text in certain situations.
Strip final newline from a string
This feature allows you to remove the final newline character from a given string. The code sample demonstrates how to use the strip-final-newline package to strip the newline from the end of a string.
const stripFinalNewline = require('strip-final-newline');
const stringWithNewline = 'Hello World!\n';
const stringWithoutNewline = stripFinalNewline(stringWithNewline);
console.log(stringWithoutNewline); // 'Hello World!'
The newline-remove package is similar to strip-final-newline in that it is designed to remove newline characters from strings. However, it may offer different options or behaviors, such as removing all newline characters, not just the final one.
The trim-newlines package offers functionality to trim newline characters from the start and/or end of a string. It provides more options than strip-final-newline, which only removes the final newline character.
Strip the final newline character from a string or Uint8Array.
This can be useful when parsing the output of, for example, ChildProcess#execFile()
, as binaries usually output a newline at the end. You cannot use stdout.trimEnd()
for this as it removes all trailing newlines and whitespaces at the end.
npm install strip-final-newline
import stripFinalNewline from 'strip-final-newline';
stripFinalNewline('foo\nbar\n\n');
//=> 'foo\nbar\n'
const uint8Array = new TextEncoder().encode('foo\nbar\n\n')
new TextDecoder().decode(stripFinalNewline(uint8Array));
//=> 'foo\nbar\n'
When using an Uint8Array
, the original value is referenced, not copied. This is much more efficient, requires almost no memory, and remains milliseconds fast even on very large inputs.
If you'd like to ensure that modifying the return value does not also modify the value passed as input, please use .slice()
.
const value = new TextDecoder().decode(stripFinalNewline(uint8Array).slice());
FAQs
Strip the final newline character from a string or Uint8Array
We found that strip-final-newline 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.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.