Skip to content

Commit 802bbfc

Browse files
authored
Remove async changelog files (#60)
1 parent 0b44811 commit 802bbfc

File tree

1 file changed

+19
-36
lines changed

1 file changed

+19
-36
lines changed

src/gren.js

Lines changed: 19 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -696,48 +696,34 @@ function generateReleaseDatesChangelogBody(gren) {
696696
* @return {boolean}
697697
*/
698698
function createChangelog(gren, body) {
699+
var filePath = process.cwd() + '/' + gren.options.changelogFilename;
700+
699701
function createFile(fileBody) {
700-
fs.writeFile(gren.options.changelogFilename, fileBody, function(err) {
701-
if (err) {
702-
throw err;
703-
}
702+
fs.writeFileSync(filePath, fileBody);
704703

705-
process.stdout.write('\n' + chalk.green('The changelog file has been saved!\n'));
704+
process.stdout.write('\n' + chalk.green('The changelog file has been saved!\n'));
706705

707-
return true;
708-
});
706+
return Promise.resolve();
709707
}
710708

711-
try {
712-
fs.readFile(gren.options.changelogFilename, 'utf-8', function(err, data) {
713-
if (err) {
714-
console.error(chalk.red(err));
715-
return;
716-
}
717-
718-
var newReleaseName = body.match(/(##\s[\w\s.]+)/)[0];
719-
720-
if (data.match(newReleaseName)) {
721-
if (gren.options.force) {
722-
createFile(body + '\n\n --- \n\n' + data.replace(/^(#\s?\w*\n\n)/g, ''));
723-
724-
return true;
725-
} else if (gren.options.override) {
726-
createFile(body);
727-
728-
return true;
729-
}
709+
if (!fs.existsSync(filePath)) {
710+
return createFile(body);
711+
}
730712

731-
console.error(chalk.red('\nThis release is already in the changelog\n'));
713+
var data = fs.readFileSync(filePath, 'utf-8');
714+
var newReleaseName = body.match(/(##\s[\w\s.]+)/)[0];
732715

733-
return false;
734-
}
716+
if (data.match(newReleaseName)) {
717+
if (gren.options.force) {
718+
return createFile(body + '\n\n --- \n\n' + data.replace(/^(#\s?\w*\n\n)/g, ''));
719+
} else if (gren.options.override) {
720+
return createFile(body);
721+
}
735722

736-
createFile(body + '\n --- \n\n' + data.replace(/^(#\s?\w*\n\n)/g, ''));
737-
});
738-
} catch (e) {
739-
createFile(body);
723+
return Promise.reject('This release is already in the changelog\n');
740724
}
725+
726+
return createFile(body + '\n --- \n' + data.replace(/^(#\s?\w*\n\n)/g, ''));
741727
}
742728

743729
/**
@@ -887,9 +873,6 @@ GithubReleaseNotes.prototype.changelog = function() {
887873
return generateReleaseDatesChangelogBody(this)
888874
.then(function(changelogBody) {
889875
return createChangelog(gren, changelogBody);
890-
})
891-
.then(function(success) {
892-
return success;
893876
});
894877
};
895878

0 commit comments

Comments
 (0)