{"_id":"unassert","_rev":"19-49f1def056e65a47cda3e489a1da92af","name":"unassert","description":"Encourages programming with assertions by providing tools to compile them away","dist-tags":{"latest":"2.0.2"},"versions":{"1.0.0":{"name":"unassert","description":"Remove assertions from AST to encourage Design by Contract (DbC)","version":"1.0.0","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"http://github.com/twada"},"bugs":{"url":"https://github.com/twada/unassert/issues"},"dependencies":{"escallmatch":"^1.4.1","estraverse":"^4.1.0"},"devDependencies":{"mocha":"^2.2.5"},"files":["README.md","CHANGELOG.md","index.js","package.json"],"homepage":"http://github.com/twada/unassert","keywords":["DbC","assert","assertion"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"http://github.com/twada/unassert.git"},"scripts":{"test":"mocha"},"gitHead":"60e26c4c9c7a9adf098d7240730de160bba1d5ad","_id":"unassert@1.0.0","_shasum":"fb6ea0122088020190b84979a5da19b3d0fe354c","_from":".","_npmVersion":"2.7.4","_nodeVersion":"0.12.2","_npmUser":{"name":"twada","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"twada","email":"takuto.wada@gmail.com"}],"dist":{"shasum":"fb6ea0122088020190b84979a5da19b3d0fe354c","tarball":"https://registry.npmjs.org/unassert/-/unassert-1.0.0.tgz","integrity":"sha512-F2JF3UBB7BVDAbGOkBi553gEMw8f3DlPLenpzVwyPZVS1e5LVeR3rxqKvVL7TIYP57JposHY03Dm2RLzy3uS5A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAyVO9dOCiGDbsOceEETCjGGtlBLEOSsDNYGRompSw0CAiAunUEadjatmuBlHRAn7bcqAhlA3jtQmEfHC9hWwmZRdQ=="}]},"directories":{}},"1.1.0":{"name":"unassert","description":"Remove assertions from AST to encourage Design by Contract (DbC)","version":"1.1.0","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"http://github.com/twada"},"bugs":{"url":"https://github.com/twada/unassert/issues"},"dependencies":{"deep-equal":"^1.0.0","escallmatch":"^1.4.1","esprima":"^2.5.0","espurify":"^1.3.0","estraverse":"^4.1.0"},"devDependencies":{"escodegen":"^1.6.1","mocha":"^2.2.5"},"files":["README.md","CHANGELOG.md","index.js","package.json"],"homepage":"http://github.com/twada/unassert","keywords":["DbC","assert","assertion"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+ssh://git@github.com/twada/unassert.git"},"scripts":{"test":"mocha"},"gitHead":"e319bd33031be493894ffac690ad5def730c7b98","_id":"unassert@1.1.0","_shasum":"bf5e6d998a905c591ec69e183e9e0e3416d85487","_from":".","_npmVersion":"2.11.3","_nodeVersion":"0.12.7","_npmUser":{"name":"twada","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"twada","email":"takuto.wada@gmail.com"}],"dist":{"shasum":"bf5e6d998a905c591ec69e183e9e0e3416d85487","tarball":"https://registry.npmjs.org/unassert/-/unassert-1.1.0.tgz","integrity":"sha512-7AAF05xa3sIVVQhad5KarVKc+Y9nkWWGGWEzbKNw7IlK7dfMB2AVl9QRjKVBR3qlYydymSq61YR3tY8RY4EZXA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDnBWTWqC3XXuFWMUdOVfclU1Hh2ZbouqP4FRHdUw6W3QIhAOm9wgG+C/ck9A3HLJLr6+W5hFza2/NBafzC/mtYwhtc"}]},"directories":{}},"1.2.0":{"name":"unassert","description":"Remove assertions from AST to encourage Design by Contract (DbC)","version":"1.2.0","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"http://github.com/twada"},"bugs":{"url":"https://github.com/twada/unassert/issues"},"dependencies":{"deep-equal":"^1.0.0","escallmatch":"^1.4.1","esprima":"^2.5.0","espurify":"^1.3.0","estraverse":"^4.1.0"},"devDependencies":{"escodegen":"^1.7.0","mocha":"^2.3.3"},"files":["README.md","CHANGELOG.md","index.js","package.json"],"homepage":"http://github.com/twada/unassert","keywords":["DbC","assert","assertion"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+ssh://git@github.com/twada/unassert.git"},"scripts":{"test":"mocha"},"gitHead":"9dfc23ebd4e06851fe20818d2fc6814ab103366d","_id":"unassert@1.2.0","_shasum":"aae97474feac4f7c0b016bb8cc4fff9d0720c426","_from":".","_npmVersion":"2.11.3","_nodeVersion":"0.12.7","_npmUser":{"name":"twada","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"twada","email":"takuto.wada@gmail.com"}],"dist":{"shasum":"aae97474feac4f7c0b016bb8cc4fff9d0720c426","tarball":"https://registry.npmjs.org/unassert/-/unassert-1.2.0.tgz","integrity":"sha512-qzUT7fuHbHmjbcKlEbNN6Y9ZBPXTPlWswZkFCo+yVK+pP+eumXXFRh+GSQYIaO39a5AZXTMYPAiGhcoo75qsLg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCaz3L4sOVnZMb3fdTpWCLtMChW5NhEMhFWdXwXBuTlygIhAKR+RBPcPcvM3tAq7422/IGyrRMVxt3cEtshCsbAl1NM"}]},"directories":{}},"1.2.1":{"name":"unassert","description":"Encourage Design by Contract (DbC) by writing assertions in production code, and compiling them away in release","version":"1.2.1","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"http://github.com/twada"},"bugs":{"url":"https://github.com/twada/unassert/issues"},"dependencies":{"deep-equal":"^1.0.0","escallmatch":"^1.4.1","esprima":"^2.5.0","espurify":"^1.3.0","estraverse":"^4.1.0"},"devDependencies":{"escodegen":"^1.7.0","mocha":"^2.3.3"},"files":["README.md","CHANGELOG.md","index.js","package.json"],"homepage":"http://github.com/twada/unassert","keywords":["DbC","assert","assertion"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+ssh://git@github.com/twada/unassert.git"},"scripts":{"test":"mocha"},"gitHead":"ad137a41937a3bec678503a1b125e920134b32a1","_id":"unassert@1.2.1","_shasum":"ee0ab96a17e9527dffa9e59ae73fa6cc0fd6cc72","_from":".","_npmVersion":"2.11.3","_nodeVersion":"0.12.7","_npmUser":{"name":"twada","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"twada","email":"takuto.wada@gmail.com"}],"dist":{"shasum":"ee0ab96a17e9527dffa9e59ae73fa6cc0fd6cc72","tarball":"https://registry.npmjs.org/unassert/-/unassert-1.2.1.tgz","integrity":"sha512-gPWtfUq2+CdDv92iXbHhb97TflXLOfVdz45qX2D/+XcnC9u6RSUo4U8Nj4lA0nvnsISzAfuEqClc51NItxFkNg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBxJJ+3t4xcCEAzZ9/xE5GOnD7tuLuqGw3TRVw7NXvcwAiBPYRboHmb0V4MDWtsbENHqlIZIvVzAICVSnw7507n83g=="}]},"directories":{}},"1.3.0":{"name":"unassert","description":"Encourage Design by Contract (DbC) by writing assertions in production code, and compiling them away from release","version":"1.3.0","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"http://github.com/twada"},"bugs":{"url":"https://github.com/twada/unassert/issues"},"dependencies":{"deep-equal":"^1.0.0","escallmatch":"^1.4.1","esprima":"^2.5.0","espurify":"^1.3.0","estraverse":"^4.1.0"},"devDependencies":{"escodegen":"^1.7.0","mocha":"^2.3.3"},"files":["README.md","CHANGELOG.md","index.js","package.json"],"homepage":"http://github.com/twada/unassert","keywords":["DbC","assert","assertion"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+ssh://git@github.com/twada/unassert.git"},"scripts":{"test":"mocha"},"gitHead":"0310a11e27fa9fba7c72aab92cc5b7befbe9e03d","_id":"unassert@1.3.0","_shasum":"bd4147be7b3db6fd651e7782faf2496cfced260e","_from":".","_npmVersion":"2.11.3","_nodeVersion":"0.12.7","_npmUser":{"name":"twada","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"twada","email":"takuto.wada@gmail.com"}],"dist":{"shasum":"bd4147be7b3db6fd651e7782faf2496cfced260e","tarball":"https://registry.npmjs.org/unassert/-/unassert-1.3.0.tgz","integrity":"sha512-MXixCcHusI8Ctkxv4i3kcSpLlAcBITWStBe3uVt1+eO5mAZeohaQCrwX0Tmd57Ai5zl5AQ/EfxcFLMvUk5U4Vg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCmKfIoN/wXcyqJ9TBJ53E6ssLgjk5lIXy+VU/Zu1edlgIgSoN0sCBUE5ZOo3hDQx53OWH73ROyE26DUneDTu4aoUI="}]},"directories":{}},"1.3.1":{"name":"unassert","description":"Encourage reliable programming by writing assertions in production code, and compiling them away from release","version":"1.3.1","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"http://github.com/twada"},"bugs":{"url":"https://github.com/twada/unassert/issues"},"dependencies":{"deep-equal":"^1.0.0","escallmatch":"^1.4.1","esprima":"^2.5.0","espurify":"^1.3.0","estraverse":"^4.1.0"},"devDependencies":{"escodegen":"^1.7.0","mocha":"^2.3.3"},"files":["README.md","CHANGELOG.md","index.js","package.json"],"homepage":"http://github.com/twada/unassert","keywords":["DbC","assert","assertion"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+ssh://git@github.com/twada/unassert.git"},"scripts":{"test":"mocha"},"gitHead":"69207e794912d89f58670273cd5828798a078332","_id":"unassert@1.3.1","_shasum":"53490a935098052673680745c49f0550771e3569","_from":".","_npmVersion":"3.3.12","_nodeVersion":"5.1.0","_npmUser":{"name":"twada","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"twada","email":"takuto.wada@gmail.com"}],"dist":{"shasum":"53490a935098052673680745c49f0550771e3569","tarball":"https://registry.npmjs.org/unassert/-/unassert-1.3.1.tgz","integrity":"sha512-BywGgO5SlxsKzXvUCRDchsV3gcot74ZVZD0E3TbvNd/L9hSzkiu/Rv0gVs9mzQ+2ilrPa+cFwRS/tOQbTVSLtA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDUK8RKJFSfO/+SRrjh8EmgeidDEu0sdZpNtwArpsHKGwIgEeHoXLEFzJKdy571V1/Nxic1/QIApPGYVIughW/KDqc="}]},"directories":{}},"1.4.0":{"name":"unassert","description":"Encourage reliable programming by writing assertions in production code, and compiling them away from release","version":"1.4.0","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"bugs":{"url":"https://github.com/twada/unassert/issues"},"dependencies":{"deep-equal":"^1.0.0","escallmatch":"^1.4.1","esprima":"^2.5.0","espurify":"^1.3.0","estraverse":"^4.1.0"},"devDependencies":{"escodegen":"^1.7.0","mocha":"^2.3.3"},"files":["README.md","CHANGELOG.md","index.js","package.json"],"homepage":"https://github.com/twada/unassert","keywords":["DbC","unassert","assert","assertion"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+https://github.com/twada/unassert.git"},"scripts":{"test":"mocha"},"gitHead":"2253e035a429c776bb46c34bb393472b0373f97e","_id":"unassert@1.4.0","_shasum":"806811184a0e7f5a3b6b69994752279cdd9bdc74","_from":".","_npmVersion":"3.8.6","_nodeVersion":"6.0.0","_npmUser":{"name":"twada","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"twada","email":"takuto.wada@gmail.com"}],"dist":{"shasum":"806811184a0e7f5a3b6b69994752279cdd9bdc74","tarball":"https://registry.npmjs.org/unassert/-/unassert-1.4.0.tgz","integrity":"sha512-41rJbg+w+LO6hmNk3i1XxWM+dr8IjGpdRwrdIyMoqAN17LvmF0sZ7XgGkPqKCqX1/lTO0DdAHJb7QoUBSVl5Ng==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHMsQ6oa14JNTJ3TDr6XidDaA4w4fTk+asiSNDjh6uPBAiA6uLMI6XDxxUjzUL4vrmcZA/gwkdgPO2joha3qskKVuA=="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/unassert-1.4.0.tgz_1462149701692_0.4893607690464705"},"directories":{}},"1.4.1":{"name":"unassert","description":"Encourage reliable programming by writing assertions in production code, and compiling them away from release","version":"1.4.1","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"bugs":{"url":"https://github.com/twada/unassert/issues"},"dependencies":{"deep-equal":"^1.0.0","escallmatch":"^1.4.1","esprima":"^2.5.0","espurify":"^1.3.0","estraverse":"^4.1.0","esutils":"^2.0.2"},"devDependencies":{"escodegen":"^1.7.0","mocha":"^2.3.3"},"files":["README.md","CHANGELOG.md","index.js","package.json"],"homepage":"https://github.com/twada/unassert","keywords":["DbC","unassert","assert","assertion"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+https://github.com/twada/unassert.git"},"scripts":{"test":"mocha"},"gitHead":"b659d84d758929c3f8dad03306092023ba684eb5","_id":"unassert@1.4.1","_shasum":"b3e890e4a4c5c77249a6d525dd4b4bc8b8f6d6b4","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.3.0","_npmUser":{"name":"twada","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"twada","email":"takuto.wada@gmail.com"}],"dist":{"shasum":"b3e890e4a4c5c77249a6d525dd4b4bc8b8f6d6b4","tarball":"https://registry.npmjs.org/unassert/-/unassert-1.4.1.tgz","integrity":"sha512-1XUlVqIv/sjgF9PsC/mg7dUxwuWhF9vfRTZ2rrfyzlzlrnFfVoxq9huAiir5zemOamkFj7OPZLq3/E1qx3Q5Uw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCS4HfVm8923jdrXy8nZcQM5x3gF1+/r7adV6pnGp1lUgIhAMMp0q3tMEC0xFiuxE+B7mczZYJ+X95/+tltmjOqQg62"}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/unassert-1.4.1.tgz_1469149081818_0.27964089903980494"},"directories":{}},"1.5.0":{"name":"unassert","description":"Encourage reliable programming by writing assertions in production code, and compiling them away from release","version":"1.5.0","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"bugs":{"url":"https://github.com/unassert-js/unassert/issues"},"dependencies":{"acorn":"^4.0.0","deep-equal":"^1.0.0","escallmatch":"^1.5.0","espurify":"^1.3.0","estraverse":"^4.1.0","esutils":"^2.0.2","object-assign":"^4.1.0"},"devDependencies":{"escodegen":"^1.7.0","mocha":"^2.3.3"},"files":["README.md","CHANGELOG.md","LICENSE","index.js","lib","package.json"],"homepage":"https://github.com/unassert-js/unassert","keywords":["DbC","unassert","assert","assertion"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+https://github.com/unassert-js/unassert.git"},"scripts":{"test":"mocha"},"gitHead":"4f991df65f294618e30bfbfd9a6a3a2aee9ee5e6","_id":"unassert@1.5.0","_shasum":"87c9ddc5db36d9e93884f048b10e4c564503f668","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.1.0","_npmUser":{"name":"twada","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"twada","email":"takuto.wada@gmail.com"}],"dist":{"shasum":"87c9ddc5db36d9e93884f048b10e4c564503f668","tarball":"https://registry.npmjs.org/unassert/-/unassert-1.5.0.tgz","integrity":"sha512-R/t0hxOcUD+Ij+mBPSsEcg1WYch8Tf9m6tTltf5WTlzK4ZEc2+c7O2eq/mA04lgmygWPEszO6claq+DnMbIyfg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDMYkM9R6wGLKA2FdEXEtif+c4wOJ+8w3frl5xPTinfMQIhALLbeoEH5RQx6sWW3tj2VwuW7fTsB0eITzWmr6ZKaH95"}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/unassert-1.5.0.tgz_1482123413813_0.41525213536806405"},"directories":{}},"1.5.1":{"name":"unassert","description":"Encourages programming with assertions by providing tools to compile them away","version":"1.5.1","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"bugs":{"url":"https://github.com/unassert-js/unassert/issues"},"dependencies":{"acorn":"^4.0.0","call-matcher":"^1.0.1","deep-equal":"^1.0.0","espurify":"^1.3.0","estraverse":"^4.1.0","esutils":"^2.0.2","object-assign":"^4.1.0"},"devDependencies":{"escodegen":"^1.7.0","mocha":"^2.3.3"},"files":["README.md","CHANGELOG.md","LICENSE","index.js","lib","package.json"],"homepage":"https://github.com/unassert-js/unassert","keywords":["DbC","unassert","assert","assertion"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+https://github.com/unassert-js/unassert.git"},"scripts":{"test":"mocha"},"gitHead":"bf92f9804d8c1fb63b0421da52385522af5bd0e0","_id":"unassert@1.5.1","_shasum":"cbc88ec387417c5a5e4c02d3cd07be98bd75ff76","_from":".","_npmVersion":"3.10.9","_nodeVersion":"7.1.0","_npmUser":{"name":"twada","email":"takuto.wada@gmail.com"},"maintainers":[{"name":"twada","email":"takuto.wada@gmail.com"}],"dist":{"shasum":"cbc88ec387417c5a5e4c02d3cd07be98bd75ff76","tarball":"https://registry.npmjs.org/unassert/-/unassert-1.5.1.tgz","integrity":"sha512-HgZK/PvOYm2uCDRQ1O7jDF3xunuJl4AyXBzxbnL+A5Ld9ilYxkdN4VH6Rc5R6QxjsF8o6H5Pv6R1CzgYJnxQkA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDpUrZVrrzZfXSexdMT/WB6/9dpD/upHthLnyF+r5b60gIgP1R2BzLL2DH90TSKbT0KFom4N5plHE2xO9h6R7euB/0="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/unassert-1.5.1.tgz_1483280582362_0.5309837164822966"},"directories":{}},"1.6.0":{"name":"unassert","description":"Encourages programming with assertions by providing tools to compile them away","version":"1.6.0","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"bugs":{"url":"https://github.com/unassert-js/unassert/issues"},"contributors":[{"name":"Renée Kooi","url":"https://github.com/goto-bus-stop"}],"dependencies":{"acorn":"^7.0.0","call-matcher":"^2.0.0","deep-equal":"^1.0.0","espurify":"^2.0.1","estraverse":"^4.1.0","esutils":"^2.0.2","object-assign":"^4.1.0"},"devDependencies":{"escodegen":"^1.7.0","mocha":"^6.0.0"},"homepage":"https://github.com/unassert-js/unassert","keywords":["DbC","unassert","assert","assertion"],"license":"MIT","main":"index.js","repository":{"type":"git","url":"git+https://github.com/unassert-js/unassert.git"},"scripts":{"test":"mocha"},"gitHead":"273e21c719f9f8665f8c309cf0845ca0dacd2f3f","_id":"unassert@1.6.0","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-GoMtWTwGSxSFuRD0NKmbjlx3VJkgvSogzDzMPpJXYmBZv6MIWButsyMqEYhMx3NI4osXACcZA9mXiBteXyJtRw==","shasum":"ceb6d39ce47c6d2bfa9cb3cab407352cbfb60a19","tarball":"https://registry.npmjs.org/unassert/-/unassert-1.6.0.tgz","fileCount":11,"unpackedSize":23507,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdhIjmCRA9TVsSAnZWagAAecYQAKKyZSSyAkSReY8Szx8V\nWMI8ZCSc5FvwsU4NsQNOJk41r8np/Aj2xDJCJMl7qZZvqT4ZKEy96QUpfA2v\nShOBUUpRtu3qx1tMz8DfgXK+akE8MXNydW/JKwIaGlNmlhKQTHqUPFfS15dD\njajfCPJ/l6sbw7wmqNsAwDxBHTJa6HepSwTfZTRbZhSVm0KK5WwLMlYVswKk\nHnDlvZfymGbRkIM4h7j3ljVLx3X+O5efcd8U1/6o2rKQQogVbJcfSV+J/lIv\nFND3bxx2ONM7RbnX/tnDvAeBawcH5LCBzoizbL3dko4X8w1XW1dBv+hlkS6V\nKAicOTmnmGcHI4bdmvyY9z/r9NkbOEqDc1P8jmGBc/k8wTfWxsZoNRefRT6G\nugRJ14Xoa0ZP5446rIaufY9XeoDfx76NwY64qLFpglDpRT3d5uCHbSUvTOQF\nLz8NOwSRH43cgBVC3GjQKqZW8kfzOnR4T73jGIcRCp+xLeCox/Zr4pJS409C\ndEJ1qMOvTw3iWHfLu6WBV7Oj4krHyiBsOI4fx3kKoIVMoarUapOIf9TxfZUK\np0eku/DhvR3UDtEviu04SfaIUeizjekpLEVp/9QzK9WXIebpzGe0X0n+K9qh\nIh0R0wNcy5PxK2YJSeawf6AQlprWxo702Xrf0CZDIzsmU1X+b2/AMhQmfmmh\npVJz\r\n=X55P\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB7kvjGfDri76F/0gHEdU6yHRqKbp177cDp1jotEhmX/AiEAlhqJVjrG2rLhPlFudzRXkEeRf0ENcuqCOFUzc1WwWl0="}]},"maintainers":[{"name":"twada","email":"takuto.wada@gmail.com"}],"_npmUser":{"name":"twada","email":"takuto.wada@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/unassert_1.6.0_1568966885865_0.555586546409454"},"_hasShrinkwrap":false},"2.0.0":{"name":"unassert","description":"Encourages programming with assertions by providing tools to compile them away","version":"2.0.0","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"bugs":{"url":"https://github.com/unassert-js/unassert/issues"},"contributors":[{"name":"Renée Kooi","url":"https://github.com/goto-bus-stop"}],"dependencies":{"estraverse":"^5.0.0"},"devDependencies":{"@twada/benchmark-commits":"^0.1.0","acorn":"^8.0.0","escodegen":"^2.0.0","mocha":"^10.0.0","rimraf":"^3.0.2","rollup":"^2.77.0","semistandard":"^16.0.0","snazzy":"^9.0.0"},"main":"./dist/index.cjs","exports":{"import":"./src/index.mjs","require":"./dist/index.cjs"},"homepage":"https://github.com/unassert-js/unassert","keywords":["DbC","unassert","assert","assertion"],"license":"MIT","repository":{"type":"git","url":"git+https://github.com/unassert-js/unassert.git"},"scripts":{"preversion":"npm run build && npm test","build":"rimraf dist && rollup -c","lint":"semistandard --verbose src/*.mjs test/*.mjs | snazzy","fmt":"semistandard --fix src/*.mjs test/*.mjs","test":"npm run lint && mocha test"},"semistandard":{"globals":["describe","beforeEach","it"]},"gitHead":"ba624554a8f8013fdb2b0ef16f91b8471c15f2f3","_id":"unassert@2.0.0","_nodeVersion":"18.6.0","_npmVersion":"8.13.2","dist":{"integrity":"sha512-45E+m8zz+utoQPxkkXAsKPrtjE0GzEbMwzmrcM4inlPhcOxIJRwE+AVxkZfgIWTR3gWG2Daxa7mHFRUwMUfyzg==","shasum":"a2bf2f16303c8961b68c67dc88395ae5e6dbe9af","tarball":"https://registry.npmjs.org/unassert/-/unassert-2.0.0.tgz","fileCount":6,"unpackedSize":37087,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD9VqRlLIvFdgwQg0VpBOvW9+NI87Aw5B91+twHsNfQ3QIgXRom4Gm5qUD05ESwP+Ly9kqzIKc0mj6ty6I1jY31MUs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi56qCACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqdAA/8DMbzUuGovLK5SGMDZEvBW+1NzkX1ei61XxRFo8dC9gaZ0quM\r\nDLVUoBE/svaTZR4R6L+jIchpNeCZun9ObWIznNGxl76oP9bWHXkqKE4aaZ2y\r\nXoybbhfoDJckNf6Zt7LpIoujewJW17q30pW/8RVzQLk0x/mxKNExbD/Rke6V\r\nKFYlUyqOCNMZo83MAB6HWDfqVLxE4aztvcCCwTcF1hVjzun7vKMMMguygC6F\r\niZJrDzKjI3nxsJcr5FKISNMp+iqJXDK3H/j2O5SRL1xzxhgzZHf3R1qfIroA\r\niq+MdsIw+XU69ZxjHqqIn1q93WKUjNwoXvReLGurZWqxybV1j/0oCBExufTK\r\nV3IqRH+6i9bs+94C/Wg5+2/xyT9i7dUJkOHnm9hpMou2MLCdLLnF/Td7ePu+\r\nbhJVAzoTs/KE5IyIXDRJ/iSCBrfDK9nP4qmIfysx5Alquuj1WkWxsgXfNdAO\r\n9INSROAwexj7dMl2md7jy4u7kuD5OcYjSUxBbbX128FwRP871Nc8C5rAFgqy\r\nTYXvnuZU5Bg9BvDD9C74ediIzZYoP0cb74zdN/C/CmNcpgbcknfDmytfUqac\r\nw5i9pf93OFraxX7Ha3rz0pNA/Av4sQk0ymr1WSAzjB+aMPsUMph7dayVyZAw\r\n6EbEqx/QJZOIjcaj6wQA5TkZmRdCYsQoibw=\r\n=U//j\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"twada","email":"takuto.wada@gmail.com"},"directories":{},"maintainers":[{"name":"twada","email":"takuto.wada@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/unassert_2.0.0_1659349633901_0.613971571512278"},"_hasShrinkwrap":false},"2.0.1":{"name":"unassert","description":"Encourages programming with assertions by providing tools to compile them away","version":"2.0.1","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"bugs":{"url":"https://github.com/unassert-js/unassert/issues"},"contributors":[{"name":"Renée Kooi","url":"https://github.com/goto-bus-stop"}],"dependencies":{"estraverse":"^5.0.0"},"devDependencies":{"@twada/benchmark-commits":"^0.1.0","acorn":"^8.0.0","escodegen":"^2.0.0","mocha":"^10.0.0","rimraf":"^3.0.2","rollup":"^2.77.0","semistandard":"^16.0.0","snazzy":"^9.0.0"},"main":"./dist/index.cjs","exports":[{"import":"./src/index.mjs","require":"./dist/index.cjs","default":"./dist/index.cjs"},"./dist/index.cjs"],"homepage":"https://github.com/unassert-js/unassert","keywords":["DbC","unassert","assert","assertion"],"license":"MIT","repository":{"type":"git","url":"git+https://github.com/unassert-js/unassert.git"},"scripts":{"preversion":"npm run build && npm test","build":"rimraf dist && rollup -c","lint":"semistandard --verbose src/*.mjs test/*.mjs | snazzy","fmt":"semistandard --fix src/*.mjs test/*.mjs","test":"npm run lint && mocha test"},"semistandard":{"globals":["describe","beforeEach","it"]},"gitHead":"bf1c727a77f5d0367642a9b8b47449edcb5e1cd8","_id":"unassert@2.0.1","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-KyWlyX+wCFS6HJ0GrbC92z7T5RtQz88eF/GfniXbQyOrw6IZBXxpfRZACwVFHjaiYxAJcghMqSn60nb1eHm7xA==","shasum":"ec4d03451826edd2f3ef4a219e5ed6cfa8370f8c","tarball":"https://registry.npmjs.org/unassert/-/unassert-2.0.1.tgz","fileCount":6,"unpackedSize":37395,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE3zLqf1V7vqytxPIkpqejS+EuU2Gl25Zr8lt+cUtFzbAiEA1b5SvBvCuo0eeIyWBFNcIuzoliuUBsfaYkEQtZppdyU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkP4lhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqSkA//TG0D4lGKEZ+kgZG6df4YmSsMh4IifzVFzAxr6+/wBKZtOaBn\r\ncdkfZDWb24TqOttis5a3he+8gmsgV0sm0Q+3URR0YhiPer51dl6ZE0D/t98F\r\nrzNRRnanfkcK29ES3aXqSgUID88L1nefSbvZlroiODEg8PhqblxWA/dbuNXq\r\nkdluMgesujnK7ETqg4B93JWOzyJfiZnAT9dv3RGqrEB+AfGMq552w4u6t8DX\r\nLceABE0vFJ7r0SfkHVusVA6CM22dH1ltidNZ80uNQyAWOSKBaCRGBMjb/SsZ\r\ny+2xsxy7YCmEkmrPZjTfjAdBnj6FFHwHjOxu9nZ13tk53wz77Djl2UYX1ibC\r\nNnHFqlR4CsdpH7nXpCiZYpvKdD+bLNO3oqfnOUp/pmyPds2D0L9nbhCYRn9p\r\nL1o3ctC+gJdShqSs3lLt9hq5QmMjOVkHNp1EWQtQ0khrqs2Us0yq+lTujc2G\r\n3N2CFtuNtYies8TvfUEYe/Oqx4RZQguDB1xS4jDb8WE4NaUw0vDD4lc82wFT\r\nPpdDqG7r8bSj+3Jy99/qYKxNifbtVMzfWH27BzLqyKlM7giW9icPIzzsRvEQ\r\nNtdbyZWSqsTiWrNdt7wm6MBPyC5SAga9WUyK5q2OqWfN970pHBQqMwXH6F+6\r\nKn039Hi42hWzHbvL/xNljBxH5YysjjcVswE=\r\n=xIQH\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"twada","email":"takuto.wada@gmail.com"},"directories":{},"maintainers":[{"name":"twada","email":"takuto.wada@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/unassert_2.0.1_1681885537005_0.7995487546984277"},"_hasShrinkwrap":false},"2.0.2":{"name":"unassert","description":"Encourages programming with assertions by providing tools to compile them away","version":"2.0.2","author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"bugs":{"url":"https://github.com/unassert-js/unassert/issues"},"contributors":[{"name":"Renée Kooi","url":"https://github.com/goto-bus-stop"},{"name":"Jordan Harband","url":"https://github.com/ljharb"}],"dependencies":{"estraverse":"^5.0.0"},"devDependencies":{"@twada/benchmark-commits":"^0.1.0","acorn":"^8.0.0","escodegen":"^2.0.0","mocha":"^10.0.0","rimraf":"^3.0.2","rollup":"^2.77.0","semistandard":"^16.0.0","snazzy":"^9.0.0"},"main":"./dist/index.cjs","exports":{".":[{"import":"./src/index.mjs","require":"./dist/index.cjs","default":"./dist/index.cjs"},"./dist/index.cjs"],"./package.json":"./package.json"},"homepage":"https://github.com/unassert-js/unassert","keywords":["DbC","unassert","assert","assertion"],"license":"MIT","repository":{"type":"git","url":"git+https://github.com/unassert-js/unassert.git"},"scripts":{"preversion":"npm run build && npm test","build":"rimraf dist && rollup -c","lint":"semistandard --verbose src/*.mjs test/*.mjs | snazzy","fmt":"semistandard --fix src/*.mjs test/*.mjs","test":"npm run lint && mocha test"},"semistandard":{"globals":["describe","beforeEach","it"]},"gitHead":"595089f73ec0d2a3becc431c21e2fc61537eb423","_id":"unassert@2.0.2","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-P6OOg/aRdQmWH+b0g+T4U+9MgL+DG7w6oQPG+N3F2IMuvvd1WfZ5alT/Rjik2lMFVyhfACUxF7PGP1VCwSHlQA==","shasum":"65f92dfaf7af72dfe238b20c57fa0eadca970a44","tarball":"https://registry.npmjs.org/unassert/-/unassert-2.0.2.tgz","fileCount":6,"unpackedSize":37833,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEss7bG1uzmZmjT2VUFovvNjc6cWqACEUxfPbrpYjiYaAiAQF/qLot4QsBYqFIqQcSNIKN/Ce30zIDN+yCttwmjQcg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkQDm+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpC0g/+M3Gnm0P7jhMvja+L1fh3bxb97o2EuznKRMMzp1pG9WDM12+C\r\n0DbgsSHRGPjCZ5Ioez8BLVsjkPmAptCEAd3z+kjLnG+NGNdzo6dODRJLFl8t\r\nPRs7OwO/ZoY0ykVLnbH0LpFdUjnqnxwBqle+bNvo/HX5l1zbQ6/7cbOJlKay\r\nGKWBZkSWrCINm48h/5xN4wF14ppDb+aXg1qel/zXDkGj59BqLFAiYr3opywH\r\ni0AAPsH4xBb+ZS/oc5YqE1Y6lHUJVnKfOED+BJtaySXjSiYhtRZuOgqavNlU\r\nbtXDtGm6n5/xvHcD76GD5S0M+uQVWGiIX5PgcyBeecc4XvZ8xmzcdWAvxTec\r\nVL2GNdSRcXV4BOV1We5QcQCintuZGl2qrXDNco4A2nqWIldOGz/NT0ixuS9p\r\nu964jqtudf2WcyuimP6gbjhGqxXnZ51V50sBQjLPrUD66VsSVJlyqy2Y4udX\r\nFizysU9unW754rhmT7lrG+RwM670Hksbz6ijM9J6+cVM5ggUnB2fR6Shi7ra\r\nP8/vjjgEp9N37W7tqYIoTlbE+0q5gBVf0PziKh+6NOeSvtMyx/l8VMhqm0MG\r\n0wT4HRqa6sl0LR7JprM3tjU3R4o4v5fsnAKzC9Xcp3CJHeiZHIeT+enhGQlC\r\ntkvx0FFnBiMOU7zEQUFU9iBDuAXdHyFthb8=\r\n=cILD\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"twada","email":"takuto.wada@gmail.com"},"directories":{},"maintainers":[{"name":"twada","email":"takuto.wada@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/unassert_2.0.2_1681930686431_0.24488021446239316"},"_hasShrinkwrap":false}},"readme":"[![unassert][unassert-banner]][unassert-url]\n\nEncourages [programming with assertions](https://en.wikipedia.org/wiki/Assertion_(software_development)) by providing tools to compile them away.\n\n[![Build Status][ci-image]][ci-url]\n[![NPM version][npm-image]][npm-url]\n[![Code Style][style-image]][style-url]\n[![License][license-image]][license-url]\n\nSee: \"[unassert - encourage reliable programming by writing assertions in production](http://www.slideshare.net/t_wada/unassert)\" -- talk at NodeFest 2015, and \"One more thing...\" in talk at NodeFest 2016, titled \"[From Library to Tool - power-assert as a General Purpose Assertion Enhancement Tool](https://speakerdeck.com/twada/from-library-to-tool-power-assert-as-a-general-purpose-assertion-enhancement-tool)\"\n\n\n#### RELATED MODULES\n\n- [unassertify](https://github.com/unassert-js/unassertify): Browserify transform for unassert\n- [babel-plugin-unassert](https://github.com/unassert-js/babel-plugin-unassert): Babel plugin for unassert\n- [webpack-unassert-loader](https://github.com/unassert-js/webpack-unassert-loader): Webpack loader for unassert\n- [gulp-unassert](https://github.com/unassert-js/gulp-unassert): Gulp plugin for unassert\n- [unassert-cli](https://github.com/unassert-js/unassert-cli): CLI for unassert\n- [rollup-plugin-unassert](https://github.com/unassert-js/rollup-plugin-unassert): RollupJS plugin for unassert\n\n\nINSTALL\n---------------------------------------\n\n```\n$ npm install --save-dev unassert\n```\n\n\nEXAMPLE\n---------------------------------------\n\nFor given `math.js` below,\n\n```javascript\nconst assert = require('node:assert');\n\nfunction add (a, b) {\n  assert(typeof a === 'number');\n  console.assert(!isNaN(a));\n  assert.equal(typeof b, 'number');\n  assert.ok(!isNaN(b));\n  return a + b;\n}\n```\n\nApply `unassertAst` then generate modified code to console.\n\nvia CJS code\n```javascript\nconst { unassertAst } = require('unassert');\nconst { parse } = require('acorn');\nconst { generate } = require('escodegen');\nconst { readFileSync } = require('node:fs');\nconst { join, dirname } = require('node:path');\n\nconst filepath = join(__dirname, 'math.js');\nconst ast = parse(readFileSync(filepath), { ecmaVersion: '2022' });\nconst modifiedAst = unassertAst(ast);\n\nconsole.log(generate(modifiedAst));\n```\n\nor via ESM code\n```javascript\nimport { unassertAst } from 'unassert';\nimport { parse } from 'acorn';\nimport { generate } from 'escodegen';\nimport { readFileSync } from 'node:fs';\nimport { join, dirname } from 'node:path';\nimport { fileURLToPath } from 'node:url';\nconst __dirname = dirname(fileURLToPath(import.meta.url));\n\nconst filepath = join(__dirname, 'math.js');\nconst ast = parse(readFileSync(filepath), { ecmaVersion: '2022' });\nconst modifiedAst = unassertAst(ast);\n\nconsole.log(generate(modifiedAst));\n```\n\nThen you will see assert calls disappear.\n\n```javascript\nfunction add(a, b) {\n  return a + b;\n}\n```\n\n\nAPI\n---------------------------------------\n\nunassert package exports three functions. [`unassertAst`](https://github.com/unassert-js/unassert#const-modifiedast--unassertastast-options) is the main function. [`createVisitor`](https://github.com/unassert-js/unassert#const-visitor--createvisitoroptions) and [`defaultOptions`](https://github.com/unassert-js/unassert#const-options--defaultoptions) are for customization.\n\n\n### const modifiedAst = unassertAst(ast, options)\n\n```javascript\nconst { unassertAst } = require('unassert')\n```\n\n```javascript\nimport { unassertAst } from 'unassert'\n```\n\n| return type                                                   |\n|:--------------------------------------------------------------|\n| `object` ([ECMAScript AST](https://github.com/estree/estree)) |\n\nRemove assertion calls from `ast` ([ECMAScript AST](https://github.com/estree/estree)). Default behaviour can be customized by `options`. `ast` is manipulated directly so returned `modifiedAst` will be the same instance of `ast`.\n\n#### options\n\nObject for configuration options. passed `options` is `Object.assign`ed with default options. If not passed, default options will be used.\n\n##### options.modules\n\nTarget module names for assertion call removal.\n\nFor example, the default target modules are as follows.\n\n```javascript\n{\n  modules: [\n    'assert',\n    'assert/strict',\n    'node:assert',\n    'node:assert/strict'\n  ]\n```\n\nIn this case, unassert will remove assert variable declarations such as,\n\n* `import assert from \"assert\"`\n* `import assert from \"assert/strict\"`\n* `import assert from \"node:assert\"`\n* `import assert from \"node:assert/strict\"`\n* `import * as assert from \"assert\"`\n* `import * as assert from \"node:assert\"`\n* `import * as assert from \"assert/strict\"`\n* `import * as assert from \"node:assert/strict\"`\n* `import { strict as assert } from \"assert\"`\n* `import { strict as assert } from \"node:assert\"`\n* `import { default as assert } from \"assert\"`\n* `import { default as assert } from \"node:assert\"`\n* `const assert = require(\"assert\")`\n* `const assert = require(\"node:assert\")`\n* `const assert = require(\"assert/strict\")`\n* `const assert = require(\"node:assert/strict\")`\n* `const assert = require(\"assert\").strict`\n* `const assert = require(\"node:assert\").strict`\n* `const { strict: assert } = require(\"assert\")`\n* `const { strict: assert } = require(\"node:assert\")`\n\nand assignments.\n\n* `assert = require(\"assert\")`\n* `assert = require(\"node:assert\")`\n* `assert = require(\"assert/strict\")`\n* `assert = require(\"node:assert/strict\")`\n* `assert = require(\"assert\").strict`\n* `assert = require(\"node:assert\").strict`\n\nIn this default case, unassert will remove assertion calls such as,\n\n* `assert(value, [message])`\n* `assert.ok(value, [message])`\n* `assert.equal(actual, expected, [message])`\n* `assert.notEqual(actual, expected, [message])`\n* `assert.strictEqual(actual, expected, [message])`\n* `assert.notStrictEqual(actual, expected, [message])`\n* `assert.deepEqual(actual, expected, [message])`\n* `assert.notDeepEqual(actual, expected, [message])`\n* `assert.deepStrictEqual(actual, expected, [message])`\n* `assert.notDeepStrictEqual(actual, expected, [message])`\n* `assert.match(string, regexp[, message])`\n* `assert.doesNotMatch(string, regexp[, message])`\n* `assert.throws(block, [error], [message])`\n* `assert.doesNotThrow(block, [message])`\n* `await assert.rejects(asyncFn, [error], [message])`\n* `await assert.doesNotReject(asyncFn, [error], [message])`\n* `assert.fail([message])`\n* `assert.fail(actual, expected, message, operator)`\n* `assert.ifError(value)`\n\nin addition, unassert removes `console.assert` calls as well.\n\n* `console.assert(value, [message])`\n\n\n#### Auto Variable Tracking\n\nunassert automatically removes assertion calls based on their imported variable names.\n\nSo if import declaration is as follows,\n\n* `import strictAssert, { ok, equal as eq } from 'node:assert/strict';`\n\nunassert removes all `strictAssert`, `ok`, `eq` calls.\n\nPlease see [customization example](https://github.com/unassert-js/unassert#example-1) for more details.\n\n\n### const visitor = createVisitor(options)\n\n```javascript\nconst { createVisitor } = require('unassert')\n```\n\n```javascript\nimport { createVisitor } from 'unassert'\n```\n\n| return type                                                                       |\n|:----------------------------------------------------------------------------------|\n| `object` (visitor object for [estraverse](https://github.com/estools/estraverse)) |\n\nCreate visitor object to be used with `estraverse.replace`. Visitor can be customized by `options`.\n\n\n### const options = defaultOptions()\n\n```javascript\nconst { defaultOptions } = require('unassert')\n```\n\n```javascript\nimport { defaultOptions } from 'unassert'\n```\n\nReturns default options object for `unassertAst` and `createVisitor` function. In other words, returns\n\n```javascript\n{\n  modules: [\n    'assert',\n    'assert/strict',\n    'node:assert',\n    'node:assert/strict'\n  ]\n}\n```\n\nCUSTOMIZATION\n---------------------------------------\n\nYou can customize options such as target module names.\n\n```javascript\n{\n  modules: [\n    'node:assert',\n    'node:assert/strict',\n    'power-assert',\n    'invariant',\n    'nanoassert',\n    'uvu/assert'\n  ]\n}\n```\n\n### example\n\nFor given `custom.js` below,\n\n```javascript\nimport invariant from 'invariant';\nimport nassert from 'nanoassert';\nimport * as uvuassert from 'uvu/assert';\nimport { strict as powerAssert } from 'power-assert';\nimport { default as looseAssert } from 'node:assert';\nimport strictAssert, { ok, equal as eq } from 'node:assert/strict';\n\nasync function add (a, b) {\n  strictAssert(!isNaN(a));\n  looseAssert(typeof a === 'number');\n  eq(typeof b, 'number');\n  ok(!isNaN(b));\n  powerAssert(typeof a === typeof b);\n\n  nassert(!isNaN(a));\n\n  uvuassert.is(Math.sqrt(4), 2);\n  uvuassert.is(Math.sqrt(144), 12);\n  uvuassert.is(Math.sqrt(2), Math.SQRT2);\n\n  invariant(someTruthyVal, 'This will not throw');\n  invariant(someFalseyVal, 'This will throw an error with this message');\n\n  await strictAssert.rejects(prms);\n  await strictAssert.doesNotReject(prms2);\n\n  return a + b;\n}\n```\n\nApply `unassertAst` with customized options then generate modified code to console.\n\n```javascript\nimport { unassertAst } from 'unassert';\nimport { parse } from 'acorn';\nimport { generate } from 'escodegen';\nimport { readFileSync } from 'node:fs';\nimport { join, dirname } from 'node:path';\nimport { fileURLToPath } from 'node:url';\nconst __dirname = dirname(fileURLToPath(import.meta.url));\n\nconst filepath = join(__dirname, 'custom.js');\nconst ast = parse(readFileSync(filepath), { ecmaVersion: '2022' });\nconst modifiedAst = unassertAst(ast, {\n  modules: [\n    'node:assert',\n    'node:assert/strict',\n    'power-assert',\n    'invariant',\n    'nanoassert',\n    'uvu/assert'\n  ]\n});\n\nconsole.log(generate(modifiedAst));\n```\n\nThen you will see all assert calls disappear.\n\n```javascript\nasync function add(a, b) {\n  return a + b;\n}\n```\n\n\nOUR SUPPORT POLICY\n---------------------------------------\n\nWe support Node under maintenance. In other words, we stop supporting old Node version when [their maintenance ends](https://github.com/nodejs/LTS).\n\nThis means that any other environment is not supported.\n\nNOTE: If unassert works in any of the unsupported environments, it is purely coincidental and has no bearing on future compatibility. Use at your own risk.\n\n\nAUTHOR\n---------------------------------------\n* [Takuto Wada](https://github.com/twada)\n\n\nCONTRIBUTORS\n---------------------------------------\n* [Renée Kooi](https://github.com/goto-bus-stop)\n* [Jordan Harband](https://github.com/ljharb)\n\n\nLICENSE\n---------------------------------------\nLicensed under the [MIT](https://github.com/unassert-js/unassert/blob/master/LICENSE) license.\n\n\n[unassert-url]: https://github.com/unassert-js/unassert\n[unassert-banner]: https://raw.githubusercontent.com/unassert-js/unassert-js-logo/master/banner/banner-official-fullcolor.png\n\n[npm-url]: https://npmjs.org/package/unassert\n[npm-image]: https://badge.fury.io/js/unassert.svg\n\n[ci-image]: https://github.com/unassert-js/unassert/workflows/Node.js%20CI/badge.svg\n[ci-url]: https://github.com/unassert-js/unassert/actions?query=workflow%3A%22Node.js+CI%22\n\n[style-url]: https://github.com/standard/semistandard\n[style-image]: https://img.shields.io/badge/code%20style-semistandard-brightgreen.svg\n\n[license-url]: https://github.com/unassert-js/unassert/blob/master/LICENSE\n[license-image]: https://img.shields.io/badge/license-MIT-brightgreen.svg\n","maintainers":[{"name":"twada","email":"takuto.wada@gmail.com"}],"time":{"modified":"2023-04-19T18:58:06.719Z","created":"2015-05-27T01:22:50.723Z","1.0.0":"2015-05-27T01:22:50.723Z","1.1.0":"2015-08-10T16:37:01.504Z","1.2.0":"2015-09-25T09:18:36.161Z","1.2.1":"2015-09-28T17:19:15.714Z","1.3.0":"2015-10-05T16:15:57.369Z","1.3.1":"2015-12-08T14:16:41.490Z","1.4.0":"2016-05-02T00:41:42.073Z","1.4.1":"2016-07-22T00:58:02.040Z","1.5.0":"2016-12-19T04:56:54.042Z","1.5.1":"2017-01-01T14:23:04.178Z","1.6.0":"2019-09-20T08:08:06.064Z","2.0.0":"2022-08-01T10:27:14.140Z","2.0.1":"2023-04-19T06:25:37.102Z","2.0.2":"2023-04-19T18:58:06.597Z"},"homepage":"https://github.com/unassert-js/unassert","keywords":["DbC","unassert","assert","assertion"],"repository":{"type":"git","url":"git+https://github.com/unassert-js/unassert.git"},"author":{"name":"Takuto Wada","email":"takuto.wada@gmail.com","url":"https://github.com/twada"},"bugs":{"url":"https://github.com/unassert-js/unassert/issues"},"license":"MIT","readmeFilename":"README.md","users":{"icognivator":true,"cognivator":true},"contributors":[{"name":"Renée Kooi","url":"https://github.com/goto-bus-stop"},{"name":"Jordan Harband","url":"https://github.com/ljharb"}]}