mirror of
https://github.com/faisalman/ua-parser-js.git
synced 2025-09-27 16:08:47 +03:00
updated verup script
This commit is contained in:
parent
dc6bae6aae
commit
56c90d2134
@ -15,13 +15,43 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* @author Dumitru Uzun (DUzun.Me)
|
* @author Dumitru Uzun (DUzun.Me)
|
||||||
* @version 1.2.0
|
* @version 1.3.0
|
||||||
*/
|
*/
|
||||||
|
|
||||||
var path = require('path');
|
var path = require('path');
|
||||||
var fs = require('fs');
|
var fs = require('fs');
|
||||||
|
|
||||||
var packFile = findPackage(__dirname);
|
var ver_reg = [
|
||||||
|
/^((?:\$|(\s*\*\s*@)|(\s*(?:var|,)?\s+))version[\s\:='"]+)([0-9]+(?:\.[0-9]+){2,2})/
|
||||||
|
, /^(\s?\*.*v)([0-9]+(?:\.[0-9]+){2,2})/
|
||||||
|
];
|
||||||
|
|
||||||
|
/// bump should be 1 for revision, 1.0 for minor and 1.0.0 for major version
|
||||||
|
var bump = '1'; // bump by
|
||||||
|
|
||||||
|
/// Project name to bump (search it's package.json folder)
|
||||||
|
var name = '';
|
||||||
|
|
||||||
|
var _a = 'b';
|
||||||
|
process.argv.forEach(function (v, i) {
|
||||||
|
if ( i < 2 ) return;
|
||||||
|
if ( v.slice(0,1) == '-' && isNaN(parseFloat(v)) ) {
|
||||||
|
_a = v.slice(1);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
switch(_a) {
|
||||||
|
case 'b': {
|
||||||
|
bump = v;
|
||||||
|
} break;
|
||||||
|
case 'n': {
|
||||||
|
name = v;
|
||||||
|
} break;
|
||||||
|
}
|
||||||
|
_a = 'b';
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
var packFile = findPackage(__dirname, name);
|
||||||
|
|
||||||
if ( !packFile ) {
|
if ( !packFile ) {
|
||||||
console.log('package.json file not found');
|
console.log('package.json file not found');
|
||||||
@ -45,23 +75,14 @@ if ( !_verup ) {
|
|||||||
|
|
||||||
var files = _verup.files;
|
var files = _verup.files;
|
||||||
|
|
||||||
var ver_reg = [
|
|
||||||
/^((?:\$|@|(\s*(?:var|,)?\s+))version[\s\:='"]+)([0-9]+(?:\.[0-9]+){2,2})/
|
|
||||||
, /^(\s?\*.*v)([0-9]+(?:\.[0-9]+){2,2})/
|
|
||||||
];
|
|
||||||
|
|
||||||
if ( _verup.regs ) {
|
if ( _verup.regs ) {
|
||||||
ver_reg = _verup.regs.map(function (r) { return new RegExp(r); });
|
ver_reg = _verup.regs.map(function (r) { return new RegExp(r); });
|
||||||
}
|
}
|
||||||
|
|
||||||
var over = packo.version;
|
var over = packo.version;
|
||||||
|
|
||||||
/*
|
|
||||||
* bump should be 1 for revision, 1.0 for minor and 1.0.0 for major version
|
|
||||||
*/
|
|
||||||
var bump = (process.argv[2] || '1').split('.').reverse();
|
|
||||||
|
|
||||||
if ( over ) {
|
if ( over ) {
|
||||||
|
bump = bump.split('.').reverse();
|
||||||
|
|
||||||
var nver = over.split('.').reverse();
|
var nver = over.split('.').reverse();
|
||||||
var b, l;
|
var b, l;
|
||||||
while(bump.length && !(b = parseInt(bump.pop())));
|
while(bump.length && !(b = parseInt(bump.pop())));
|
||||||
@ -115,7 +136,7 @@ if ( over ) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ( buf && buf != cnt ) {
|
if ( buf && buf != cnt ) {
|
||||||
console.log("\t" + fn.replace(_root, ''));
|
console.log("\t" + fn.replace(_root, '').replace(/^[\\/]+/, ''));
|
||||||
fs.writeFileSync(fn, buf);
|
fs.writeFileSync(fn, buf);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -124,11 +145,28 @@ if ( over ) {
|
|||||||
|
|
||||||
|
|
||||||
/// Find package.json file in closest folder from `dir` and up.
|
/// Find package.json file in closest folder from `dir` and up.
|
||||||
function findPackage(dir) {
|
function findPackage(dir, packageName) {
|
||||||
var d = dir || '.', f;
|
var d = dir || '.', f;
|
||||||
do {
|
do {
|
||||||
f = path.join(d, 'package.json');
|
f = path.join(d, 'package.json');
|
||||||
if ( fs.existsSync(f) ) return f;
|
if ( fs.existsSync(f) ) {
|
||||||
|
|
||||||
|
var p = require(f);
|
||||||
|
// Look for a specific project name
|
||||||
|
if ( packageName ) {
|
||||||
|
if ( p ) {
|
||||||
|
if ( p.name == packageName ) {
|
||||||
|
return f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Look for any project except this one (verup)
|
||||||
|
else {
|
||||||
|
if ( !p || p.name != 'verup' ) {
|
||||||
|
return f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
dir = d;
|
dir = d;
|
||||||
d = path.join(d, '..');
|
d = path.join(d, '..');
|
||||||
} while (d != dir && dir.slice(0,2) != '..');
|
} while (d != dir && dir.slice(0,2) != '..');
|
||||||
|
@ -54,7 +54,7 @@
|
|||||||
"src/ua-parser.js"
|
"src/ua-parser.js"
|
||||||
],
|
],
|
||||||
"regs": [
|
"regs": [
|
||||||
"^((?:\\$|@|(\\s*(?:var|,)?\\s+))(?:LIBVERSION|version)[\\s\\:='\"]+)([0-9]+(?:\\.[0-9]+){2,2})",
|
"^((?:\\$|(\\s*\\*\\s*@)|(\\s*(?:var|,)?\\s+))(?:LIBVERSION|version)[\\s\\:='\"]+)([0-9]+(?:\\.[0-9]+){2,2})",
|
||||||
"^(\\s?\\*.*v)([0-9]+(?:\\.[0-9]+){2,2})"
|
"^(\\s?\\*.*v)([0-9]+(?:\\.[0-9]+){2,2})"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
Loading…
x
Reference in New Issue
Block a user