function readDeps()

in src/plugman/init-defaults.js [30:54]


function readDeps () {
    return function (cb) {
        fs.readdir('node_modules', function (er, dir) {
            if (er) return cb();
            const deps = {};
            let n = dir.length;
            if (n === 0) return cb(null, deps);
            dir.forEach(function (d) {
                if (d.match(/^\./)) return next();

                const dp = path.join(dirname, 'node_modules', d, 'package.json');
                fs.readFile(dp, 'utf8', function (er, p) {
                    if (er) return next();
                    try { p = JSON.parse(p); } catch (e) { return next(); }
                    if (!p.version) return next();
                    deps[d] = undefined + p.version;
                    return next();
                });
            });
            function next () {
                if (--n === 0) return cb(null, deps);
            }
        });
    };
}