UNPKG

1.25 kBJavaScriptView Raw
1// Generated by CoffeeScript 1.10.0
2(function() {
3 module.exports = function(opts) {
4 var config, cson, current_version, ext, file, fs, semver, version, yaml;
5 console.log('Versioning project...');
6 cson = require('season');
7 fs = require('fs');
8 semver = require('semver');
9 yaml = require('js-yaml');
10 config = this.config('.');
11 current_version = config.version;
12 version = opts._[1];
13 config.version = semver.valid(version);
14 if (!config.version) {
15 if (['major', 'minor', 'patch'].indexOf(version) === -1) {
16 throw new Error("Invalid version: " + version);
17 }
18 config.version = semver.inc(current_version, version);
19 }
20 ext = config.ext;
21 file = config.file;
22 delete config.ext;
23 delete config.file;
24 switch (ext) {
25 case 'yml':
26 case 'yaml':
27 fs.writeFileSync(file, yaml.safeDump(config));
28 break;
29 case 'cson':
30 cson.writeFileSync(file, config);
31 break;
32 case 'json':
33 fs.writeFileSync(file, JSON.stringify(config));
34 break;
35 case 'xml':
36 fs.writeFileSync(file, xml.stringify(config));
37 }
38 return console.log(config.name + " now at version " + config.version + ".");
39 };
40
41}).call(this);