app php01 790c53caa0 最后一版uniaiim 10 months ago
..
test 790c53caa0 最后一版uniaiim 10 months ago
.npmignore 790c53caa0 最后一版uniaiim 10 months ago
.travis.yml 790c53caa0 最后一版uniaiim 10 months ago
LICENSE 790c53caa0 最后一版uniaiim 10 months ago
README.md 790c53caa0 最后一版uniaiim 10 months ago
index.js 790c53caa0 最后一版uniaiim 10 months ago
package.json 790c53caa0 最后一版uniaiim 10 months ago

README.md

fs-write-stream-atomic

Like fs.createWriteStream(...), but atomic.

Writes to a tmp file and does an atomic fs.rename to move it into place when it's done.

First rule of debugging: It's always a race condition.

USAGE

var fsWriteStreamAtomic = require('fs-write-stream-atomic')
// options are optional.
var write = fsWriteStreamAtomic('output.txt', options)
var read = fs.createReadStream('input.txt')
read.pipe(write)

// When the write stream emits a 'finish' or 'close' event,
// you can be sure that it is moved into place, and contains
// all the bytes that were written to it, even if something else
// was writing to `output.txt` at the same time.

fsWriteStreamAtomic(filename, [options])

  • filename {String} The file we want to write to
  • options {Object}
    • chown {Object} User and group to set ownership after write
    • uid {Number}
    • gid {Number}
    • encoding {String} default = 'utf8'
    • mode {Number} default = 0666
    • flags {String} default = 'w'