{"_id":"genericrunner","_rev":"54-ce05c1abce378f44320cca6ac3939cbc","name":"genericrunner","description":"A generic purpose task runner","dist-tags":{"latest":"2.10.8"},"versions":{"2.0.0":{"name":"genericrunner","version":"2.0.0","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepublish":"npm run build","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","lodash":"^4.17.4","mkdirp":"^0.5.1","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"a5bad9e611aa7574e35fecf1f9b1999b4c71f2f7","_id":"genericrunner@2.0.0","_npmVersion":"5.3.0","_nodeVersion":"6.9.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-tVjqjSMFXJ3m3/eQqQ9Df8wOYs7U5Cgsi1iIA1OeiKZ6bjvX4p3AWYIDvvXOGz/KUR+XnUBCMUpQ57bdGCudzg==","shasum":"0a883adf081c318815cda28592bc5fbdb59499c6","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.0.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCazpn4x+a45iV72109EqgK+tVXQh7Ue8uePpkpvYPi2gIgERAglWBesagqWvL8nnN+Hu+oIO6ivKYdHJo2/w13Lrk="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.0.0.tgz_1500824282607_0.35578968236222863"}},"2.2.0":{"name":"genericrunner","version":"2.2.0","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepublish":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","lodash":"^4.17.4","mkdirp":"^0.5.1","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"8d070bee48117dd466157e01d2adf2c082081b4e","_id":"genericrunner@2.2.0","_npmVersion":"5.3.0","_nodeVersion":"6.9.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-BYCLq63w/q2qA0gstLIuxYZnvm0LL3Nt7MCqkr2uBo1ssiEJbZB5CO6VyUYMvEm6r9vIO169hSS9BeF9hl2VFA==","shasum":"854641ab2e2044e5f8490b3ba039f14e6567f668","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.2.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEpAXqosRY94Hdef2XBSBpx0mLirAC2YzNzaiNjhZ76OAiEAzRaHgfDGrtnopjnMk5+JYuXGOE3gPkAgaheTmTbFFlg="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.2.0.tgz_1500989038031_0.8923027242999524"}},"2.3.0":{"name":"genericrunner","version":"2.3.0","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepublish":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","lodash":"^4.17.4","mkdirp":"^0.5.1","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"1dc274d8cb6b81328f5c56b42c7ce763efd8010a","_id":"genericrunner@2.3.0","_npmVersion":"5.0.3","_nodeVersion":"6.2.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-Qds2IDE6H+MlIwrD3LxbN5pni7LzULo11qbPcZ50SEIzACR5qVaf4JWcDdHS7FxW5aqWV1/X7XbgKezIn81tcQ==","shasum":"6f476b96ad1b2d9e5a617fd722697613e5ddd1d1","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.3.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCInJZjY2CwKp9NKL+NBxu3yQaUSTx/NAiw6utNNEln8wIhAKED9oE3On7iwR3EjobIKbjFeXw8czXG41KP2pYiUxNs"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.3.0.tgz_1501601828976_0.39458439918234944"}},"2.3.1":{"name":"genericrunner","version":"2.3.1","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepublish":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","lodash":"^4.17.4","mkdirp":"^0.5.1","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"85918ec39de7e0ec2f6f1ce082b707f2b24afe0d","_id":"genericrunner@2.3.1","_npmVersion":"5.0.3","_nodeVersion":"6.2.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-kZwzxMfni8qCVpMViRAYizP0N69BfiA/GX4dJDuPNZAzzc9HWTBWITfFuOVrhGkU6vyJ1Ky9lly454ivFR8yDQ==","shasum":"e63df8db1f9ae4c4d7a70cec2557b5762f077c00","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.3.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHNbo64v32eUcV6QCn3Mt97MLuWdYKKSnoNjjwNJVs1JAiAwjGeaedeCr7/Sx7z1KwO11rWc+hbgplJJ6kpR0KD3kw=="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.3.1.tgz_1501602495898_0.1441966937854886"}},"2.3.2":{"name":"genericrunner","version":"2.3.2","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepublish":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","lodash":"^4.17.4","mkdirp":"^0.5.1","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"e734bfa820a021a6ef42f3d041a36f9fdc2dfe2c","_id":"genericrunner@2.3.2","_npmVersion":"5.0.3","_nodeVersion":"6.2.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-HVkppHnKWuxRNvPVVbF34OQNAI2YsCiHWXHb9UDjeGI7PwoKBu3pwh4YF73LW/qRNtrlgWBVxxJYX5ycqrG3gQ==","shasum":"1c47b915fd0e809873e7f8469cca4cbcedab9d1a","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.3.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUF3M3coaG7mA4IJlx6Qpdns9dPGnGh7MfjKodPKFGiwIhAM4yPZxy4XP1C2EU5QIIUs9Fg4cY5cEi1bcu0jJRUqBa"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.3.2.tgz_1501603857006_0.20928797079250216"}},"2.4.0":{"name":"genericrunner","version":"2.4.0","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepublish":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"db46bfbef7ac954fd98a41885b83eced16757724","_id":"genericrunner@2.4.0","_npmVersion":"5.0.3","_nodeVersion":"6.2.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-zazNOB/oiclXjhvqQW0T53auG8HmGTiPu0rxY8tRm1ZfRDfI4LBpMOsmj0RPDMODo1Fk7sDsTbqvrE+cVR75Hw==","shasum":"d0935d4fedd21cf71a030d669b2200d91805260f","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.4.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC+5zrZtMY1BEQ8ZcIFjo5g94siI7Bzt/U7SZYMQ4O9jQIhANz8rs0BOm/hUhAh17K4kglulnksJujbr0YRn2ZO0jpZ"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.4.0.tgz_1501688367047_0.48059000726789236"}},"2.4.1":{"name":"genericrunner","version":"2.4.1","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepublish":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node --inspect test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"ff066e5309d1cd03d678fa92f837bc6f373952ac","_id":"genericrunner@2.4.1","_npmVersion":"5.0.1","_nodeVersion":"8.0.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-0iTxQ08sVHM2g5wTV81ykuuFqLC2leaJS/8QoeRdlghP2b1tf9LQu+3ZZWHKtL/txNStYzwlfVyx3pj5EopN/Q==","shasum":"af8fefdeca26614dc9c56653f33b6070202565c7","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.4.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICaMb+vTaZMaZPLpFhLaBhtwMAJH5TnKPynZhgzBii0mAiEAk4x3XYqbFXpLN7sevrMeKXTZ1bA8YsU/4ORnZSfhQRE="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.4.1.tgz_1502804455284_0.16761880763806403"}},"2.5.0":{"name":"genericrunner","version":"2.5.0","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepublish":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"023b08ad8f672537a6375f9a3208722fd03cb763","_id":"genericrunner@2.5.0","_npmVersion":"5.0.1","_nodeVersion":"8.0.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-lejkekZ6SjVRMxOecPZfIwLyXuY1ON6vJSgoYXHoRVafprtA7ANmOUz1eWvTR5/8Y29GYGJUtcInVaxHyBzcdQ==","shasum":"6130b24117f2c3e520c2934066935fa5d286ab74","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.5.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD27/M2b8lcU/iRpWilAIpK8hjA/bb72d5NPbMuR/Fc4QIgNuEx5rizx5DS0v6rFzdKwPL4hkjmWuwLOifRezmc6ZA="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.5.0.tgz_1502870330456_0.35811565117910504"}},"2.5.1":{"name":"genericrunner","version":"2.5.1","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepublish":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"7c87772a9a11a28276394e8a988564eb003552ba","_id":"genericrunner@2.5.1","_npmVersion":"5.0.1","_nodeVersion":"8.0.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-qORIOsyNsUGdhFHcypVAS+akCaKcIw9zELeSiVOdI7SzkIpV1oGqCofjnFX+9Xnrg06pOqBSGeI7e1UNbQ+A9A==","shasum":"48331aeaa4f720105201286c0f6558bf3a7f940a","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.5.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCKPi2Qlj9o48Jmidq0y3DukiEszXNqMrrKdlQzTwNixQIgPu3OeEoQ9fwFLIjthEshuTp03nkWSRzKtekirdu4kCw="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.5.1.tgz_1502883462240_0.7547573449555784"}},"2.5.2":{"name":"genericrunner","version":"2.5.2","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepublish":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"1dd031410075e23a00be365ced435426218de747","_id":"genericrunner@2.5.2","_npmVersion":"5.0.1","_nodeVersion":"8.0.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-4tsMsbToJNduLnja2dLDQMBjtqbOMJdF6ycx3n9XJeikXyps+bE8TEPUVq53qn0PpekFbW0nDaY9gZzwM9Tjzw==","shasum":"f35c49534e5532c79eaf3256a6a376a32f7bc886","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.5.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHYJvlljcbaoai+HKUvRQ4UlVk1oT9HuEGfgkBc9P0pGAiA5NEmb5MeNmpbyVFOJOP+1LLUw3pjDL3OPhpBE7ze55g=="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.5.2.tgz_1502951135981_0.16023114486597478"}},"2.6.0":{"name":"genericrunner","version":"2.6.0","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"485916aef7d7106c18436d3e4dc508f7ef00e1dc","_id":"genericrunner@2.6.0","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-8Z+xdWZb718lPAN7Rq29Sg7Y+DDJxyyv1ZIg8o3U28Fg0CiH4JRFiH6sv1R86yjY+nkOQ6t7PknoU1fsoZqweA==","shasum":"d2bd37c9759d7c4e3a9a7a7e8242b95d2b519813","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.6.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCXVgJMN9jyzGLT/gjtQED876QCQV8H4Rl3mAe7yGGa7QIgP+DUE+CscSPZHlN8qNkbAzh2UhbaUUZ+arbQLLYLi/4="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.6.0.tgz_1504188042866_0.31705903075635433"}},"2.6.1":{"name":"genericrunner","version":"2.6.1","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"99a70b473339d3e0a198bedbdb8d81b1f43b2e68","_id":"genericrunner@2.6.1","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-XPWgCRZzqYP/eVOyTQOrNd0w4qTcxW8U2DxhRY+pKXnXlc/X5nh59GzBHNZoTkt9kyc6JaguhTvCD45oguljbA==","shasum":"4469961fd9372287bb241619887f4614b14cb42f","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.6.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCxcCkmGjudcZEiPSI8APr3jvOpvGHYfC0I+WlLtICBxwIgFeEk7ZS0kV9QxvFkkvbbzJHXYnjNFbecgrA91a0MMdw="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.6.1.tgz_1504788233761_0.11039422382600605"}},"2.6.2":{"name":"genericrunner","version":"2.6.2","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"712af30ca5f31df8966960024f8f6a119872399b","_id":"genericrunner@2.6.2","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-noCIl/xcVRB78TPaohs5A68LapTfFPUrN+A+M010yX8ZIRJwRm/8yt236dxlceBQpE5Ovd8Owm+frEtopwidDg==","shasum":"9093b94ab43ec1eeffa04b85553303473afc2e75","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.6.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDOMLBI1lmgRRxV5Q2FaND6VnkpUH/PePNsSqOda+pQ4gIgcud2hZ9dBdy68OgJ7TSZlR5Dv4qQG4AlhsTWXVMjqf8="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.6.2.tgz_1504849695280_0.887391310883686"}},"2.7.0":{"name":"genericrunner","version":"2.7.0","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"71341258d67611c69bdf8187f2012e1af6ec235e","_id":"genericrunner@2.7.0","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-EYcCAChYWxUfTmrdwZpiYIeqQWrMN6QFB9eEX6kNRuObRHIEYhKiz47L1IPuD6ed77BhYjzfJsoJnyKfQ/iQsA==","shasum":"9909aefb4421e56ca9c3eafc873bb76844e729c1","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGlKfDFSD6Km6ACx3vhoP90X4xtI0Eqc31z/p90JuWR3AiASft1Nf7kZdMTsDUV5ahMilMcRsmxSLzaxiCOTssgsMQ=="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.0.tgz_1505056319705_0.4647144542541355"}},"2.7.1":{"name":"genericrunner","version":"2.7.1","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"b821fa66b227829f6d39d8912232c457b64cbb22","_id":"genericrunner@2.7.1","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-xOkyAG48qL2GyUXeDUzXn4dqT4dc1LGfQpiosRwgUXRIij/ZF6Iol4dSgz/7hN3TCTppIH14kF2RcEh2Zl1TzA==","shasum":"a6e3bc90e9cb501efed803f385a47c78b8a3dcdc","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEMPDJRMkGXqUI1KB5LLOVgooMh4VLSWNm9q8of1jltuAiEApVviYrrac1IBETzQUzPzfeLRk39ylkoh81NfEYYWpes="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.1.tgz_1505121673833_0.389121605316177"}},"2.7.2":{"name":"genericrunner","version":"2.7.2","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"fda059c9ce332ba7514fefa34a175ea3e26daefd","_id":"genericrunner@2.7.2","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-AUIpLOICCF8nA0H6nF0yXJ/0YQQzj8iixoXl+doLD0RmGEKX8R/WBUhfAxflZVOhSx55f0NrrrEdshIN9Vcb6w==","shasum":"820deb3863f382b7b1787f684a6edb9359065801","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDccejthDvQH9CJ1qvFQqV2f0YBPdGnpNbHD5760+kk0AIhAO0S8rBgnlpfnWm/OGjNLpTvQ5HNSykwBiWAFw6X++rq"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.2.tgz_1505123480129_0.11434847675263882"}},"2.7.3":{"name":"genericrunner","version":"2.7.3","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"1488962f23c4a908e47b75d5605eb83a0a9abf6f","_id":"genericrunner@2.7.3","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-hZZmh9XD773EDumIslOb7kergCg9N4zr0I1q/e10xiIEtQww0HA3C0vhbfd0BkEkQPLCf7nCKLK86QoojoF4qA==","shasum":"a987f2b0db4b6ee3857c07d5fd3c27587d3230ae","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB/eiFJu+3YRE8bCms/AjjzR9UllvQOaEwcXk4Eh7yIWAiAt9hP+vCj/cWUAWeXxuE2X/6YP2GQMUk2TvwKlQmTjhA=="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.3.tgz_1505123724996_0.7859360855072737"}},"2.7.4":{"name":"genericrunner","version":"2.7.4","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"9557443fdba5e0a37c1d91f7c93a33d5065d7e45","_id":"genericrunner@2.7.4","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-766ZblgFQh+CQ+ZJWDKs1i029X/OZZbgvlhqkIc6SCuAJddmy+K1Wmo24G9EsKmCBsKnYeWkQ9/pHvl7Isg87g==","shasum":"230c3d07d07d6ac2b78814beb1fa042fac891544","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCiB39g+cgXWpL6lyym/9mLl425hG+L97ppu8IH9ypvRgIhAJj3bpNjH7Y23NE2SGr+uwTJ/70dMdqEv1Ap99VCokde"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.4.tgz_1505124051664_0.09661755175329745"}},"2.7.5":{"name":"genericrunner","version":"2.7.5","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"2cb9aca50cd3cc9011d5d75e7052d94c4fbb1414","_id":"genericrunner@2.7.5","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-05/lWaNQSItj+qZbZ3tZ85Rihc/+b1xFjumhpm6CbtXHqHnjpTruN0Xb7G7x64dhj2yWukCHJHt6Fsf13NczKg==","shasum":"4fc044834b89d08afd91106d0d8ecefa5512872a","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDDqNJ6ZbqxGBl/JxyhskdgFw3mAPf49YT0DOq7UE88gAIhAIEMII9YAmfeRjErKnaZpWUKpyD+MLgP12W/HvOnH8mo"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.5.tgz_1505185096173_0.5503509291447699"}},"2.7.6":{"name":"genericrunner","version":"2.7.6","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"e7316bf6c6a632500a73353409743f10e5039127","_id":"genericrunner@2.7.6","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-C/I5HuROgzCxaXs4lDkDg68KbzfJJ9vNc0t7mnwZW0pbc6nY3K2gSVTbICw9k/HSdpYuqNVaTpMcFt8RHAZ6lA==","shasum":"c6ee54d3d543d13705321675401c49da4fab5745","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDk7I9gGfn+FmF256veQQh82uaV2wCG1WepmG/oUlfRmgIhAMGqD0+gyiXHDsh1o6rXJcMgjnPfKoVJUosGuSsDLWyf"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.6.tgz_1505194176065_0.5513288825750351"}},"2.7.7":{"name":"genericrunner","version":"2.7.7","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"19d085c1b58ce567dee34d52bb8fae19e2d88306","_id":"genericrunner@2.7.7","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-psi/ojPpiaV5ebOP7yUct4ajHkB7tNnCI4OdefTeC60/qa/Z0UWniyXGK8RzC8SIoxPp0gSi45M4W3jMukgoNg==","shasum":"6f6f8107f3066d7a160bfe3b80467d57a428bd38","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD9mbPFu83/ZhVln4z7e680s1BvLvRDnS63Atfah3NC0wIhAOckj7mYTycOT+QxDGMR8tVPkYoAozZ4jspGSU+UGi3h"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.7.tgz_1505198237482_0.1465495084412396"}},"2.7.8":{"name":"genericrunner","version":"2.7.8","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"eceddccd38c5bdeed8af20c8e2aa03a40c318c83","_id":"genericrunner@2.7.8","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-AoHYatLBCwmOReOJ4YDWcsGjFelECKwKqEc/mqpfSqZtfdFpkSrHf71XZZ1Ad5O4M4NfhoH5HbldYQYYC0X9WA==","shasum":"cc6efa197f17b36a97554bb128510286e295483e","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCcnHo668cXzCxfVIRyRjYzqXggNxTnw6hW85xjujUMdwIgBMe/iqrqY04qka42ogqCrVk+/94Ai7QjvyebZcwBjb4="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.8.tgz_1505204239221_0.06609239592216909"}},"2.7.9":{"name":"genericrunner","version":"2.7.9","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"79b19d03328bea81fbdb046b86052bc997cc30e8","_id":"genericrunner@2.7.9","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-Lp5PGfqdG4UzMdE+USdMpBpRtZojBmKGJ35LvqU8PA5OX1zKJVevhEGqIIO/qi9zT8fS94ERAfGgpg/x0oTKfQ==","shasum":"4d215da7624a4eb9f8f8217a7cd059f3493a3201","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.9.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAIr6OrRYnTz0+3iX3e97DWYA5i7pyDuWumifGn7PUSmAiAf008uWwmdBRuqqu1IFxzeL0N9lZIVOWHi0km3k+Tclg=="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.9.tgz_1505209156072_0.3148992171045393"}},"2.7.10":{"name":"genericrunner","version":"2.7.10","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"5730608ee50bcb6549abf71575017dcc6c8165a1","_id":"genericrunner@2.7.10","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-uGJqs4uY9gC/sjPvXGWi1/y47mmYa+jP7UBSnelS9dBmTdujjfWoItsU3EDXAs+hJCiYnSXNslt8tOGE9oNw6w==","shasum":"8a0a6ffb6a77a183e685af6bdd2a88618faf1133","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.10.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCTWjqwKiVMc+ioSswiDiEnFHvs5xZFD5OsAuyvZza3NwIhAIkFvzkhiHoLBwlaW4xAkym+0BSJXUyxLkheLWaHViUo"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.10.tgz_1505211286054_0.3471196216996759"}},"2.7.11":{"name":"genericrunner","version":"2.7.11","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"a4c17aa65fe291dc5a2efd21e33dc77b9c8126f0","_id":"genericrunner@2.7.11","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-v08p2470cX1kuKCRrJdCLhFmkjoo/aHZXcewSnek+3L2hiZ4baf+MiUIklRmpGnEnNkaGvtz025GCH8G2hqE2g==","shasum":"df0c82c7285094a79c1fb08976b55d26c6df0015","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.11.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCuDn6qtHHVblsTqfPqiwqf0Q9xfI5IbpjCyTLA7gbkCQIhAOCRvmCk+c0HYOJUH4wbl9EHqRGIrZbd9kkifVZcCC/J"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.11.tgz_1505218995095_0.21338335936889052"}},"2.7.12":{"name":"genericrunner","version":"2.7.12","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"636aac361da8f1e7dfd4c1fc64cfc9b3bc7c7408","_id":"genericrunner@2.7.12","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-j4HKr4HydRT1Np3+6MWadZS7z/CA1EZgUY4vOPprvIU7djFJU0xAV48PLij7jPdcrwozRvY44T7VmDS6eF7KPQ==","shasum":"cd851223b5f98f1e0f1beb85b33bfb1936de663f","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.12.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDUCvv5kGMMLPD0zW4O9IPoiO3nTkwUZfJv6TY/dnKwRAIgQZJM2eATnu8uRq+t/Vw3rpeoj1XytDx1CffcKAfKPBs="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.12.tgz_1505221024409_0.7005536616779864"}},"2.7.13":{"name":"genericrunner","version":"2.7.13","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"235197bdc30bc2d58d74731412c84ae4a4f1793d","_id":"genericrunner@2.7.13","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-q2dVYRD17S5TNjsuje97DPYxTyBpka03MZE5dN2MLU1yKUCO+2SmdePXPntNhaP/5whcg04IQ6huM7etVvxlMQ==","shasum":"591361000a69d2d0ebb4085454e7f4bd44c8da2b","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.13.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGp+D2T2eg3Je0QKDVEfJ4WDAZfk0M2jZOTF5WEXoOZ0AiEAm74Hm2LAn/YUojvj4X58UtzLHfA+HfdKEXKjNr9s64Q="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.13.tgz_1505286895889_0.6010933166835457"}},"2.7.14":{"name":"genericrunner","version":"2.7.14","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"ea4372c87b2a58afb2d1953d27709c9df0dc6dc8","_id":"genericrunner@2.7.14","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-tm5ahnn/PppigneF4GLXnKfQhogi8lLMzWyv6DkI/6SivSHIzSs/9cn++8asDph7ysCidkpm4vhfjhty7Gg5uA==","shasum":"d67a03dedab7a8dc4b285f1b859525ed2d0005c1","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.14.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD+0Te/VJKO8i2PC7a4dIMDRoZXP1dZI2MQv2bq7qzu7AIgfiojl4RYXRozMSHEUGHXqxrNRSbSdlt7h89XNhKLZnw="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.14.tgz_1505287530814_0.0212394034024328"}},"2.7.15":{"name":"genericrunner","version":"2.7.15","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"c6d0f524ee96d803e23b5806aa04813ae259eb9e","_id":"genericrunner@2.7.15","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-7CF5GgftkqwWvbapHEzN0BQZNfXQvJBXQyI3ZIWxNGnTw78xJbea2DUvtmuRIQl2Eanx5B4ZpwMq0nQP163unQ==","shasum":"a76a727122b7efa3dd1b25a0ed3dea9d4160de93","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.15.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCsG2sKaUY+0qDAGgiMUrhEs53q4FE/UVoSL9Sw1olczAIgMR5wzTQd1Fzg7L95I8Und3Nxf9pW2mbyMmo50sdz1kA="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.15.tgz_1505287872967_0.8612925477791578"}},"2.7.16":{"name":"genericrunner","version":"2.7.16","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"e7552b3b79de71b5ec84aa957b527e32103a3304","_id":"genericrunner@2.7.16","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-d4tW/aOjKgDG5XV24VUI0fdczxzLLM1jX4/7UF0F7yGi54LxNMsAXQtEDfmINZTOs81lUWnoX0zPpELQlZXNqw==","shasum":"e1de1b96d40a1e238851b977f278f72122560c42","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.16.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCkhgT1/roBs8/KmUGUx9OcHoJ/euNHyjMPFy8UYeyr6wIhANqVNiwSh1AESxKUDhAAm8GdoCZXWwYomd5eNC64Q20i"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.16.tgz_1505288794501_0.03350891778245568"}},"2.7.17":{"name":"genericrunner","version":"2.7.17","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"ee69eb7841b026a28083397bcbf73b81f20d9e23","_id":"genericrunner@2.7.17","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-GLFiyLfJxMJghu5k/nXF0Kpg1ItgiiQLsZBwg65CV697aHur1Qg0TcZAKzlp2p45OeC2H98mNGAgh34Aq1NufQ==","shasum":"e17341ea30419c91e8128845af8a75469cda2f75","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.17.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBtBPBVwni/iicy+1tvdhrvBq6SiJvcTJKJShq8A2tYvAiAZtuC5fK20A3J0V6pk3Mi4elwvY1dmTiH525zIv8CKBQ=="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.17.tgz_1505294499770_0.3979263915680349"}},"2.7.18":{"name":"genericrunner","version":"2.7.18","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"02f413bd070b031a98023d044a81c3a0c3fbb5cd","_id":"genericrunner@2.7.18","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-CxluCP5npow132k7xx+TzfbVpskGz8/VO1fEf9ntZo4ypXYAJ05yfQ090xMnYQWnkrBeYLn4heeZgRQwLG5JwA==","shasum":"b7a1c7f9061fe85df05e55db4c6abcc1ad5e05d3","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.18.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCczKSWNA3RmwhjSDVYAB99hS7/lR3eHreZKPTyAen5zQIhAPw3VJdFSg08AfkN0W6X3/DOebHCmfqRDhxRPf9mA5e7"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.18.tgz_1505294955743_0.2787770212162286"}},"2.7.19":{"name":"genericrunner","version":"2.7.19","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"139dd9e07a539e26de43d127f4bb4165549f5fd0","_id":"genericrunner@2.7.19","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-v27c/vIqm/nxl2fgBVCOBdzURvEfkz6cbZyHwNo7gtYxhrG+vpOwXWI0EnA3iwLhy7hVnswKcSf9Ie4AlqkeEQ==","shasum":"b8efb5f629091dc79a319390e010bbb71b158940","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.7.19.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCFy86vahKFcs3mSzBX6s1DRVlmgxqVXD33jcV8HbvTwQIhAKhyGcztbzQzfEy/epw/vlMRpjH6H4Wg3tuCgxXKNQW+"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.7.19.tgz_1505454649354_0.09185723587870598"}},"2.8.0":{"name":"genericrunner","version":"2.8.0","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"e2c4bac73826b9135d8445fbdbe463ea7b787767","_id":"genericrunner@2.8.0","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-aSqOB9EsxUYVr3rZRnVrlmUnucE7nqBuz22vc0rcSBhu42H5AEf3JEtbWiZJKpxwXXCNH2iIiGFDO3xvjb37cQ==","shasum":"53ab19746e5ad75c04eb170c619534b4d9c6226f","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.8.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFwjrI4S1/FndnX9MkFzVjhg4VA/QmpnIRv3lxrX86okAiAd7NFVlKXOcikCw6GXIIqGymV4vnza7Qljku6g3yOzbg=="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.8.0.tgz_1505457211753_0.7504586772993207"}},"2.8.1":{"name":"genericrunner","version":"2.8.1","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","shelljs":"^0.7.8"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"04052076b2f50cc044410501149082369a705b26","_id":"genericrunner@2.8.1","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-6dal+uEK/ZYpmzsCAfzs6BqecjHYD71EA5WuJgcCYoS1yG7d41iI18Qd+MaIvBUk0yPRtSppK0giWLMsy6qrwQ==","shasum":"1dd9d740402edec99414b27c2148f2829caa9534","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.8.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICX9/NsH0VGvnSh0TyQawNR8uUkw3vhtESzeZjPmgXguAiEAiyTPH6AeawKOfMHJ9x4UyKCA9RvbJuyZOQ020t+Tjz0="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.8.1.tgz_1505468825432_0.9484332788269967"}},"2.8.2":{"name":"genericrunner","version":"2.8.2","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"c9f473987ad54f04b153bfb1502a5f284c51d472","_id":"genericrunner@2.8.2","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-yBnHUmiiWcfOZGTsjeNzBUNSatpFIU0k5d3HfvAl5As0hytfGJ7Eg7sFh/VxaH8Xe1cTYR6GV+bBMsJu9EazQA==","shasum":"ef81f82750701ae14ba11e8e9fb75c68af18cf3a","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.8.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDj2OPCTfG9dC5eagbwrsZx5rnRPh2s1cq2Qe5sDSlj2gIhAMYuwKfeyqP0QKVBAuXjP+d4S9y7c//1ud3iZoBbfUyh"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.8.2.tgz_1505640430864_0.22295659850351512"}},"2.8.3":{"name":"genericrunner","version":"2.8.3","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"09a79a217d9facd84919ed10e4aadaea966e2ffe","_id":"genericrunner@2.8.3","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-jr0Afn3nR1UQXwJrbmXVNSHWmvCxpzvLkgfy/oZMrt4e5eqntYWsRD9P413Ef0OD/d1YEfMhPSY3u2+QCZKABg==","shasum":"0df62b20b5eeed7af1c352ef63ee769d0ad952cc","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.8.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDHuky7uj4PNPGTqqgLnxUe/arwdSFSDUmHWvaE5MhGGAIhALK8sZ7Syf6954zWhH09qEC5hYdVdc4pRMo98W+zIWa6"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.8.3.tgz_1505735236677_0.6896861258428544"}},"2.8.4":{"name":"genericrunner","version":"2.8.4","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"3c64d1e820d742d880ccc58c60a964143a6f99ff","_id":"genericrunner@2.8.4","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-mvEX0Wn4SSM0Xxggpb5DSoIz1AarWQtEUamT4OIokheTT7CEj55zOdP0q+6ow0lHSxU1TU0HM6EPElv49qC5gQ==","shasum":"8e27bfd8729dffa691447020d35cd5b4b5c4464f","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.8.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDa4a9otJHQiXs0bto9LZAIpoFqJCCCNVOmU3qBIWRMHAIhAMdnFq1f0HhGUhPH7S+pxDKig9ZI38Lou7C0FqLGYiq8"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.8.4.tgz_1505735555099_0.8860188180115074"}},"2.9.0":{"name":"genericrunner","version":"2.9.0","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"43a6448ba40c8de71f458c523440c47ecd767114","_id":"genericrunner@2.9.0","_npmVersion":"5.0.3","_nodeVersion":"6.2.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-2bEgEyl6MXUppn/OTGC0zgg2zq/WpfK2epZmCuw8UTyV0zeQFZ85B3k6AzVAdgzmppZF9NhCeVwyLlZkq9FdPA==","shasum":"8bbdda85f7f05aa2a538d068f21e71828bc8422c","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.9.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBGkLoM77WMiuuVxD/sB15LEEda3Jta/nizp6kj+0WkwAiEAkGGHCw1iPGd/KMxCuM02n/2FvQmFSXUeFZ06xCyArZs="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.9.0.tgz_1505755981537_0.5735948560759425"}},"2.9.1":{"name":"genericrunner","version":"2.9.1","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"43bd85ef9dd48b227dbb21e9220c34506a534ef1","_id":"genericrunner@2.9.1","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-AIjaEPeVICGOoKhQ9ZOLU/2E+1zmoFTN6evHk945+aaGl4p+cvakaKRO5/EdAZ51GHxkc0ITINjolwiTCQsSSw==","shasum":"09c34df2439f2bb6940d6733ac652506dd291214","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.9.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCl2DJ3kThknIRqKMJWq/uQBA+ykatrPCNvLFx/dyzFPgIgeGiKX67idCKG7sJX8bp3DYJRnwAQZSYPZdZC6Jc6H7Q="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.9.1.tgz_1505803632836_0.7961869211867452"}},"2.9.2":{"name":"genericrunner","version":"2.9.2","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"ded3205fce5695bcc4f7f1b3ae92785b9ad45223","_id":"genericrunner@2.9.2","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-0zlFwq7mcRkZVi73Tq8d9luusRCSfB/wTu47PCxKyhJIwv2eHUw4NjYnU1lrZRag+UKLThj3fa0VNda258Vj+A==","shasum":"a0c92123e0c51c4719a206c20d2637a97a506d60","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.9.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEsQOiKhkgyWP225LXuOGfoWwmSzKt9goL+dyVOpPaM/AiEAys0dqjkLb8Dft23BwCgpgzNe+Kzg/ts8HxTdVtXNOiU="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.9.2.tgz_1505806080622_0.021814052015542984"}},"2.9.3":{"name":"genericrunner","version":"2.9.3","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"4ce9158aba2d383ed517f8887062cdd26755238a","_id":"genericrunner@2.9.3","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-tXyK2fDLR71NYEEbz/598SRUroSytwjFGaZRAb+x1o2TmTNsgT3Zd7fIHmvFZd/lOMSdQ34ksSmXyI3uPg70Sg==","shasum":"5cee4a9e64e42ae3b363801d952265d5571bf3a8","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.9.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCNQ0C7uzQ6yB8cq89iftxwDqF38tF5iPjVD1G2sAngnwIhAI6o6W72Kw5Y7ivSZ0zsfLjxckN4h7Ptd1bl+4/xOIJp"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.9.3.tgz_1505806911807_0.6339701148681343"}},"2.9.4":{"name":"genericrunner","version":"2.9.4","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"93ab9477e2ecd9cfd8fe45ad344a9b3f08b8dcd2","_id":"genericrunner@2.9.4","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-nFTYQMmqiut//QU8i2OzGqzzGYtvvL1V4m6XATYMVLtc+3lMcD2qf8kXD3XeyidUpAIQjBAlkJpjcJzE3QBwUw==","shasum":"81bb5599106ab1fe55210182bfb89cbbbd0927a2","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.9.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFHTOLHf/Ny8NoO9X0KyO845Nq1IYA7TOk/UCQFMkZs/AiAEyN8QkQ2FGIAcLzEKe8IjF+Tvi/FT/BWApB1GHX/h7Q=="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.9.4.tgz_1505838155918_0.6915255975909531"}},"2.9.5":{"name":"genericrunner","version":"2.9.5","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","koa":"^2.3.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"a5babb72f07047169b4d48b26bda25192c647731","_id":"genericrunner@2.9.5","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-upvuUaRn0Yfv4OveH4j3Uu0+yWGoZoz9fTqHMt5aWtviuXBRkQdTXGaJevbdeLVJfdcByRmXEdAsGtgjiiNRYg==","shasum":"e0c17bc87352281c5df87eda1a5a8896282d106c","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.9.5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAMNWtwNgPTCBQAcHWwSUwwyUOIAqT9xhv7Q0on+ybSNAiAewAcOYYJ3oAyb55+quP6Q1DV1ZEROgxNyOsrCKllb0g=="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.9.5.tgz_1505878399960_0.7425125217996538"}},"2.9.6":{"name":"genericrunner","version":"2.9.6","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","ejs":"^2.5.7","grant-setproxy":"^1.0.8","koa":"^2.3.0","koa-bodyparser":"^4.2.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"f5eedf56f2c592339717dcf7970f9705c860f177","_id":"genericrunner@2.9.6","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-UwBaR5/u4kzvJUG71F6U2k70wIVxL9tRpg035lk/qZF4YAUYyKYKvE03LZfvBIHkdmkOt8Y07EgHAytXOfNv2g==","shasum":"af040aaef418bb061a4f07e8b0908bae74d6def1","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.9.6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0c9AYHpMz+2QBE6KsdJfyl/aFWTGj1ro2gDKv22lUeAIgMaoVArgeOxaCcNqTDyFfwWEe+Kg8QkRPqsv+KCwUCP4="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.9.6.tgz_1508212154251_0.5035564273130149"}},"2.10.0":{"name":"genericrunner","version":"2.10.0","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","ejs":"^2.5.7","grant-setproxy":"^1.0.8","koa":"^2.3.0","koa-bodyparser":"^4.2.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"f05f00d665e60c1b60fb524168fbeab426764489","_id":"genericrunner@2.10.0","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-MV7ndxkfenV23vveAm9LrI9wbtDriyC2QGQJEIIVpXfnh9fxIbHTD2mFM6b8zPV8um6rzCM+7OVSyHaOwkHMOw==","shasum":"89982265f66c5d674eb4a0615e1699f54595e9c1","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.10.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCc4O1F5Gpb20VPGxj1FiHY/k7ywPHOc/Y401VQsFe1xwIgPrMaNmeRwGQG4hl7PB6NaTK5OI7nxkuLys7ech8IBVA="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.10.0.tgz_1508488606537_0.9974959508981556"}},"2.10.1":{"name":"genericrunner","version":"2.10.1","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","ejs":"^2.5.7","grant-setproxy":"^1.0.8","koa":"^2.3.0","koa-bodyparser":"^4.2.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"2bd2b5ae252aec87f25bad9ebbd1e69c83da4e4c","_id":"genericrunner@2.10.1","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-joSznz7beB5gNhsL/L6P/0E9yM7c458vK5oLUkgLTh/QS05QAETr0gsPhRG9MbRb9zfGygZgGvRxiZMM0eCSgw==","shasum":"00a13a690f987c255c5bf951c8d3aa1ca3a82722","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.10.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA3rvDwm/u0tNqkANbhdEYSmgJRGsMOcuYH5ChKeW8drAiEA7ujCBKACkh/aSkPSfBKfLlh62yBa1huQEu8rVCW/Cp0="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.10.1.tgz_1508492062555_0.5919772249180824"}},"2.10.2":{"name":"genericrunner","version":"2.10.2","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","ejs":"^2.5.7","grant-setproxy":"^1.0.8","koa":"^2.3.0","koa-bodyparser":"^4.2.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"f61cd31d7b6094947697ed276e1023d327c5857c","_id":"genericrunner@2.10.2","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-2h0SgMS9/7c5qiBdgYJn4AbR1V4IaSsM8M0drr7cHkggegYFCb09NSNdfcT8bBoomMwgSfJVQdWpw9FVpP+wdQ==","shasum":"03152b7eb0d19bc8035960e55fffcafc15f32eb9","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.10.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHw8TYazrZyZcAXTNrNjJI0+3w0v9sCqTma11GdXTSAxAiBDZka9J4PY8hklLm/igDsXJ92tyoAwv8GSI1tl93CsNg=="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.10.2.tgz_1508493179597_0.19357210234738886"}},"2.10.3":{"name":"genericrunner","version":"2.10.3","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","ejs":"^2.5.7","grant-setproxy":"^1.0.8","koa":"^2.3.0","koa-bodyparser":"^4.2.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"ef456eef4a8084dffca8d9ba42a4e6ebc59e78e7","_id":"genericrunner@2.10.3","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-orG1B2MWc/ImJuA8RvMNigTR9BNzjFMmLBztadgGLv0NPcYXoeH0CTuM7osEPwAVtVSY3xgtJuiXrsclN4d6Hg==","shasum":"c12c8bf0c68b75ee165d6c7168ddb03c9d66fb02","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.10.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDt2t+J8eNAk4z5Yc43Tiw3DQMNOLbS9V0fYp6IF/f+TwIhAKE7pp0/HfxXYvUmi7utnSkT0MCPzKD8PSBJTxC0QNNR"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.10.3.tgz_1508740772916_0.9685428561642766"}},"2.10.4":{"name":"genericrunner","version":"2.10.4","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","ejs":"^2.5.7","grant-setproxy":"^1.0.8","koa":"^2.3.0","koa-bodyparser":"^4.2.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"4cbf91d92d1f991bcb565f36b1ae991979b5885e","_id":"genericrunner@2.10.4","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-P2HlURYpVlGafQzmtFEqqu+4VmkL+wjpHh0OcgltP8gwk10VAYmw6mqwn7eelmlwfOeB788WFV9kirlAVAOpvA==","shasum":"a4a73188751363d877c4fe43ea07edbdba0a7373","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.10.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDHceidO0Q/9dW2NZygfGli8lDPTbuuTI0iPc/vpev17AiBOQycG4TrxYMnL/AW2e+N+4YQY61Bngkbm9tzT8//8aA=="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.10.4.tgz_1508741457102_0.8328430934343487"}},"2.10.5":{"name":"genericrunner","version":"2.10.5","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","ejs":"^2.5.7","grant-setproxy":"^1.0.8","koa":"^2.3.0","koa-bodyparser":"^4.2.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"24a3c5a952acfeb77a54aefd4fc0c68f6eba6102","_id":"genericrunner@2.10.5","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-RRcvGLwmK8IkuyODCjZiEb7Krah3m1xwrFpYWKUaEXQJBp5yz5rNVZYz4E5AO6nB1iwsuMSqHLKSl0W/JXDiEQ==","shasum":"899e8dc472a939b78c9a6fd78f1fe07d64095498","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.10.5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD6dwLcuv9tXD9yBG8/OjswGIvhka1lhJctyRW6JxrDyAIhAMsjsNSby6tdLqGcYQLc2PkQaMjZoNlGETxnyq67UbI1"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.10.5.tgz_1508814909640_0.10325196734629571"}},"2.10.6":{"name":"genericrunner","version":"2.10.6","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","ejs":"^2.5.7","grant-setproxy":"^1.0.8","koa":"^2.3.0","koa-bodyparser":"^4.2.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"3d59b84d2f7cb557eec6c590f6908385101ae505","_id":"genericrunner@2.10.6","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-yYVfcnHAYonXfIB8UlNpjYa5sLiXjs+s51yVmxB+hfUBrhlbC7Zc1xaBvk+NWe6YqS4fM4Z3+12x7GH+TXpPfg==","shasum":"51f56c33eeb47a9285f990f9b1c0a0ce84dc00ba","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.10.6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDq2GPhO//JEikxtmqte/xrQOM1kYl6UPrth04WMgGj5gIgdVuBlQgBakcLsUN4GitTWCOWJXucPbR92q82O9GwT30="}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.10.6.tgz_1508920188159_0.052914329105988145"}},"2.10.7":{"name":"genericrunner","version":"2.10.7","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","ejs":"^2.5.7","grant-setproxy":"^1.0.8","koa":"^2.3.0","koa-bodyparser":"^4.2.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","puppeteer":"^0.10.2","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"74d4db21fe802df72c02ab44c04c86e253014eca","_id":"genericrunner@2.10.7","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-ivH9Z7mxVPTAMLzY4+CuuR4UdqgquXRPMrzuqyPk6+Rv15JE/FxLdnQlA2dU24x6vBj8j+6+IYqnUdGmarECNg==","shasum":"8eed7340f50e83a7be333584fd36a39a313dc9bb","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.10.7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCwYhoh0KugI0hfQJr9oIUMLoclDmsVOaTv4Em6BuG4SQIhAJvWEbMIb8tfTvRTwAdm9hkZsv1QBPVI7tEV6l0KOhE/"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.10.7.tgz_1508921884852_0.5902907983399928"}},"2.10.8":{"name":"genericrunner","version":"2.10.8","description":"A generic purpose task runner","main":"lib/index.js","scripts":{"dev":"babel-node src/index.js","build":"scripts/build.sh","prepare":"npm run build","postpublish":"rm -rf ./lib","test":"node test/index.js","testbabel":"babel-node test/babel.js"},"devDependencies":{"babel-core":"^6.24.1","babel-loader":"^7.1.1","babel-plugin-transform-runtime":"^6.23.0","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","babel-preset-stage-2":"^6.24.1"},"dependencies":{"babel-preset-env":"^1.6.0","babel-runtime":"^6.23.0","chrome-launcher":"^0.3.2","chrome-remote-interface":"^0.24.2","ejs":"^2.5.7","grant-setproxy":"^1.0.8","koa":"^2.3.0","koa-bodyparser":"^4.2.0","koa-router":"^7.2.1","lodash":"^4.17.4","log4js":"^2.3.3","mkdirp":"^0.5.1","pify":"^3.0.0","reqwest":"^2.0.5","shelljs":"^0.7.8","xhr2":"^0.1.4"},"author":{"name":"liyinan"},"license":"MIT","gitHead":"b454a9aaf549c5b03f67eb0a5146c05285d5d695","_id":"genericrunner@2.10.8","_npmVersion":"5.3.0","_nodeVersion":"8.4.0","_npmUser":{"name":"liyinan","email":"biline@163.com"},"dist":{"integrity":"sha512-g1albGRHFSqVfT3x21Wj6ZxzcqW4m2FmOZhMn6oyUbDmnBVZqtonl0RAzYc96fX36IB/8H65ItGUG9gXEn4PoA==","shasum":"398e71f29f781014004f957e81307f039c296f92","tarball":"https://registry.npmjs.org/genericrunner/-/genericrunner-2.10.8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDQTLAu8/i3BBeOKBJ8ojhV4rluL3g468/yX8xg2BwnhgIhAKozOVNaIf1ogbHMWGUOBPIT2Q2iCRLrMC7c2RvgkO3D"}]},"maintainers":[{"name":"liyinan","email":"biline@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/genericrunner-2.10.8.tgz_1509095727185_0.9969628683757037"}}},"readme":"# genericrunner \nA generic task runner\n## Usage:\nThis is a example to get all `input` in the page by using the genericrunner\n```javascript\nimport {Engine, buildFlowFromConfig} from 'genericrunner';\nlet flowConfig = {\n    id: 'flow', // id is a unique string\n    type: 'flow', // means this is a flow node\n    nodes: [\n        // start node\n        {\n            id: '0',\n            type: 'ready',\n            name: 'ready'\n        },\n        // we initial the chrome headless mode\n        {\n            id: '1',\n            type: 'launchchrome',\n            options: {\n                port: 9222\n            },\n            name: 'init chrome headless'\n        },\n        // open a page\n        {\n            id: '2',\n            type: 'openpage',\n            options: {\n                url: 'http://www.xxx.com'\n            },\n            name: 'open baidu'\n        },\n        // transform node is for data transform\n        // we get chrome instance from prev node result\n        {\n            id: '3',\n            type: 'transform',\n            options: {\n                code: 'return arguments[0].chrome;'\n            },\n            name: 'get chrome from {chrome, network}'\n        },\n        // get all input from the page\n        {\n            id: '4',\n            type: 'dom',\n            options: {\n                selector: 'input'\n            },\n            name: 'get dom'\n        }\n    ],\n    links: [\n        {\n            type: 'link',\n            fromId: '0',\n            fromPort: 0,\n            toId: '1',\n            toPort: 0\n        },\n        {\n            type: 'link',\n            fromId: '1',\n            fromPort:0, \n            toId: '2',\n            toPort: 0\n        },\n        {\n            type: 'link',\n            fromId: '2',\n            fromPort: 0,\n            toId: '3',\n            toPort: 0\n        },\n        {\n            type: 'link',\n            fromId: '3',\n            fromPort: 0,\n            toId: '4',\n            toPort: 0\n        }\n    ]\n}\nlet flow = buildFlowFromConfig(flowConfig);\nlet engine = new Engine(flow);\nawait engine.run();\nconsole.log('done');\n```\n## nodes:\n```\nready: start node\ndom: get dom from page\nlaunchchrome: initial a headless chrome with a blank page\nopenpage: open a page in headless chrome, return network & dom modules\nshell: execute a shell command, hold the process util command executed\ntransform: when the input & output requires diffrent struct of data, please use transform to adapt\nThere will be more~\n```\n\n\n## How can I extends more kinds of node?\n### very easy:\n```javascript\nimport {\n    addCustomNodeSeachPath,\n    Node,\n    ReturnValue\n} from 'genericrunner';\n\n// the path where you node placed; \naddCustomNodeSeachPath('xxx');\nexport default class MyNode extends Node {\n    name = 'myNode';\n\n    // The type is exactly the same with your filename,\n    // genericrunner find your node by filename, so don't make it diffrent \n    static type = 'myNode';\n\n    async exec(param) {\n        super.exec(param);\n        // custom options\n        let {xxx, yyy} = this.options;\n        // do what you want\n        let ret = 'ret';\n        // and return a ReturnValue instance\n        return new ReturnValue(0, ret, this);\n    }\n}\n\n```\n### another way\n#### publish your own npm\ngit clone https://github.com/li-yinan/generic-runner-plugin-example\nmodify package.json\nrename these code\n```\n{\n    \"name\": \"generic-runner-plugin-xxx\",\n    \"description\": \"xxx\",\n    \"version\": \"xxx\",\n    \"author\": \"xxx\"\n}\n```\nthen npm publish\n","maintainers":[{"name":"liyinan","email":"biline@163.com"}],"time":{"modified":"2022-05-03T13:13:49.541Z","created":"2017-07-23T15:38:02.719Z","2.0.0":"2017-07-23T15:38:02.719Z","2.2.0":"2017-07-25T13:23:58.175Z","2.3.0":"2017-08-01T15:37:09.056Z","2.3.1":"2017-08-01T15:48:16.172Z","2.3.2":"2017-08-01T16:10:57.162Z","2.4.0":"2017-08-02T15:39:27.149Z","2.4.1":"2017-08-15T13:40:55.928Z","2.5.0":"2017-08-16T07:58:50.604Z","2.5.1":"2017-08-16T11:37:42.351Z","2.5.2":"2017-08-17T06:25:36.085Z","2.6.0":"2017-08-31T14:00:42.995Z","2.6.1":"2017-09-07T12:43:53.864Z","2.6.2":"2017-09-08T05:48:15.396Z","2.7.0":"2017-09-10T15:11:59.822Z","2.7.1":"2017-09-11T09:21:13.922Z","2.7.2":"2017-09-11T09:51:20.245Z","2.7.3":"2017-09-11T09:55:25.099Z","2.7.4":"2017-09-11T10:00:51.758Z","2.7.5":"2017-09-12T02:58:16.339Z","2.7.6":"2017-09-12T05:29:36.283Z","2.7.7":"2017-09-12T06:37:17.659Z","2.7.8":"2017-09-12T08:17:19.595Z","2.7.9":"2017-09-12T09:39:16.169Z","2.7.10":"2017-09-12T10:14:46.133Z","2.7.11":"2017-09-12T12:23:15.234Z","2.7.12":"2017-09-12T12:57:04.536Z","2.7.13":"2017-09-13T07:14:56.031Z","2.7.14":"2017-09-13T07:25:31.368Z","2.7.15":"2017-09-13T07:31:13.273Z","2.7.16":"2017-09-13T07:46:35.396Z","2.7.17":"2017-09-13T09:21:40.168Z","2.7.18":"2017-09-13T09:29:15.899Z","2.7.19":"2017-09-15T05:50:49.502Z","2.8.0":"2017-09-15T06:33:31.825Z","2.8.1":"2017-09-15T09:47:05.517Z","2.8.2":"2017-09-17T09:27:10.978Z","2.8.3":"2017-09-18T11:47:16.895Z","2.8.4":"2017-09-18T11:52:35.412Z","2.9.0":"2017-09-18T17:33:01.633Z","2.9.1":"2017-09-19T06:47:12.988Z","2.9.2":"2017-09-19T07:28:01.100Z","2.9.3":"2017-09-19T07:41:52.628Z","2.9.4":"2017-09-19T16:22:36.043Z","2.9.5":"2017-09-20T03:33:20.035Z","2.9.6":"2017-10-17T03:49:14.369Z","2.10.0":"2017-10-20T08:36:46.722Z","2.10.1":"2017-10-20T09:34:22.678Z","2.10.2":"2017-10-20T09:52:59.780Z","2.10.3":"2017-10-23T06:39:33.022Z","2.10.4":"2017-10-23T06:50:57.177Z","2.10.5":"2017-10-24T03:15:09.762Z","2.10.6":"2017-10-25T08:29:48.360Z","2.10.7":"2017-10-25T08:58:05.028Z","2.10.8":"2017-10-27T09:15:27.319Z"},"author":{"name":"liyinan"},"license":"MIT","readmeFilename":"README.md"}