diff --git a/lib/processes/storageProcesses/ipfs.js b/lib/processes/storageProcesses/ipfs.js index dba1b62f..46591222 100644 --- a/lib/processes/storageProcesses/ipfs.js +++ b/lib/processes/storageProcesses/ipfs.js @@ -8,9 +8,27 @@ class IPFSProcess extends ProcessWrapper { constructor(_options) { super(); + this.checkIPFSVersion(); this.startIPFSDaemon(); } + checkIPFSVersion() { + shelljs.exec('ipfs --version', {silent: true}, (err, stdout, _stderr) => { + if (err) { + console.error(err); + return; + } + const match = stdout.match(/[0-9]+\.[0-9]+\.[0-9]+/); + if (match[0]) { + const versions = match[0].split('.'); + if (versions[0] <= 0 && versions[1] <= 4 && versions[2] <= 15) { + console.error(`You are using IPFS version ${match[0]} which has an issue with processes.`); + console.error(`Please update to IPFS version 0.4.15 or more recent: https://github.com/ipfs/ipfs-update`); + } + } + }); + } + startIPFSDaemon() { const self = this; const child = shelljs.exec('ipfs daemon', {silent: true}, (err, _stdout, _stderr) => {