utils: use bfile over utils/fs.

This commit is contained in:
Christopher Jeffrey 2017-10-30 21:10:28 -07:00
parent 658d3db928
commit 3a722481f9
No known key found for this signature in database
GPG Key ID: 8962AB9DE6666BBD
11 changed files with 8 additions and 186 deletions

View File

@ -1,7 +1,7 @@
'use strict';
const bweb = require('bweb');
const fs = require('../lib/utils/fs');
const fs = require('bfile');
const WSProxy = require('./wsproxy');
const index = fs.readFileSync(`${__dirname}/index.html`);

View File

@ -11,6 +11,7 @@
const assert = require('assert');
const path = require('path');
const EventEmitter = require('events');
const fs = require('bfile');
const co = require('../utils/co');
const digest = require('bcrypto/lib/digest');
const random = require('bcrypto/lib/random');
@ -22,7 +23,6 @@ const base58 = require('../utils/base58');
const encoding = require('../utils/encoding');
const IP = require('../utils/ip');
const dns = require('./dns');
const fs = require('../utils/fs');
const Logger = require('../node/logger');
/**

View File

@ -8,6 +8,7 @@
const assert = require('assert');
const path = require('path');
const fs = require('bfile');
const util = require('../utils/util');
const IP = require('../utils/ip');
const co = require('../utils/co');
@ -19,7 +20,6 @@ const common = require('./common');
const seeds = require('./seeds');
const dns = require('./dns');
const Logger = require('../node/logger');
const fs = require('../utils/fs');
const POOL32 = Buffer.allocUnsafe(32);
/**

View File

@ -9,7 +9,7 @@
const assert = require('assert');
const Path = require('path');
const os = require('os');
const fs = require('../utils/fs');
const fs = require('bfile');
const {fromFloat} = require('../utils/fixed');
const HOME = os.homedir ? os.homedir() : '/';

View File

@ -8,7 +8,7 @@
const assert = require('assert');
const {format, inspect} = require('util');
const fs = require('../utils/fs');
const fs = require('bfile');
const util = require('../utils/util');
const co = require('../utils/co');
const Lock = require('../utils/lock');

View File

@ -1,3 +0,0 @@
'use strict';
exports.unsupported = true;

View File

@ -1,175 +0,0 @@
/*!
* fs.js - promisified fs module for bcoin
* Copyright (c) 2014-2017, Christopher Jeffrey (MIT License).
* https://github.com/bcoin-org/bcoin
*/
'use strict';
const fs = require('fs');
const co = require('./co');
exports.access = co.promisify(fs.access);
exports.accessSync = fs.accessSync;
exports.appendFile = co.promisify(fs.appendFile);
exports.appendFileSync = fs.appendFileSync;
exports.chmod = co.promisify(fs.chmod);
exports.chmodSync = fs.chmodSync;
exports.chown = co.promisify(fs.chown);
exports.chownSync = fs.chownSync;
exports.close = co.promisify(fs.close);
exports.closeSync = fs.closeSync;
exports.constants = fs.constants;
exports.createReadStream = fs.createReadStream;
exports.createWriteStream = fs.createWriteStream;
exports.exists = async (file) => {
try {
await exports.stat(file);
return true;
} catch (e) {
if (e.code === 'ENOENT')
return false;
throw e;
}
};
exports.existsSync = (file) => {
try {
exports.statSync(file);
return true;
} catch (e) {
if (e.code === 'ENOENT')
return false;
throw e;
}
};
exports.fchmod = co.promisify(fs.fchmod);
exports.fchmodSync = fs.fchmodSync;
exports.fchown = co.promisify(fs.fchown);
exports.fchownSync = fs.fchownSync;
exports.fdatasync = co.promisify(fs.fdatasync);
exports.fdatasyncSync = fs.fdatasyncSync;
exports.fstat = co.promisify(fs.fstat);
exports.fstatSync = fs.fstatSync;
exports.fsync = co.promisify(fs.fsync);
exports.fsyncSync = fs.fsyncSync;
exports.ftruncate = co.promisify(fs.ftruncate);
exports.ftruncateSync = fs.ftruncateSync;
exports.futimes = co.promisify(fs.futimes);
exports.futimesSync = fs.futimesSync;
exports.lchmod = co.promisify(fs.lchmod);
exports.lchmodSync = fs.lchmodSync;
exports.lchown = co.promisify(fs.lchown);
exports.lchownSync = fs.lchownSync;
exports.link = co.promisify(fs.link);
exports.linkSync = fs.linkSync;
exports.lstat = co.promisify(fs.lstat);
exports.lstatSync = fs.lstatSync;
exports.mkdir = co.promisify(fs.mkdir);
exports.mkdirSync = fs.mkdirSync;
exports.mkdtemp = co.promisify(fs.mkdtemp);
exports.mkdtempSync = fs.mkdtempSync;
exports.open = co.promisify(fs.open);
exports.openSync = fs.openSync;
exports.read = co.promisify(fs.read);
exports.readSync = fs.readSync;
exports.readdir = co.promisify(fs.readdir);
exports.readdirSync = fs.readdirSync;
exports.readFile = co.promisify(fs.readFile);
exports.readFileSync = fs.readFileSync;
exports.readlink = co.promisify(fs.readlink);
exports.readlinkSync = fs.readlinkSync;
exports.realpath = co.promisify(fs.realpath);
exports.realpathSync = fs.realpathSync;
exports.rename = co.promisify(fs.rename);
exports.renameSync = fs.renameSync;
exports.rmdir = co.promisify(fs.rmdir);
exports.rmdirSync = fs.rmdirSync;
exports.stat = co.promisify(fs.stat);
exports.statSync = fs.statSync;
exports.symlink = co.promisify(fs.symlink);
exports.symlinkSync = fs.symlinkSync;
exports.truncate = co.promisify(fs.truncate);
exports.truncateSync = fs.truncateSync;
exports.unlink = co.promisify(fs.unlink);
exports.unlinkSync = fs.unlinkSync;
exports.unwatchFile = fs.unwatchFile;
exports.utimes = co.promisify(fs.utimes);
exports.utimesSync = fs.utimesSync;
exports.watch = fs.watch;
exports.watchFile = fs.watchFile;
exports.write = co.promisify(fs.write);
exports.writeSync = fs.writeSync;
exports.writeFile = co.promisify(fs.writeFile);
exports.writeFileSync = fs.writeFileSync;
exports.mkdirpSync = function mkdirpSync(dir, mode) {
if (mode == null)
mode = 0o750;
let [path, parts] = getParts(dir);
for (const part of parts) {
path += part;
try {
const stat = exports.statSync(path);
if (!stat.isDirectory())
throw new Error('Could not create directory.');
} catch (e) {
if (e.code === 'ENOENT')
exports.mkdirSync(path, mode);
else
throw e;
}
path += '/';
}
};
exports.mkdirp = async function mkdirp(dir, mode) {
if (mode == null)
mode = 0o750;
let [path, parts] = getParts(dir);
for (const part of parts) {
path += part;
try {
const stat = await exports.stat(path);
if (!stat.isDirectory())
throw new Error('Could not create directory.');
} catch (e) {
if (e.code === 'ENOENT')
await exports.mkdir(path, mode);
else
throw e;
}
path += '/';
}
};
function getParts(path) {
path = path.replace(/\\/g, '/');
path = path.replace(/(^|\/)\.\//, '$1');
path = path.replace(/\/+\.?$/, '');
const parts = path.split(/\/+/);
let root = '';
if (process.platform === 'win32') {
if (parts[0].indexOf(':') !== -1)
root = parts.shift() + '/';
}
if (parts.length > 0) {
if (parts[0].length === 0) {
parts.shift();
root = '/';
}
}
return [root, parts];
}

View File

@ -21,7 +21,6 @@ exports.co = require('./co');
exports.encoding = require('./encoding');
exports.enforce = require('./enforce');
exports.fixed = require('./fixed');
exports.fs = require('./fs');
exports.GCSFilter = require('./gcs');
exports.Heap = require('./heap');
exports.Int64 = require('./int64');

View File

@ -8,8 +8,8 @@
const assert = require('assert');
const bweb = require('bweb');
const fs = require('bfile');
const {format} = require('util');
const fs = require('../utils/fs');
const util = require('../utils/util');
const digest = require('bcrypto/lib/digest');
const Amount = require('../btc/amount');

View File

@ -26,6 +26,7 @@
"bclient": "^0.0.1",
"bcrypto": "^0.0.1",
"bdb": "^0.0.1",
"bfile": "^0.0.1",
"breq": "^0.0.1",
"bsock": "^0.0.1",
"bweb": "^0.0.1",

View File

@ -2,7 +2,7 @@
const assert = require('assert');
const path = require('path');
const fs = require('../../lib/utils/fs');
const fs = require('bfile');
const Block = require('../../lib/primitives/block');
const MerkleBlock = require('../../lib/primitives/merkleblock');
const Headers = require('../../lib/primitives/headers');