{"_id":"@anio-js-foundation/run-promises-in-parallel","_rev":"6-37c0424ea4232aa5b035513e0f26e444","name":"@anio-js-foundation/run-promises-in-parallel","dist-tags":{"latest":"1.0.0"},"versions":{"0.1.0":{"name":"@anio-js-foundation/run-promises-in-parallel","version":"0.1.0","description":"Run multiple promises in parallel.","main":"index.mjs","author":{"name":"Anio Software","email":"info@anio-software.de"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/anio-js-foundation/run-promises-in-parallel.git"},"dependencies":{"@anio-js-core-foundation/create-promise":"^1.0.1"},"_id":"@anio-js-foundation/run-promises-in-parallel@0.1.0","gitHead":"4f2ccf3b00b76e4d153c3d63343793f06fac1c0c","bugs":{"url":"https://github.com/anio-js-foundation/run-promises-in-parallel/issues"},"homepage":"https://github.com/anio-js-foundation/run-promises-in-parallel#readme","_nodeVersion":"21.6.1","_npmVersion":"10.2.4","dist":{"integrity":"sha512-VUZra0FAWqHjTW6INaf0KT1E4cydElLceqRBNNdD2o0A3Ht6G7qeKIpml8KH2NvufhE92Yfyqgy6gN4l1rMcgw==","shasum":"1c59e05f6582ae7dab111f25521964d6a1410dd5","tarball":"https://registry.npmjs.org/@anio-js-foundation/run-promises-in-parallel/-/run-promises-in-parallel-0.1.0.tgz","fileCount":8,"unpackedSize":5682,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@anio-js-foundation%2frun-promises-in-parallel@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD3bhVoaG6IhHm45R7Z4hiUfOoMX/2tw3K1eJPwtzNq1wIgFYMcOx1mCtfBCAaNFZ/1sEekRDdoK8DfQLcQRljjqSY="}]},"_npmUser":{"name":"dasdeo","email":"mark@anio.software"},"directories":{},"maintainers":[{"name":"dasdeo","email":"mark@anio.software"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/run-promises-in-parallel_0.1.0_1706522156346_0.19624980571567607"},"_hasShrinkwrap":false},"0.2.0":{"name":"@anio-js-foundation/run-promises-in-parallel","version":"0.2.0","description":"Run multiple promises in parallel.","main":"index.mjs","author":{"name":"Anio Software","email":"info@anio-software.de"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/anio-js-foundation/run-promises-in-parallel.git"},"dependencies":{"@anio-js-core-foundation/create-promise":"^1.0.1"},"_id":"@anio-js-foundation/run-promises-in-parallel@0.2.0","gitHead":"5c510df0934c063804fe7d66669ff3e18594bb3c","bugs":{"url":"https://github.com/anio-js-foundation/run-promises-in-parallel/issues"},"homepage":"https://github.com/anio-js-foundation/run-promises-in-parallel#readme","_nodeVersion":"21.6.1","_npmVersion":"10.2.4","dist":{"integrity":"sha512-6Vw22Whn4xUEjxFrgIEw1ZJ7OBL1Dj0vhlSzSxZziClGjNfoJXRTM2KQX3+d9ZThAh1D2WL/MPlFsRdmOryEiQ==","shasum":"4a981f56dee7def26103a9a3c37c0f7f13b10ebc","tarball":"https://registry.npmjs.org/@anio-js-foundation/run-promises-in-parallel/-/run-promises-in-parallel-0.2.0.tgz","fileCount":9,"unpackedSize":8429,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@anio-js-foundation%2frun-promises-in-parallel@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFoMu0fFY9QMfMFWH2NWv0iIeEILQyIudYFREbR0sjpXAiEAikUYDE0CHnW3VICxMaAL1Tg9eI01kCQ8/0wQG62wqbo="}]},"_npmUser":{"name":"dasdeo","email":"mark@anio.software"},"directories":{},"maintainers":[{"name":"dasdeo","email":"mark@anio.software"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/run-promises-in-parallel_0.2.0_1706523162264_0.7265201050200492"},"_hasShrinkwrap":false},"0.3.0":{"name":"@anio-js-foundation/run-promises-in-parallel","version":"0.3.0","description":"Run multiple promises in parallel.","main":"./dist/package.mjs","author":{"name":"Anio Software","email":"info@anio-software.de"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/anio-js-foundation/run-promises-in-parallel.git"},"dependencies":{"@anio-js-core-foundation/create-promise":"^1.0.1"},"devDependencies":{"@anio-js-foundation/bundle-package":"^2.0.0"},"scripts":{"prepare":"bundle-package ."},"_id":"@anio-js-foundation/run-promises-in-parallel@0.3.0","gitHead":"48396a5773cedfbe1560ba49ae6afe78da71c198","bugs":{"url":"https://github.com/anio-js-foundation/run-promises-in-parallel/issues"},"homepage":"https://github.com/anio-js-foundation/run-promises-in-parallel#readme","_nodeVersion":"21.6.1","_npmVersion":"10.2.4","dist":{"integrity":"sha512-AKqJpuyRGNC4sgCsiOE4pbKUGtulB3DDnlqNaq166XgQ+PB4N4NV7s8NA3+K0ynGkXLZBIWy81PBTSTIjUnNMQ==","shasum":"423e3cd1e688c7270d9b4a27156267e4eae6b486","tarball":"https://registry.npmjs.org/@anio-js-foundation/run-promises-in-parallel/-/run-promises-in-parallel-0.3.0.tgz","fileCount":10,"unpackedSize":8601,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@anio-js-foundation%2frun-promises-in-parallel@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCLdY++k8qBYio11s2QD3zgsslnH18V4UhzyjatB5DlqgIhAISG3vLyDmhbOXMX3hVhHoeiWyhU56h/NzO5GCC9vmZK"}]},"_npmUser":{"name":"dasdeo","email":"mark@anio.software"},"directories":{},"maintainers":[{"name":"dasdeo","email":"mark@anio.software"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/run-promises-in-parallel_0.3.0_1706721861060_0.6834686155416538"},"_hasShrinkwrap":false},"0.3.1":{"name":"@anio-js-foundation/run-promises-in-parallel","version":"0.3.1","description":"Run multiple promises in parallel.","main":"./dist/package.mjs","author":{"name":"Anio Software","email":"info@anio-software.de"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/anio-js-foundation/run-promises-in-parallel.git"},"dependencies":{"@anio-js-core-foundation/create-promise":"^1.0.1"},"devDependencies":{"@anio-js-foundation/bundle-package":"^2.0.1"},"scripts":{"prepare":"bundle-package ."},"_id":"@anio-js-foundation/run-promises-in-parallel@0.3.1","gitHead":"4fdbf50f865011cb40b4b0762dddb2a7af30b1cf","bugs":{"url":"https://github.com/anio-js-foundation/run-promises-in-parallel/issues"},"homepage":"https://github.com/anio-js-foundation/run-promises-in-parallel#readme","_nodeVersion":"21.6.1","_npmVersion":"10.2.4","dist":{"integrity":"sha512-zJrSBFxOIkaMX+NOTwseJ7zEAiBq+ualU2uaHyut1K4cFba6qG6odfrXAvgrcz/JnKdCnWBopZtv1TBhE2m9lg==","shasum":"3636ba57d872d8a77d3102f8bfe55a27a4bf14a5","tarball":"https://registry.npmjs.org/@anio-js-foundation/run-promises-in-parallel/-/run-promises-in-parallel-0.3.1.tgz","fileCount":3,"unpackedSize":5054,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@anio-js-foundation%2frun-promises-in-parallel@0.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA02hef93JsVzJmC0UdzHnH0pYATD4BJA2JCGPiijRD9AiBy2K6LOiZmQue+UkZELAcLZ8hFpLC4TKPl1mfPEbz8pA=="}]},"_npmUser":{"name":"dasdeo","email":"mark@anio.software"},"directories":{},"maintainers":[{"name":"dasdeo","email":"mark@anio.software"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/run-promises-in-parallel_0.3.1_1706730042786_0.6139763569123389"},"_hasShrinkwrap":false},"0.3.2":{"name":"@anio-js-foundation/run-promises-in-parallel","version":"0.3.2","description":"Run multiple promises in parallel.","main":"./dist/package.mjs","author":{"name":"Anio Software","email":"info@anio-software.de"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/anio-js-foundation/run-promises-in-parallel.git"},"devDependencies":{"@anio-js-core-foundation/create-promise":"^1.0.1","@anio-js-foundation/bundle-package":"^2.0.1"},"scripts":{"prepare":"bundle-package ."},"_id":"@anio-js-foundation/run-promises-in-parallel@0.3.2","gitHead":"bd0cff2e27f166fbb8051998368769eb17910443","bugs":{"url":"https://github.com/anio-js-foundation/run-promises-in-parallel/issues"},"homepage":"https://github.com/anio-js-foundation/run-promises-in-parallel#readme","_nodeVersion":"21.6.1","_npmVersion":"10.2.4","dist":{"integrity":"sha512-yDewlEKhgS6mhCCJ45sMH1wQW6DlvDf4HZ/Drrxb5XyaWvidANM9vTpSCkFeiAtU7CY/ysjJWrmU9xoI47sUoA==","shasum":"c2dd4fbb045dcbbcf5be02e6ca6e5757971fd4cd","tarball":"https://registry.npmjs.org/@anio-js-foundation/run-promises-in-parallel/-/run-promises-in-parallel-0.3.2.tgz","fileCount":3,"unpackedSize":5030,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@anio-js-foundation%2frun-promises-in-parallel@0.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC+eQ6aWlGZW+yHuW0j/Jb8hZtN4Y0lSSKM4oV6ct1BfAIhANTSzVFuCBQStwQbBRosa7uypBRlQbqJCXtiO6n5SFT9"}]},"_npmUser":{"name":"dasdeo","email":"mark@anio.software"},"directories":{},"maintainers":[{"name":"dasdeo","email":"mark@anio.software"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/run-promises-in-parallel_0.3.2_1706808603143_0.3736772791729679"},"_hasShrinkwrap":false},"1.0.0":{"name":"@anio-js-foundation/run-promises-in-parallel","version":"1.0.0","description":"Run multiple promises in parallel.","main":"./dist/package.mjs","author":{"name":"Anio Software","email":"info@anio.software"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/anio-js-foundation/run-promises-in-parallel.git"},"devDependencies":{"@anio-js-foundation/create-promise":"^2.0.0","@anio-software/npm-package-bundler":"^1.0.0"},"scripts":{"prepare":"npm-package-bundler ."},"_id":"@anio-js-foundation/run-promises-in-parallel@1.0.0","gitHead":"bb7570f52c9df099a17d98973f8594fdb23bc5da","bugs":{"url":"https://github.com/anio-js-foundation/run-promises-in-parallel/issues"},"homepage":"https://github.com/anio-js-foundation/run-promises-in-parallel#readme","_nodeVersion":"21.6.2","_npmVersion":"10.2.4","dist":{"integrity":"sha512-skx2D0sWMIOaGJPYw32JCK7d1oug4H1AUONPUglBowdIGdhGdrNEEE2664iABYxZvfj5kU384KiuwDNzR1gc6Q==","shasum":"df53a0907090b8cdedb81eebd9758304b7a743da","tarball":"https://registry.npmjs.org/@anio-js-foundation/run-promises-in-parallel/-/run-promises-in-parallel-1.0.0.tgz","fileCount":3,"unpackedSize":5027,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@anio-js-foundation%2frun-promises-in-parallel@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC2ykpTc8kqNAOSPEmxyo60JTV4rU8hwmV5a8F//ZfkDAIhAPgjUNtQ7ZW7pqLQ2wcfvcgpMiB8u2AU5WcjEJg8nuSO"}]},"_npmUser":{"name":"dasdeo","email":"mark@anio.software"},"directories":{},"maintainers":[{"name":"dasdeo","email":"mark@anio.software"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/run-promises-in-parallel_1.0.0_1709510762726_0.8862506198755373"},"_hasShrinkwrap":false}},"time":{"created":"2024-01-29T09:55:56.235Z","0.1.0":"2024-01-29T09:55:56.542Z","modified":"2024-03-13T13:16:05.781Z","0.2.0":"2024-01-29T10:12:42.429Z","0.3.0":"2024-01-31T17:24:21.302Z","0.3.1":"2024-01-31T19:40:42.944Z","0.3.2":"2024-02-01T17:30:03.306Z","1.0.0":"2024-03-04T00:06:02.867Z"},"maintainers":[{"email":"exory@anio.software","name":"exory2024"},{"email":"mark@anio.software","name":"dasdeo"}],"description":"Run multiple promises in parallel.","homepage":"https://github.com/anio-js-foundation/run-promises-in-parallel#readme","repository":{"type":"git","url":"git+https://github.com/anio-js-foundation/run-promises-in-parallel.git"},"author":{"name":"Anio Software","email":"info@anio.software"},"bugs":{"url":"https://github.com/anio-js-foundation/run-promises-in-parallel/issues"},"license":"MIT","readme":"# @anio-js-foundation/run-promises-in-parallel\n\nRun multiple promises in parallel, using a queue to dispatch new tasks.\n\n```js\nimport runPromisesInParallel from \"@anio-js-foundation/run-promises-in-parallel\"\n\nfunction delay(n) {\n\treturn new Promise(resolve => setTimeout(resolve, n))\n}\n\nlet queue = []\nlet tasks_done = 0\n\nfor (let i = 0; i < 25; ++i) {\n\tqueue.push(\n\t\tasync () => {\n\t\t\tawait delay(100 * Math.random())\n\n\t\t\tif (i === 15) {\n\t\t\t\tthrow new Error(\"oops\")\n\t\t\t}\n\n\t\t\treturn `task-result-${i}`\n\t\t}\n\t)\n}\n\n/**\n * results will contain a Map() with the result of each task.\n * If the task threw an error, the error will be placed instead of the return value\n * of the task.\n * \n * Run 5 promises in parallel.\n */\nlet results = await runPromisesInParallel(queue, 5)\n\nfor (let [task_id, result] of results) {\n\tconsole.log(\n\t\ttask_id, result, result === `task-result-${task_id}`\n\t)\n}\n```\n\n### Using events\n\n```js\nimport runPromisesInParallel from \"@anio-js-foundation/run-promises-in-parallel\"\n\nfunction delay(n) {\n\treturn new Promise(resolve => setTimeout(resolve, n))\n}\n\nlet queue = []\nlet tasks_done = 0\n\nfor (let i = 0; i < 25; ++i) {\n\tqueue.push(\n\t\tasync () => {\n\t\t\tawait delay(100 * Math.random())\n\n\t\t\tif (i === 15) {\n\t\t\t\tthrow new Error(\"oops\")\n\t\t\t}\n\n\t\t\treturn `task-result-${i}`\n\t\t}\n\t)\n}\n\n/**\n * results will contain a Map() with the result of each task.\n * If the task threw an error, the error will be placed instead of the return value\n * of the task.\n * \n * Run 5 promises in parallel.\n */\nlet results = await runPromisesInParallel(queue, 5, {\n\t// flag whether events should be dispatched async or not\n\t// defaults to false\n\tasync: false,\n\n\t// called when a task is about to be run\n\tonRun(task_id) {\n\t\tconsole.log(\"running task\", task_id)\n\t},\n\n\t// called when a task is done\n\tonDone(task_id, result) {\n\t\tconsole.log(\"task done\", task_id, result)\n\t}\n})\n\nfor (let [task_id, result] of results) {\n\tconsole.log(\n\t\ttask_id, result, result === `task-result-${task_id}`\n\t)\n}\n```\n","readmeFilename":"README.md"}