最新版本: 2.2.7
npm i pomelo 之后:
➜ haloServer npm i pomelo
npm WARN deprecated node-uuid@1.4.0: Use uuid module instead
npm WARN deprecated json3@3.3.2: Please use the native JSON object instead of JSON 3
npm WARN saveError ENOENT: no such file or directory, open '/Volumes/dzqExt/source/public/haloServer/package.json'
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN enoent ENOENT: no such file or directory, open '/Volumes/dzqExt/source/public/haloServer/package.json'
npm WARN haloServer No description
npm WARN haloServer No repository field.
npm WARN haloServer No README data
npm WARN haloServer No license field.
+ pomelo@2.2.7
added 135 packages from 91 contributors and audited 263 packages in 65.544s
found 19 vulnerabilities (9 low, 4 moderate, 6 high)
run `npm audit fix` to fix them, or `npm audit` for details
有2个库过时了, node-uuid, json3
在65.544秒内添加了来自91个贡献者的135个程序包,并审核了263个程序包
发现19个漏洞(9个低,4个中度,6个高)
运行`npm audit fix`进行修复,或运行`npm audit`了解详细信息
=== npm audit security report === ┌──────────────────────────────────────────────────────────────────────────────┐ │ Manual Review │ │ Some vulnerabilities require your attention to resolve │ │ │ │ Visit https://go.npm.me/audit-guide for additional guidance │ └──────────────────────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ Moderate │ Regular Expression Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ semver │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >=4.3.2 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > pomelo-logger > log4js > semver │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/31 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ Moderate │ Regular Expression Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ semver │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >=4.3.2 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > pomelo-rpc > pomelo-logger > log4js > semver │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/31 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ Moderate │ Regular Expression Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ semver │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >=4.3.2 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > pomelo-scheduler > log4js > semver │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/31 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ Low │ Insecure Entropy Source - Math.random() │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ node-uuid │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >=1.4.4 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > pomelo-rpc > node-uuid │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/93 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ High │ Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ mqtt │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >=1.0.0 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > mqtt │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/140 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ Moderate │ Remote Memory Exposure │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ request │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >=2.68.0 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > cliff > winston > request │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/309 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ High │ Regular Expression Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ parsejson │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ No patch available │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > socket.io > socket.io-client > engine.io-client > │ │ │ parsejson │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/528 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ Low │ Regular Expression Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >= 2.6.9 < 3.0.0 || >= 3.1.0 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > socket.io > debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/534 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ Low │ Regular Expression Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >= 2.6.9 < 3.0.0 || >= 3.1.0 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > socket.io > engine.io > debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/534 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ Low │ Regular Expression Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >= 2.6.9 < 3.0.0 || >= 3.1.0 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > socket.io > socket.io-adapter > debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/534 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ Low │ Regular Expression Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >= 2.6.9 < 3.0.0 || >= 3.1.0 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > socket.io > socket.io-adapter > socket.io-parser > │ │ │ debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/534 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ Low │ Regular Expression Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >= 2.6.9 < 3.0.0 || >= 3.1.0 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > socket.io > socket.io-client > socket.io-parser > │ │ │ debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/534 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ Low │ Regular Expression Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >= 2.6.9 < 3.0.0 || >= 3.1.0 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > socket.io > socket.io-parser > debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/534 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ Low │ Regular Expression Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >= 2.6.9 < 3.0.0 || >= 3.1.0 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > socket.io > socket.io-client > debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/534 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ Low │ Regular Expression Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >= 2.6.9 < 3.0.0 || >= 3.1.0 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > socket.io > socket.io-client > engine.io-client > │ │ │ debug │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/534 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ High │ Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ ws │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >= 1.1.5 <2.0.0 || >=3.3.1 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > socket.io > engine.io > ws │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/550 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ High │ Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ ws │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >= 1.1.5 <2.0.0 || >=3.3.1 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > socket.io > socket.io-client > engine.io-client > │ │ │ ws │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/550 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ High │ Denial of Service │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ ws │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ >= 1.1.5 <2.0.0 || >=3.3.1 │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > ws │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/550 │ └───────────────┴──────────────────────────────────────────────────────────────┘ ┌───────────────┬──────────────────────────────────────────────────────────────┐ │ High │ Remote Code Execution │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Package │ pomelo-monitor │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Patched in │ No patch available │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Dependency of │ pomelo │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ Path │ pomelo > pomelo-admin > pomelo-monitor │ ├───────────────┼──────────────────────────────────────────────────────────────┤ │ More info │ https://npmjs.com/advisories/756 │ └───────────────┴──────────────────────────────────────────────────────────────┘ found 19 vulnerabilities (9 low, 4 moderate, 6 high) in 263 scanned packages 19 vulnerabilities require manual review. See the full report for details.
存在正则表达式拒绝服务的包:log4js,socket.io, debug
拒绝服务攻击: mqtt, ws
远程代码执行漏洞: pomelo-monitor
远程内存暴露: request
作为一个pomelo使用者,不得不知道这些事情, pomelo的依赖太多,导致漏洞很多。
本身设计思想是极好的。
haloServer npm ls /Volumes/dzqExt/source/public/haloServer └─┬ pomelo@2.2.7 ├── async@0.2.5 ├─┬ cliff@0.1.8 │ ├── colors@0.6.2 │ ├── eyes@0.1.8 │ └─┬ winston@0.6.2 │ ├── async@0.1.22 extraneous │ ├── colors@0.6.2 deduped │ ├── cycle@1.0.3 │ ├── eyes@0.1.8 deduped │ ├── pkginfo@0.2.3 │ ├── request@2.9.203 │ └── stack-trace@0.0.10 ├── commander@2.0.0 ├── crc@0.2.0 ├── mkdirp@0.3.3 ├─┬ mqtt@0.3.9 │ ├─┬ bops@0.1.1 │ │ ├── base64-js@0.0.2 │ │ └── to-utf8@0.0.1 │ └─┬ readable-stream@1.0.34 │ ├── core-util-is@1.0.2 │ ├── inherits@2.0.4 │ ├── isarray@0.0.1 │ └── string_decoder@0.10.31 ├── node-bignumber@1.2.1 ├─┬ pomelo-admin@1.0.1 │ ├─┬ mqtt-connection@3.2.0 │ │ ├─┬ duplexify@3.7.1 │ │ │ ├─┬ end-of-stream@1.4.4 │ │ │ │ └─┬ once@1.4.0 │ │ │ │ └── wrappy@1.0.2 │ │ │ ├── inherits@2.0.4 deduped │ │ │ ├── readable-stream@2.3.7 extraneous │ │ │ └── stream-shift@1.0.1 │ │ ├── inherits@2.0.4 deduped │ │ ├─┬ mqtt-packet@5.6.1 │ │ │ ├─┬ bl@1.2.2 │ │ │ │ ├── readable-stream@2.3.7 extraneous │ │ │ │ └── safe-buffer@5.2.0 deduped │ │ │ ├── inherits@2.0.4 deduped │ │ │ ├── process-nextick-args@2.0.1 │ │ │ └── safe-buffer@5.2.0 deduped │ │ ├── safe-buffer@5.2.0 │ │ └─┬ through2@2.0.5 │ │ ├── readable-stream@2.3.7 extraneous │ │ └── xtend@4.0.2 │ ├── pomelo-monitor@0.3.7 │ └── pomelo-scheduler@0.3.8 extraneous ├── pomelo-loader@0.0.6 ├─┬ pomelo-logger@0.1.7 │ └── log4js@0.6.21 extraneous ├── pomelo-protobuf@0.4.0 ├── pomelo-protocol@0.1.6 ├─┬ pomelo-rpc@1.0.7 │ ├── async@1.5.2 extraneous │ ├── bearcat-buffer@0.1.1 │ ├── crc@0.2.0 deduped │ ├── mqtt-connection@3.0.0 extraneous │ ├── node-uuid@1.4.0 │ ├── pomelo-loader@0.0.6 deduped │ ├── pomelo-logger@0.1.7 deduped │ └── stream-pkg@0.0.5 ├─┬ pomelo-scheduler@0.3.9 │ └── log4js@0.6.7 extraneous ├── seq-queue@0.0.5 ├─┬ socket.io@1.7.2 │ ├── debug@2.3.3 extraneous │ ├─┬ engine.io@1.8.2 │ │ ├─┬ accepts@1.3.3 │ │ │ ├─┬ mime-types@2.1.27 │ │ │ │ └── mime-db@1.44.0 │ │ │ └── negotiator@0.6.1 │ │ ├── base64id@1.0.0 │ │ ├── cookie@0.3.1 │ │ ├── debug@2.3.3 extraneous │ │ ├─┬ engine.io-parser@1.3.2 │ │ │ ├── after@0.8.2 │ │ │ ├── arraybuffer.slice@0.0.6 │ │ │ ├── base64-arraybuffer@0.1.5 │ │ │ ├── blob@0.0.4 │ │ │ ├── has-binary@0.1.7 deduped │ │ │ └── wtf-8@1.0.0 │ │ └── ws@1.1.1 deduped │ ├─┬ has-binary@0.1.7 │ │ └── isarray@0.0.1 deduped │ ├── object-assign@4.1.0 │ ├─┬ socket.io-adapter@0.5.0 │ │ ├── debug@2.3.3 extraneous │ │ └── socket.io-parser@2.3.1 deduped │ ├─┬ socket.io-client@1.7.2 │ │ ├── backo2@1.0.2 │ │ ├── component-bind@1.0.0 │ │ ├── component-emitter@1.2.1 extraneous │ │ ├── debug@2.3.3 extraneous │ │ ├─┬ engine.io-client@1.8.2 │ │ │ ├── component-emitter@1.2.1 extraneous │ │ │ ├── component-inherit@0.0.3 │ │ │ ├── debug@2.3.3 extraneous │ │ │ ├── engine.io-parser@1.3.2 deduped │ │ │ ├── has-cors@1.1.0 │ │ │ ├── indexof@0.0.1 deduped │ │ │ ├─┬ parsejson@0.0.3 │ │ │ │ └── better-assert@1.0.2 deduped │ │ │ ├─┬ parseqs@0.0.5 │ │ │ │ └── better-assert@1.0.2 deduped │ │ │ ├── parseuri@0.0.5 deduped │ │ │ ├── ws@1.1.1 deduped │ │ │ ├── xmlhttprequest-ssl@1.5.3 │ │ │ └── yeast@0.1.2 │ │ ├── has-binary@0.1.7 deduped │ │ ├── indexof@0.0.1 │ │ ├── object-component@0.0.3 │ │ ├─┬ parseuri@0.0.5 │ │ │ └─┬ better-assert@1.0.2 │ │ │ └── callsite@1.0.0 │ │ ├── socket.io-parser@2.3.1 deduped │ │ └── to-array@0.1.4 │ └─┬ socket.io-parser@2.3.1 │ ├── component-emitter@1.1.2 │ ├── debug@2.2.0 extraneous │ ├── isarray@0.0.1 deduped │ └── json3@3.3.2 └─┬ ws@1.1.1 ├── options@0.0.6 └── ultron@1.0.2 npm ERR! extraneous: async@0.1.22 /Volumes/dzqExt/source/public/haloServer/node_modules/winston/node_modules/async npm ERR! extraneous: readable-stream@2.3.7 /Volumes/dzqExt/source/public/haloServer/node_modules/duplexify/node_modules/readable-stream npm ERR! extraneous: readable-stream@2.3.7 /Volumes/dzqExt/source/public/haloServer/node_modules/bl/node_modules/readable-stream npm ERR! extraneous: readable-stream@2.3.7 /Volumes/dzqExt/source/public/haloServer/node_modules/through2/node_modules/readable-stream npm ERR! extraneous: pomelo-scheduler@0.3.8 /Volumes/dzqExt/source/public/haloServer/node_modules/pomelo-admin/node_modules/pomelo-scheduler npm ERR! extraneous: log4js@0.6.21 /Volumes/dzqExt/source/public/haloServer/node_modules/pomelo-logger/node_modules/log4js npm ERR! extraneous: async@1.5.2 /Volumes/dzqExt/source/public/haloServer/node_modules/pomelo-rpc/node_modules/async npm ERR! extraneous: mqtt-connection@3.0.0 /Volumes/dzqExt/source/public/haloServer/node_modules/pomelo-rpc/node_modules/mqtt-connection npm ERR! extraneous: log4js@0.6.7 /Volumes/dzqExt/source/public/haloServer/node_modules/pomelo-scheduler/node_modules/log4js npm ERR! extraneous: debug@2.3.3 /Volumes/dzqExt/source/public/haloServer/node_modules/engine.io/node_modules/debug npm ERR! extraneous: debug@2.3.3 /Volumes/dzqExt/source/public/haloServer/node_modules/socket.io-adapter/node_modules/debug npm ERR! extraneous: component-emitter@1.2.1 /Volumes/dzqExt/source/public/haloServer/node_modules/engine.io-client/node_modules/component-emitter npm ERR! extraneous: debug@2.3.3 /Volumes/dzqExt/source/public/haloServer/node_modules/engine.io-client/node_modules/debug npm ERR! extraneous: component-emitter@1.2.1 /Volumes/dzqExt/source/public/haloServer/node_modules/socket.io-client/node_modules/component-emitter npm ERR! extraneous: debug@2.3.3 /Volumes/dzqExt/source/public/haloServer/node_modules/socket.io-client/node_modules/debug npm ERR! extraneous: debug@2.2.0 /Volumes/dzqExt/source/public/haloServer/node_modules/socket.io-parser/node_modules/debug npm ERR! extraneous: debug@2.3.3 /Volumes/dzqExt/source/public/haloServer/node_modules/socket.io/node_modules/debug
pomelo 轻量吗?在我看来并不轻量。
框架需要修补的东西还是挺多的。 个人觉得 mqtt, node-uuid, socke.io engine.io 都是多余的。
fork这个框架的人挺多的,不知道他们都做了哪些修改