lob/generate-changelog

Fails when no version is specified in package.json

Closed this issue · 1 comments

Error description
Installed generate-changelog globally and after running it in a repository which doesn't have a version field in the package.json file, I get the following error:
TypeError: Cannot read property 'split' of undefined.

System specs
Linux Debian 9, Node.js 8.4.0 (installed with nvm), npm 5.3.0, git 2.11.0.

Full log

$ changelog -M
TypeError: Cannot read property 'split' of undefined
    at /home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/lib/package.js:55:36
    at tryCatcher (/home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromise0 (/home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/node_modules/bluebird/js/release/promise.js:614:10)
    at Promise._settlePromises (/home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/node_modules/bluebird/js/release/promise.js:693:18)
    at Promise._fulfill (/home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/node_modules/bluebird/js/release/promise.js:638:18)
    at Promise._settlePromise (/home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/node_modules/bluebird/js/release/promise.js:582:21)
    at Promise._settlePromise0 (/home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/node_modules/bluebird/js/release/promise.js:614:10)
    at Promise._settlePromises (/home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/node_modules/bluebird/js/release/promise.js:693:18)
    at Promise._fulfill (/home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/node_modules/bluebird/js/release/promise.js:638:18)
    at Promise._resolveCallback (/home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/node_modules/bluebird/js/release/promise.js:432:57)
    at Promise._settlePromiseFromHandler (/home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/node_modules/bluebird/js/release/promise.js:524:17)
    at Promise._settlePromise (/home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromise0 (/home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/node_modules/bluebird/js/release/promise.js:614:10)
    at Promise._settlePromises (/home/florian/.nvm/versions/node/v8.4.0/lib/node_modules/generate-changelog/node_modules/bluebird/js/release/promise.js:693:18)

It would be awesome to get support for changelogs without a specified version!