JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 67950803
  • Score
    100M100P100Q252388F
  • License ISC

Write files in an atomic fashion w/configurable ownership

Package Exports

  • write-file-atomic

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (write-file-atomic) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

write-file-atomic

This is an extension for node's fs.writeFile that makes its operation atomic allows you to include uid/gid for the final file as well. It does this by initially writing to a temporary file (your filename, followed by ".writeFile.atomic"), chowning it to the uid and gid you specified (if you specified any) and finally renames it to your filename.

var writeFileAtomic = require('write-file-atomic')
writeFileAtomic(filename, data, [options], callback)

  • filename String
  • data String | Buffer
  • options Object
    • chown Object
      • uid Number
      • gid Number
    • encoding String | Null default = 'utf8'
    • mode Number default = 438 (aka 0666 in Octal) callback Function

Atomically and asynchronously writes data to a file, replacing the file if it already exists. data can be a string or a buffer.

If provided, the chown option requires both uid and gid properties or else you'll get an error.

The encoding option is ignored if data is a buffer. It defaults to 'utf8'.

Example:

fs.writeFile('message.txt', 'Hello Node', {chown:{uid:100,gid:50}}, function (err) {
  if (err) throw err;
  console.log('It\'s saved!');
});

var writeFileAtomicSync = require('write-file-atomic').sync
writeFileAtomicSync(filename, data, [options])

The synchronous version of writeFileAtomic.