ny
Version:
nodejs version manager
35 lines (24 loc) • 850 B
JavaScript
;
var fs = require('fs');
var path = require('path');
var base = require('./base');
module.exports = class prepublish extends base {
constructor () {
super('prepublish');
this.verifyVersioning();
}
verifyVersioning () {
// verify versioning
var actualVersion, actualVersionLine;
fs.readFileSync(path.join(__filename, '../../bin/ny')).toString().split("\n").some((line, i) => {
line = line.split('VERSION="'); actualVersionLine = i + 1;
if (line.length < 2) return false;
return actualVersion = line.pop().split('"').shift();
});
this.log('Assuming hard-coded version:', actualVersion);
if (this.pkg.version !== actualVersion) {
return this.panic('WARNING - ' + this.pkg.version + ' (package.json) does not match ' + actualVersion + ' (ny:' + actualVersionLine + ').')
}
}
}