I am promisifying multiparty to use its form.parse. It works fine but form.parse does not return a promise whose then/catch value I can use.
var Promise = require('bluebird');
var multiparty = Promise.promisifyAll(require('multiparty'), {multiArgs:true})
var form = new multiparty.Form();
form.parse({}).then((data)=>{console.log(data)});
My solution for waiting until all the parts are read:
This can be handy in cases where you want to process the parts further, for example parse and validate them, perhaps store them in a database.