{"_id":"event-loop-spinner","_rev":"185047","name":"event-loop-spinner","description":"Tiny helper to prevent blocking Node.js event loop","dist-tags":{"latest":"2.2.0"},"maintainers":[{"name":"snyk-admin","email":""}],"time":{"modified":"2022-10-18T11:02:38.000Z","created":"2019-11-08T14:40:54.196Z","2.2.0":"2022-01-18T10:45:10.710Z","2.1.0":"2021-03-01T14:00:59.798Z","2.0.0":"2020-06-03T15:12:13.312Z","1.1.0":"2020-01-21T13:07:03.748Z","1.0.1":"2019-11-08T14:40:54.196Z"},"users":{},"author":{"name":"snyk.io"},"repository":{"type":"git","url":"git+https://github.com/snyk/eventloop-spinner.git"},"versions":{"2.2.0":{"name":"event-loop-spinner","version":"2.2.0","description":"Tiny helper to prevent blocking Node.js event loop","main":"dist/index.js","scripts":{"prepare":"npm run build","prepublishOnly":"npm t","test":"npm run lint && npm run test:unit","test:unit":"jest","build":"tsc","lint":"eslint 'lib/**/*.?s'","format":"prettier --write 'lib/**/*.?s' 'test/**/*.?s'"},"dependencies":{"tslib":"^2.1.0"},"devDependencies":{"@types/jest":"^26.0.20","@types/node":"^10.17.4","@typescript-eslint/eslint-plugin":"^4.15.2","@typescript-eslint/parser":"^2.6.1","eslint":"^6.6.0","eslint-config-prettier":"^8.1.0","eslint-plugin-jest":"^24.1.5","jest":"^26.0.1","prettier":"^2.0.5","ts-jest":"^26.1.0","typescript":"~4.2.2"},"repository":{"type":"git","url":"git+https://github.com/snyk/eventloop-spinner.git"},"author":{"name":"snyk.io"},"license":"MIT","types":"dist/index.d.ts","bugs":{"url":"https://github.com/snyk/eventloop-spinner/issues"},"homepage":"https://github.com/snyk/eventloop-spinner#readme","gitHead":"5261ee90c6c7c2eb88fe094ca3fdc9e44bd0e32f","_id":"event-loop-spinner@2.2.0","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"shasum":"5b9bdf1759a5d9600576260ae770446a1a16c9b0","size":3778,"noattachment":false,"key":"/event-loop-spinner/-/event-loop-spinner-2.2.0.tgz","tarball":"http://name.csiicloud.com:7001/event-loop-spinner/download/event-loop-spinner-2.2.0.tgz"},"_npmUser":{"name":"snyk-admin","email":"npmjs+snyk-admin@snyk.io"},"directories":{},"maintainers":[{"name":"snyk-admin","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/event-loop-spinner_2.2.0_1642502710504_0.1452961316248007"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-01-18T10:45:38.362Z","publish_time":1642502710710,"_cnpm_publish_time":1642502710710},"2.1.0":{"name":"event-loop-spinner","version":"2.1.0","description":"Tiny helper to prevent blocking Node.js event loop","main":"dist/index.js","scripts":{"prepare":"npm run build","prepublishOnly":"npm t","test":"npm run lint && npm run test:unit","test:unit":"jest","build":"tsc","lint":"eslint 'lib/**/*.?s'","format":"prettier --write 'lib/**/*.?s' 'test/**/*.?s'"},"dependencies":{"tslib":"^2.1.0"},"devDependencies":{"@types/jest":"^26.0.20","@types/node":"^10.17.4","@typescript-eslint/eslint-plugin":"^4.15.2","@typescript-eslint/parser":"^2.6.1","eslint":"^6.6.0","eslint-config-prettier":"^8.1.0","eslint-plugin-jest":"^24.1.5","jest":"^26.0.1","prettier":"^2.0.5","ts-jest":"^26.1.0","typescript":"~4.2.2"},"repository":{"type":"git","url":"git+https://github.com/snyk/eventloop-spinner.git"},"author":{"name":"snyk.io"},"license":"MIT","types":"dist/index.d.ts","bugs":{"url":"https://github.com/snyk/eventloop-spinner/issues"},"homepage":"https://github.com/snyk/eventloop-spinner#readme","gitHead":"221b776a8d043bbaf425eb009bc48ecaf43b6cfe","_id":"event-loop-spinner@2.1.0","_nodeVersion":"10.24.0","_npmVersion":"6.14.11","dist":{"shasum":"75f501d585105c6d57f174073b39af1b6b3a1567","size":3071,"noattachment":false,"key":"/event-loop-spinner/-/event-loop-spinner-2.1.0.tgz","tarball":"http://name.csiicloud.com:7001/event-loop-spinner/download/event-loop-spinner-2.1.0.tgz"},"_npmUser":{"name":"snyk-admin","email":"npmjs+snyk-admin@snyk.io"},"directories":{},"maintainers":[{"name":"snyk-admin","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/event-loop-spinner_2.1.0_1614607259654_0.563114502475248"},"_hasShrinkwrap":false,"publish_time":1614607259798,"_cnpm_publish_time":1614607259798},"2.0.0":{"name":"event-loop-spinner","version":"2.0.0","description":"Tiny helper to prevent blocking Node.js event loop","main":"dist/index.js","scripts":{"prepare":"npm run build","prepublishOnly":"npm t","test":"npm run lint && npm run test:unit","test:unit":"jest","build":"tsc","lint":"eslint 'lib/**/*.?s'","format":"prettier --write 'lib/**/*.?s' 'test/**/*.?s'"},"dependencies":{"tslib":"^1.10.0"},"devDependencies":{"@types/jest":"^25.2.3","@types/node":"^10.17.4","@typescript-eslint/eslint-plugin":"^2.6.1","@typescript-eslint/parser":"^2.6.1","eslint":"^6.6.0","eslint-config-prettier":"^6.5.0","eslint-plugin-jest":"^23.0.3","jest":"^26.0.1","prettier":"^2.0.5","ts-jest":"^26.1.0","typescript":"^3.7.2"},"repository":{"type":"git","url":"git+https://github.com/snyk/eventloop-spinner.git"},"author":{"name":"snyk.io"},"license":"MIT","types":"dist/index.d.ts","bugs":{"url":"https://github.com/snyk/eventloop-spinner/issues"},"homepage":"https://github.com/snyk/eventloop-spinner#readme","gitHead":"585fa507971ae1f66798c3947fd479558ffe9abf","_id":"event-loop-spinner@2.0.0","_nodeVersion":"10.21.0","_npmVersion":"6.14.4","dist":{"shasum":"3aa949264a7d80be45d6cb782ab5e97ffc87b9e1","size":3088,"noattachment":false,"key":"/event-loop-spinner/-/event-loop-spinner-2.0.0.tgz","tarball":"http://name.csiicloud.com:7001/event-loop-spinner/download/event-loop-spinner-2.0.0.tgz"},"maintainers":[{"name":"snyk-admin","email":""}],"_npmUser":{"name":"snyk-admin","email":"npmjs+snyk-admin@snyk.io"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/event-loop-spinner_2.0.0_1591197133059_0.19021694864184857"},"_hasShrinkwrap":false,"publish_time":1591197133312,"_cnpm_publish_time":1591197133312},"1.1.0":{"name":"event-loop-spinner","version":"1.1.0","description":"Tiny helper to prevent blocking Node.js event loop","main":"dist/index.js","scripts":{"prepare":"npm run build","prepublishOnly":"npm t","test":"npm run lint && npm run test:unit","test:unit":"jest","build":"tsc","lint":"eslint 'lib/**/*.?s'","format":"prettier --write 'lib/**/*.?s' 'test/**/*.?s'"},"dependencies":{"tslib":"^1.10.0"},"devDependencies":{"@types/jest":"^24.0.22","@types/node":"^10.17.4","@typescript-eslint/eslint-plugin":"^2.6.1","@typescript-eslint/parser":"^2.6.1","eslint":"^6.6.0","eslint-config-prettier":"^6.5.0","eslint-plugin-jest":"^23.0.3","jest":"^24.9.0","prettier":"^1.18.2","ts-jest":"^24.1.0","typescript":"^3.7.2"},"repository":{"type":"git","url":"git+https://github.com/snyk/eventloop-spinner.git"},"author":{"name":"snyk.io"},"license":"MIT","types":"dist/index.d.ts","bugs":{"url":"https://github.com/snyk/eventloop-spinner/issues"},"homepage":"https://github.com/snyk/eventloop-spinner#readme","gitHead":"1854218e805c53c19954cdd8dbfc26e69399d099","_id":"event-loop-spinner@1.1.0","_nodeVersion":"10.18.1","_npmVersion":"6.13.4","dist":{"shasum":"96de9c70e6e2b0b3e257b0901e25e792e3c9c8d0","size":3164,"noattachment":false,"key":"/event-loop-spinner/-/event-loop-spinner-1.1.0.tgz","tarball":"http://name.csiicloud.com:7001/event-loop-spinner/download/event-loop-spinner-1.1.0.tgz"},"maintainers":[{"name":"snyk-admin","email":""}],"_npmUser":{"name":"snyk-admin","email":"npmjs+snyk-admin@snyk.io"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/event-loop-spinner_1.1.0_1579612023579_0.13470740510425072"},"_hasShrinkwrap":false,"publish_time":1579612023748,"_cnpm_publish_time":1579612023748},"1.0.1":{"name":"event-loop-spinner","version":"1.0.1","description":"Tiny helper to prevent blocking Node.js event loop","main":"dist/index.js","scripts":{"prepare":"npm run build","prepublishOnly":"npm t","test":"npm run lint && npm run test:unit","test:unit":"jest","build":"tsc","lint":"eslint 'lib/**/*.?s'","format":"prettier --write 'lib/**/*.?s' 'test/**/*.?s'"},"dependencies":{},"devDependencies":{"@types/jest":"^24.0.22","@types/node":"^10.17.4","@typescript-eslint/eslint-plugin":"^2.6.1","@typescript-eslint/parser":"^2.6.1","eslint":"^6.6.0","eslint-config-prettier":"^6.5.0","eslint-plugin-jest":"^23.0.3","jest":"^24.9.0","prettier":"^1.18.2","ts-jest":"^24.1.0","typescript":"^3.7.2"},"repository":{"type":"git","url":"git+https://github.com/snyk/eventloop-spinner.git"},"author":{"name":"snyk.io"},"license":"MIT","types":"dist/index.d.ts","bugs":{"url":"https://github.com/snyk/eventloop-spinner/issues"},"homepage":"https://github.com/snyk/eventloop-spinner#readme","gitHead":"813737389765264d002f52d2cdaff8589867b37e","_id":"event-loop-spinner@1.0.1","_nodeVersion":"10.17.0","_npmVersion":"6.11.3","dist":{"shasum":"3efab7d945cbe107c2b8304ae5d7eed35c98968d","size":3064,"noattachment":false,"key":"/event-loop-spinner/-/event-loop-spinner-1.0.1.tgz","tarball":"http://name.csiicloud.com:7001/event-loop-spinner/download/event-loop-spinner-1.0.1.tgz"},"maintainers":[{"name":"snyk-admin","email":""}],"_npmUser":{"name":"snyk-admin","email":"npmjs+snyk-admin@snyk.io"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/event-loop-spinner_1.0.1_1573224054016_0.8360621789808795"},"_hasShrinkwrap":false,"publish_time":1573224054196,"_cnpm_publish_time":1573224054196}},"readme":"# event-loop-spinner\n\nTiny helper to prevent blocking Node.js event loop.\n\n## Example\n\n```typescript\nimport { eventLoopSpinner } from 'event-loop-spinner';\nasync function cpuIntensiveOperationHandler(hugeArray) {\n  for (const item of hugeArray) {\n    // ...\n    if (eventLoopSpinner.isStarving()) {\n      await eventLoopSpinner.spin();\n    }\n  }\n}\n```\n\n## Reading\n\n[Node.js: How even quick async functions can block the Event-Loop, starve I/O](https://snyk.io/blog/nodejs-how-even-quick-async-functions-can-block-the-event-loop-starve-io/)\n","_attachments":{},"homepage":"https://github.com/snyk/eventloop-spinner#readme","bugs":{"url":"https://github.com/snyk/eventloop-spinner/issues"},"license":"MIT"}