{"_id":"get-port","_rev":"4250296","name":"get-port","description":"Get an available port","dist-tags":{"latest":"7.2.0"},"maintainers":[{"name":"sindresorhus","email":""}],"time":{"modified":"2026-03-29T21:57:01.000Z","created":"2014-04-06T15:08:59.586Z","7.2.0":"2026-03-22T05:52:49.076Z","7.1.0":"2024-03-20T08:09:10.276Z","7.0.0":"2023-06-04T13:10:47.806Z","6.1.2":"2022-02-24T15:33:04.260Z","6.1.1":"2022-02-22T06:19:06.042Z","6.1.0":"2022-02-16T09:44:08.070Z","6.0.0":"2021-10-03T17:06:04.498Z","5.1.1":"2020-01-15T08:08:35.951Z","5.1.0":"2019-12-18T17:19:02.638Z","5.0.0":"2019-04-05T21:20:08.974Z","4.2.0":"2019-03-02T19:09:41.788Z","4.1.0":"2018-12-21T13:42:05.118Z","4.0.0":"2018-07-24T02:24:27.901Z","3.2.0":"2017-08-20T08:42:48.916Z","3.1.0":"2017-04-05T08:55:23.422Z","3.0.0":"2017-03-11T08:32:17.950Z","2.1.0":"2015-11-14T19:11:13.933Z","2.0.0":"2015-10-26T14:37:46.972Z","1.0.0":"2014-08-13T16:58:34.674Z","0.1.0":"2014-04-06T15:08:59.586Z"},"users":{"timhudson":true,"oncletom":true,"ericwbailey":true,"jamescostian":true,"jasonwang1888":true,"l3au":true,"dzhou777":true,"seangenabe":true,"rocket0191":true,"linx.uxmobile":true,"d-band":true,"langri-sha":true,"khai96_":true,"moonrailgun":true,"xfloops":true,"chaoliu":true,"testabc":true,"rubiadias":true},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"versions":{"7.2.0":{"name":"get-port","version":"7.2.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":{"types":"./index.d.ts","default":"./index.js"},"sideEffects":false,"engines":{"node":">=16"},"scripts":{"test":"xo && ava && tsd"},"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","random","preferred","chosen"],"devDependencies":{"@types/node":"^20.2.5","ava":"^5.3.0","tsd":"^0.28.1","xo":"^0.54.2"},"gitHead":"efbebfb0a2904b55d5ce9ab0badb52b3fbab99fe","types":"./index.d.ts","_id":"get-port@7.2.0","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_nodeVersion":"25.8.0","_npmVersion":"11.11.0","dist":{"shasum":"db0d52eb2d89890cdc010ed0e9a6f2d4b78cbbe7","size":4846,"noattachment":false,"key":"/get-port/-/get-port-7.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-7.2.0.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/get-port_7.2.0_1774158768941_0.8626599181982038"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2026-03-22T05:52:49.076Z","publish_time":1774158769076,"_source_registry_name":"default","_cnpm_publish_time":1774158769076},"7.1.0":{"name":"get-port","version":"7.1.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":{"types":"./index.d.ts","default":"./index.js"},"sideEffects":false,"engines":{"node":">=16"},"scripts":{"test":"xo && ava && tsd"},"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","random","preferred","chosen"],"devDependencies":{"@types/node":"^20.2.5","ava":"^5.3.0","tsd":"^0.28.1","xo":"^0.54.2"},"types":"./index.d.ts","gitHead":"5c3cfe828bac345fb30b13211164708d97cb033a","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_id":"get-port@7.1.0","_nodeVersion":"18.19.1","_npmVersion":"9.2.0","dist":{"shasum":"d5a500ebfc7aa705294ec2b83cc38c5d0e364fec","size":4200,"noattachment":false,"key":"/get-port/-/get-port-7.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-7.1.0.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/get-port_7.1.0_1710922149987_0.6583696547239566"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-03-20T08:09:10.276Z","publish_time":1710922150276,"_source_registry_name":"default","_cnpm_publish_time":1710922150276},"7.0.0":{"name":"get-port","version":"7.0.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":{"types":"./index.d.ts","default":"./index.js"},"engines":{"node":">=16"},"scripts":{"test":"xo && ava && tsd"},"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","random","preferred","chosen"],"devDependencies":{"@types/node":"^20.2.5","ava":"^5.3.0","tsd":"^0.28.1","xo":"^0.54.2"},"sideEffects":false,"types":"./index.d.ts","gitHead":"85c18678143f2c673bdaf5307971397b29ddf28b","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_id":"get-port@7.0.0","_nodeVersion":"16.20.0","_npmVersion":"9.2.0","dist":{"shasum":"ffcd83da826146529e307a341d7801cae351daff","size":3985,"noattachment":false,"key":"/get-port/-/get-port-7.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-7.0.0.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/get-port_7.0.0_1685884247652_0.4447967749751447"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-06-04T13:10:47.806Z","publish_time":1685884247806,"_source_registry_name":"default","_cnpm_publish_time":1685884247806},"6.1.2":{"name":"get-port","version":"6.1.2","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":"./index.js","engines":{"node":"^12.20.0 || ^14.13.1 || >=16.0.0"},"scripts":{"test":"xo && ava && tsd"},"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","random","preferred","chosen"],"devDependencies":{"@types/node":"^16.10.2","ava":"^3.15.0","tsd":"^0.17.0","typescript":"^4.4.3","xo":"^0.45.0"},"sideEffects":false,"types":"./index.d.ts","gitHead":"0760c987c17581395d4e30432881dcb0ca6ca94a","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_id":"get-port@6.1.2","_nodeVersion":"14.19.0","_npmVersion":"8.3.2","dist":{"shasum":"c1228abb67ba0e17fb346da33b15187833b9c08a","size":4219,"noattachment":false,"key":"/get-port/-/get-port-6.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-6.1.2.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/get-port_6.1.2_1645716783910_0.07686180815276322"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-02-24T15:33:07.731Z","publish_time":1645716784260,"_cnpm_publish_time":1645716784260},"6.1.1":{"name":"get-port","version":"6.1.1","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":"./index.js","engines":{"node":"^12.20.0 || ^14.13.1 || >=16.0.0"},"scripts":{"test":"xo && ava && tsd"},"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","random","preferred","chosen"],"devDependencies":{"@types/node":"^16.10.2","ava":"^3.15.0","tsd":"^0.17.0","typescript":"^4.4.3","xo":"^0.45.0"},"sideEffects":false,"types":"./index.d.ts","gitHead":"6afe540ead4e69bdf326a5c628adc8acd6db3e23","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_id":"get-port@6.1.1","_nodeVersion":"12.22.1","_npmVersion":"8.3.2","dist":{"shasum":"0ca06d9de3bfaca47d423aac897490b493f7715d","size":4222,"noattachment":false,"key":"/get-port/-/get-port-6.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-6.1.1.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/get-port_6.1.1_1645510745856_0.4216083198589682"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-02-22T06:19:13.673Z","publish_time":1645510746042,"_cnpm_publish_time":1645510746042},"6.1.0":{"name":"get-port","version":"6.1.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":"./index.js","engines":{"node":"^12.20.0 || ^14.13.1 || >=16.0.0"},"scripts":{"test":"xo && ava && tsd"},"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","random","preferred","chosen"],"devDependencies":{"@types/node":"^16.10.2","ava":"^3.15.0","tsd":"^0.17.0","typescript":"^4.4.3","xo":"^0.45.0"},"types":"./index.d.ts","gitHead":"50e24f66bc142f5197d74f180a9717425bd18133","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_id":"get-port@6.1.0","_nodeVersion":"14.17.5","_npmVersion":"8.3.2","dist":{"shasum":"dd9ba9a324ad4b35cd1b5165f4f60c0eeeec5aec","size":4216,"noattachment":false,"key":"/get-port/-/get-port-6.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-6.1.0.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/get-port_6.1.0_1645004647943_0.4407521164386605"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-02-16T09:44:51.058Z","publish_time":1645004648070,"_cnpm_publish_time":1645004648070},"6.0.0":{"name":"get-port","version":"6.0.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"https://sindresorhus.com"},"type":"module","exports":"./index.js","engines":{"node":"^12.20.0 || ^14.13.1 || >=16.0.0"},"scripts":{"test":"xo && ava && tsd"},"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","random","preferred","chosen"],"devDependencies":{"@types/node":"^16.10.2","ava":"^3.15.0","tsd":"^0.17.0","typescript":"^4.4.3","xo":"^0.45.0"},"gitHead":"3165af166a4136cd4d4390fe5daac6a18fef922a","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_id":"get-port@6.0.0","_nodeVersion":"12.22.1","_npmVersion":"7.20.3","dist":{"shasum":"eeac06c17b9d22c2949d4ce5abcc80753afe9be1","size":3888,"noattachment":false,"key":"/get-port/-/get-port-6.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-6.0.0.tgz"},"_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"directories":{},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/get-port_6.0.0_1633280764157_0.18460532539767183"},"_hasShrinkwrap":false,"publish_time":1633280764498,"_cnpm_publish_time":1633280764498},"5.1.1":{"name":"get-port","version":"5.1.1","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=8"},"scripts":{"test":"xo && ava && tsd"},"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","random","preferred","chosen"],"devDependencies":{"@types/node":"^12.12.21","ava":"^2.4.0","tsd":"^0.11.0","xo":"^0.25.3"},"gitHead":"a9b445ea0afbd75b81b7b9011c896e111e2d4aee","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_id":"get-port@5.1.1","_nodeVersion":"10.17.0","_npmVersion":"6.11.3","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"0469ed07563479de6efb986baf053dcd7d4e3193","size":3638,"noattachment":false,"key":"/get-port/-/get-port-5.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-5.1.1.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/get-port_5.1.1_1579075715831_0.16269686978445863"},"_hasShrinkwrap":false,"publish_time":1579075715951,"_cnpm_publish_time":1579075715951},"5.1.0":{"name":"get-port","version":"5.1.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"funding":"https://github.com/sponsors/sindresorhus","author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=8"},"scripts":{"test":"xo && ava && tsd"},"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","random","preferred","chosen"],"devDependencies":{"@types/node":"^12.12.21","ava":"^2.4.0","tsd":"^0.11.0","xo":"^0.25.3"},"gitHead":"0edd17a5eb7ab8a02342c9defb0f622621a03e47","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_id":"get-port@5.1.0","_nodeVersion":"10.17.0","_npmVersion":"6.13.4","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"a8f6510d0000f07d5c65653a4b0ae648fe832683","size":3567,"noattachment":false,"key":"/get-port/-/get-port-5.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-5.1.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/get-port_5.1.0_1576689542466_0.5159308509743363"},"_hasShrinkwrap":false,"publish_time":1576689542638,"_cnpm_publish_time":1576689542638},"5.0.0":{"name":"get-port","version":"5.0.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=8"},"scripts":{"test":"xo && ava && tsd"},"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","random","preferred","chosen"],"dependencies":{"type-fest":"^0.3.0"},"devDependencies":{"@types/node":"^11.13.0","ava":"^1.4.1","tsd":"^0.7.2","xo":"^0.24.0"},"gitHead":"961551fa61c7eeaa35ca9bdeae84f79d0efc196b","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_id":"get-port@5.0.0","_nodeVersion":"8.15.0","_npmVersion":"6.9.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"aa22b6b86fd926dd7884de3e23332c9f70c031a6","size":2942,"noattachment":false,"key":"/get-port/-/get-port-5.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-5.0.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/get-port_5.0.0_1554499208865_0.8680442295680235"},"_hasShrinkwrap":false,"publish_time":1554499208974,"_cnpm_publish_time":1554499208974},"4.2.0":{"name":"get-port","version":"4.2.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=6"},"scripts":{"test":"xo && ava && tsd-check"},"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","random","preferred","chosen"],"devDependencies":{"ava":"^1.2.1","pify":"^3.0.0","tsd-check":"^0.3.0","xo":"^0.24.0"},"gitHead":"95f0da2d85908b03cc6093e67e6975a21c44e7ee","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_id":"get-port@4.2.0","_nodeVersion":"10.15.1","_npmVersion":"6.8.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"e37368b1e863b7629c43c5a323625f95cf24b119","size":2258,"noattachment":false,"key":"/get-port/-/get-port-4.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-4.2.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/get-port_4.2.0_1551553781685_0.35598586354094897"},"_hasShrinkwrap":false,"publish_time":1551553781788,"_cnpm_publish_time":1551553781788},"4.1.0":{"name":"get-port","version":"4.1.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=6"},"scripts":{"test":"xo && ava"},"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","random","preferred","chosen"],"devDependencies":{"ava":"*","pify":"^3.0.0","xo":"*"},"gitHead":"4d38bead094a8b00d497f9cd9f82d0f6681ec5f7","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_id":"get-port@4.1.0","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"93eb3d5552c197497d76e9c389a6ac9920e20192","size":2056,"noattachment":false,"key":"/get-port/-/get-port-4.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-4.1.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/get-port_4.1.0_1545399724916_0.2635753253236732"},"_hasShrinkwrap":false,"publish_time":1545399725118,"_cnpm_publish_time":1545399725118},"4.0.0":{"name":"get-port","version":"4.0.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=6"},"scripts":{"test":"xo && ava"},"files":["index.js"],"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","random","preferred","chosen"],"devDependencies":{"ava":"*","pify":"^3.0.0","xo":"*"},"gitHead":"0f426261dd7d0dd2fc5df94ac74a7c81078d13c2","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_id":"get-port@4.0.0","_npmVersion":"5.6.0","_nodeVersion":"8.11.3","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"373c85960138ee20027c070e3cb08019fea29816","size":2097,"noattachment":false,"key":"/get-port/-/get-port-4.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-4.0.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/get-port_4.0.0_1532399067823_0.6716886791796908"},"_hasShrinkwrap":false,"publish_time":1532399067901,"_cnpm_publish_time":1532399067901},"3.2.0":{"name":"get-port","version":"3.2.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=4"},"scripts":{"test":"xo && ava"},"files":["index.js"],"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","rand","random","preferred","chosen"],"devDependencies":{"ava":"*","pify":"^3.0.0","xo":"*"},"gitHead":"9782a3450af88eec601360589e73f48c4c9315e8","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_id":"get-port@3.2.0","_shasum":"dd7ce7de187c06c8bf353796ac71e099f0980ebc","_from":".","_npmVersion":"2.15.11","_nodeVersion":"4.8.3","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"dd7ce7de187c06c8bf353796ac71e099f0980ebc","size":1884,"noattachment":false,"key":"/get-port/-/get-port-3.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-3.2.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/get-port-3.2.0.tgz_1503218568819_0.5053279723506421"},"directories":{},"publish_time":1503218568916,"_hasShrinkwrap":false,"_cnpm_publish_time":1503218568916},"3.1.0":{"name":"get-port","version":"3.1.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=4"},"scripts":{"test":"xo && ava"},"files":["index.js"],"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","rand","random","preferred","chosen"],"devDependencies":{"ava":"*","xo":"*"},"gitHead":"145bf20d92e6a7081926f4aa3614f6d32a233ca3","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_id":"get-port@3.1.0","_shasum":"ef01b18a84ca6486970ff99e54446141a73ffd3e","_from":".","_npmVersion":"2.15.11","_nodeVersion":"4.7.3","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"ef01b18a84ca6486970ff99e54446141a73ffd3e","size":1643,"noattachment":false,"key":"/get-port/-/get-port-3.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-3.1.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/get-port-3.1.0.tgz_1491382523193_0.27146817557513714"},"directories":{},"publish_time":1491382523422,"_hasShrinkwrap":false,"_cnpm_publish_time":1491382523422},"3.0.0":{"name":"get-port","version":"3.0.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git+https://github.com/sindresorhus/get-port.git"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=4"},"scripts":{"test":"xo && ava"},"files":["index.js"],"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","rand","random"],"devDependencies":{"ava":"*","xo":"*"},"gitHead":"6a8aed8a1e98519d960391a52c4bcb1ee6959c9e","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port#readme","_id":"get-port@3.0.0","_shasum":"03ac1c58f12b5f36667f4b705ecd29fb251df603","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.5.0","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"03ac1c58f12b5f36667f4b705ecd29fb251df603","size":1540,"noattachment":false,"key":"/get-port/-/get-port-3.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-3.0.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/get-port-3.0.0.tgz_1489221136052_0.9105297001078725"},"directories":{},"publish_time":1489221137950,"_cnpm_publish_time":1489221137950,"_hasShrinkwrap":false},"2.1.0":{"name":"get-port","version":"2.1.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"https://github.com/sindresorhus/get-port"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=0.10.0"},"scripts":{"test":"xo && ava"},"files":["index.js"],"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","rand","random"],"dependencies":{"pinkie-promise":"^2.0.0"},"devDependencies":{"ava":"*","xo":"*"},"xo":{"ignores":["test.js"]},"gitHead":"7d3e7ad55f91d258cef368e3b06c77d0a5c773ad","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port","_id":"get-port@2.1.0","_shasum":"8783f9dcebd1eea495a334e1a6a251e78887ab1a","_from":".","_npmVersion":"2.14.7","_nodeVersion":"4.2.1","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"8783f9dcebd1eea495a334e1a6a251e78887ab1a","size":1594,"noattachment":false,"key":"/get-port/-/get-port-2.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-2.1.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"publish_time":1447528273933,"_cnpm_publish_time":1447528273933,"_hasShrinkwrap":false},"2.0.0":{"name":"get-port","version":"2.0.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"https://github.com/sindresorhus/get-port"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"sindresorhus.com"},"engines":{"node":">=0.10.0"},"scripts":{"test":"xo && ava"},"files":["index.js"],"keywords":["port","find","finder","portfinder","free","available","connection","connect","open","net","tcp","scan","rand","random"],"dependencies":{"pinkie-promise":"^1.0.0"},"devDependencies":{"ava":"*","xo":"*"},"xo":{"ignores":["test.js"]},"gitHead":"859572330892e8036ad5440f2cf773e35065419d","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port","_id":"get-port@2.0.0","_shasum":"9c4332f98de621a251c16dbb6d93bd5ceb2c5da8","_from":".","_npmVersion":"2.14.7","_nodeVersion":"4.2.1","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"dist":{"shasum":"9c4332f98de621a251c16dbb6d93bd5ceb2c5da8","size":1594,"noattachment":false,"key":"/get-port/-/get-port-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-2.0.0.tgz"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"publish_time":1445870266972,"_cnpm_publish_time":1445870266972,"_hasShrinkwrap":false},"1.0.0":{"name":"get-port","version":"1.0.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git://github.com/sindresorhus/get-port"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"http://sindresorhus.com"},"bin":{"get-port":"cli.js"},"engines":{"node":">=0.10.0"},"scripts":{"test":"mocha"},"files":["index.js","cli.js"],"keywords":["port","find","free","available","connection","connect","open","net","tcp","scan","rand","random"],"devDependencies":{"mocha":"*"},"gitHead":"4082b710391f904a54e5b052b7713d767ba4fd87","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port","_id":"get-port@1.0.0","_shasum":"6920003b5ae418213938fb8c1e4343b4cbe63deb","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"maintainers":[{"name":"sindresorhus","email":""}],"dist":{"shasum":"6920003b5ae418213938fb8c1e4343b4cbe63deb","size":1048,"noattachment":false,"key":"/get-port/-/get-port-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-1.0.0.tgz"},"directories":{},"publish_time":1407949114674,"_cnpm_publish_time":1407949114674,"_hasShrinkwrap":false},"0.1.0":{"name":"get-port","version":"0.1.0","description":"Get an available port","license":"MIT","repository":{"type":"git","url":"git://github.com/sindresorhus/get-port"},"bin":{"get-port":"cli.js"},"author":{"name":"Sindre Sorhus","email":"sindresorhus@gmail.com","url":"http://sindresorhus.com"},"engines":{"node":">=0.10.0"},"scripts":{"test":"mocha"},"files":["index.js","cli.js"],"keywords":["port","find","free","available","connection","connect","open","net","tcp","scan","rand","random"],"devDependencies":{"mocha":"*"},"bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"homepage":"https://github.com/sindresorhus/get-port","_id":"get-port@0.1.0","dist":{"shasum":"3d778c6555e8902fc194d8fe2b8712d66c5ca0af","size":1087,"noattachment":false,"key":"/get-port/-/get-port-0.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/get-port/download/get-port-0.1.0.tgz"},"_from":".","_npmVersion":"1.4.6","_npmUser":{"name":"sindresorhus","email":"sindresorhus@gmail.com"},"maintainers":[{"name":"sindresorhus","email":""}],"directories":{},"publish_time":1396796939586,"_cnpm_publish_time":1396796939586,"_hasShrinkwrap":false}},"readme":"# get-port\n\n> Get an available [TCP port](https://en.wikipedia.org/wiki/Port_(computer_networking)).\n\n## Install\n\n```sh\nnpm install get-port\n```\n\n## Usage\n\n```js\nimport getPort from 'get-port';\n\nconsole.log(await getPort());\n//=> 51402\n```\n\nPass in a preferred port:\n\n```js\nimport getPort from 'get-port';\n\nconsole.log(await getPort({port: 3000}));\n// Will use 3000 if available, otherwise fall back to a random port\n```\n\nPass in an array of preferred ports:\n\n```js\nimport getPort from 'get-port';\n\nconsole.log(await getPort({port: [3000, 3001, 3002]}));\n// Will use any element in the preferred ports array if available, otherwise fall back to a random port\n```\n\nUse the `portNumbers()` helper in case you need a port in a certain range:\n\n```js\nimport getPort, {portNumbers} from 'get-port';\n\nconsole.log(await getPort({port: portNumbers(3000, 3100)}));\n// Will use any port from 3000 to 3100, otherwise fall back to a random port\n```\n\n## API\n\n### getPort(options?)\n\nReturns a `Promise` for a port number.\n\n#### options\n\nType: `object`\n\n##### port\n\nType: `number | Iterable<number>`\n\nA preferred port or an iterable of preferred ports to use.\n\n##### exclude\n\nType: `Iterable<number>`\n\nPorts that should not be returned.\n\nYou could, for example, pass it the return value of the `portNumbers()` function.\n\n##### reserve\n\nType: `boolean`\\\nDefault: `false`\n\nReserve the port so that it's locked for the lifetime of the process instead of the default 15-30 seconds.\n\nThis is useful when there is a long delay between getting the port and actually binding to it, such as in long-running test suites.\n\nReserved ports are locked globally by port number for the current process, even if you looked them up with a specific `host` or `ipv6Only` option.\n\nUse [`clearLockedPorts()`](#clearlockedports) to release reserved ports.\n\n##### host\n\nType: `string`\n\nThe host on which port resolution should be performed. Can be either an IPv4 or IPv6 address.\n\nBy default, it checks availability on all local addresses defined in [OS network interfaces](https://nodejs.org/api/os.html#os_os_networkinterfaces). If this option is set, it will only check the given host.\n\n### portNumbers(from, to)\n\nGenerate port numbers in the given range `from`...`to`.\n\nReturns an `Iterable` for port numbers in the given range.\n\n```js\nimport getPort, {portNumbers} from 'get-port';\n\nconsole.log(await getPort({port: portNumbers(3000, 3100)}));\n// Will use any port from 3000 to 3100, otherwise fall back to a random port\n```\n\n#### from\n\nType: `number`\n\nThe first port of the range. Must be in the range `1024`...`65535`.\n\n#### to\n\nType: `number`\n\nThe last port of the range. Must be in the range `1024`...`65535` and must be greater than `from`.\n\n### clearLockedPorts()\n\nClear the internal cache of locked ports, including any ports locked with the [`reserve`](#reserve) option.\n\nThis can be useful when you want the results to be unaffected by previous calls.\n\nPlease note that clearing the cache removes protection against [in-process race conditions](#beware).\n\n```js\nimport getPort, {clearLockedPorts} from 'get-port';\n\nconst port = [3000, 3001, 3002];\n\nconsole.log(await getPort({port}));\n//=> 3000\n\nconsole.log(await getPort({port}));\n//=> 3001\n\n// If you want the results to be unaffected by previous calls, clear the cache.\nclearLockedPorts();\n\nconsole.log(await getPort({port}));\n//=> 3000\n```\n\n## Beware\n\nThere is a very tiny chance of a race condition if another process starts using the same port number as you in between the time you get the port number and you actually start using it.\n\n**In-process race conditions** (such as when running parallel Jest tests) are completely eliminated by a lightweight locking mechanism where returned ports are held for 15-30 seconds before being eligible for reuse. If the delay between getting a port and binding to it may exceed this window (for example, in long-running test suites), use the [`reserve`](#reserve) option to lock the port for the lifetime of the process.\n\n**Multi-process race conditions** are extremely rare and will result in an immediate `EADDRINUSE` error when attempting to bind to the port, allowing your application to retry.\n\n## Related\n\n- [get-port-cli](https://github.com/sindresorhus/get-port-cli) - CLI for this module\n","_attachments":{},"homepage":"https://github.com/sindresorhus/get-port#readme","bugs":{"url":"https://github.com/sindresorhus/get-port/issues"},"license":"MIT"}