{"_id":"syncrepl","_rev":"13-a71ce335ed413d017a892ba371be89a4","name":"syncrepl","description":"REPL that makes doing async calls easier","dist-tags":{"latest":"0.8.26"},"versions":{"0.2.0":{"name":"syncrepl","description":"REPL that makes doing async calls easier","keywords":["sync","repl"],"version":"0.2.0","homepage":"http://github.com/wadey/node-syncrepl","repository":{"type":"git","url":"git://github.com/wadey/node-syncrepl.git"},"author":{"name":"Wade Simmons","email":"wade@wades.im","url":"http://wades.im/mons"},"engines":{"node":"< 0.3.0"},"main":"./syncrepl","bin":{"node-syncrepl":"bin/node-syncrepl"},"licenses":[{"type":"MIT","url":"http://github.com/wadey/node-syncrepl/raw/master/LICENSE"}],"_id":"syncrepl@0.2.0","_engineSupported":false,"_npmVersion":"0.3.15","_nodeVersion":"v0.4.2","directories":{"bin":"./bin"},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"e79116ee8e52ca0b7b8425c76aadc22f6d6d1725","tarball":"https://registry.npmjs.org/syncrepl/-/syncrepl-0.2.0.tgz","integrity":"sha512-1ksrLwADl296ABSVUvPXnEBA/tVP4cEZgzMa3oEeoxkKdluXUIZBIXgRKvJYSq3wZyONp7qZSBdxaibKQtq3Tg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDg18DW6wsbm5zC7ScTdfpKHojY0ABsmarg5cQgk8onQQIgJx0WbZu8rjti3KyvdE+rG+yhwfUk9kkOZG5yrBjsRzU="}]}},"0.4.0":{"name":"syncrepl","description":"REPL that makes doing async calls easier","keywords":["sync","repl"],"version":"0.4.0","homepage":"http://github.com/wadey/node-syncrepl","repository":{"type":"git","url":"git://github.com/wadey/node-syncrepl.git"},"author":{"name":"Wade Simmons","email":"wade@wades.im","url":"http://wades.im/mons"},"engines":{"node":">= 0.4.0"},"main":"./syncrepl","bin":{"node-syncrepl":"bin/node-syncrepl"},"licenses":[{"type":"MIT","url":"http://github.com/wadey/node-syncrepl/raw/master/LICENSE"}],"_id":"syncrepl@0.4.0","_engineSupported":true,"_npmVersion":"0.3.15","_nodeVersion":"v0.4.2","directories":{"bin":"./bin"},"files":[""],"_defaultsLoaded":true,"dist":{"shasum":"cb6bf7f8103e586f296eb7f745b6419987b63c51","tarball":"https://registry.npmjs.org/syncrepl/-/syncrepl-0.4.0.tgz","integrity":"sha512-3jFqpYZ6lkUSwppacM/Np9a7IPlqs8uJbq9BGLX2o81993AJxDCj7oGzdbNppvuDFc+QYOpH7tN3LmN+A7xn3g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIANqopNbBD/r/fegulfQch0fzQKTndWPDEd5kcnyHYyXAiEAvtZeA4NdytbEwd4brQ0cXly3qh9l5FRcijkU8A8iBjU="}]}},"0.4.1":{"name":"syncrepl","description":"REPL that makes doing async calls easier","keywords":["sync","repl"],"version":"0.4.1","homepage":"http://github.com/wadey/node-syncrepl","repository":{"type":"git","url":"http://github.com/wadey/node-syncrepl.git"},"author":{"name":"Wade Simmons","email":"wade@wades.im","url":"http://wades.im/mons"},"engines":{"node":">= 0.4.0"},"main":"./syncrepl","bin":{"node-syncrepl":"bin/node-syncrepl"},"licenses":[{"type":"MIT","url":"http://github.com/wadey/node-syncrepl/raw/master/LICENSE"}],"readme":"# node-syncrepl\n\nCalling asynchronous functions from the node REPL can be annoying at best. This\nmodule is an attempt at adding some sugar to make this a lot easier.\n\n## Installation\n\nThere are versions available for both Node v0.2 and v0.4.\n\n    npm install syncrepl\n\n## Usage\n\nTo run from the command line:\n\n    node-syncrepl\n\nYou can also use syncrepl just like you use the built-in `repl` module for node.\nJust replace `require('repl')` with `require('syncrepl')`.\n\n## Showcase example\n\nFirst, an example that makes use of all of the features:\n\n    > require('child_process').exec('uptime', sync.stdout.stderr)\n    '12:16  up 9 days, 10:42, 17 users, load averages: 1.22 1.58 1.61\\n'\n    > stdout\n    '12:16  up 9 days, 10:42, 17 users, load averages: 1.22 1.58 1.61\\n'\n    > stderr\n    ''\n\n## The `sync` helper\n\nThe syncrepl module acts exactly like the standard node REPL until you make use\nof the special `sync` helper. The sync helper will return a callback, and the\nREPL will wait until this callback fires.\n\nIt is important to note that the sync helper assumes that the first argument to\nthe callback is an error. If an error is present, it will show the stack trace\ninstead of capturing it to any variables.\n\nThe first way to use the sync helper is to call it like a function. If you\ndon't pass any arguments it will display the first non-error argument and store it to `_`\n\n    > setTimeout(function(callback) { callback(null, 42) }, 1000, sync())\n    42\n    > _\n    42\n\nIf an error occurs:\n\n    > setTimeout(function(callback) { callback(new Error('err')) }, 1000, sync())\n    Error: err\n        at Object.<anonymous> ([object Context]:1:43)\n        at Object._onTimeout (timers.js:152:16)\n        at Timer.callback (timers.js:62:39)\n\nYou can pass string arguments into the sync function and it will assign the non-error arguments to those variables in the REPL.\n\n    > setTimeout(function(callback) { callback(null, 1, 2, 3) }, 1000, sync('a', 'b', 'c'))\n    1\n    > [a, b, c]\n    [ 1, 2, 3 ]\n\nTo make this easier to type quickly in the REPL, magic attributes are assigned to the sync helper. These magic attributes also support chaining. `sync('a', 'b', 'c')` is equivalent to  `sync.a.b.c`.\n\n    > setTimeout(function(callback) { callback(null, 1, 2, 3) }, 1000, sync.a.b.c)\n    1\n    > [a, b, c]\n    [ 1, 2, 3 ]\n\n## More examples\n\nAn example using Mikeal's [request](https://github.com/mikeal/request) module:\n\n    > require('request').get({uri: 'http://nodejs.org/'}, sync.res.body)\n    [Request Object]\n    > res.statusCode\n    200\n    > body.length\n    8230\n","_id":"syncrepl@0.4.1","dist":{"shasum":"f8a22fa220be1cb2b56e51f71d939fec10b37ac4","tarball":"https://registry.npmjs.org/syncrepl/-/syncrepl-0.4.1.tgz","integrity":"sha512-WCT7vLoG7tq7FQEVpgk8dIFo8/Y7sj9ypTTJHgI1OiSAwhSm00IyE1Wht1iAPRooC5tfGbqemlJLEm8JoOf7Fw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDC2cSl9BWCZEr/1+JdExBCCqWewslGpgkyVNKebxd86AiEAt8kxpDTYLqkjANFbhSpKi/bD2M1mcUzVqNTKNBXQlrs="}]},"maintainers":[{"name":"wadey","email":"wade@wades.im"}]},"0.8.25":{"name":"syncrepl","description":"REPL that makes doing async calls easier","keywords":["sync","repl"],"version":"0.8.25","homepage":"http://github.com/wadey/node-syncrepl","repository":{"type":"git","url":"http://github.com/wadey/node-syncrepl.git"},"author":{"name":"Wade Simmons","email":"wade@wades.im","url":"http://wades.im/mons"},"engines":{"node":">= 0.8.0"},"main":"./syncrepl","bin":{"node-syncrepl":"bin/node-syncrepl"},"licenses":[{"type":"MIT","url":"http://github.com/wadey/node-syncrepl/raw/master/LICENSE"}],"readme":"# node-syncrepl\n\nCalling asynchronous functions from the node REPL can be annoying at best. This\nmodule is an attempt at adding some sugar to make this a lot easier.\n\n## Installation\n\nThere are versions available for both Node v0.2 and v0.4.\n\n    npm install syncrepl\n\n## Usage\n\nTo run from the command line:\n\n    node-syncrepl\n\nYou can also use syncrepl just like you use the built-in `repl` module for node.\nJust replace `require('repl')` with `require('syncrepl')`.\n\n## Showcase example\n\nFirst, an example that makes use of all of the features:\n\n    > require('child_process').exec('uptime', sync.stdout.stderr)\n    '12:16  up 9 days, 10:42, 17 users, load averages: 1.22 1.58 1.61\\n'\n    > stdout\n    '12:16  up 9 days, 10:42, 17 users, load averages: 1.22 1.58 1.61\\n'\n    > stderr\n    ''\n\n## The `sync` helper\n\nThe syncrepl module acts exactly like the standard node REPL until you make use\nof the special `sync` helper. The sync helper will return a callback, and the\nREPL will wait until this callback fires.\n\nIt is important to note that the sync helper assumes that the first argument to\nthe callback is an error. If an error is present, it will show the stack trace\ninstead of capturing it to any variables.\n\nThe first way to use the sync helper is to call it like a function. If you\ndon't pass any arguments it will display the first non-error argument and store it to `_`\n\n    > setTimeout(function(callback) { callback(null, 42) }, 1000, sync())\n    42\n    > _\n    42\n\nIf an error occurs:\n\n    > setTimeout(function(callback) { callback(new Error('err')) }, 1000, sync())\n    Error: err\n        at Object.<anonymous> ([object Context]:1:43)\n        at Object._onTimeout (timers.js:152:16)\n        at Timer.callback (timers.js:62:39)\n\nYou can pass string arguments into the sync function and it will assign the non-error arguments to those variables in the REPL.\n\n    > setTimeout(function(callback) { callback(null, 1, 2, 3) }, 1000, sync('a', 'b', 'c'))\n    1\n    > [a, b, c]\n    [ 1, 2, 3 ]\n\nTo make this easier to type quickly in the REPL, magic attributes are assigned to the sync helper. These magic attributes also support chaining. `sync('a', 'b', 'c')` is equivalent to  `sync.a.b.c`.\n\n    > setTimeout(function(callback) { callback(null, 1, 2, 3) }, 1000, sync.a.b.c)\n    1\n    > [a, b, c]\n    [ 1, 2, 3 ]\n\n## More examples\n\nAn example using Mikeal's [request](https://github.com/mikeal/request) module:\n\n    > require('request').get({uri: 'http://nodejs.org/'}, sync.res.body)\n    [Request Object]\n    > res.statusCode\n    200\n    > body.length\n    8230\n","_id":"syncrepl@0.8.25","dist":{"shasum":"f33b1593daefd1f0d406f4b8aa2f9ca816912af2","tarball":"https://registry.npmjs.org/syncrepl/-/syncrepl-0.8.25.tgz","integrity":"sha512-BtsFtA9Fytzjis5ijrbq+i+2Ch/51Uj/dM68KOv4hM4cAT7SVwrm3dclNOW6nhHhA1QrE2GXAGheCDYq++thUA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHzRvwiQO4za7f9VlzzSP3enJnlOKHSSK6IZfiMBspX7AiArHNBwXIvl9yzJ3pN92SjignDjKTwM/+FP4gd72rV9FA=="}]},"maintainers":[{"name":"wadey","email":"wade@wades.im"}]},"0.8.26":{"name":"syncrepl","description":"REPL that makes doing async calls easier","keywords":["sync","repl"],"version":"0.8.26","homepage":"http://github.com/wadey/node-syncrepl","repository":{"type":"git","url":"http://github.com/wadey/node-syncrepl.git"},"author":{"name":"Wade Simmons","email":"wade@wades.im","url":"http://wades.im/mons"},"engines":{"node":">= 0.8.0"},"main":"./syncrepl","bin":{"node-syncrepl":"bin/node-syncrepl"},"licenses":[{"type":"MIT","url":"http://github.com/wadey/node-syncrepl/raw/master/LICENSE"}],"readme":"# node-syncrepl\n\nCalling asynchronous functions from the node REPL can be annoying at best. This\nmodule is an attempt at adding some sugar to make this a lot easier.\n\n## Installation\n\nThere are versions available for both Node v0.2 and v0.4.\n\n    npm install syncrepl\n\n## Usage\n\nTo run from the command line:\n\n    node-syncrepl\n\nYou can also use syncrepl just like you use the built-in `repl` module for node.\nJust replace `require('repl')` with `require('syncrepl')`.\n\n## Showcase example\n\nFirst, an example that makes use of all of the features:\n\n    > require('child_process').exec('uptime', sync.stdout.stderr)\n    '12:16  up 9 days, 10:42, 17 users, load averages: 1.22 1.58 1.61\\n'\n    > stdout\n    '12:16  up 9 days, 10:42, 17 users, load averages: 1.22 1.58 1.61\\n'\n    > stderr\n    ''\n\n## The `sync` helper\n\nThe syncrepl module acts exactly like the standard node REPL until you make use\nof the special `sync` helper. The sync helper will return a callback, and the\nREPL will wait until this callback fires.\n\nIt is important to note that the sync helper assumes that the first argument to\nthe callback is an error. If an error is present, it will show the stack trace\ninstead of capturing it to any variables.\n\nThe first way to use the sync helper is to call it like a function. If you\ndon't pass any arguments it will display the first non-error argument and store it to `_`\n\n    > setTimeout(function(callback) { callback(null, 42) }, 1000, sync())\n    42\n    > _\n    42\n\nIf an error occurs:\n\n    > setTimeout(function(callback) { callback(new Error('err')) }, 1000, sync())\n    Error: err\n        at Object.<anonymous> ([object Context]:1:43)\n        at Object._onTimeout (timers.js:152:16)\n        at Timer.callback (timers.js:62:39)\n\nYou can pass string arguments into the sync function and it will assign the non-error arguments to those variables in the REPL.\n\n    > setTimeout(function(callback) { callback(null, 1, 2, 3) }, 1000, sync('a', 'b', 'c'))\n    1\n    > [a, b, c]\n    [ 1, 2, 3 ]\n\nTo make this easier to type quickly in the REPL, magic attributes are assigned to the sync helper. These magic attributes also support chaining. `sync('a', 'b', 'c')` is equivalent to  `sync.a.b.c`.\n\n    > setTimeout(function(callback) { callback(null, 1, 2, 3) }, 1000, sync.a.b.c)\n    1\n    > [a, b, c]\n    [ 1, 2, 3 ]\n\n## More examples\n\nAn example using Mikeal's [request](https://github.com/mikeal/request) module:\n\n    > require('request').get({uri: 'http://nodejs.org/'}, sync.res.body)\n    [Request Object]\n    > res.statusCode\n    200\n    > body.length\n    8230\n","_id":"syncrepl@0.8.26","dist":{"shasum":"047b9033271cc5c7e601a633930c2f73d206641c","tarball":"https://registry.npmjs.org/syncrepl/-/syncrepl-0.8.26.tgz","integrity":"sha512-VXqlhiRUt6CT2/un2xRxk+RvJEpPxoU/Sdtsv2YQH3nm3F2sQg5iAhi7U2iRBxgO+VHjSQBI8Xtt8SjNGwEX3Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICCHagpqkP+tsreuw1qwo5IvyPsY2I1OYI42k5XcnitdAiAuZbn7mnULec6/f/VWuxHD796DYPlt8OzgyX/AF6vgyA=="}]},"maintainers":[{"name":"wadey","email":"wade@wades.im"}]}},"maintainers":[{"name":"wadey","email":"wade@wades.im"}],"time":{"modified":"2022-06-27T03:13:51.566Z","created":"2011-03-10T19:43:03.034Z","0.2.0":"2011-03-10T19:43:03.326Z","0.4.0":"2011-03-10T19:43:19.688Z","0.4.1":"2013-07-12T19:04:48.855Z","0.8.25":"2013-07-12T20:35:38.267Z","0.8.26":"2013-07-12T20:39:13.260Z"},"author":{"name":"Wade Simmons","email":"wade@wades.im","url":"http://wades.im/mons"},"repository":{"type":"git","url":"http://github.com/wadey/node-syncrepl.git"}}