{"_id":"klaw-sync","_rev":"4207240","name":"klaw-sync","description":"Recursive, synchronous, and fast file system walker","dist-tags":{"latest":"7.0.0"},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"time":{"modified":"2026-03-04T17:03:57.000Z","created":"2017-01-16T10:29:34.787Z","7.0.0":"2025-03-19T18:56:54.158Z","6.0.0":"2018-09-23T15:55:41.531Z","5.0.0":"2018-09-06T06:21:39.970Z","4.0.0":"2018-04-30T07:30:08.581Z","3.0.2":"2017-10-22T05:57:32.800Z","3.0.1":"2017-10-22T05:53:02.993Z","3.0.0":"2017-08-06T21:24:30.443Z","2.1.0":"2017-04-26T03:15:09.793Z","2.0.0":"2017-04-24T00:11:55.917Z","1.1.2":"2017-02-17T23:17:22.660Z","1.1.1":"2017-02-05T09:11:47.303Z","1.1.0":"2017-01-26T03:34:34.366Z","1.0.2":"2017-01-17T11:37:32.104Z","1.0.1":"2017-01-16T10:35:27.476Z","1.0.0":"2017-01-16T10:29:34.787Z"},"users":{"finnhvman":true,"shanewholloway":true},"author":{"name":"Mani Maghsoudlou"},"repository":{"type":"git","url":"git+https://github.com/manidlou/node-klaw-sync.git"},"versions":{"7.0.0":{"name":"klaw-sync","version":"7.0.0","description":"Recursive, synchronous, and fast file system walker","main":"klaw-sync.js","repository":{"type":"git","url":"git+https://github.com/manidlou/node-klaw-sync.git"},"keywords":["fs","walk","walker","walk-sync","klaw","readdir-sync"],"author":{"name":"Mani Maghsoudlou"},"license":"MIT","bugs":{"url":"https://github.com/manidlou/node-klaw-sync/issues"},"homepage":"https://github.com/manidlou/node-klaw-sync#readme","dependencies":{"graceful-fs":"^4.1.11","memfs":"^4.17.0"},"devDependencies":{"benchmark":"^2.1.4","fs-extra":"^5.0.0","mkp":"^1.0.1","mocha":"^5.1.1","standard":"^11.0.1","walk-sync":"^2.0.2"},"standard":{"env":["mocha"]},"scripts":{"lint":"standard","lint:fix":"standard --fix","unit":"mocha","test":"npm run lint && npm run unit","benchmark":"node ./benchmark/bm.js"},"_id":"klaw-sync@7.0.0","gitHead":"56215e299b58ea394975f2b713130131ca0def15","_nodeVersion":"20.12.1","_npmVersion":"10.5.0","dist":{"shasum":"edb757fa7860e6ea3f2cec8a4e410a2d54dc259b","size":4538,"noattachment":false,"key":"/klaw-sync/-/klaw-sync-7.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/klaw-sync/download/klaw-sync-7.0.0.tgz"},"_npmUser":{"name":"manidlou","email":"manidlou@gmail.com"},"directories":{},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/klaw-sync_7.0.0_1742410613845_0.6650120560221591"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2025-03-19T18:56:54.158Z","publish_time":1742410614158,"_source_registry_name":"default","_cnpm_publish_time":1742410614158},"6.0.0":{"name":"klaw-sync","version":"6.0.0","description":"Recursive, synchronous, and fast file system walker","main":"klaw-sync.js","repository":{"type":"git","url":"git+https://github.com/manidlou/node-klaw-sync.git"},"keywords":["fs","walk","walker","walk-sync","klaw","readdir-sync"],"author":{"name":"Mani Maghsoudlou"},"license":"MIT","bugs":{"url":"https://github.com/manidlou/node-klaw-sync/issues"},"homepage":"https://github.com/manidlou/node-klaw-sync#readme","dependencies":{"graceful-fs":"^4.1.11"},"devDependencies":{"benchmark":"^2.1.4","fs-extra":"^5.0.0","memory-fs":"^0.4.1","mkp":"^1.0.1","mocha":"^5.1.1","standard":"^11.0.1","walk-sync":"^0.3.3"},"standard":{"env":["mocha"]},"scripts":{"lint":"standard","unit":"mocha","test":"npm run lint && npm run unit","benchmark":"node ./benchmark/bm.js"},"gitHead":"cab813f8a9df1a10330802c9a56d856d4868b044","_id":"klaw-sync@6.0.0","_npmVersion":"6.4.1","_nodeVersion":"10.9.0","_npmUser":{"name":"manidlou","email":"manidlou@gmail.com"},"dist":{"shasum":"1fd2cfd56ebb6250181114f0a581167099c2b28c","size":4330,"noattachment":false,"key":"/klaw-sync/-/klaw-sync-6.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/klaw-sync/download/klaw-sync-6.0.0.tgz"},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/klaw-sync_6.0.0_1537718141401_0.8576057938100381"},"_hasShrinkwrap":false,"publish_time":1537718141531,"_cnpm_publish_time":1537718141531},"5.0.0":{"name":"klaw-sync","version":"5.0.0","description":"Recursive, synchronous, and fast file system walker","main":"klaw-sync.js","repository":{"type":"git","url":"git+https://github.com/manidlou/node-klaw-sync.git"},"keywords":["fs","walk","walker","walk-sync","klaw","readdir-sync"],"author":{"name":"Mani Maghsoudlou"},"license":"MIT","bugs":{"url":"https://github.com/manidlou/node-klaw-sync/issues"},"homepage":"https://github.com/manidlou/node-klaw-sync#readme","dependencies":{"graceful-fs":"^4.1.11"},"devDependencies":{"benchmark":"^2.1.4","fs-extra":"^5.0.0","memory-fs":"^0.4.1","mkp":"^1.0.1","mocha":"^5.1.1","standard":"^11.0.1","walk-sync":"^0.3.3"},"standard":{"env":["mocha"]},"scripts":{"lint":"standard","unit":"mocha","test":"npm run lint && npm run unit","benchmark":"node ./benchmark/bm.js"},"gitHead":"6e3500d485d51c462132880e780ae4d0db07ce0e","_id":"klaw-sync@5.0.0","_npmVersion":"6.4.1","_nodeVersion":"10.9.0","_npmUser":{"name":"manidlou","email":"manidlou@gmail.com"},"dist":{"shasum":"b8db1249f96a82751c311ee8a626a319db119904","size":4101,"noattachment":false,"key":"/klaw-sync/-/klaw-sync-5.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/klaw-sync/download/klaw-sync-5.0.0.tgz"},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/klaw-sync_5.0.0_1536214899709_0.7009992884725926"},"_hasShrinkwrap":false,"publish_time":1536214899970,"_cnpm_publish_time":1536214899970},"4.0.0":{"name":"klaw-sync","version":"4.0.0","description":"Recursive, synchronous, and fast file system walker","main":"klaw-sync.js","repository":{"type":"git","url":"git+https://github.com/manidlou/node-klaw-sync.git"},"keywords":["fs","walk","walker","walk-sync","klaw","readdir-sync"],"author":{"name":"Mani Maghsoudlou"},"license":"MIT","bugs":{"url":"https://github.com/manidlou/node-klaw-sync/issues"},"homepage":"https://github.com/manidlou/node-klaw-sync#readme","dependencies":{"graceful-fs":"^4.1.11"},"devDependencies":{"benchmark":"^2.1.4","fs-extra":"^5.0.0","glob":"^7.1.2","memory-fs":"^0.4.1","mkp":"^1.0.1","mocha":"^5.1.1","standard":"^11.0.1","walk-sync":"^0.3.2"},"standard":{"env":["mocha"]},"scripts":{"lint":"standard","unit":"mocha","test":"npm run lint && npm run unit","benchmark":"node ./benchmark/bm.js"},"gitHead":"3597b319b94f9dd3f376a9265ee8d3b1ccc258cf","_id":"klaw-sync@4.0.0","_npmVersion":"6.0.0","_nodeVersion":"10.0.0","_npmUser":{"name":"manidlou","email":"manidlou@gmail.com"},"dist":{"shasum":"7785692ea1a320ac3dda7a6c0c22b33a30aa3b3f","size":4146,"noattachment":false,"key":"/klaw-sync/-/klaw-sync-4.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/klaw-sync/download/klaw-sync-4.0.0.tgz"},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/klaw-sync_4.0.0_1525073408515_0.5122407027531981"},"_hasShrinkwrap":false,"publish_time":1525073408581,"_cnpm_publish_time":1525073408581},"3.0.2":{"name":"klaw-sync","version":"3.0.2","description":"Recursive, synchronous, and fast file system walker","main":"klaw-sync.js","repository":{"type":"git","url":"git+https://github.com/manidlou/node-klaw-sync.git"},"keywords":["fs","walk","walker","walk-sync","klaw","readdir-sync"],"author":{"name":"Mani Maghsoudlou"},"license":"MIT","bugs":{"url":"https://github.com/manidlou/node-klaw-sync/issues"},"homepage":"https://github.com/manidlou/node-klaw-sync#readme","dependencies":{"graceful-fs":"^4.1.11"},"devDependencies":{"benchmark":"^2.1.4","fs-extra":"^1.0.0","glob":"^7.1.2","minimist":"^1.2.0","mocha":"^3.5.0","standard":"^8.6.0","walk-sync":"^0.3.2"},"standard":{"env":["mocha"]},"scripts":{"lint":"standard","unit":"mocha","test":"npm run lint && npm run unit","benchmark":"node ./benchmark/bm.js"},"gitHead":"a19685974c09c7a084711a3876db20c36ad9ec3c","_id":"klaw-sync@3.0.2","_npmVersion":"5.5.1","_nodeVersion":"8.7.0","_npmUser":{"name":"manidlou","email":"manidlou@gmail.com"},"dist":{"shasum":"bf3a5ca463af5aec007201dbe8be7088ef29d067","size":4009,"noattachment":false,"key":"/klaw-sync/-/klaw-sync-3.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/klaw-sync/download/klaw-sync-3.0.2.tgz"},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/klaw-sync-3.0.2.tgz_1508651852677_0.9408545203041285"},"directories":{},"publish_time":1508651852800,"_hasShrinkwrap":false,"_cnpm_publish_time":1508651852800},"3.0.1":{"name":"klaw-sync","version":"3.0.1","description":"Recursive, synchronous, and fast file system walker","main":"klaw-sync.js","repository":{"type":"git","url":"git+https://github.com/manidlou/node-klaw-sync.git"},"keywords":["fs","walk","walker","walk-sync","klaw","readdir-sync"],"author":{"name":"Mani Maghsoudlou"},"license":"MIT","bugs":{"url":"https://github.com/manidlou/node-klaw-sync/issues"},"homepage":"https://github.com/manidlou/node-klaw-sync#readme","dependencies":{"graceful-fs":"^4.1.11"},"devDependencies":{"benchmark":"^2.1.4","fs-extra":"^1.0.0","glob":"^7.1.2","minimist":"^1.2.0","mocha":"^3.5.0","standard":"^8.6.0","walk-sync":"^0.3.2"},"standard":{"env":["mocha"]},"scripts":{"lint":"standard","unit":"mocha","test":"npm run lint && npm run unit","benchmark":"node ./benchmark/bm.js"},"gitHead":"f4eb1bb7bbd96b8817bd10955e1464ebdd5d7a5b","_id":"klaw-sync@3.0.1","_npmVersion":"5.5.1","_nodeVersion":"8.7.0","_npmUser":{"name":"manidlou","email":"manidlou@gmail.com"},"dist":{"shasum":"7a00a532dadb5bc872eea1278f36ffa22c0ee4b2","size":3984,"noattachment":false,"key":"/klaw-sync/-/klaw-sync-3.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/klaw-sync/download/klaw-sync-3.0.1.tgz"},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/klaw-sync-3.0.1.tgz_1508651582751_0.09547418914735317"},"directories":{},"publish_time":1508651582993,"_hasShrinkwrap":false,"_cnpm_publish_time":1508651582993},"3.0.0":{"name":"klaw-sync","version":"3.0.0","description":"Recursive, synchronous, and fast file system walker","main":"klaw-sync.js","repository":{"type":"git","url":"git+https://github.com/manidlou/node-klaw-sync.git"},"keywords":["fs","walk","walker","walk-sync","klaw","readdir-sync"],"author":{"name":"Mani Maghsoudlou"},"license":"MIT","bugs":{"url":"https://github.com/manidlou/node-klaw-sync/issues"},"homepage":"https://github.com/manidlou/node-klaw-sync#readme","dependencies":{"graceful-fs":"^4.1.11"},"devDependencies":{"benchmark":"^2.1.4","fs-extra":"^1.0.0","glob":"^7.1.2","minimist":"^1.2.0","mocha":"^3.5.0","standard":"^8.6.0","walk-sync":"^0.3.2"},"standard":{"env":["mocha"]},"scripts":{"lint":"standard","unit":"mocha","test":"npm run lint && npm run unit","benchmark":"node ./benchmark/bm.js"},"gitHead":"6ad7fb75b6ba76cf018c9382b26c487e1321dc20","_id":"klaw-sync@3.0.0","_npmVersion":"5.3.0","_nodeVersion":"8.2.1","_npmUser":{"name":"manidlou","email":"manidlou@gmail.com"},"dist":{"shasum":"07ff84e82e3f7c1c39dd0c9b7259db826ec998f6","size":4068,"noattachment":false,"key":"/klaw-sync/-/klaw-sync-3.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/klaw-sync/download/klaw-sync-3.0.0.tgz"},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/klaw-sync-3.0.0.tgz_1502054670294_0.8529897646512836"},"directories":{},"publish_time":1502054670443,"_cnpm_publish_time":1502054670443,"_hasShrinkwrap":false},"2.1.0":{"name":"klaw-sync","version":"2.1.0","description":"Recursive, synchronous, and fast file system walker","main":"klaw-sync.js","repository":{"type":"git","url":"git+https://github.com/manidlou/node-klaw-sync.git"},"keywords":["fs","walk","walker","walk-sync","klaw","readdir-sync"],"author":{"name":"Mani Maghsoudlou"},"license":"MIT","bugs":{"url":"https://github.com/manidlou/node-klaw-sync/issues"},"homepage":"https://github.com/manidlou/node-klaw-sync#readme","devDependencies":{"benchmark":"^2.1.4","fs-extra":"^1.0.0","glob":"^7.1.1","minimist":"^1.2.0","mocha":"^3.2.0","standard":"^8.6.0","walk-sync":"^0.3.1"},"optionalDependencies":{"graceful-fs":"^4.1.11"},"standard":{"env":["mocha"]},"scripts":{"lint":"standard","unit":"mocha","test":"npm run lint && npm run unit","benchmark":"node ./benchmark/bm.js"},"gitHead":"127a7bf9eb8eee2bdae4e1feebf684fdf046ae07","dependencies":{"graceful-fs":"^4.1.11"},"_id":"klaw-sync@2.1.0","_shasum":"3d3bcd8600e7bfdef53231c739ff053aed560e44","_from":".","_npmVersion":"4.5.0","_nodeVersion":"7.9.0","_npmUser":{"name":"manidlou","email":"manidlou@gmail.com"},"dist":{"shasum":"3d3bcd8600e7bfdef53231c739ff053aed560e44","size":3976,"noattachment":false,"key":"/klaw-sync/-/klaw-sync-2.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/klaw-sync/download/klaw-sync-2.1.0.tgz"},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/klaw-sync-2.1.0.tgz_1493176507842_0.9643424022942781"},"directories":{},"publish_time":1493176509793,"_hasShrinkwrap":false,"_cnpm_publish_time":1493176509793},"2.0.0":{"name":"klaw-sync","version":"2.0.0","description":"Recursive, synchronous, and fast file system walker","main":"klaw-sync.js","repository":{"type":"git","url":"git+https://github.com/manidlou/node-klaw-sync.git"},"keywords":["fs","walk","walker","walk-sync","klaw","readdir-sync"],"author":{"name":"Mani Maghsoudlou"},"license":"MIT","bugs":{"url":"https://github.com/manidlou/node-klaw-sync/issues"},"homepage":"https://github.com/manidlou/node-klaw-sync#readme","devDependencies":{"benchmark":"^2.1.4","fs-extra":"^1.0.0","glob":"^7.1.1","minimist":"^1.2.0","mocha":"^3.2.0","standard":"^8.6.0","walk-sync":"^0.3.1"},"optionalDependencies":{"graceful-fs":"^4.1.11"},"standard":{"env":["mocha"]},"scripts":{"lint":"standard","unit":"mocha","test":"npm run lint && npm run unit","benchmark":"node ./benchmark/bm.js"},"gitHead":"2059501cbf02743e9cf5c45065b747604da593a7","dependencies":{"graceful-fs":"^4.1.11"},"_id":"klaw-sync@2.0.0","_shasum":"dbe0f153d03f8f33ff936c06d4393ccec502c883","_from":".","_npmVersion":"4.5.0","_nodeVersion":"7.9.0","_npmUser":{"name":"manidlou","email":"manidlou@gmail.com"},"dist":{"shasum":"dbe0f153d03f8f33ff936c06d4393ccec502c883","size":3932,"noattachment":false,"key":"/klaw-sync/-/klaw-sync-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/klaw-sync/download/klaw-sync-2.0.0.tgz"},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/klaw-sync-2.0.0.tgz_1492992715695_0.8919805774930865"},"directories":{},"publish_time":1492992715917,"_hasShrinkwrap":false,"_cnpm_publish_time":1492992715917},"1.1.2":{"name":"klaw-sync","version":"1.1.2","description":"Recursive, synchronous, and fast file system walker","main":"klaw-sync.js","repository":{"type":"git","url":"git+https://github.com/manidlou/node-klaw-sync.git"},"keywords":["fs","walk","walker","walk-sync","klaw","readdir-sync"],"author":{"name":"Mani Maghsoudlou"},"license":"MIT","bugs":{"url":"https://github.com/manidlou/node-klaw-sync/issues"},"homepage":"https://github.com/manidlou/node-klaw-sync#readme","dependencies":{"micromatch":"^2.3.11","graceful-fs":"^4.1.11"},"devDependencies":{"benchmark":"^2.1.3","fs-extra":"^1.0.0","glob":"^7.1.1","minimist":"^1.2.0","mocha":"^3.2.0","standard":"^8.6.0","walk-sync":"^0.3.1"},"optionalDependencies":{"graceful-fs":"^4.1.11"},"standard":{"env":["mocha"]},"scripts":{"lint":"standard","unit":"mocha","test":"npm run lint && npm run unit","benchmark":"node ./benchmark/bm.js"},"gitHead":"01f700944dd669b1b6807d7d0a736cd03a9b4fb5","_id":"klaw-sync@1.1.2","_shasum":"b5bc67a244e261b0ea71d97e586ea0521e734a9a","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.5.0","_npmUser":{"name":"manidlou","email":"manidlou@gmail.com"},"dist":{"shasum":"b5bc67a244e261b0ea71d97e586ea0521e734a9a","size":3490,"noattachment":false,"key":"/klaw-sync/-/klaw-sync-1.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/klaw-sync/download/klaw-sync-1.1.2.tgz"},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/klaw-sync-1.1.2.tgz_1487373440774_0.44706580811180174"},"directories":{},"publish_time":1487373442660,"_cnpm_publish_time":1487373442660,"_hasShrinkwrap":false},"1.1.1":{"name":"klaw-sync","version":"1.1.1","description":"Recursive and synchronous file system walker","main":"klaw-sync.js","repository":{"type":"git","url":"git+https://github.com/manidlou/node-klaw-sync.git"},"keywords":["fs","walk","walker","walk-sync","klaw","readdir-sync"],"author":{"name":"Mani Maghsoudlou"},"license":"MIT","bugs":{"url":"https://github.com/manidlou/node-klaw-sync/issues"},"homepage":"https://github.com/manidlou/node-klaw-sync#readme","dependencies":{"micromatch":"^2.3.11","graceful-fs":"^4.1.11"},"devDependencies":{"benchmark":"^2.1.3","fs-extra":"^1.0.0","glob":"^7.1.1","minimist":"^1.2.0","mocha":"^3.2.0","standard":"^8.6.0","walk-sync":"^0.3.1"},"optionalDependencies":{"graceful-fs":"^4.1.11"},"standard":{"env":["mocha"]},"scripts":{"lint":"standard","unit":"mocha","test":"npm run lint && npm run unit","benchmark":"node ./benchmark/bm.js"},"gitHead":"e2ccf4842b17cc8ee08c52aadf575bceedaed335","_id":"klaw-sync@1.1.1","_shasum":"a9d38cf8f0df17cb696b2e099423c6de92f41273","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.5.0","_npmUser":{"name":"manidlou","email":"manidlou@gmail.com"},"dist":{"shasum":"a9d38cf8f0df17cb696b2e099423c6de92f41273","size":3407,"noattachment":false,"key":"/klaw-sync/-/klaw-sync-1.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/klaw-sync/download/klaw-sync-1.1.1.tgz"},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/klaw-sync-1.1.1.tgz_1486285905400_0.4428113589528948"},"directories":{},"publish_time":1486285907303,"_cnpm_publish_time":1486285907303,"_hasShrinkwrap":false},"1.1.0":{"name":"klaw-sync","version":"1.1.0","description":"Recursive and synchronous file system walker","main":"klaw-sync.js","repository":{"type":"git","url":"git+https://github.com/manidlou/node-klaw-sync.git"},"keywords":["fs","walk","walker","walk-sync","klaw","readdir-sync"],"author":{"name":"Mani Maghsoudlou"},"license":"MIT","bugs":{"url":"https://github.com/manidlou/node-klaw-sync/issues"},"homepage":"https://github.com/manidlou/node-klaw-sync#readme","dependencies":{"micromatch":"^2.3.11","graceful-fs":"^4.1.11"},"devDependencies":{"benchmark":"^2.1.3","fs-extra":"^1.0.0","glob":"^7.1.1","minimist":"^1.2.0","mocha":"^3.2.0","standard":"^8.6.0","walk-sync":"^0.3.1"},"optionalDependencies":{"graceful-fs":"^4.1.11"},"standard":{"env":["mocha"]},"scripts":{"lint":"standard","unit":"mocha","test":"npm run lint && npm run unit","benchmark":"node ./benchmark/bm.js"},"gitHead":"5a34abc692952fcccbf837e91fccaca00379ae33","_id":"klaw-sync@1.1.0","_shasum":"f407abe14cb347e8ada885576ad41d9a855ea4ea","_from":".","_npmVersion":"4.1.1","_nodeVersion":"7.4.0","_npmUser":{"name":"manidlou","email":"manidlou@gmail.com"},"dist":{"shasum":"f407abe14cb347e8ada885576ad41d9a855ea4ea","size":3370,"noattachment":false,"key":"/klaw-sync/-/klaw-sync-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/klaw-sync/download/klaw-sync-1.1.0.tgz"},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/klaw-sync-1.1.0.tgz_1485401674112_0.3187175439670682"},"directories":{},"publish_time":1485401674366,"_cnpm_publish_time":1485401674366,"_hasShrinkwrap":false},"1.0.2":{"name":"klaw-sync","version":"1.0.2","description":"Recursive and synchronous file system walker","main":"klaw-sync.js","repository":{"type":"git","url":"git+https://github.com/manidlou/node-klaw-sync.git"},"keywords":["fs","walk","walker","walk-sync","klaw","readdir-sync"],"author":{"name":"Mani Maghsoudlou"},"license":"MIT","bugs":{"url":"https://github.com/manidlou/node-klaw-sync/issues"},"homepage":"https://github.com/manidlou/node-klaw-sync#readme","dependencies":{"multimatch":"^2.1.0","graceful-fs":"^4.1.11"},"devDependencies":{"benchmark":"^2.1.3","fs-extra":"^1.0.0","glob":"^7.1.1","minimist":"^1.2.0","mocha":"^3.2.0","standard":"^8.6.0","walk-sync":"^0.3.1"},"optionalDependencies":{"graceful-fs":"^4.1.11"},"standard":{"env":["mocha"]},"scripts":{"lint":"standard","unit":"mocha","test":"npm run lint && npm run unit","benchmark":"node bm.js"},"gitHead":"93dfdb9bbff87c1da47139d0d2cb3fe56d04b798","_id":"klaw-sync@1.0.2","_shasum":"adabfe9dbf9bd11bdfdad6acc2c8fc8de93f5e74","_from":".","_npmVersion":"4.1.1","_nodeVersion":"7.4.0","_npmUser":{"name":"manidlou","email":"manidlou@gmail.com"},"dist":{"shasum":"adabfe9dbf9bd11bdfdad6acc2c8fc8de93f5e74","size":3229,"noattachment":false,"key":"/klaw-sync/-/klaw-sync-1.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/klaw-sync/download/klaw-sync-1.0.2.tgz"},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/klaw-sync-1.0.2.tgz_1484653051861_0.6658518344629556"},"directories":{},"publish_time":1484653052104,"_cnpm_publish_time":1484653052104,"_hasShrinkwrap":false},"1.0.1":{"name":"klaw-sync","version":"1.0.1","description":"Recursive and synchronous file system walker","main":"klaw-sync.js","repository":{"type":"git","url":"git+https://github.com/mawni/node-klaw-sync.git"},"keywords":["fs","walk","walker","walk-sync","klaw","readdir-sync"],"author":{"name":"Mani Maghsoudlou"},"license":"MIT","bugs":{"url":"https://github.com/mawni/node-klaw-sync/issues"},"homepage":"https://github.com/mawni/node-klaw-sync#readme","dependencies":{"multimatch":"^2.1.0","graceful-fs":"^4.1.11"},"devDependencies":{"benchmark":"^2.1.3","fs-extra":"^1.0.0","glob":"^7.1.1","minimist":"^1.2.0","mocha":"^3.2.0","standard":"^8.6.0","walk-sync":"^0.3.1"},"optionalDependencies":{"graceful-fs":"^4.1.11"},"standard":{"env":["mocha"]},"scripts":{"lint":"standard","unit":"mocha","test":"npm run lint && npm run unit","benchmark":"node bm.js"},"gitHead":"2ce9e21517c3a39790bd20f753a0b277ea63080c","_id":"klaw-sync@1.0.1","_shasum":"43843307841defc1853642465abbc0f31b5df834","_from":".","_npmVersion":"4.1.1","_nodeVersion":"7.4.0","_npmUser":{"name":"mawni","email":"maawni@gmail.com"},"dist":{"shasum":"43843307841defc1853642465abbc0f31b5df834","size":3225,"noattachment":false,"key":"/klaw-sync/-/klaw-sync-1.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/klaw-sync/download/klaw-sync-1.0.1.tgz"},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/klaw-sync-1.0.1.tgz_1484562927232_0.6306058038026094"},"directories":{},"publish_time":1484562927476,"_cnpm_publish_time":1484562927476,"_hasShrinkwrap":false},"1.0.0":{"name":"klaw-sync","version":"1.0.0","description":"Recursive and synchronous file system walker","main":"klaw-sync.js","repository":{"type":"git","url":"git+https://github.com/mawni/node-klaw-sync.git"},"keywords":["fs","walk","walker","walk-sync","klaw","readdir-sync"],"author":{"name":"Mani Maghsoudlou"},"license":"MIT","bugs":{"url":"https://github.com/mawni/node-klaw-sync/issues"},"homepage":"https://github.com/mawni/node-klaw-sync#readme","dependencies":{"multimatch":"^2.1.0","graceful-fs":"^4.1.11"},"devDependencies":{"benchmark":"^2.1.3","fs-extra":"^1.0.0","glob":"^7.1.1","minimist":"^1.2.0","mocha":"^3.2.0","standard":"^8.6.0","walk-sync":"^0.3.1"},"optionalDependencies":{"graceful-fs":"^4.1.11"},"standard":{"env":["mocha"]},"scripts":{"lint":"standard","unit":"mocha","test":"npm run lint && npm run unit","benchmark":"node bm.js"},"gitHead":"77d213157d2cf603f52db362dbf194004a7fa723","_id":"klaw-sync@1.0.0","_shasum":"c778c7a8ea445a307e42dff95bce98e88ce41e18","_from":".","_npmVersion":"4.1.1","_nodeVersion":"7.4.0","_npmUser":{"name":"mawni","email":"maawni@gmail.com"},"dist":{"shasum":"c778c7a8ea445a307e42dff95bce98e88ce41e18","size":3228,"noattachment":false,"key":"/klaw-sync/-/klaw-sync-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/klaw-sync/download/klaw-sync-1.0.0.tgz"},"maintainers":[{"name":"manidlou","email":"manidlou@gmail.com"},{"name":"vic3king","email":""}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/klaw-sync-1.0.0.tgz_1484562572925_0.8982397532090545"},"directories":{},"publish_time":1484562574787,"_cnpm_publish_time":1484562574787,"_hasShrinkwrap":false}},"readme":"node-klaw-sync\n==============\n\n[![npm Package](https://img.shields.io/npm/v/klaw-sync.svg?style=flat-square)](https://www.npmjs.com/package/klaw-sync)\n[![Build Status](https://travis-ci.org/manidlou/node-klaw-sync.svg?branch=master)](https://travis-ci.org/manidlou/node-klaw-sync)\n[![windows Build status](https://ci.appveyor.com/api/projects/status/braios34k6qw4h5p/branch/master?svg=true)](https://ci.appveyor.com/project/manidlou/node-klaw-sync/branch/master)\n[![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg?style=flat-square)](https://standardjs.com)\n[![Known Vulnerabilities](https://snyk.io/test/npm/klaw-sync/badge.svg?style=flat-square)](https://snyk.io/test/npm/klaw-sync)\n\n`klaw-sync` is a Node.js recursive and fast file system walker, which is the synchronous counterpart of [klaw](https://github.com/jprichardson/node-klaw). It lists all files and directories inside a directory recursively and returns an array of objects that each object has two properties: `path` and `stats`. `path` is the full path of the file or directory and `stats` is an instance of [fs.Stats](https://nodejs.org/api/fs.html#fs_class_fs_stats).\n\nInstall\n-------\n\n    npm i klaw-sync\n\nUsage\n-----\n\n### klawSync(directory[, options])\n\n- `directory` `<String>`\n- `options` `<Object>` (optional)\n  - `nodir` `<Boolean>` default: `undefined`\n    - return only files (ignore directories).\n  - `nofile` `<Boolean>` default: `undefined`\n    - return only directories (ignore files).\n  - `depthLimit`: `<Number>` default: `-1`\n    - the number of times to recurse before stopping. `-1` for unlimited.\n  - `fs`: `<Object>` default: `graceful-fs`\n    - custom `fs`, useful when mocking `fs` object.\n  - `filter` `<Function>` default: `undefined`\n    - function that gets one argument `fn({path: '', stats: {}})` and returns true to include or false to exclude the item.\n  - `traverseAll` `<Boolean>` default: `undefined`\n    - traverse all subdirectories, regardless of `filter` option. This can be useful when you have a filter function and still want to traverse all subdirectories even if your filter function doesn't pass for some directories.\n- **Return:** `<Array<Object>>` `[{path: '', stats: {}}]`\n\nExamples\n--------\n\n```js\nconst klawSync = require('klaw-sync')\n\nconst paths = klawSync('/some/dir')\n// paths = [{path: '/some/dir/dir1', stats: {}}, {path: '/some/dir/file1', stats: {}}]\n```\n\n_**catch error**_\n\n```js\nconst klawSync = require('klaw-sync')\n\nlet paths\ntry {\n  paths = klawSync('/some/dir')\n} catch (er) {\n  console.error(er)\n}\nconsole.dir(paths)\n```\n\n_**files only**_\n\n```js\nconst klawSync = require('klaw-sync')\n\nconst files = klawSync('/some/dir', {nodir: true})\n// files = [{path: '/some/dir/file1', stats: {}}, {path: '/some/dir/file2', stats: {}}]\n```\n\n_**directories only**_\n\n```js\nconst klawSync = require('klaw-sync')\n\nconst dirs = klawSync('/some/dir', {nofile: true})\n// dirs = [{path: '/some/dir/dir1', stats: {}}, {path: '/some/dir/dir2', stats: {}}]\n```\n\n_**ignore hidden directories**_\n\n\n```js\nconst path = require('path')\nconst klawSync = require('klaw-sync')\n\nconst filterFn = item => {\n  const basename = path.basename(item.path)\n  return basename === '.' || basename[0] !== '.'\n}\n\nconst paths = klawSync('/some/dir', { filter: filterFn})\n```\n\n_**filter based on stats**_\n\nHere `traverseAll` option is required since we still want to read all subdirectories even if they don't pass the `filter` function, to see if their contents do pass the `filter` function.\n\n```js\nconst klawSync = require('klaw-sync')\n\nconst refTime = new Date(2017, 3, 24).getTime()\nconst filterFn = item => item.stats.mtime.getTime() > refTime\n\nconst paths = klawSync('/some/dir', { traverseAll: true, filter: filterFn })\n```\n\nRun tests\n---------\n\nlint: `npm run lint`\n\nunit test: `npm run unit`\n\nlint & unit: `npm test`\n\nbenchmark: `npm run benchmark`\n\nPerformance compare to other similar modules\n-----------------------------------------------\n\nRunning some [benchmark](https://github.com/bestiejs/benchmark.js) tests on these modules:\n\n- `klaw-sync`\n- [walk-sync](https://github.com/joliss/node-walk-sync)\n\n(as of Jan 25, 2017) `klaw-sync` is the fastest module!\n\n##### results (tested on Ubuntu 18.04, Intel(R) Core(TM) i7-2630QM CPU @ 2.00GHz, 8 CPUs, 8g RAM, node v10.9.0)\n\n```bash\nRunning benchmark tests..\n\nroot dir length: 1110\nwalk-sync x 80.71 ops/sec ±1.42% (72 runs sampled)\nklaw-sync x 160 ops/sec ±1.17% (79 runs sampled)\nFastest is klaw-sync\n\nroot dir length: 11110\nwalk-sync x 7.55 ops/sec ±3.39% (23 runs sampled)\nklaw-sync x 14.95 ops/sec ±0.27% (40 runs sampled)\nFastest is klaw-sync\n\nroot dir length: 111110\nwalk-sync x 0.63 ops/sec ±6.92% (6 runs sampled)\nklaw-sync x 1.22 ops/sec ±0.96% (7 runs sampled)\nFastest is klaw-sync\n```\n\nContributing\n-----------\n\n1. Fork the repository\n2. Clone your forked version\n   ```bash\n   git clone https://github.com/YOUR_USERNAME/node-klaw-sync.git\n   ```\n3. Create a new branch for your changes\n   ```bash\n   git checkout -b feature/your-feature-name\n   ```\n4. Make your changes and commit them\n5. Push to your fork\n   ```bash\n   git push origin feature/your-feature-name\n   ```\n6. Create a Pull Request from your fork to the original repository\n\nBefore submitting a PR:\n- Ensure tests pass: `npm test`\n- Add tests for new features\n- Follow the existing code style\n\nLicense\n-------\n\nLicensed under MIT\n","_attachments":{},"homepage":"https://github.com/manidlou/node-klaw-sync#readme","bugs":{"url":"https://github.com/manidlou/node-klaw-sync/issues"},"license":"MIT"}