{"_id":"@uphold/process-manager","_rev":"31-9201f609be0e9be5a600f30e35cd9da8","name":"@uphold/process-manager","dist-tags":{"latest":"4.4.2"},"versions":{"1.0.0":{"name":"@uphold/process-manager","version":"1.0.0","keywords":["graceful","manager","process","shutdown"],"author":{"name":"Uphold"},"license":"MIT","_id":"@uphold/process-manager@1.0.0","maintainers":[{"name":"uphold","email":"opensource@uphold.com"}],"homepage":"https://github.com/uphold/process-manager","bugs":{"url":"https://github.com/uphold/process-manager/issues"},"dist":{"shasum":"a59524372e9b5b697fb5f56bac3cda75566a4268","tarball":"https://registry.npmjs.org/@uphold/process-manager/-/process-manager-1.0.0.tgz","integrity":"sha512-olwL9dmkmW7UBvgicRLhhnbxIR7cr0TEgesqyg4buZCISw+ONaUMc2xTvfSYe8y6h2qRP0K8F5zXimz+Lz16Tg==","signatures":[{"sig":"MEQCIF1ifIJhh/Nyw5+R4ZTDeBvIdOE3lfdUgX/hGfzWD2/PAiBpEnueW/cj4WajmMKqkxvp/4dqTOITgmXzZ96zFSOWzg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","_shasum":"a59524372e9b5b697fb5f56bac3cda75566a4268","engines":{"node":">=6"},"gitHead":"3b75c659359418b2ca4ca26aecf9041c652a2ba3","scripts":{"lint":"eslint index.js test","test":"jest --coverage --runInBand --verbose","version":"npm run changelog && git add -A CHANGELOG.md","changelog":"github-changelog-generator --owner=uphold --repo=process-manager --future-release=v$npm_package_version > CHANGELOG.md"},"_npmUser":{"name":"uphold","email":"opensource@uphold.com"},"pre-commit":{"run":["lint"]},"repository":{"url":"git+https://github.com/uphold/process-manager.git","type":"git"},"_npmVersion":"3.10.10","description":"A module for handling the lifecycle of a node process","directories":{},"_nodeVersion":"6.9.5","dependencies":{"co":"4.6.0","lodash":"4.17.4","bluebird":"^3.4.7","debugnyan":"1.0.0"},"devDependencies":{"jest":"^19.0.1","eslint":"^3.12.2","pre-commit":"^1.2.2","eslint-config-seegno":"^8.0.1","@uphold/github-changelog-generator":"^0.4.1"},"_npmOperationalInternal":{"tmp":"tmp/process-manager-1.0.0.tgz_1490290943630_0.8473363446537405","host":"packages-12-west.internal.npmjs.com"}},"1.0.1":{"name":"@uphold/process-manager","version":"1.0.1","keywords":["graceful","manager","process","shutdown"],"author":{"name":"Uphold"},"license":"MIT","_id":"@uphold/process-manager@1.0.1","maintainers":[{"name":"uphold-owner","email":"opensource@uphold.com"}],"homepage":"https://github.com/uphold/process-manager","bugs":{"url":"https://github.com/uphold/process-manager/issues"},"dist":{"shasum":"f69ff1723b73725b390f807db88febe23f84250e","tarball":"https://registry.npmjs.org/@uphold/process-manager/-/process-manager-1.0.1.tgz","integrity":"sha512-6iewPN1e0m1zChgOSPMV0JdWghf+7ESNWdyEefzvVBGauL/TOm/u2jLTDSPO7wt7pGQ++6jd7OD3GM85wgGLEA==","signatures":[{"sig":"MEUCIFCsj4gng6ZgCQF109pTZ9WfqriQoK2Y3995ZgypS122AiEAqgL5fybEfzCU4WCgmH0fYMOu/Otwd0cwRLly0GDEtpY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"_from":".","_shasum":"f69ff1723b73725b390f807db88febe23f84250e","engines":{"node":">=6"},"gitHead":"576313e4a43c39db711360873cee542b0b82720d","scripts":{"lint":"eslint index.js test","test":"jest --coverage --runInBand --verbose","version":"npm run changelog && git add -A CHANGELOG.md","changelog":"github-changelog-generator --owner=uphold --repo=process-manager --future-release=v$npm_package_version > CHANGELOG.md"},"_npmUser":{"name":"kurayama","email":"me@kurayama.net"},"pre-commit":{"run":["lint"]},"repository":{"url":"git+https://github.com/uphold/process-manager.git","type":"git"},"_npmVersion":"4.2.0","description":"A module for handling the lifecycle of a node process","directories":{},"_nodeVersion":"7.8.0","dependencies":{"co":"4.6.0","lodash":"4.17.4","bluebird":"^3.4.7","debugnyan":"1.0.0"},"devDependencies":{"jest":"^19.0.1","eslint":"^3.12.2","pre-commit":"^1.2.2","eslint-config-seegno":"^8.0.1","@uphold/github-changelog-generator":"^0.4.1"},"_npmOperationalInternal":{"tmp":"tmp/process-manager-1.0.1.tgz_1491411824974_0.3291005997452885","host":"packages-18-east.internal.npmjs.com"}},"2.0.0":{"name":"@uphold/process-manager","version":"2.0.0","keywords":["graceful","manager","process","shutdown"],"author":{"name":"Uphold"},"license":"MIT","_id":"@uphold/process-manager@2.0.0","maintainers":[{"name":"americas","email":"prplopes@gmail.com"},{"name":"fixe","email":"tiago.ribeiro@gmail.com"},{"name":"franciscocardoso","email":"comat8se@gmail.com"},{"name":"joaofonseca","email":"jpdf.fonseca@gmail.com"},{"name":"kurayama","email":"me@kurayama.net"},{"name":"nunofgs","email":"nunofgs@gmail.com"},{"name":"pedrobranco","email":"pedrobrancolcc@gmail.com"}],"homepage":"https://github.com/uphold/process-manager","bugs":{"url":"https://github.com/uphold/process-manager/issues"},"dist":{"shasum":"d08d5068a9fbc24b2922a880ce966be6fa47daca","tarball":"https://registry.npmjs.org/@uphold/process-manager/-/process-manager-2.0.0.tgz","fileCount":6,"integrity":"sha512-XQcxg1/0+d+ac0abpfr0di3wF7v0mx9lNsI9HD0Y8UuC0KDjQKkQ4AnFu86S6Qi2rcw1BnSEOFhASw7+gxEHhQ==","signatures":[{"sig":"MEUCIGtMHi0tnbx4OLrULJIocJmv0YBJkeNhWexnLC7ixVzxAiEA+3PP0Fqxdtz12/3o65y99fZ/oXQ7YOr9fsBac52UC1U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":106842},"engines":{"node":">=7.6"},"gitHead":"db3875c344ad4457f06961f206c9896cbaa14007","scripts":{"lint":"eslint index.js test","test":"jest --coverage --runInBand --verbose","version":"npm run changelog && git add -A CHANGELOG.md","changelog":"github-changelog-generator --owner=uphold --repo=process-manager --future-release=v$npm_package_version > CHANGELOG.md"},"_npmUser":{"name":"americas","email":"prplopes@gmail.com"},"pre-commit":{"run":["lint"]},"repository":{"url":"git+https://github.com/uphold/process-manager.git","type":"git"},"_npmVersion":"5.6.0","description":"A module for handling the lifecycle of a node process","directories":{},"_nodeVersion":"9.3.0","dependencies":{"lodash":"4.17.4","bluebird":"^3.4.7","debugnyan":"1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^19.0.1","eslint":"^3.12.2","pre-commit":"^1.2.2","eslint-config-seegno":"^8.0.1","@uphold/github-changelog-generator":"^0.4.1"},"_npmOperationalInternal":{"tmp":"tmp/process-manager_2.0.0_1520614908516_0.16892479064021382","host":"s3://npm-registry-packages"}},"2.0.1":{"name":"@uphold/process-manager","version":"2.0.1","keywords":["graceful","manager","process","shutdown"],"author":{"name":"Uphold"},"license":"MIT","_id":"@uphold/process-manager@2.0.1","maintainers":[{"name":"americas","email":"prplopes@gmail.com"},{"name":"fixe","email":"tiago.ribeiro@gmail.com"},{"name":"franciscocardoso","email":"comat8se@gmail.com"},{"name":"joaofonseca","email":"jpdf.fonseca@gmail.com"},{"name":"kurayama","email":"me@kurayama.net"},{"name":"nunofgs","email":"nunofgs@gmail.com"},{"name":"pedrobranco","email":"pedrobrancolcc@gmail.com"}],"homepage":"https://github.com/uphold/process-manager","bugs":{"url":"https://github.com/uphold/process-manager/issues"},"dist":{"shasum":"0f5659a358e134afe9dff21784f7558b2c133b7b","tarball":"https://registry.npmjs.org/@uphold/process-manager/-/process-manager-2.0.1.tgz","fileCount":6,"integrity":"sha512-+Hoob9Fhs6WxWQnGMQnL9iOah8z1gxhkXGicvICUCWWh4icK5mm56f8KSnUQAEvW5NjwCc0LJh6NnIjOfnEeTg==","signatures":[{"sig":"MEYCIQD2rDzIU702DuN4rIDu0fQYV5Bpl5himhdUbPTYzNVMwAIhANUdMxxOU7wAAVB5+fY69dwaW+NH9N75sa9ctNsCdtTv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107074,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbcrk7CRA9TVsSAnZWagAAYeYP/jKbDAzdj+47JPU5r3fi\nmz1wXVUyuT2hT4MZH8DdisxO186BCOmF1pslAvh0WK+wB5/zc9WtSc8+zgsd\n3RJdGYfFm88StJ+mF9eNBPxiMEA3P7wrQ79wNajgGK/VIA6G3RHCg5lcxAyx\nEJy4JpQY/18x2qF9qNJpFBg111PFnBuB3H4b8OM9j90ZIQXXR0OauGpADDmW\n7wFEDP1SmZQ7kLGGAH+OVbUb/Oh/8npkbFEUu3xeueGLVbbLiW1xe17F6dcq\nhYg8ar2+oJqlXWmgsku5r9UhCyYsR4n9tNuUkINhG/M1hSwgpM74EGdDCusX\nMKdU9cptGYsdK0qYFVjfoZZgGLuHV8LJKT/wKFvFy4SmpkbzZ2WHQWUT+H93\nZRML51b0+l9kNvLTMKMy6F734W+sqonMHJWJ+7RA9mHSwaIcuiKV2u41EW1f\nI5rzkVOiit6uHqtFDc8Bajuqp9O0Wr6gyJcLa0AENIRxqoJhBiFjbrBGb4AC\ng44PYFbxju0T9GGEI6NL/sgtHeeLCJQwkngIB3deEvP6TkYCD81CyRvvmXry\nhzB9L3W61O3+jHe/uHzwo9aZJoPNvQUZmHkFyIOmEYHkVcdMwYxo3BdtOixT\n5OGt68wYEOworTtaNeD2UrvTUlVfiKPX17bUpx6UiHpeROIn7zDlkGlB+us9\nBQRU\r\n=rbd+\r\n-----END PGP SIGNATURE-----\r\n"},"engines":{"node":">=7.6"},"gitHead":"6db4b52ee3d26f06ade1b900bf857ebc10d625f0","scripts":{"lint":"eslint index.js test","test":"jest --coverage --runInBand --verbose","version":"npm run changelog && git add -A CHANGELOG.md","changelog":"github-changelog-generator --owner=uphold --repo=process-manager --future-release=v$npm_package_version > CHANGELOG.md"},"_npmUser":{"name":"americas","email":"prplopes@gmail.com"},"pre-commit":{"run":["lint"]},"repository":{"url":"git+https://github.com/uphold/process-manager.git","type":"git"},"_npmVersion":"6.2.0","description":"A module for handling the lifecycle of a node process","directories":{},"_nodeVersion":"10.8.0","dependencies":{"lodash":"^4.17.10","bluebird":"^3.4.7","debugnyan":"1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^19.0.1","eslint":"^3.12.2","pre-commit":"^1.2.2","eslint-config-seegno":"^8.0.1","@uphold/github-changelog-generator":"^0.4.1"},"_npmOperationalInternal":{"tmp":"tmp/process-manager_2.0.1_1534245178905_0.4861217128403057","host":"s3://npm-registry-packages"}},"3.0.0":{"name":"@uphold/process-manager","version":"3.0.0","keywords":["graceful","manager","process","shutdown"],"author":{"name":"Uphold"},"license":"MIT","_id":"@uphold/process-manager@3.0.0","maintainers":[{"name":"satazor","email":"andremiguelcruz@msn.com"},{"name":"americas","email":"prplopes@gmail.com"},{"name":"kurayama","email":"me@kurayama.net"},{"name":"pedrobranco","email":"pedrobrancolcc@gmail.com"},{"name":"nunofgs","email":"nunofgs@gmail.com"},{"name":"fixe","email":"tiago.ribeiro@gmail.com"},{"name":"franciscocardoso","email":"comat8se@gmail.com"},{"name":"cristiano.oliveira","email":"cristiano.oliveira@uphold.com"},{"name":"ruimarinho","email":"ruipmarinho@gmail.com"}],"homepage":"https://github.com/uphold/process-manager","bugs":{"url":"https://github.com/uphold/process-manager/issues"},"dist":{"shasum":"473c605e952d37dfbdd0f78c9cf6deae2a55aceb","tarball":"https://registry.npmjs.org/@uphold/process-manager/-/process-manager-3.0.0.tgz","fileCount":6,"integrity":"sha512-vpBNTJlNcQXNmRCAn99ZkusaSqNS5B7ZfVkOliElR6gcvMfHMvJYHthLj/PsPuWPAjmdNhvA3Qq3lrEma7WFhQ==","signatures":[{"sig":"MEUCIH/wpux/p7/dt5nKnQBUU3fRG1dpiQrzo9mCWOF4UB5MAiEA5MUl2VwjH3U/6EDx+Q1O3W1BBXRmjQz3liFiiYjmMpM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":145419,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi4uENACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo/vw//a0lOVZbV/uaBtRS9JeQqNf0dVCnw69vGrlZhNKTl7HR9OhaU\r\nOXZk2FA3DgTFSe8fpeiVhFRwkFk/Kcn+G+KGuadmKtkRefarX1fvVl4UOiUt\r\ngiQRUrBh68tlz0XlIfpqzdRs56CK8Lk4YnBewjG2o5BYNMl4GBtRNawDGHbM\r\n3U9Mv/yMan7Pq1kciCXF2foXMFgUhl4XOGh5o668okXyrDptpssdhhpYxRpu\r\n+Gh9J1FKC6CjNqp4qn7MBDCgWywVXCtcsopb7d/Ivcj/TClfyfTpBYhDHx5r\r\np8UMYshvVbyz/AbP9uMYYSCW6O2avXD7BACcIvfwIIZnOBa8RVciRbeAiowX\r\nVFM++UjgDrqOptzA8/f/x9cVbTClm5lFvNeFjL8mVSy/oLfD/3f3dXsmU/AI\r\nAf8dr5uSp8pTY2ithhY+TnGz6Z0/et9BxnRKuaEgX+IX2psWbdrAv8cH0OLI\r\n19G+5g2h+JTy75HvDtc5u7H7trC4GMPeI7voYfh+VLFlNxLJfORWJsJN92F1\r\n2kP1KXFVx7Iq9RXibwoo/PF6xVih7HqQDSG7JL/LgLb3zeXBZFipgzgO4krg\r\nDkm9+hu1LyH3mH/NJLaL68OTRSHo8xmlP6t2gCJ1BWBZ4gIbFBjXIIwMMD8F\r\n9Z8kPkps16yVi3SspOxnDdG6trf0E2wVR/4=\r\n=tb1h\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"restoreMocks":true,"testEnvironment":"node"},"main":"src/index.js","engines":{"node":">=14"},"gitHead":"b018a0e5628f1abb2e85f4f5a8f9da776ba504b9","scripts":{"lint":"eslint src test","test":"jest --coverage --verbose","version":"npm run changelog && git add -A CHANGELOG.md","changelog":"echo \"$(github-changelog-generator --owner=uphold --repo=process-manager --future-release=v$npm_package_version)\n$(tail -n +2 CHANGELOG.md)\" > CHANGELOG.md"},"_npmUser":{"name":"satazor","email":"andremiguelcruz@msn.com"},"pre-commit":{"run":["lint"]},"repository":{"url":"git+https://github.com/uphold/process-manager.git","type":"git"},"_npmVersion":"8.3.1","description":"A module for handling the lifecycle of a node process","directories":{},"_nodeVersion":"16.14.0","dependencies":{"debugnyan":"^3.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.3","eslint":"~8.20.0","prettier":"^2.7.1","pre-commit":"^1.2.2","eslint-config-uphold":"^3.2.0","@uphold/github-changelog-generator":"^3.2.0"},"_npmOperationalInternal":{"tmp":"tmp/process-manager_3.0.0_1659035917072_0.38788412726630983","host":"s3://npm-registry-packages"}},"3.1.0":{"name":"@uphold/process-manager","version":"3.1.0","keywords":["graceful","manager","process","shutdown"],"author":{"name":"Uphold"},"license":"MIT","_id":"@uphold/process-manager@3.1.0","maintainers":[{"name":"fixe","email":"tiago.ribeiro@gmail.com"},{"name":"ruimarinho","email":"ruipmarinho@gmail.com"},{"name":"botatuphold","email":"bot@uphold.com"}],"homepage":"https://github.com/uphold/process-manager","bugs":{"url":"https://github.com/uphold/process-manager/issues"},"dist":{"shasum":"08681e4c3d7127e74400a5bf1be6248d936ad59d","tarball":"https://registry.npmjs.org/@uphold/process-manager/-/process-manager-3.1.0.tgz","fileCount":5,"integrity":"sha512-8HwVMG6gsflT/sR4P05NhvxFtR/0PDQ7YybM34OqtC8f9Ug7mTqZ0bdnKQRdUNAEbvUzqSTqWbxfCuHmWiZCug==","signatures":[{"sig":"MEUCIQDe8XnjjqHi89SJI0ry3QR88GwKUjXAxfk0XOmjC/8eWwIgOvwI5xZxtlqYzhs9xLWGibU0wqULX05QbCtc6CMda4c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":14111},"jest":{"restoreMocks":true,"testEnvironment":"node"},"main":"src/index.js","engines":{"node":">=14"},"gitHead":"ce34f4edfccfe8774f2a365f9bb25516c1d3b5b7","scripts":{"lint":"eslint src test","test":"jest --coverage --verbose","release":"release-it"},"_npmUser":{"name":"botatuphold","email":"bot@uphold.com"},"pre-commit":{"run":["lint"]},"repository":{"url":"git+https://github.com/uphold/process-manager.git","type":"git"},"_npmVersion":"10.8.2","description":"A module for handling the lifecycle of a node process","directories":{},"_nodeVersion":"22.8.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e","devDependencies":{"jest":"^29.6.4","eslint":"~8.20.0","prettier":"^2.7.1","pre-commit":"^1.2.2","release-it":"^17.6.0","eslint-config-uphold":"^3.2.0","@uphold/github-changelog-generator":"^3.4.0"},"_npmOperationalInternal":{"tmp":"tmp/process-manager_3.1.0_1725967151098_0.10248448570782753","host":"s3://npm-registry-packages"}},"4.0.0":{"name":"@uphold/process-manager","version":"4.0.0","keywords":["graceful","manager","process","shutdown"],"author":{"name":"Uphold"},"license":"MIT","_id":"@uphold/process-manager@4.0.0","maintainers":[{"name":"fixe","email":"tiago.ribeiro@gmail.com"},{"name":"ruimarinho","email":"ruipmarinho@gmail.com"},{"name":"botatuphold","email":"bot@uphold.com"}],"homepage":"https://github.com/uphold/process-manager","bugs":{"url":"https://github.com/uphold/process-manager/issues"},"dist":{"shasum":"5cbf5d3e8406f77f4076826d4e6c5b596f113a67","tarball":"https://registry.npmjs.org/@uphold/process-manager/-/process-manager-4.0.0.tgz","fileCount":5,"integrity":"sha512-awABSINHWZqJuA6yTn0+VSf8UQQhzzqAykkmf7EZKdIfx9i02wS6n9ao7GN+jBnGgbY9nDyKzJocczxxAk0ptA==","signatures":[{"sig":"MEUCIBTdWtPzTPsSQVwQ29/vJw56bNKX99qvFKT3Zm0Cm4+iAiEAgUReiqE7g+EhAowLChrGQXjglsdyaXkGWe7bYX8SikA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":14111},"jest":{"restoreMocks":true,"testEnvironment":"node"},"main":"src/index.js","engines":{"node":">=14"},"gitHead":"0c97f2e6ddd6afadbfe3bae9cbede26f436637fd","scripts":{"lint":"eslint src test","test":"jest --coverage --verbose","release":"release-it"},"_npmUser":{"name":"botatuphold","email":"bot@uphold.com"},"pre-commit":{"run":["lint"]},"repository":{"url":"git+https://github.com/uphold/process-manager.git","type":"git"},"_npmVersion":"10.8.2","description":"A module for handling the lifecycle of a node process","directories":{},"_nodeVersion":"22.8.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e","devDependencies":{"jest":"^29.6.4","eslint":"~8.20.0","prettier":"^2.7.1","pre-commit":"^1.2.2","release-it":"^17.6.0","eslint-config-uphold":"^3.2.0","@uphold/github-changelog-generator":"^3.4.0"},"_npmOperationalInternal":{"tmp":"tmp/process-manager_4.0.0_1725967849513_0.9777881514797369","host":"s3://npm-registry-packages"}},"4.1.0":{"name":"@uphold/process-manager","version":"4.1.0","keywords":["graceful","manager","process","shutdown"],"author":{"name":"Uphold"},"license":"MIT","_id":"@uphold/process-manager@4.1.0","maintainers":[{"name":"fixe","email":"tiago.ribeiro@gmail.com"},{"name":"ruimarinho","email":"ruipmarinho@gmail.com"},{"name":"botatuphold","email":"bot@uphold.com"}],"homepage":"https://github.com/uphold/process-manager","bugs":{"url":"https://github.com/uphold/process-manager/issues"},"dist":{"shasum":"0a70b87d67a31b615d3da6d8c8f15228832d77cf","tarball":"https://registry.npmjs.org/@uphold/process-manager/-/process-manager-4.1.0.tgz","fileCount":5,"integrity":"sha512-+fkYZcfI8dgaFodGLnYNx/kQ2qUXfqHi9FCn1WuaFIyByCOf+0y98en22u8M33/3+3eYbEva5tC0pdAN591mRw==","signatures":[{"sig":"MEQCIBrMnCmHoUA6rXmVWXFCSkZDdHI/1sf4QB9zfMf5gdhsAiBpmArGhpLs33QoL4udyn3VPpmURgBwnDxNW7EUfZ6zRw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":14264},"jest":{"restoreMocks":true,"testEnvironment":"node"},"main":"src/index.js","engines":{"node":">=14"},"gitHead":"7cf2921241a0b3f6168308936219f56d50cc0320","scripts":{"lint":"eslint src test","test":"jest --coverage --verbose","release":"release-it"},"_npmUser":{"name":"botatuphold","email":"bot@uphold.com"},"pre-commit":{"run":["lint"]},"repository":{"url":"git+https://github.com/uphold/process-manager.git","type":"git"},"_npmVersion":"10.9.0","description":"A module for handling the lifecycle of a node process","directories":{},"_nodeVersion":"22.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e","devDependencies":{"jest":"^29.6.4","eslint":"~8.20.0","prettier":"^2.7.1","pre-commit":"^1.2.2","release-it":"^17.6.0","eslint-config-uphold":"^3.2.0","@uphold/github-changelog-generator":"^3.4.0"},"_npmOperationalInternal":{"tmp":"tmp/process-manager_4.1.0_1732115554275_0.8396410496552176","host":"s3://npm-registry-packages"}},"4.2.0":{"name":"@uphold/process-manager","version":"4.2.0","keywords":["graceful","manager","process","shutdown"],"author":{"name":"Uphold"},"license":"MIT","_id":"@uphold/process-manager@4.2.0","maintainers":[{"name":"botatuphold","email":"bot@uphold.com"},{"name":"ruimarinho","email":"ruipmarinho@gmail.com"},{"name":"fixe","email":"tiago.ribeiro@gmail.com"}],"homepage":"https://github.com/uphold/process-manager","bugs":{"url":"https://github.com/uphold/process-manager/issues"},"dist":{"shasum":"3319c58925205c4ae9a19f9aad42f95ff89fd339","tarball":"https://registry.npmjs.org/@uphold/process-manager/-/process-manager-4.2.0.tgz","fileCount":5,"integrity":"sha512-twlPhvsmOqsnmvRXxJJHtvcTvD67FVFeEA5xCO+sjVJ2lHPyF+aH4HeQj3BhkCnsl3G7/228rR+AQcMTYzDQ2g==","signatures":[{"sig":"MEUCIQCKg5KigTvyQ4B5NYlr1rHk8ZklUmotHD2xrBOZrwtAgwIgT++234kr5WKV8o/OEH64dY2L5+gTh51zyT19Ncv0yGw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":14817},"jest":{"restoreMocks":true,"testEnvironment":"node"},"main":"src/index.js","engines":{"node":">=14"},"gitHead":"6d5777b24ced6594e1f16e63a5e873e89240cca7","scripts":{"lint":"eslint src test","test":"jest --coverage --verbose","release":"release-it"},"_npmUser":{"name":"botatuphold","email":"bot@uphold.com"},"pre-commit":{"run":["lint"]},"repository":{"url":"git+https://github.com/uphold/process-manager.git","type":"git"},"_npmVersion":"10.9.0","description":"A module for handling the lifecycle of a node process","directories":{},"_nodeVersion":"22.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e","devDependencies":{"jest":"^29.6.4","eslint":"~8.20.0","prettier":"^2.7.1","pre-commit":"^1.2.2","release-it":"^17.6.0","eslint-config-uphold":"^3.2.0","@uphold/github-changelog-generator":"^3.4.0"},"_npmOperationalInternal":{"tmp":"tmp/process-manager_4.2.0_1734705734068_0.5900087249648287","host":"s3://npm-registry-packages-npm-production"}},"4.2.1":{"name":"@uphold/process-manager","version":"4.2.1","keywords":["graceful","manager","process","shutdown"],"author":{"name":"Uphold"},"license":"MIT","_id":"@uphold/process-manager@4.2.1","maintainers":[{"name":"botatuphold","email":"bot@uphold.com"},{"name":"ruimarinho","email":"ruipmarinho@gmail.com"},{"name":"fixe","email":"tiago.ribeiro@gmail.com"}],"homepage":"https://github.com/uphold/process-manager","bugs":{"url":"https://github.com/uphold/process-manager/issues"},"dist":{"shasum":"85c13ed9432ce75a12f97fddade04846d42f9885","tarball":"https://registry.npmjs.org/@uphold/process-manager/-/process-manager-4.2.1.tgz","fileCount":5,"integrity":"sha512-4v5ROC+dgZzRYbc1SfhcNos1f3508E+APujkAcrsfq9hCvQC32+XkovkpG/BzuR0NQki1knOssIo9r0L22tcAQ==","signatures":[{"sig":"MEUCIFgjED0rh2ifF0NBAX6a2z2giKJ8gGutPTqScvUTD0zMAiEA+ZL9q7yuWDM0WLnDrrA693vPyOdruyw192D0irV9kEY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":15169},"jest":{"restoreMocks":true,"testEnvironment":"node"},"main":"src/index.js","engines":{"node":">=14"},"gitHead":"1119354ec9e2aa9690ca2308bd6755bb9e51e65c","scripts":{"lint":"eslint src test","test":"jest --coverage --verbose","release":"release-it"},"_npmUser":{"name":"botatuphold","email":"bot@uphold.com"},"pre-commit":{"run":["lint"]},"repository":{"url":"git+https://github.com/uphold/process-manager.git","type":"git"},"_npmVersion":"10.9.0","description":"A module for handling the lifecycle of a node process","directories":{},"_nodeVersion":"22.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e","devDependencies":{"jest":"^29.6.4","eslint":"~8.20.0","prettier":"^2.7.1","pre-commit":"^1.2.2","release-it":"^17.6.0","eslint-config-uphold":"^3.2.0","@uphold/github-changelog-generator":"^3.4.0"},"_npmOperationalInternal":{"tmp":"tmp/process-manager_4.2.1_1734710814324_0.68481410593489","host":"s3://npm-registry-packages-npm-production"}},"4.2.2":{"name":"@uphold/process-manager","version":"4.2.2","keywords":["graceful","manager","process","shutdown"],"author":{"name":"Uphold"},"license":"MIT","_id":"@uphold/process-manager@4.2.2","maintainers":[{"name":"botatuphold","email":"bot@uphold.com"},{"name":"ruimarinho","email":"ruipmarinho@gmail.com"},{"name":"fixe","email":"tiago.ribeiro@gmail.com"}],"homepage":"https://github.com/uphold/process-manager","bugs":{"url":"https://github.com/uphold/process-manager/issues"},"dist":{"shasum":"92d719e20de7342eb795877df3bccf8b16bd7166","tarball":"https://registry.npmjs.org/@uphold/process-manager/-/process-manager-4.2.2.tgz","fileCount":5,"integrity":"sha512-SndNLd1EjK7YLLcgrcE6M5HCdX/0BU9S8WxhD6LJD5vn0Bqtx0Sjkt8kVsqbyGbgPkBJBrEbMyjlHjTK0ZMSiQ==","signatures":[{"sig":"MEQCIEVNrfqhd0hyaoH1cRh/J3yQvI2hlpJNJR5wbr7Byx7/AiAtIwwGsEz98ag34X09KGkl+a4toLNBeGWMO471/pKevQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":15112},"jest":{"restoreMocks":true,"testEnvironment":"node"},"main":"src/index.js","engines":{"node":">=14"},"gitHead":"2279dd2891acf354b2ddabe2df952f79983adf61","scripts":{"lint":"eslint src test","test":"jest --coverage --verbose","release":"release-it"},"_npmUser":{"name":"botatuphold","email":"bot@uphold.com"},"pre-commit":{"run":["lint"]},"repository":{"url":"git+https://github.com/uphold/process-manager.git","type":"git"},"_npmVersion":"10.9.0","description":"A module for handling the lifecycle of a node process","directories":{},"_nodeVersion":"22.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e","devDependencies":{"jest":"^29.6.4","eslint":"~8.20.0","prettier":"^2.7.1","pre-commit":"^1.2.2","release-it":"^17.6.0","eslint-config-uphold":"^3.2.0","@uphold/github-changelog-generator":"^3.4.0"},"_npmOperationalInternal":{"tmp":"tmp/process-manager_4.2.2_1735568855654_0.4689564365505916","host":"s3://npm-registry-packages-npm-production"}},"4.3.0":{"name":"@uphold/process-manager","version":"4.3.0","keywords":["graceful","manager","process","shutdown"],"author":{"name":"Uphold"},"license":"MIT","_id":"@uphold/process-manager@4.3.0","maintainers":[{"name":"botatuphold","email":"bot@uphold.com"},{"name":"ruimarinho","email":"ruipmarinho@gmail.com"},{"name":"fixe","email":"tiago.ribeiro@gmail.com"}],"homepage":"https://github.com/uphold/process-manager","bugs":{"url":"https://github.com/uphold/process-manager/issues"},"dist":{"shasum":"0512c4c6830c4f8f6b46854f7636ec20fab5c8f4","tarball":"https://registry.npmjs.org/@uphold/process-manager/-/process-manager-4.3.0.tgz","fileCount":5,"integrity":"sha512-6/V05aWysfompNpPx/RCwtVdJnHMf9o/+udNDbiX4gbP0LLymAAOGJxw9i+issMkqvDaTkeUZ3d3o771OYM/jQ==","signatures":[{"sig":"MEUCID4GM9VmSoteIHJ2KSNtMMoSLlrEiUDmeMJo0xOk07KJAiEAg8uO02VuHmUvSPmbvBYKaUeUjkjAlxpFDtOdwUw849I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":14922},"jest":{"restoreMocks":true,"testEnvironment":"node"},"main":"src/index.js","engines":{"node":">=14"},"gitHead":"2d7f1c3e5e92e188fcfb4b7fcd772e31796ead6b","scripts":{"lint":"eslint src test","test":"jest --coverage --verbose","release":"release-it"},"_npmUser":{"name":"botatuphold","email":"bot@uphold.com"},"pre-commit":{"run":["lint"]},"repository":{"url":"git+https://github.com/uphold/process-manager.git","type":"git"},"_npmVersion":"10.9.0","description":"A module for handling the lifecycle of a node process","directories":{},"_nodeVersion":"22.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e","devDependencies":{"jest":"^29.6.4","eslint":"~8.20.0","prettier":"^2.7.1","pre-commit":"^1.2.2","release-it":"^17.6.0","eslint-config-uphold":"^3.2.0","@uphold/github-changelog-generator":"^3.4.0"},"_npmOperationalInternal":{"tmp":"tmp/process-manager_4.3.0_1735818020730_0.346130930695719","host":"s3://npm-registry-packages-npm-production"}},"4.4.0":{"name":"@uphold/process-manager","version":"4.4.0","keywords":["graceful","manager","process","shutdown"],"author":{"name":"Uphold"},"license":"MIT","_id":"@uphold/process-manager@4.4.0","maintainers":[{"name":"botatuphold","email":"bot@uphold.com"},{"name":"ruimarinho","email":"ruipmarinho@gmail.com"},{"name":"fixe","email":"tiago.ribeiro@gmail.com"}],"homepage":"https://github.com/uphold/process-manager","bugs":{"url":"https://github.com/uphold/process-manager/issues"},"dist":{"shasum":"fd4700b1681ff18c78249315902edb6025dac91c","tarball":"https://registry.npmjs.org/@uphold/process-manager/-/process-manager-4.4.0.tgz","fileCount":5,"integrity":"sha512-9oOx55by7VhTZ1KKZAZSaZYG/6clhBZ61iRcBUHdC0xWH6n24M330CKXCpWTnIlpM9Kl5ygDXUoeKTMHRPemAA==","signatures":[{"sig":"MEUCIQDHNDpANzTY9yXrj8b7NcYrYhWyra6cRc/IeVgyL/DWEAIgNAVxdftE3W74R/G6U6pYE/ZDyiNMtfxJhjKSdnEi/PA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@uphold%2fprocess-manager@4.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":15281},"main":"src/index.js","engines":{"node":">=20"},"gitHead":"0a65f3b04f57e7f282116877ff4eb16290cd7cc0","scripts":{"lint":"eslint","test":"node --test $(find test -name '*.test.js')","release":"release-it","test:coverage":"node --test --experimental-test-coverage $(find test -name '*.test.js')"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e5d2f056-9a9b-486d-99a8-7fc0ea06446a"}},"devEngines":{"runtime":{"name":"node","version":">=22.20"},"packageManager":{"name":"yarn","onFail":"warn","version":"^1.22.22"}},"pre-commit":{"run":["lint"]},"repository":{"url":"git+https://github.com/uphold/process-manager.git","type":"git"},"_npmVersion":"11.6.2","description":"A module for handling the lifecycle of a node process","directories":{},"_nodeVersion":"24.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e","devDependencies":{"eslint":"~9.39.2","prettier":"^3.7.4","release-it":"^19.2.2","@fastify/pre-commit":"^2.2.1","eslint-config-uphold":"^6.7.2","@uphold/github-changelog-generator":"^4.0.2"},"_npmOperationalInternal":{"tmp":"tmp/process-manager_4.4.0_1767625489463_0.7033837100473319","host":"s3://npm-registry-packages-npm-production"}},"4.4.1":{"name":"@uphold/process-manager","version":"4.4.1","keywords":["graceful","manager","process","shutdown"],"author":{"name":"Uphold"},"license":"MIT","_id":"@uphold/process-manager@4.4.1","maintainers":[{"name":"botatuphold","email":"bot@uphold.com"},{"name":"ruimarinho","email":"ruipmarinho@gmail.com"},{"name":"fixe","email":"tiago.ribeiro@gmail.com"}],"homepage":"https://github.com/uphold/process-manager","bugs":{"url":"https://github.com/uphold/process-manager/issues"},"dist":{"shasum":"ca7e2dfa92da909d501b1558186038a93ee01926","tarball":"https://registry.npmjs.org/@uphold/process-manager/-/process-manager-4.4.1.tgz","fileCount":5,"integrity":"sha512-Jf8ZE5SbX2g7bI8eOI8qivTxWpFYW0UFLNGU3tFNJ0oqKEQ1fVQIDpjp7tdWQWE5gcNIzo8wkOIECQzinKjuPQ==","signatures":[{"sig":"MEUCIQDZXS3SbOpfQkyVkRP/29LFnDDtPLnswFmeqU6XrNJpWQIgLFyRoB9Pg7oUaHg5Imu/wXgtwnSoieyle8BlRTegkK8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@uphold%2fprocess-manager@4.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":15281},"main":"src/index.js","engines":{"node":">=20"},"gitHead":"9c78bd4523e427ed3f45ac672d2a820300dd1698","scripts":{"lint":"eslint","test":"node --test $(find test -name '*.test.js')","release":"release-it","test:coverage":"node --test --experimental-test-coverage $(find test -name '*.test.js')"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e5d2f056-9a9b-486d-99a8-7fc0ea06446a"}},"devEngines":{"runtime":{"name":"node","version":">=22.20"},"packageManager":{"name":"yarn","onFail":"warn","version":"^1.22.22"}},"pre-commit":{"run":["lint"]},"repository":{"url":"git+https://github.com/uphold/process-manager.git","type":"git"},"_npmVersion":"11.9.0","description":"A module for handling the lifecycle of a node process","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e","devDependencies":{"eslint":"~9.39.2","prettier":"^3.7.4","release-it":"^19.2.2","@fastify/pre-commit":"^2.2.1","eslint-config-uphold":"^6.7.2","@uphold/github-changelog-generator":"^4.0.2"},"_npmOperationalInternal":{"tmp":"tmp/process-manager_4.4.1_1774635883240_0.15187343772191841","host":"s3://npm-registry-packages-npm-production"}},"4.4.2":{"name":"@uphold/process-manager","version":"4.4.2","description":"A module for handling the lifecycle of a node process","keywords":["graceful","manager","process","shutdown"],"homepage":"https://github.com/uphold/process-manager","bugs":{"url":"https://github.com/uphold/process-manager/issues"},"license":"MIT","author":{"name":"Uphold"},"main":"src/index.js","repository":{"type":"git","url":"git+https://github.com/uphold/process-manager.git"},"scripts":{"lint":"eslint","release":"release-it","test":"node --test $(find test -name '*.test.js')","test:coverage":"node --test --experimental-test-coverage $(find test -name '*.test.js')"},"publishConfig":{"access":"public"},"devDependencies":{"@fastify/pre-commit":"^2.2.1","@uphold/github-changelog-generator":"^4.0.2","eslint":"~9.39.2","eslint-config-uphold":"^6.7.2","prettier":"^3.7.4","release-it":"^19.2.2"},"engines":{"node":">=20"},"pre-commit":{"run":["lint"]},"packageManager":"yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e","devEngines":{"packageManager":{"name":"yarn","version":"^1.22.22","onFail":"warn"},"runtime":{"name":"node","version":">=22.20"}},"gitHead":"657c23ce996c2167ac9f9030d52fcc799a6ecc17","_id":"@uphold/process-manager@4.4.2","_nodeVersion":"24.14.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-ZXiG64nIZf5+miGJExrnvYCrSzt10IXFKD4viP9KkyOLKiO3e5VrPp/r6FG+OYobTeYh3OKevGFWAL2n24l71Q==","shasum":"ee33914a3fbb5a7e4619d2ca0265ffca540462e5","tarball":"https://registry.npmjs.org/@uphold/process-manager/-/process-manager-4.4.2.tgz","fileCount":5,"unpackedSize":15281,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@uphold%2fprocess-manager@4.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHzgkp++mi2F28t4+d45Hvg4dw9+Dz1qjI89vB9z4HKjAiBrEj9F8Yn/OliQKXBYOo4XgHDtiz2mHuxNflsuHBQSuA=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e5d2f056-9a9b-486d-99a8-7fc0ea06446a"}},"directories":{},"maintainers":[{"name":"botatuphold","email":"bot@uphold.com"},{"name":"ruimarinho","email":"ruipmarinho@gmail.com"},{"name":"fixe","email":"tiago.ribeiro@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/process-manager_4.4.2_1776099164903_0.9787418491700415"},"_hasShrinkwrap":false}},"time":{"created":"2017-03-23T17:42:25.611Z","modified":"2026-04-13T16:52:45.479Z","1.0.0":"2017-03-23T17:42:25.611Z","1.0.1":"2017-04-05T17:03:45.770Z","2.0.0":"2018-03-09T17:01:48.591Z","2.0.1":"2018-08-14T11:12:59.044Z","3.0.0":"2022-07-28T19:18:37.320Z","3.1.0":"2024-09-10T11:19:11.358Z","4.0.0":"2024-09-10T11:30:49.645Z","4.1.0":"2024-11-20T15:12:34.463Z","4.2.0":"2024-12-20T14:42:14.286Z","4.2.1":"2024-12-20T16:06:54.557Z","4.2.2":"2024-12-30T14:27:35.847Z","4.3.0":"2025-01-02T11:40:20.900Z","4.4.0":"2026-01-05T15:04:49.613Z","4.4.1":"2026-03-27T18:24:43.401Z","4.4.2":"2026-04-13T16:52:45.025Z"},"bugs":{"url":"https://github.com/uphold/process-manager/issues"},"author":{"name":"Uphold"},"license":"MIT","homepage":"https://github.com/uphold/process-manager","keywords":["graceful","manager","process","shutdown"],"repository":{"type":"git","url":"git+https://github.com/uphold/process-manager.git"},"description":"A module for handling the lifecycle of a node process","maintainers":[{"name":"botatuphold","email":"bot@uphold.com"},{"name":"ruimarinho","email":"ruipmarinho@gmail.com"},{"name":"fixe","email":"tiago.ribeiro@gmail.com"}],"readme":"# process-manager\n\nA node.js process manager. This package handles a process's lifecycle, from running to exiting, by handling errors and exceptions, as well as graceful shutdowns.\n\n## Status\n\n[![NPM version](https://img.shields.io/npm/v/@uphold/process-manager.svg)](https://npmjs.org/package/@uphold/process-manager)\n[![CI](https://github.com/uphold/process-manager/actions/workflows/ci.yaml/badge.svg)](https://github.com/uphold/process-manager/actions/workflows/ci.yaml)\n\n## Installation\n\nInstall the package via **yarn**:\n\n```shell\nyarn add '@uphold/process-manager'\n```\n\nOr **npm**:\n\n```shell\nnpm install '@uphold/process-manager' --save\n```\n\n## Usage\n\nTo use `process-manager` simply require it in your project.\n\n```javascript\nconst processManager = require('process-manager');\n\n// async/await.\nprocessManager.once(async () => {\n  await foo.bar();\n});\n\n// Promise.\nprocessManager.once(\n  () =>\n    new Promise((resolve, reject) => {\n      foo.bar((err) => {\n        if (err) return reject();\n\n        return resolve();\n      });\n    })\n);\n```\n\nAnd it will now manage your node process.\n\n### loop(fn, [options])\n\nThis lifecycle is used to loop over a given function.\n\n#### Arguments (`loop`)\n\n- `fn` _(Function)_: the function to run.\n- `[options]` _(object)_: the options object.\n- `[options.interval=0]` _(integer)_: how long to wait (in miliseconds) before restarting the function.\n\n#### Example (`loop`)\n\n```javascript\nconst processManager = require('process-manager');\n\nprocessManager.loop(\n  async () => {\n    console.log(await client.getSomeInfo());\n  },\n  { interval: 600 }\n);\n```\n\nYou can also return an object with an `interval` property to override the next interval.\n\n```javascript\nconst processManager = require('process-manager');\n\nprocessManager.loop(\n  async () => {\n    console.log(await client.getSomeInfo());\n\n    return { interval: 1000 };\n  },\n  { interval: 600 }\n);\n```\n\n### on(fn)\n\nThis lifecycle is used to get a function suited for using with an event emitter. It does not exit unless something goes wrong.\n\n#### Arguments (`on`)\n\n- `fn` _(Function)_: the function to run.\n\n#### Example (`on`)\n\n```javascript\nconst processManager = require('process-manager');\n\nasync function handler(value) {\n  console.log(await client.getInfo(value));\n}\n\nclient.on('event', processManager.on(handler));\n```\n\n### once(fn)\n\nThis lifecycle is used to a given function and exit.\n\n#### Arguments (`once`)\n\n- `fn` _(Function)_: the function to run.\n\n#### Example (`once`)\n\n```javascript\nconst processManager = require('process-manager');\n\nprocessManager.once(async () => {\n  await client.doWork();\n});\n```\n\n### shutdown([args])\n\nThis function can be called to trigger a process shutdown. If passed an error as an optional argument, it will save it to the errors array. This function will only start the shutdown process once, any extra calls will be ignored, although it will still save the error if one is passed.\n\nIf called with `{ force: true }` it will skip waiting for running processes and immediately start disconnecting.\n\n#### Arguments (`shutdown`)\n\n- `[args]` _(object)_: the arguments object.\n- `[args.error]` _(Error)_: an error to add to the errors array.\n- `[args.force]` _(Boolean)_: a boolean that forces the shutdown to skip waiting for running processes.\n\n#### Example (`shutdown`)\n\n```javascript\nconst processManager = require('process-manager');\n\nprocessManager.shutdown({ error: new Error('Error') });\n```\n\n## Hooks\n\nCurrently there are three hooks that can be used to call external code during the shutdown process. If a hook takes longer than 30 seconds to return, it will timeout and continue with the shutdown process.\n\n### drain\n\nThis hook is called during shutdown, after all running processes have stopped. It should be used to drain connections if the process is running a server.\n\n### disconnect\n\nThis hook is called after `drain` and it's where handlers should be added to close running services (ex.: database connections, persistent connections, etc).\n\n### exit\n\nThis hook is called right before the process exits. It passes an array of errors as an argument to the handler function, and should be used to handle errors before exiting.\n\n### addHook({ handler, type, [name='a handler'] })\n\nThis function is used to add a hook for one of the types described above.\n\n#### Arguments (`addHook`)\n\n- `args.handler` _(Function)_: a function that returns a value or a thenable.\n- `args.type` _(string)_: the hook type.\n- `[args.name='a handler']` _(string)_: identifies the hook.\n\n```javascript\nconst processManager = require('process-manager');\n\nprocessManager.addHook({ handler: () => 'result', type: <hook-type> });\nprocessManager.addHook({ handler: () => Promise.resolve('result'), type: <hook-type> });\n```\n\n## Integrations\n\n### [sentry.io](https://sentry.io)\n\nThe recommended way to report errors to sentry is by adding an `exit` hook and sending each error using a promisified `captureException`.\n\n```javascript\nconst Promise = require('bluebird');\nconst raven = Promise.promisifyAll(require('raven'));\n\nraven.config('https://******@sentry.io/<appId>').install();\n\nprocessManager.addHook({\n  handler: (errors) =>\n    Promise.map(errors, (error) => raven.captureExceptionAsync(error)),\n  name: 'sentry',\n  type: 'exit'\n});\n```\n\n## Debug\n\nEnable verbose debugging by configuring your own logger and passing it to `processManager.configure({ log: myCustomLogger })`.\n\nThe minimum requirements for it to work is that the logger must be Object-like and have functions assigned to properties `info`, `warn`, and `error`.\nThe functions should be able to handle two different argument signatures:\n\n- log.`<level>`(message)\n- log.`<level>`(fields, message)\n\nMost javascript loggers should use this format (this one was derived from [bunyan](https://www.npmjs.com/package/bunyan))\n\n## Release\n\nThe release of a version is automated via the [release](https://github.com/uphold/process-manager/actions/workflows/release.yaml) GitHub workflow. Run it by clicking the \"Run workflow\" button.\n\n## Test\n\nTo test using a local version of `node`, run:\n\n```sh\nyarn test\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}