{"_id":"@gkiely/safe-install","_rev":"32-8f10f9e6b019cc87b04977f32564a360","name":"@gkiely/safe-install","dist-tags":{"latest":"0.1.33"},"versions":{"0.1.0":{"name":"@gkiely/safe-install","version":"0.1.0","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.0","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"377cfa09765d573b52c096d88ac1679a3798a09e","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.0.tgz","fileCount":5,"integrity":"sha512-xIajUwoUGgzg7x8C0V2UnHsLASIkF48hq7Lgyivj7SKUSG8z9NJS584SgDps8tyLux42mMJEbfj3Va5BBMk8eA==","signatures":[{"sig":"MEQCIFDPvxDA0UkWhBOoOgAnMMrcrEdExvi8q/32HrN0sQFkAiBokG5f7soRfVrVUTgGld0e5v5uUq0iNRnLSnN6+odZQg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11632},"type":"module","engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"bbd9309d63503122d639120664edda532d720c6f","scripts":{"test":"node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","typecheck":"tsc --noEmit","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.9.0","description":"Run npm installs with lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.0_1778542332832_0.1770556209208487","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@gkiely/safe-install","version":"0.1.1","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.1","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"05edea9c2658ddffe0365c7ebebefcacfcfdfd3f","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.1.tgz","fileCount":5,"integrity":"sha512-c3yWNMNu25cVeqPzr52f9kxDmnHQ9BLGwEMb78fyHAyOoiEw8BhmrtGxhTQ5h/JYePzCYBDar1sczc8ZZuXX5w==","signatures":[{"sig":"MEUCIGN/Mm+5y1JnPoenBfTf+GelhZiQzT8yETF8Ipva8qxZAiEAq1s5aEGD9+vHOOqVReNUU+ot2U6NuGv8IU1A/dO4HtE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11733},"type":"module","engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"01fb5184e7e0950c51ae95848c6e7dcaa7860dd1","scripts":{"test":"node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.9.0","description":"Run npm installs with lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.1_1778542841190_0.34909030515534245","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@gkiely/safe-install","version":"0.1.2","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.2","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"bb433b74a9418dd42dc11f969668355cc9511d5f","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.2.tgz","fileCount":5,"integrity":"sha512-SomRNLTdjHY4TJ8vmbrU2AhivtbvGRKbJmItv5tN//bpJYTo37ErtTKQbVe+oytLZNmU7NjtP8IQs60eBG4j0A==","signatures":[{"sig":"MEUCID7IywouANyy8U8ck+NWHn1GsY/HbDW46cJzhccvhiVoAiEAvFf3C0senCqWnFEkDok9kzEA2DxKg3tRHqBaUjJ24Tg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11748},"type":"module","engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"72f0bfedaedbe566efb880d04ca566cde871ecb5","scripts":{"test":"node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.9.0","description":"Run npm installs with lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.2_1778543032975_0.8141071708437977","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@gkiely/safe-install","version":"0.1.3","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.3","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"f98aec6a48f063e7c60373fafe062b8956704bc1","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.3.tgz","fileCount":5,"integrity":"sha512-IjRZJEYrbDhu59rVqFv+/2Sqp5Dz+BDiWGTS2J3TOXm7Wc4i0MIzLAOp7wpBSealSWa2jyY2FDXSiYOqbAma5g==","signatures":[{"sig":"MEYCIQCqnB3VXSLbE2M/7AIdQzZeo0+MjzqfG2O0AoMVm0JVgAIhAPpCDR1xsY2ACzlp+tJY1cRDwkPFjppDh8og8w8ZXxCW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12013},"type":"module","engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"ae83b7cca8c387b1b0e3dd5b8c39cfca8d7dfe78","scripts":{"test":"node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.9.0","description":"Run npm installs with lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.3_1778544724886_0.9049444667128603","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@gkiely/safe-install","version":"0.1.4","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.4","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"fa46445abea3c2a432a291ec05e95ff8c7e887e4","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.4.tgz","fileCount":5,"integrity":"sha512-rs4rXLS7i8R5Nzf+GCLiUKdF/nHq59/x7z02LVYlRoDeDAAjnREgm92NHb/zcioQZifR18lW0yr2Ps559M2LAA==","signatures":[{"sig":"MEUCIHPjJD+DBZ7S9tZwIRQXyZ4vsXDp5yIEBQFpTWzr6u9OAiEAoDDFJuF89LFaN4FmL4UapCH/rFjCkxKLJcp/G+SkybY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12016},"type":"module","engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"50ce093af9ce05e027c711e06689b023e1ad0e12","scripts":{"test":"node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.9.0","description":"Run npm installs with lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.4_1778544931425_0.5093032998530853","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@gkiely/safe-install","version":"0.1.5","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.5","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"8d68f391fad538698395a8df823f0d86a02832b9","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.5.tgz","fileCount":5,"integrity":"sha512-3zVG7bIfrCioD2nEF4+qpH6r0gDiOdIIZ6MpQ58NLGUBQlOy2Zin6MJcSgf+lTVhoMSODxYFIfQfAhYA8o23jw==","signatures":[{"sig":"MEUCIQDScYNe6JRjnhCNW8T9WRkb6m+qgVWED+qh41VecLNR5gIgHs6FUQCRVq2uui9CLFRNtX7KbOxo3ErTplFTJd3gJEQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12251},"type":"module","engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"8d5015d263ab53a86d0cdd3b027181fe643b8924","scripts":{"test":"node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"npm run typecheck && npm test && npm version patch && npm publish --access public && git push --follow-tags","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.9.0","description":"Run npm installs with lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.5_1778545978133_0.9452783870057087","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@gkiely/safe-install","version":"0.1.6","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.6","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"7d53043153d1194a013490910b025da05655b3ce","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.6.tgz","fileCount":5,"integrity":"sha512-F8Yvux048aLvfeC7R4U5JwoYBtnm7+vnIGYRuD6fiJg2O5gAsVLFjV/wNeiQdnEWgXl0+RPLnRnfUc0GYeHbGw==","signatures":[{"sig":"MEUCIFgX6UImgYfor4eLTCpKh50dzKubt83JH1wt7WnOI4qdAiEAmRLBEPU5gSM/QpViyAVQhCI7XbleK+IO7Mn9GNspZI8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12668},"type":"module","engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"42ab19e12020d4fe1f8a9036b505440d686d9bc3","scripts":{"test":"node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"npm run typecheck && npm test && npm version patch && npm publish --access public && git push --follow-tags","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.9.0","description":"Run npm installs with lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.6_1778547532595_0.966295971368176","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@gkiely/safe-install","version":"0.1.7","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.7","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"28ca04d386ae66e83f283ca032fb9d76f55d98f8","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.7.tgz","fileCount":5,"integrity":"sha512-dSfOUlkbLOKVaTrO1u+5savKrtaZFRF5lDrwWJeBcEWlr1cJ2SyXWAA4NmtXMwZQFjz09ocZGTaq88VM9H41Nw==","signatures":[{"sig":"MEUCIQDFY3XVZCtAaqj6XTW82E4NSYP+N+tHqKAORGVntKKBdgIgT1OZz8JgciJaO5V22blBAXuFjuAgsTRfHmIyyHCXRFw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13614},"type":"module","engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"d70a8635e39b44ffa9e6c3bc78b60e5f24492770","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"npm run typecheck && npm test && npm version patch && npm publish --access public && git push --follow-tags","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.9.0","description":"Run npm installs with lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.7_1778548309638_0.4779258238677555","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@gkiely/safe-install","version":"0.1.8","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.8","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"e13c132162c96a4054871b7f2680531f0fb71bb6","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.8.tgz","fileCount":5,"integrity":"sha512-WrapwR2oRpCPV3cgl/BMCnf96Be3Av4VssIwD0S2Eo2kzu3NHnl2aKOb9sVhaqVQHv8rcHJDbXgYNYWdOuGqDg==","signatures":[{"sig":"MEUCIQDVPN13c7/Izd6IKmi+Ff98X/P+NeMZs2Xc6xjjiWkTlwIgSYscSt3EYb2plLX0FcYUyWAtGtZqF3o+HJkAq2BQxAQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13653},"type":"module","engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"1822ff183f39d66eb24c054c7c0699c2d69ecc31","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"npm run typecheck && npm test && npm version patch && npm publish --access public && git push --follow-tags","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.9.0","description":"Run npm installs with lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.8_1778548555713_0.176930887020732","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@gkiely/safe-install","version":"0.1.9","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.9","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"87d11c71dfff538d84082a8cf0f2edf66b36f635","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.9.tgz","fileCount":5,"integrity":"sha512-jThSKEj3Loz/6+GIoyVimsdxxKQA/7yHdbUouK+/aghS3i2CzmeEJFwnsV4DGpLoeuGpFXB8bIjF50c4TB3gfA==","signatures":[{"sig":"MEQCIC8Rl7sSfZCwqsM59Yz3/Yeegam3Xh9ui/V9AJM+fiOWAiBJWjkE5SXNIDR2cef/FlHmcjtwW+x05RYDD2L57k6ggQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13755},"type":"module","engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"af0fdd351b4ba78539878d11f626bd0de102a71f","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"npm run typecheck && npm test && npm version patch && npm publish --access public && git push --follow-tags","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.9.0","description":"Run npm installs with lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.9_1778548962890_0.031992633461582765","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@gkiely/safe-install","version":"0.1.11","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.11","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"d328a4181248d65bcd6bc1038088e659829895c1","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.11.tgz","fileCount":5,"integrity":"sha512-mjSYa8ayr0czJnGYZQ4Da404UQmMyO0af30EEbEPLskUsQ4jM57ubuS4rzufUJkFfRzCvh7ieRmSxofT03wlxw==","signatures":[{"sig":"MEYCIQCmh4SrwsTn5B3RBRWVqp8HBHr9IEF/Axi40p8Ytepm+wIhAPLIbfFn8L5Cdx5be9LwjTbBBUpNbp+V13T0iiRxAs8s","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14053},"type":"module","volta":{"node":"24.14.0"},"engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"fb393e5c020287edf28cf86e531464a6dbba7a29","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"npm run typecheck && npm test && npm version patch && npm publish --access public && git push --follow-tags","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.9.0","description":"Run npm installs with lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.11_1778550266112_0.404378947345585","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"@gkiely/safe-install","version":"0.1.12","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.12","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"60c8dd3cc3490b462ed88f5d1a9172c7fe91ca3a","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.12.tgz","fileCount":5,"integrity":"sha512-7wYnHUAQCFnnS6Qlag/+n6jmjTtWn/IMnLOUubczec6R5Xm3Oq4Rnuvk+092ZTikz3BoWVSS85eG+i9amEZfhw==","signatures":[{"sig":"MEQCIEa8o9uVPxS4g/FzudRQcT2YEROV2Rjb9w8dHOEQNgk4AiAerm/KVLN8Nqi3BzC4jyDnSEmH725S/OJt+x/5o0hUWg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14138},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"6651b413b0693608b170685be0f824895b297d12","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"npm run typecheck && npm test && npm version patch && npm publish --access public && git push --follow-tags","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.12_1778550661209_0.17831488265386297","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"@gkiely/safe-install","version":"0.1.13","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.13","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"27ed09f397a8d5ea1ffad6c51eba38d2792ea8ee","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.13.tgz","fileCount":5,"integrity":"sha512-kqhfOU8oPPFs76FbdBulz1vqOgeRMwpfyPi5izk3u41EtdEWavw1CoKiTdpQLqIMfFgVXIvmD5yP27kpLue7dg==","signatures":[{"sig":"MEQCID+fl4MyB2DLyRCgVPh/E60BmS1dls6WHF7nr9+1iyiCAiBtds6y7Q1Vnfso9VY11LwD1dwXJgGsfU5xcCbENlRI8A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13919},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"2cc4521e97c34fc640b7bd6e528040730c5853e6","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"npm run typecheck && npm test && npm version patch && npm publish --access public && git push --follow-tags","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.13_1778551341339_0.9670820704242742","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"@gkiely/safe-install","version":"0.1.14","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.14","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"39bcca4627cae00c6a07ce02ee83e97b0080b63d","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.14.tgz","fileCount":5,"integrity":"sha512-H+P5GAHTUJalYmcIoCTVRp7m/RK8lYAJoBP9yLGm09fsmjcRKSR/VfRexL+1ixHwnuiCQUjYbfcF3YfWWKTEhA==","signatures":[{"sig":"MEUCIDL7hP+POj4QKTZ39OsN4G13lWYYKQRL+wPNS2wHr/1dAiEA6C/+gh9XEo16xNwm71k/dxqBnio0eeREPIVMdCHkkc0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13828},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"23b8dd2199fb0fe347ebd8ef5a5ba49cb442cd93","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/bump-readme-version.ts && npm run typecheck && npm test && npm version patch && npm publish --access public && git push --follow-tags","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.14_1778570176977_0.9133683278638296","host":"s3://npm-registry-packages-npm-production"}},"0.1.15":{"name":"@gkiely/safe-install","version":"0.1.15","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.15","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"a7d2f8e29895d6ffeb96b9ef3206142c335cfd50","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.15.tgz","fileCount":5,"integrity":"sha512-xWzQPPjBORTFLWc5Iao9yLQpeSoJ6cPK/fA+Vm5/1Kh2H1nlPnUV7rcbFzpRkIjWnLGYbJqDKSca2aHM78D7FQ==","signatures":[{"sig":"MEQCIDewkM+ebXDEwLoG7YZX2wOvj1FzJOPvdK+bVuA2KfujAiB+7PYhmPgj+wnVzOE0ifgrNQ4cm69OHVDUbsVK66SbOA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13832},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"46a3076d40f083becd5cf9cc78b3d1fd1329120f","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/bump-readme-version.ts && npm run typecheck && npm test && npm version patch && npm publish --access public && git push --follow-tags","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.15_1778570345535_0.6965462798235593","host":"s3://npm-registry-packages-npm-production"}},"0.1.16":{"name":"@gkiely/safe-install","version":"0.1.16","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.16","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"3e8aa0869a3de1a51256e124304614ea2de9f6f7","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.16.tgz","fileCount":5,"integrity":"sha512-tkIsWxM/cIYJ9//1UkPCsAEO0vC31vGyVu7Deyk1nf3xtXO4iYRKPGSnYq9Uwq3Q9pXf/IELJ4zCo/eRr2NVwQ==","signatures":[{"sig":"MEYCIQDUdVSZtaBlmj4qnNVf0ucC+3lqg01A++R6h0ema6IsQwIhAOK6vbAkNGENvpXL8Gwh+3DAWJq4DVUWX/aQRqBtWLeE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14669},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"1d80adf7b4e0f1e9df7bf9dd6e0efcfe19d760d2","scripts":{"bump":"node scripts/bump-readme-version.ts","test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"npm run typecheck && npm test && npm version patch && npm publish --access public && git push --follow-tags","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@11.9.0","devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.16_1778575671765_0.22684621490651646","host":"s3://npm-registry-packages-npm-production"}},"0.1.18":{"name":"@gkiely/safe-install","version":"0.1.18","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.18","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"c925d0612e7007df5e1096a009e786432c629142","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.18.tgz","fileCount":5,"integrity":"sha512-Ghb11veUmHv+hEz8X8TW+36AZQlTZaxEeFvA4heIHRWMKiZzBE3LGmrzMPcephDDrdfweuiHrPa6qpCcItCFtg==","signatures":[{"sig":"MEUCIQCzKQVNtvf8kRGhXqzXQHkXMXtxi7YUNNUebiCSbDTfEQIgSE/goabMH+1fDsTBBYaSyIcJEq1v077qMleybDJblIU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14483},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"68a7571aa72ff005a34ca3f6c32e4eb2c096faa7","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/release.ts","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.18_1778697419010_0.8764040488508313","host":"s3://npm-registry-packages-npm-production"}},"0.1.19":{"name":"@gkiely/safe-install","version":"0.1.19","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.19","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"c7ea7552f6d681e3571d4ba25701c9e5aa2b6c42","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.19.tgz","fileCount":5,"integrity":"sha512-BTzU8p+BNTjHfKooncFAoRdNtibYD1dS6EZwLsqYGgdT54CQfzpFZSdfs35kmZntdGp88AIMv0SR0zpKAMRoMQ==","signatures":[{"sig":"MEYCIQDuC5upTsOjf+qGqEyPXYBLqVFodIJ8UGNdMSEG7NKBuAIhAJDBlhBt/QDhvVRzGliiKWSFsmk3C9xT8GezUm9IMwOL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14483},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=16"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"6d309cc9d74fa9a0dafb3c344f54dacff4ae6d0d","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/release.ts","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.19_1778697634181_0.13205003713512586","host":"s3://npm-registry-packages-npm-production"}},"0.1.20":{"name":"@gkiely/safe-install","version":"0.1.20","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.20","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"df917f697cae71e49b49489aca28b0b6fafb62db","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.20.tgz","fileCount":5,"integrity":"sha512-y52/lLKnUtoxfAtHIUZGo3RnKOyziVCPQgoT4ptwKIq5Nxit3CxHgjvAbE+2s+I/6TQVPDJviJqF6AmQ3nZKrA==","signatures":[{"sig":"MEUCIAq2AVe8BLj2pNpsT18vvZbKDMbNJ3cVNbNFmyEKuJ98AiEAmIHHr0Hzo+Q8CDHfZd/+5CS0SXKpICYA+6HU9/SAGKM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17310},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"b5787315580a965fb7e74a4e5a3f56473ed96610","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/release.ts","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.20_1778699215352_0.4159653047427685","host":"s3://npm-registry-packages-npm-production"}},"0.1.21":{"name":"@gkiely/safe-install","version":"0.1.21","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.21","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"b9487d937c587c8f974b9e2ca556f85813778646","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.21.tgz","fileCount":5,"integrity":"sha512-pq3/1UF7vkhJcLPd29kUo0XtU0nKobRWTLWz7/uE8wkWlYSLtb+qUDZE36jf7Gl6Aa7v6jtYZF58bEvouAVi5w==","signatures":[{"sig":"MEUCIQCcX0+oJetGEh0StztSGO7qL2/H2sdL9T/pSTKU3Y37GgIgDFf8QsKiWA3gkjJxa/euvpdZbvVqa2n1FCy6DfTk++Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17082},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"e9ee1ef3180f79566d9e75b7bdadef65460911b2","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/release.ts","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.21_1778700012776_0.5813962311410792","host":"s3://npm-registry-packages-npm-production"}},"0.1.22":{"name":"@gkiely/safe-install","version":"0.1.22","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.22","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"02d8c9025e951cc78ee33d78246b58b35e07ed0e","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.22.tgz","fileCount":5,"integrity":"sha512-ezsOj0y2msbwVkMU0WvmALS5Bjx3LxZSlygfMgJooqaU76prrlVBAtlHcOAZZrTi5T65bgWvg0glCpCI9jKPkQ==","signatures":[{"sig":"MEUCIH3y9DluoM1pVKBexhN6zDufqjxaQOwSz1isvZMK4AH/AiEAj3ycXBCTGm5y6lDTSrnH2HWVqKxKWeVgVFBayzWDH5Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17271},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"edf975119a7c185cc60f931267a01580f110a35d","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/release.ts","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.22_1778700486029_0.92436478341298","host":"s3://npm-registry-packages-npm-production"}},"0.1.23":{"name":"@gkiely/safe-install","version":"0.1.23","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.23","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"628e3ea9889db29c09fa9d24f7811ebdc4bf4d0c","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.23.tgz","fileCount":5,"integrity":"sha512-HtH+52t4dFXLoNPEpXqfZN/VT8LCecPms6cM0c/84pYcRS0SpCnPJ51zYBub24Q/34KdlQn8jmXyzvnN/6qC/g==","signatures":[{"sig":"MEUCIQC2CAZckDmqgUDbP+JLh9HGDrkJaoFPkiLZZ+ky6EJdJgIgaCwWlgj53+pnzLhGvbytj0hTwK16ZVxFmmxtG29//II=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18783},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"71883ee81164da63d1c174e0bd3362212a9ecdfe","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/release.ts","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.23_1778703040652_0.16416482243955688","host":"s3://npm-registry-packages-npm-production"}},"0.1.24":{"name":"@gkiely/safe-install","version":"0.1.24","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.24","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"ecfa48125af2cb60a876ff5d46720e066b2e9220","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.24.tgz","fileCount":5,"integrity":"sha512-YwKaIhfSbXdG35wP/AF6lk0/Uz7FRGWf0bEWgDtjkE7lSJs4Kwa5Fs5dr5yoX1AGZBFtFz3kDT3bgL7XeJAEfA==","signatures":[{"sig":"MEQCIDX4sxMJ6O8hr4i5KOa1S1wC1OqHjnqrRWCKxEEZPQlxAiBWa1wjctwgpb0ZlWRUMDF4nD/p1FOEAOn5Ufujv4PINg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18696},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"8730df5c243abe27b40eb97d62e489addbfeeb8d","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/release.ts","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.24_1778703553155_0.29546409769206394","host":"s3://npm-registry-packages-npm-production"}},"0.1.25":{"name":"@gkiely/safe-install","version":"0.1.25","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.25","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"ff00755095f46f9d13870a29618c7561775c1c6c","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.25.tgz","fileCount":5,"integrity":"sha512-ESkTYKHZ9dxmsd9EefPwO7zYdgx5zvW0tMFn9dX/NxyMbK2B6owM741lWXe09z1thPgUSgL4LsY8gbJdpKdW1A==","signatures":[{"sig":"MEUCIQCOn1RUTeTzUXgpxJ7YVztZ9H1G+O/OFqZlkG2vxWVobQIgPOIK34M+LkBxpwT57x4XWQROXbAGpMte0mq3X9+ndyc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18675},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"eaa90c22effe5d8072d757d2e845edc299ba7b36","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/release.ts","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.25_1778703614574_0.9081220693283945","host":"s3://npm-registry-packages-npm-production"}},"0.1.26":{"name":"@gkiely/safe-install","version":"0.1.26","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.26","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"5e5b0fb8fafe1ee8dc702a9ff607d02cb648d586","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.26.tgz","fileCount":5,"integrity":"sha512-qEH73NAApkoXsxIAFAqgzVqKnupuwbnKdW1NeNyO7ddItSFW2odSOp061A2oydXafY5ggcToGZL16dnNQe6XOQ==","signatures":[{"sig":"MEUCIQC/caHEVai5+FfX2XDbQoJX1CSf59TpPJJkmE0IcWe7ngIgGx6LQKsWRLTdV1SE6pOKyFBcEUlG1W5LbeuP3UGSo/8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18675},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"e5eb7a07ed9e2389036c0cd5ec94c0e1c2db5c37","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/release.ts","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.26_1778704019406_0.5077551126121256","host":"s3://npm-registry-packages-npm-production"}},"0.1.27":{"name":"@gkiely/safe-install","version":"0.1.27","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.27","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"2fad044f6fa466bb8425e52b1defef558eb10710","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.27.tgz","fileCount":5,"integrity":"sha512-B4NZ3H62DKcS7oVwoIGYxZtQyXqEYI5GR14rpEMSk+RA22mr/7egJeq4qMiyakER+h2HIXPROAnwbyVp34voDQ==","signatures":[{"sig":"MEQCICKQYTrKxSBeVZmY0rxQSr0c5UR7pZ6FtUII++hqg8FgAiBTKE2MXHtwxTU+X7Kqfksb2lvP+P6U1ilZ0GPyXUuoXQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18675},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"3b0a6a9957032b7eef1d93ce5f973dc0168262d0","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/release.ts","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.27_1778704718382_0.2660433603667025","host":"s3://npm-registry-packages-npm-production"}},"0.1.28":{"name":"@gkiely/safe-install","version":"0.1.28","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.28","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"2a6086070882978dd14d700fae5d9eb9e3c9b45d","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.28.tgz","fileCount":5,"integrity":"sha512-+TfY3sQ5i2Na153m7gmjh6C0/YybDzKgFP9duccfuidx9QAAz8afL9z82+Xshz2j59K7gRSWDQQ9a1V827phcA==","signatures":[{"sig":"MEQCIHPCARBui3YykDnp9fz8TrPHrO0Zz94VCwEPGOKpCp7uAiAC31l7vUfc8tobuCZF7VbgFfPMXJ16931KhTeGSjltvQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18675},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"1587d81a9419674df32ff490d23fc25c53e9eff3","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/release.ts","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.28_1778704773932_0.3045811960303335","host":"s3://npm-registry-packages-npm-production"}},"0.1.29":{"name":"@gkiely/safe-install","version":"0.1.29","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.29","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"0dd019bc231ec152f654181ef4a3352c78508771","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.29.tgz","fileCount":5,"integrity":"sha512-DNjDw/3NYfBURRFLL/JEBGiBcJVpipIGzxRgBUlQzqcufC17PfvNrYCGPMwb1sB+nsKjKxYGrUOI87jwP9nTEA==","signatures":[{"sig":"MEQCIGku7+Y5JLuHIo0qyNoKzJEmOa2wBeBiXlI6eL1Dg3v4AiBed5dwal+icokYN2HohL70Qmebi8tHsBuTAgGayyhPKQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18693},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"d3474fa156e4fdc6154a847709d79ad110929d89","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/release.ts","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.29_1778715468829_0.5744049372015476","host":"s3://npm-registry-packages-npm-production"}},"0.1.30":{"name":"@gkiely/safe-install","version":"0.1.30","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.30","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"ac677ada54b3c957decd1ba3f44a608b1b237d9e","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.30.tgz","fileCount":5,"integrity":"sha512-SK1D/Le/jYtNjCFCAE6afDS2kLMU9v/bAtXtJ968wK0GcU6VdCAdyNFnjFLDjLxTC/LEUSJG7gkll7u/7LYGQw==","signatures":[{"sig":"MEUCIDmSM79ux63Rof2DdoDBu/pk7AHX7d7B99ELbzqkqMwOAiEA53oZekpWYxqS3X+x84TSH34FODwCdC2X63j/YxgOXhk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18778},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"95b8acf6a9b51c3f8b86159b2f1a0a6ec1343416","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/release.ts","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.30_1778727239759_0.8475528815984381","host":"s3://npm-registry-packages-npm-production"}},"0.1.31":{"name":"@gkiely/safe-install","version":"0.1.31","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.31","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"e692838a57228bc7cf004d31c67aa9505145ee14","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.31.tgz","fileCount":5,"integrity":"sha512-h83xvuYDNkZw1AfFmgZYCLgGbbZB8Ea4bP+1BxDdHbHx46sHLzLj05JqGWVziLrlcyCRMSLvuhBdqkfVfOYBgA==","signatures":[{"sig":"MEUCIQDaGxe95kyQoI2bgm/IEieTTCVznUUBay7OQFCb7mdtRAIgXdH5EemLJXz4Fi3A1FIzxojRz5w6bw090smpuRzrib4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18852},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"f7d5f7589b5a235a63603badadb0ac811901e775","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/release.ts","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.9.0","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.31_1778735906744_0.9233433685516517","host":"s3://npm-registry-packages-npm-production"}},"0.1.32":{"name":"@gkiely/safe-install","version":"0.1.32","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","_id":"@gkiely/safe-install@0.1.32","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"homepage":"https://github.com/gkiely/safe-install#readme","bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"bin":{"safe-install":"dist/index.js"},"dist":{"shasum":"2345eb35be3181e47f3985f9a30e80f6965bf174","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.32.tgz","fileCount":5,"integrity":"sha512-vinASdhU9pXo3Cb5yymvfJL3sOXv+WD+CKlik3Jfh+mjTPybl+Zfkp5SVNIdaABz5diAhW9xBU1BuqRmg5/X2w==","signatures":[{"sig":"MEUCIQDzuYTmG2ulfVx7xzNgujwG4CsyQrjFqh4BGRkUHZVTygIgfN+IH0ZE2ZLjuo3hwaeFaNRfcirVvZgoKw6PjED4RjM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20116},"type":"module","volta":{"npm":"11.14.1","node":"24.14.1"},"engines":{"node":">=14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"ada51c11f77cff2fea3b3f62b21b5e96a31c5381","scripts":{"test":"npm run build && node --test","build":"tsc -p tsconfig.build.json","prepack":"npm run build","release":"node scripts/release.ts","typecheck":"tsc --noEmit","safe-install":"node dist/index.js","prepublishOnly":"npm run typecheck && npm test"},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"repository":{"url":"git+ssh://git@github.com/gkiely/safe-install.git","type":"git"},"_npmVersion":"11.14.1","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","directories":{},"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"latest","@types/node":"^25.7.0"},"blockExoticSubDeps":true,"_npmOperationalInternal":{"tmp":"tmp/safe-install_0.1.32_1778735972968_0.20482653773178483","host":"s3://npm-registry-packages-npm-production"}},"0.1.33":{"name":"@gkiely/safe-install","version":"0.1.33","description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","type":"module","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"engines":{"node":">=14"},"repository":{"type":"git","url":"git+ssh://git@github.com/gkiely/safe-install.git"},"bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"homepage":"https://github.com/gkiely/safe-install#readme","publishConfig":{"access":"public"},"blockExoticSubDeps":true,"bin":{"safe-install":"dist/index.js"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"tsc -p tsconfig.build.json","prepack":"npm run build","prepublishOnly":"npm run typecheck && npm test","release":"node scripts/release.ts","safe-install":"node dist/index.js","test":"npm run build && node --test","typecheck":"tsc --noEmit"},"devDependencies":{"@types/node":"^25.7.0","typescript":"latest"},"volta":{"node":"24.14.1","npm":"11.14.1"},"gitHead":"12e3c9a9657fbf44987319a370203257e25bc1f7","_id":"@gkiely/safe-install@0.1.33","_nodeVersion":"24.14.1","_npmVersion":"11.14.1","dist":{"integrity":"sha512-3mUdCDNMYrsMq+vogCybG3kENa2aNuzK5r8FReXzVBIeZg7RoE9PGrWtfSGGsOkv950N3HkYcPqcpalUM9sDOQ==","shasum":"19580db5e1d8278d726300edfab4b31659459dec","tarball":"https://registry.npmjs.org/@gkiely/safe-install/-/safe-install-0.1.33.tgz","fileCount":5,"unpackedSize":20167,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIGSQUIG1dDgGdVe6ud0i4CiL1ZY0mgkQlD52Y5swBZgBAiA1Z4zAQJC79dPg1dToiZN9IAMhHhvYL/7xSOm79kUNWg=="}]},"_npmUser":{"name":"gkiely","email":"grant.kiely@gmail.com"},"directories":{},"maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/safe-install_0.1.33_1778736115812_0.430684462836155"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-11T23:32:12.672Z","modified":"2026-05-14T05:21:56.059Z","0.1.0":"2026-05-11T23:32:13.039Z","0.1.1":"2026-05-11T23:40:41.352Z","0.1.2":"2026-05-11T23:43:53.143Z","0.1.3":"2026-05-12T00:12:05.033Z","0.1.4":"2026-05-12T00:15:31.553Z","0.1.5":"2026-05-12T00:32:58.322Z","0.1.6":"2026-05-12T00:58:52.744Z","0.1.7":"2026-05-12T01:11:49.825Z","0.1.8":"2026-05-12T01:15:55.842Z","0.1.9":"2026-05-12T01:22:43.045Z","0.1.11":"2026-05-12T01:44:26.242Z","0.1.12":"2026-05-12T01:51:01.356Z","0.1.13":"2026-05-12T02:02:21.609Z","0.1.14":"2026-05-12T07:16:17.140Z","0.1.15":"2026-05-12T07:19:05.676Z","0.1.16":"2026-05-12T08:47:51.884Z","0.1.18":"2026-05-13T18:36:59.201Z","0.1.19":"2026-05-13T18:40:34.343Z","0.1.20":"2026-05-13T19:06:55.512Z","0.1.21":"2026-05-13T19:20:12.915Z","0.1.22":"2026-05-13T19:28:06.157Z","0.1.23":"2026-05-13T20:10:40.806Z","0.1.24":"2026-05-13T20:19:13.315Z","0.1.25":"2026-05-13T20:20:14.726Z","0.1.26":"2026-05-13T20:26:59.557Z","0.1.27":"2026-05-13T20:38:38.531Z","0.1.28":"2026-05-13T20:39:34.075Z","0.1.29":"2026-05-13T23:37:49.008Z","0.1.30":"2026-05-14T02:53:59.934Z","0.1.31":"2026-05-14T05:18:26.886Z","0.1.32":"2026-05-14T05:19:33.146Z","0.1.33":"2026-05-14T05:21:55.938Z"},"bugs":{"url":"https://github.com/gkiely/safe-install/issues"},"author":{"name":"Grant Kiely","email":"grant@youneedawiki.com"},"license":"MIT","homepage":"https://github.com/gkiely/safe-install#readme","keywords":["npm","install","security","supply-chain","trusted-dependencies"],"repository":{"type":"git","url":"git+ssh://git@github.com/gkiely/safe-install.git"},"description":"Run npm installs with dependency lifecycle scripts disabled, then rebuild explicitly trusted dependencies.","maintainers":[{"name":"gkiely","email":"grant.kiely@gmail.com"}],"readme":"# safe-install\n\nRun npm install with dependency lifecycle scripts disabled by default, then\nrebuild only the packages you explicitly trust.\n\n`safe-install` is for npm projects that want trusted dependency installs without\nswitching package managers.\n\n## Why\n\nnpm lifecycle scripts can run arbitrary code during install. Setting\n`ignore-scripts=true` blocks that whole class of install-time execution, but it\nalso breaks packages that legitimately need `postinstall`, `install`, or\n`preinstall` scripts to build native bindings, download binaries, or finish\nsetup.\n\nThis package keeps the default install locked down and moves script execution\nbehind a reviewed allowlist in `package.json`.\n\n## Setup\n\n1. Add this to `.npmrc`:\n\n```txt\nignore-scripts=true\n```\n\nOptionally enable (requires npm v11.10.0+):\n\n```txt\nmin-release-age=3\nallow-git=root\n```\n\n2. Add script to `package.json`:\n\n```json\n{\n  \"scripts\": {\n    \"safe-install\": \"npx -y @gkiely/safe-install@0.1.33\"\n  }\n}\n```\n\n3. Find dependencies that declare install-time scripts:\n\n```sh\nnpm run safe-install -- review-deps\n```\n\n5. Review the output, then add trusted packages to `package.json`. You can also\nenable `blockExoticSubDeps` as a lockfile-level backstop for transitive\ndependencies that point outside the npm registry with `git:`, `file:`, `link:`,\nor remote tarball URL specifiers.\n\n```json\n{\n  \"blockExoticSubDeps\": true,\n  \"trustedDependencies\": [\n    \"esbuild\",\n    \"sharp\"\n  ]\n}\n```\n\n6. Use `safe-install` for future installs:\n\n```sh\nnpm run safe-install\n```\n\n7. If your project defines its own install lifecycle scripts, `safe-install`\nruns them after dependency installation:\n\n```json\n{\n  \"scripts\": {\n    \"preinstall\": \"node scripts/preinstall.js\",\n    \"install\": \"node scripts/install.js\",\n    \"postinstall\": \"node scripts/setup.js\"\n  }\n}\n```\n\nYou can pass npm install args through:\n\n```sh\nnpm run safe-install left-pad@latest\nnpm run safe-install --save-dev left-pad@latest\n```\n\nYou can run npm update through the same command:\n\n```sh\nnpm run safe-install update\n```\n\n## What `safe-install` does\n\n`safe-install` runs npm install with scripts blocked, then runs install scripts only for packages listed in\n`trustedDependencies`.\n\nIt also runs your project's own `preinstall`, `install`, and `postinstall`\nscripts when they are defined in the root `package.json`.\n\nIf `blockExoticSubDeps` is set to `true` in `package.json`, `safe-install` also\nfails the install before rebuilding trusted dependencies when a transitive\ndependency points outside the npm registry with a `git:`, `file:`, `link:`, or\nremote tarball URL specifier.\n\nEquivalent manual flow:\n\n```sh\nnpm install --ignore-scripts\nnpm rebuild --ignore-scripts=false esbuild sharp\nnpm run --ignore-scripts --if-present preinstall\nnpm run --ignore-scripts --if-present install\nnpm run --ignore-scripts --if-present postinstall\n```\n\n## Notes\n\nOnly add a package to `trustedDependencies` after reviewing why it needs an\ninstall script. This does not make dependency scripts safe; it makes the trust\ndecision explicit and version-controlled.\n\n## Single init command\n\nAlternatively, you can generate the scripts directly in your own repo:\n\n```sh\nnpx -y @gkiely/safe-install@0.1.33 init\n```\n\nThis adds the same scripts to your package.json (`safe-install`, `review-deps`, `rebuild-trusted-dependencies`) as well as `scripts/review-deps.mjs`, so future installs use your local scripts instead of calling `npx -y @gkiely/safe-install`.\n\n\n## DIY version\n1. Add `ignore-scripts=true` and `min-release-age=3` to `.npmrc`.\n2. Create 3 scripts in `package.json`:\n\n```json\n{\n  \"scripts\": {\n    \"safe-install\": \"npm install && npm run rebuild-trusted-dependencies && npm run --if-present preinstall && npm run --if-present install && npm run --if-present postinstall\",\n    \"review-deps\": \"node scripts/review-deps.mjs\",\n    \"rebuild-trusted-dependencies\": \"npm rebuild --ignore-scripts=false $(node -p \\\"require('./package.json').trustedDependencies.join(' ')\\\")\"\n  }\n}\n```\n3. Create `scripts/review-deps.mjs`:\n\n```js\nimport { readFileSync } from 'node:fs';\n\n/**\n * @typedef {{ hasInstallScript?: boolean }} LockPackage\n * @typedef {{ packages?: Record<string, LockPackage> }} PackageLock\n */\n\n/** @type {PackageLock} */\nconst lock = JSON.parse(readFileSync('package-lock.json', 'utf8'));\n/** @type {Set<string>} */\nconst names = new Set();\n\nfor (const [path, pkg] of Object.entries(lock.packages ?? {})) {\n  if (!pkg.hasInstallScript) continue;\n\n  const [, name] = path.match(/^node_modules\\/(@[^/]+\\/[^/]+|[^/]+)/) ?? [];\n  if (name) names.add(name);\n}\n\nconsole.log([...names].sort().join('\\n'));\n```\n\n4. Run: `npm run review-deps` and add trusted dependencies to `package.json`:\n\n```json\n{\n  \"trustedDependencies\": [\n    \"esbuild\",\n    \"sharp\"\n  ]\n}\n```\n","readmeFilename":"README.md"}