{"_id":"@aantron/repromise","_rev":"4-cae4252508be41b3230dee44282500fb","name":"@aantron/repromise","dist-tags":{"latest":"0.6.1"},"versions":{"0.5.0":{"name":"@aantron/repromise","version":"0.5.0","description":"Type-safe JS promises for ReasonML","homepage":"https://github.com/aantron/repromise#readme","license":"MIT","repository":{"type":"git","url":"git+https://github.com/aantron/repromise.git"},"bugs":{"url":"https://github.com/aantron/repromise/issues"},"author":{"name":"Anton Bachin","email":"antonbachin@yahoo.com","url":"https://github.com/aantron"},"peerDependencies":{"bs-platform":">= 2.1.0"},"scripts":{"build":"bsb -make-world","watch":"bsb -w -make-world","clean":"bsb -clean-world"},"files":["src/js/repromise.rei","src/js/repromise.re","bsconfig.json"],"gitHead":"e90be0b23d878125cddca5cd95cf60820f8c5e43","_id":"@aantron/repromise@0.5.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"aantron","email":"antonbachin@yahoo.com"},"dist":{"integrity":"sha512-2pCggOf81mBNijo/CTJpLo/zVd9lSvbRpjJJup7m9lYY6htbS4tsvB3QBpRa30em5RctRV3c3Q0RmdnvbC4mxw==","shasum":"8faa460dc5148c452ffd80a2aed71c15889c7297","tarball":"https://registry.npmjs.org/@aantron/repromise/-/repromise-0.5.0.tgz","fileCount":6,"unpackedSize":11392,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbSkRDCRA9TVsSAnZWagAAu/8P/A+d5xBN+ez5Q28Jabif\np97I8Nqwxd6koOPDVkjnGqUgxZtWjoDkjxbte3F2Nsb6EoOXRvw6Pw9QR4bV\nv1Dtb3lrgonMnFHOPyTbds/rNepk8jV1xgMDTQWy7uaGsGTh5X+9AAjnYUy7\nlBmmh9czkBmeb3Pk5H6TT8XN41amqL0MP0hIqLUZxf8R8yR6nZ/UDbrHHJRa\n2LQhda0Ci35s7zy/bcnJ4TcAorgKQoilth0C95nxMeKqydiexk/lzUsfQiuu\nuj1R2z58bumn12+DQl2wcqz/yw9etWDhVZzjXEjYS24spyVPXM1TOZoAmMFo\n9ZTgis8l+DBx22IhrhbWOl+UqXcIgghmqUKZloAz3R/svDgqopTYKDA7+zpC\nuv/mxlUl1T41SZEe5lBWzFDC50jpg2JfpUJ4dY8KbHPQDAXLpLvyHOIkuwA8\ng3mxREBUJEuwGxdEjexViIi+4v83O335xeU2VM4lyyKlBb+JcfPucrEIoygO\n/ESVs92TnefJxaigGhVYNPPyoKBYV8B7QOZdpBVg7rosfUgIequprXXTDcNf\nca5tM++KDZq5dAsY6UgEfm3T5JgKbnGV97UzxRZMMBisx/tRFZsW/Bs9Dgin\ncMhEim/tTfUejcSpBj0Ekbrf6TrdXfu9CdSjAwHZ7uRPAKjSCGC9cYFnxJ/A\nCJLN\r\n=YlnB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDQPNZz5B9yKNWdn8KGoG/NWFiPo5MwAigHsNaBCXdqlQIhALCOupm9qqTYphB9lCSeLT7BcP2geNUveG6JWlAZeW/T"}]},"maintainers":[{"name":"aantron","email":"antonbachin@yahoo.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/repromise_0.5.0_1531593795527_0.06414705029876777"},"_hasShrinkwrap":false,"deprecated":"Renamed to reason-promise"},"0.6.0":{"name":"@aantron/repromise","version":"0.6.0","description":"Type-safe JS promises for ReasonML","homepage":"https://aantron.github.io/repromise","license":"MIT","repository":{"type":"git","url":"git+https://github.com/aantron/repromise.git"},"bugs":{"url":"https://github.com/aantron/repromise/issues"},"author":{"name":"Anton Bachin","email":"antonbachin@yahoo.com","url":"https://github.com/aantron"},"peerDependencies":{"bs-platform":">= 3.0.0"},"scripts":{"build":"bsb -make-world","watch":"bsb -w -make-world","clean":"bsb -clean-world"},"files":["src/js/repromise.rei","src/js/repromise.re","bsconfig.json"],"gitHead":"de1e010275132d757b9bd721490591029ea4a93d","_id":"@aantron/repromise@0.6.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"aantron","email":"antonbachin@yahoo.com"},"dist":{"integrity":"sha512-nxNUWKQQhRJKmsExKi2qyZUryvpEz07H17fEhRaZC3wXkxCtjcdx9j5LMnV0+anbU+EyG/X+UnfATReerBZgMA==","shasum":"45bea66e593b7e0f968bc0fd03f0b6578003e698","tarball":"https://registry.npmjs.org/@aantron/repromise/-/repromise-0.6.0.tgz","fileCount":6,"unpackedSize":11752,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbWk2TCRA9TVsSAnZWagAAQy0P/ReA/yYPfNhA8XzLMP0e\nZgGHU5fiYBZKjJv5nOAMS+l4uz5MgmW3PkjIGjunXEqQeK6h140B0SEXZXfk\nYj55DVGmlVOjxv9v9yOSkXOSz35UC517Ir7p+/8WYiKD6P45cpxSJkndrlv4\n5fcxjsUrScAMZBYcyfqg0gv4mafyTZYmbV70+/I3EnnBEazfbXo8fqHOAin6\n0Jd+VG12Rh12UlJG+C6aIajp6bzKsp7wvmY2kNIFasXMKhJr+ctt8YkVuYvC\n9iDZd8LHR6fhI3VkKSeDZlJmVO+lzS6WjeLKEnjn/vmrfuDIs3eMHJqsRp0E\nRebFDqQr1vXwhn3EuRnSvpEqAUteDwl2nBD751ixYE8aks7SnmZglF5D6pwr\nTX6lhAWatnn66J882HgFnpeni1qMjuSDaIQAiXlb7xx07ounDME51Kluh/FS\nCkodSNnrraD3ejY/KMa6AZ5Q473I78IRFsAqaGkdJMT53rRwV6p+5LAAVgyY\n3nqFVmuRVZvHQqXVy71JbtfJnnWGE59Krs9A9vpazbWmdweF8tZiAiLWbtAQ\ngMgvwA7xEXbVXOYKPfJSlyKXhRaKxbuSEVKjkqmYVdChLyRyCl0ialdkwhPK\nnZn6fCFmvptHDSAhvcIP7CKo2huTWHENYD74etv1O2nMcEAT4qkV0/yxIds/\nq4Qc\r\n=ETMo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBDJg+8ehmYM3LEplSBNs9fwrry6lJnEtUW1eJNrWzOOAiEA9dD7vTirwOOyhUPIMXx8XjW28oqQ8NbkBuGY5HFQDMI="}]},"maintainers":[{"name":"aantron","email":"antonbachin@yahoo.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/repromise_0.6.0_1532644755244_0.6994327415480288"},"_hasShrinkwrap":false,"deprecated":"Renamed to reason-promise"},"0.6.1":{"name":"@aantron/repromise","version":"0.6.1","description":"Type-safe JS promises for ReasonML","keywords":["BuckleScript","reason","promise","async"],"homepage":"https://aantron.github.io/repromise","license":"MIT","repository":{"type":"git","url":"git+https://github.com/aantron/repromise.git"},"bugs":{"url":"https://github.com/aantron/repromise/issues"},"author":{"name":"Anton Bachin","email":"antonbachin@yahoo.com","url":"https://github.com/aantron"},"peerDependencies":{"bs-platform":">= 3.0.0"},"devDependencies":{"bs-platform":">= 3.0.0"},"scripts":{"build":"bsb -make-world","watch":"bsb -w -make-world","clean":"bsb -clean-world","test":"bsb -make-world && node lib/js/test/test_main.js","benchmark":"bsb -make-world && node lib/js/test/js/benchmark.js"},"gitHead":"01a8a6992252094196e3f9af4682754fb646daea","_id":"@aantron/repromise@0.6.1","_npmVersion":"6.4.1","_nodeVersion":"8.12.0","_npmUser":{"name":"aantron","email":"antonbachin@yahoo.com"},"dist":{"integrity":"sha512-dHWAWTlpPQCZcN9sCOzljOcMCD7ipQgLE1NOA3CszUxS3FKCl7muave235AX/waV5V6KqRFscg0iQVz2phZTNA==","shasum":"5ad99cba57f5a4a88783b833ef2a3d2d9dfdba2f","tarball":"https://registry.npmjs.org/@aantron/repromise/-/repromise-0.6.1.tgz","fileCount":6,"unpackedSize":11935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdKB8nCRA9TVsSAnZWagAAud4QAIf1jJcb+evgeV7ry92y\nfDrYcF6tMnO1rcuJAv0VRMx/pkzoPkiFwUBb/a2gVeMuq+R2sEIPtCqI0CEg\num1Pn2dxlmXrCydiGMOsHCfBO+3tGvF2WDWQ3zWyBlpFTKGizrcEJ/5NG/xw\nl0aMDQT7fSijzDY+SkimdV132DEEZyIdvgUU7x4aVwHpAiMoQVWiKGYPUADq\ntb63O1OwmOwbXsPg7ONTzNyvidL4rBAxji7SzcDCDRMcSynBDWPGsQY+u+a0\npvZ8XC5Z9M9Hn/cZTULLwqmDy512todJshjBLyhhcPLxpdl0/kwrzjChiJ2O\nBXAZ2UitS5664ieEejfXVtew4NN5Zt8k/XcLU8oXynhgaiMQW1tUwr6uWCyh\ngVU79NwIcMvrhJLK007/d6IIAF0S1c6r/q9n/MghklVFetCiVQyHnadmm7LL\nStOVBzNboOW1+HUMRTquqeizvm7UKFLTybKszJ5C3rfxNXxOIXqa7bY8CoPi\nTi7x7tN3mkctvoUEJQVbxCtajj501MJHSzcCKIXglaqutJjfFXw9H0kvPWN6\nkBH9QV/Z7XdUkzO0RtC7UITFNBrCGldyxFl4kqKuFpGGmexlCHEQs7AW1lEe\n7iXEq5L8E2E74vb7aXC/IwHyd4CVChZ6Hg8SiOtxavlKGN8uKxpuZrljnbvj\nndLX\r\n=IT0g\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIECVmhgLax0oUz1vySIZLe3gBFdbQKXxS9/2arSGwgvkAiEAwaIgsTl7tODBLEYT0DxFd0XV0at2VBDrPqAP+9PZ100="}]},"maintainers":[{"name":"aantron","email":"antonbachin@yahoo.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/repromise_0.6.1_1562910502705_0.7603989434273912"},"_hasShrinkwrap":false,"deprecated":"Renamed to reason-promise"}},"time":{"created":"2018-07-14T18:43:15.276Z","0.5.0":"2018-07-14T18:43:15.597Z","modified":"2022-04-04T10:55:12.249Z","0.6.0":"2018-07-26T22:39:15.325Z","0.6.1":"2019-07-12T05:48:22.859Z"},"maintainers":[{"name":"aantron","email":"antonbachin@yahoo.com"}],"description":"Type-safe JS promises for ReasonML","homepage":"https://aantron.github.io/repromise","repository":{"type":"git","url":"git+https://github.com/aantron/repromise.git"},"author":{"name":"Anton Bachin","email":"antonbachin@yahoo.com","url":"https://github.com/aantron"},"bugs":{"url":"https://github.com/aantron/repromise/issues"},"license":"MIT","readme":"# Repromise &nbsp;&nbsp; [![Version 0.6.1][npm-img]][npm] [![Travis status][travis-img]][travis]\n\n[npm-img]: https://img.shields.io/npm/v/@aantron/repromise.svg\n[npm]: https://www.npmjs.com/package/@aantron/repromise\n[travis]: https://travis-ci.org/aantron/repromise/branches\n[travis-img]: https://img.shields.io/travis/aantron/repromise/master.svg?label=travis\n\nRepromise is a binding to JS promises, with:\n\n- **Interop** &mdash; each Repromise [is a JS promise][representation], so JS libraries that return promises already return Repromises, and existing JS tooling should work.\n- **Type safety** &mdash; Repromises nest, and don't [\"collapse\"][broken] like JS promises.\n- **Explicit errors** &mdash; no baked-in `reject` or exception handling, so you can choose how to handle errors.\n- **Minimal code** &mdash; the compiled `repromise.js` compresses to about 1K.\n- **Native support** &mdash; Repromise also has a [pure-Reason implementation][native], which compiles to native code.\n\n<br/>\n\n```ocaml\nlet (p, resolve_p) = Repromise.make();\n\np\n|> Repromise.map(s => s ++ \", world!\")\n|> Repromise.wait(print_endline);\n\nresolve_p(\"Hello\");\n\n/* Prints \"Hello, world!\" */\n```\n\n<br/>\n\n## Installing\n\n```\nnpm install bs-platform\nnpm install @aantron/repromise\n```\n\nAdd `@aantron/repromise` to your `bsconfig.json`:\n\n```json\n{\n  \"bs-dependencies\": [\n    \"@aantron/repromise\"\n  ]\n}\n```\n\n<br/>\n\n## Sample projects\n\nWe have a couple repos that show how to depend on Repromise and get started with it:\n\n- [Minimal project that prints `\"Hello, world!\"`.][example-bsb]\n- [Minimal binding to a JS library, `node-fetch`.][example-binding]\n\n<br/>\n\n## Docs\n\n...are [online][docs]!\n\nTo begin, we recommend looking at the [`\"Hello, world!\"` project][example-bsb], and then reading the [API docs][api]. Starting from [`wait`][Repromise.wait], each function has examples. You can paste them into the `\"Hello, world!\"` project to play around with Repromise.\n\nThe [Design FAQ][design] gives some background about Repromise.\n\nTo learn how to write bindings, we suggest starting with the [`node-fetch` project][example-binding], then reading the [Interop docs][interop], and perhaps the [rejectable API docs][rejectable].\n\n<br/>\n\n## Roadmap\n\n- [ ] Release [native implementation][native].\n- [ ] Helpers for converting `Repromise.Rejectable.t` to `Belt.Result.t`.\n- [ ] Smarter [async exception handling][onUnhandledException].\n\n<br/>\n\n## Contact\n\nPlease don't hesitate to [open an issue][issue], or come [bug us on Discord][discord]. All questions, feedback, and [bikeshedding][bikeshedding] are welcome :)\n\nRepromise is at a pretty early stage of development, and we can change just about everything.\n\n[example-bsb]: https://github.com/aantron/repromise-example-bsb#readme\n[example-binding]: https://github.com/aantron/repromise-example-binding#readme\n[native]: https://github.com/aantron/repromise/blob/master/src/native/repromise.re\n[broken]: https://aantron.github.io/repromise/docs/DesignFAQ#why-are-js-promises-not-type-safe\n[rejectable]: https://aantron.github.io/repromise/docs/RejectableAPI\n[design]: https://aantron.github.io/repromise/docs/DesignFAQ\n[Repromise.wait]: https://aantron.github.io/repromise/docs/API#wait\n[api]: https://aantron.github.io/repromise/docs/API\n[docs]: https://aantron.github.io/repromise\n[interop]: https://aantron.github.io/repromise/docs/Interop\n[issue]: https://github.com/aantron/repromise/issues/new\n[discord]: https://discordapp.com/invite/reasonml\n[representation]: https://aantron.github.io/repromise/docs/Interop#representation\n[onUnhandledException]: https://aantron.github.io/repromise/docs/API#onunhandledexception\n[bikeshedding]: https://github.com/aantron/repromise/issues/22\n","readmeFilename":"README.md","keywords":["BuckleScript","reason","promise","async"]}