{"_id":"haraka-config","_rev":"47-050161b506ce77789831df2d3aba7ffa","name":"haraka-config","dist-tags":{"latest":"1.7.0"},"versions":{"1.0.0":{"name":"haraka-config","version":"1.0.0","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.0","maintainers":[{"name":"haraka","email":"haraka.mail@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"16e3e9e46b93e9d3e296c15081b3e4cf1b8041e8","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.0.tgz","integrity":"sha512-brFCLCs828XY3xbziuM6iZHVmuQaXJy7NXrdc/l+/NXTP5E8nme9NkGgP+/4xiBaslnO+0izbUZ+eXS5XL3EtA==","signatures":[{"sig":"MEQCIFpXZIC/2MX8uhsw0ZlCD/Lw0MT9zNjNoZbIg4yIdmQ3AiBbwEeOLrPe032E2b+5bHoQu6koFQkCcRBPttRmWHco3w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"16e3e9e46b93e9d3e296c15081b3e4cf1b8041e8","engines":{"node":">= 4.3"},"gitHead":"1cae27e53c9bf61705437f3a133b2f4d77e370f2","scripts":{"test":"./run_tests"},"_npmUser":{"name":"haraka","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"2.14.16","description":"Haraka's config file loader","directories":{},"_nodeVersion":"4.2.6","dependencies":{"js-yaml":"^3.5.3"},"eslintConfig":{"env":{"node":true},"rules":{"indent":[2,4,{"SwitchCase":1}],"one-var":[2,"never"],"camelcase":[0,{"properties":"never"}],"dot-notation":2,"keyword-spacing":[2,{"overrides":{}}],"no-trailing-spaces":[2,{"skipBlankLines":false}]}},"devDependencies":{"grunt":"*","eslint":">=2.0.0","nodeunit":"^0.9.1","grunt-eslint":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.0.tgz_1456158709713_0.9696276669856161","host":"packages-6-west.internal.npmjs.com"}},"1.0.1":{"name":"haraka-config","version":"1.0.1","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.1","maintainers":[{"name":"haraka","email":"haraka.mail@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"857ec4a556247d300ce7b7cb705d8b403e008a08","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.1.tgz","integrity":"sha512-sxGpHpPRw3ZgCP4J+bkDbb3Cycv6ruiZJgut0LE/whc8cVdv4+NQTbpj0XeY+1tWP4KqIXkXtl2gD0q3eIk6Zg==","signatures":[{"sig":"MEQCIGmf+H84CuB+dRVyg9Bgvf2mlBIs7S0WzhvqK13fKzSpAiAm/Od4E4rA7noyg/z3B7/9mbhDLFdxVzvV84mI2okuAA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"config.js","_from":".","_shasum":"857ec4a556247d300ce7b7cb705d8b403e008a08","engines":{"node":">= 4.3"},"gitHead":"7b37e120610eab3326f1827c1246cfb3e0ea5bc1","scripts":{"test":"./run_tests"},"_npmUser":{"name":"haraka","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"2.14.16","description":"Haraka's config file loader","directories":{},"_nodeVersion":"4.2.6","dependencies":{"js-yaml":"^3.5.3"},"eslintConfig":{"env":{"node":true},"rules":{"indent":[2,4,{"SwitchCase":1}],"one-var":[2,"never"],"camelcase":[0,{"properties":"never"}],"dot-notation":2,"keyword-spacing":[2,{"overrides":{}}],"no-trailing-spaces":[2,{"skipBlankLines":false}]}},"devDependencies":{"grunt":"*","eslint":">=2.0.0","nodeunit":"^0.9.1","grunt-eslint":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.1.tgz_1456384489514_0.6785543351434171","host":"packages-6-west.internal.npmjs.com"}},"1.0.2":{"name":"haraka-config","version":"1.0.2","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.2","maintainers":[{"name":"haraka","email":"haraka.mail@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"8271f5d56ae72a8b65bfcef99e61c41b42bc9439","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.2.tgz","integrity":"sha512-IGy6vLcfcCVBU8vuFBifBGD1I0DAnS8oPJRpnyN12QqcfYSvWyrzPACSiIn9SYenj/GX66F5AGSC8e658q77qg==","signatures":[{"sig":"MEUCIAlxkmfTAFXYkuwvhML10H8CztVOT36PYNQ4ZnNSaBOcAiEAveTNBOGhixEbViGPGr6f6Ju2C9Xo4GZjLUW0H8EoUz8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"config.js","_from":".","_shasum":"8271f5d56ae72a8b65bfcef99e61c41b42bc9439","engines":{"node":">= 4.3"},"gitHead":"f56b6a92ee4cc673b80730eb1c83abc3107f41e7","scripts":{"test":"./run_tests"},"_npmUser":{"name":"haraka","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"2.14.16","description":"Haraka's config file loader","directories":{},"_nodeVersion":"4.2.6","dependencies":{"js-yaml":"^3.5.3"},"eslintConfig":{"env":{"node":true},"rules":{"indent":[2,4,{"SwitchCase":1}],"one-var":[2,"never"],"camelcase":[0,{"properties":"never"}],"dot-notation":2,"keyword-spacing":[2,{"overrides":{}}],"no-trailing-spaces":[2,{"skipBlankLines":false}]}},"devDependencies":{"grunt":"*","eslint":">=2.0.0","nodeunit":"^0.9.1","grunt-eslint":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.2.tgz_1456697036284_0.6021997628267854","host":"packages-6-west.internal.npmjs.com"}},"1.0.3":{"name":"haraka-config","version":"1.0.3","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.3","maintainers":[{"name":"haraka","email":"haraka.mail@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"9eca4f856abc96d4e4b553c08c21770a8c99540b","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.3.tgz","integrity":"sha512-IWmkrZIXDpVJ5KgBlLN+bvnlO33AZS6Ry66OVkicRb85uykIm9boKZ0QEZX1rzvbTcE/Vo5e3X3VG8xU8LWr4A==","signatures":[{"sig":"MEQCIF44EgyKW6MOSyC6scOHeGuPvpTBL4bN92x6gqrKarHAAiAXHVqqAe17eQUjZohXW2tKaGB/RFsEGPHUQTUdArWDGw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"config.js","_from":".","_shasum":"9eca4f856abc96d4e4b553c08c21770a8c99540b","engines":{"node":">= 0.10.43"},"gitHead":"0f31e3774b72776f4dc346f73f3547dcbf43878c","scripts":{"test":"./run_tests"},"_npmUser":{"name":"haraka","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"3.8.3","description":"Haraka's config file loader","directories":{},"_nodeVersion":"4.4.0","dependencies":{"js-yaml":"^3.5.3"},"eslintConfig":{"env":{"node":true},"rules":{"indent":[2,4,{"SwitchCase":1}],"one-var":[2,"never"],"camelcase":[0,{"properties":"never"}],"dot-notation":2,"keyword-spacing":[2,{"overrides":{}}],"no-trailing-spaces":[2,{"skipBlankLines":false}]}},"devDependencies":{"grunt":"*","eslint":">=2.0.0","nodeunit":"^0.9.1","grunt-eslint":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.3.tgz_1459532048314_0.8119383873417974","host":"packages-12-west.internal.npmjs.com"}},"1.0.4":{"name":"haraka-config","version":"1.0.4","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.4","maintainers":[{"name":"haraka","email":"haraka.mail@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"25774e02a2b569756f0fa677718d7cced4922ad3","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.4.tgz","integrity":"sha512-ajOVQjFuo5dN5L8bNoxXFwUEtya3Y8vSGhnx5HKOv2ytDxrE/xDOoAqV9zkxHAr4pU7OKMAoPOgQ+PjtZ7RhyA==","signatures":[{"sig":"MEQCIEHokJD+02QCF3wwIU0ARionFqjlkYqhQ+TLQF7f+x99AiBqJx2qjKNlY7uZlla9q/qNJFOikvkr/D+2qHlO4AxqgA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"config.js","_from":".","_shasum":"25774e02a2b569756f0fa677718d7cced4922ad3","engines":{"node":">= 0.12.16"},"gitHead":"6ae5d4c6ce92fdbff2d92cede20c3194a3eacb8e","scripts":{"lint":"grunt lint","test":"./run_tests","coverage":"istanbul cov run_tests"},"_npmUser":{"name":"haraka","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"2.11.3","description":"Haraka's config file loader","directories":{},"_nodeVersion":"4.6.0","dependencies":{"js-yaml":"^3.5.3"},"eslintConfig":{"env":{"node":true},"rules":{"indent":[2,4,{"SwitchCase":1}],"one-var":[2,"never"],"camelcase":[0,{"properties":"never"}],"dot-notation":2,"keyword-spacing":[2,{"overrides":{}}],"no-trailing-spaces":[2,{"skipBlankLines":false}]}},"devDependencies":{"grunt":"*","eslint":">=2","nodeunit":"^0.9.1","grunt-eslint":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.4.tgz_1476990815310_0.48652941500768065","host":"packages-12-west.internal.npmjs.com"}},"1.0.5":{"name":"haraka-config","version":"1.0.5","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.5","maintainers":[{"name":"haraka","email":"haraka.mail@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"82558f50948aa56da186dcf07bfce2fea90ec839","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.5.tgz","integrity":"sha512-i8av/elTAKCl+IWRrfWel0LbqsQpdYPmbY+mq/dtV6QWu8pxT6lxNW8mn6gr/AGvOf4fnk9UXox/+ejEHFPpKQ==","signatures":[{"sig":"MEQCIAp+c+bLk5a/TmZ6zhAfg7E3wJX0YPaZ10p/YDLYe/yeAiAP+wkSESVHJtChGXNiINDI4rI5PQ32daF/zqpoa1ZFig==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"config.js","_from":".","_shasum":"82558f50948aa56da186dcf07bfce2fea90ec839","engines":{"node":">= 0.12.16"},"gitHead":"792d1050644776b96bafd956b465f58519423717","scripts":{"lint":"grunt lint","test":"./run_tests","cover":"istanbul cov run_tests"},"_npmUser":{"name":"haraka","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"2.11.3","description":"Haraka's config file loader","directories":{},"_nodeVersion":"4.6.0","dependencies":{"js-yaml":"^3.5.3"},"eslintConfig":{"env":{"node":true},"rules":{"indent":[2,4,{"SwitchCase":1}],"one-var":[2,"never"],"camelcase":[0,{"properties":"never"}],"dot-notation":2,"keyword-spacing":[2,{"overrides":{}}],"no-trailing-spaces":[2,{"skipBlankLines":false}]}},"devDependencies":{"grunt":"*","eslint":">=2","nodeunit":"^0.9.1","grunt-eslint":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.5.tgz_1477424860697_0.5130190402269363","host":"packages-18-east.internal.npmjs.com"}},"1.0.6":{"name":"haraka-config","version":"1.0.6","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.6","maintainers":[{"name":"haraka","email":"haraka.mail@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"084da27779f2b6a8100b78c13e699072f0802606","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.6.tgz","integrity":"sha512-RYwhW11+I7vIfua6cuKAiC5/zvDqDUtX86Zg4r5PeYgMbR7mL6bcATgJnGFvzr09ZxK1x6iCiyNXxPR5guG7tA==","signatures":[{"sig":"MEQCIATVGLJLpxqu9dFLfgbQlOpaJYut/eBUL6nZg2CuMBccAiAPiEw0PAew2H0qISRWAcqAXruHgBnn0p+uihE6PajzPw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"config.js","_from":".","_shasum":"084da27779f2b6a8100b78c13e699072f0802606","engines":{"node":">= 0.12.16"},"gitHead":"6858fdce16a8c7cf8d4c32eadc7908eeea244daa","scripts":{"lint":"grunt lint","test":"./run_tests","cover":"istanbul cov run_tests"},"_npmUser":{"name":"haraka","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"2.11.3","description":"Haraka's config file loader","directories":{},"_nodeVersion":"4.6.0","dependencies":{"js-yaml":"^3.5.3"},"eslintConfig":{"env":{"node":true},"rules":{"indent":[2,4,{"SwitchCase":1}],"one-var":[2,"never"],"camelcase":[0,{"properties":"never"}],"dot-notation":2,"keyword-spacing":[2,{"overrides":{}}],"no-trailing-spaces":[2,{"skipBlankLines":false}]}},"devDependencies":{"grunt":"*","eslint":">=2","nodeunit":"^0.9.1","grunt-eslint":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.6.tgz_1478846698668_0.309725885046646","host":"packages-12-west.internal.npmjs.com"}},"1.0.7":{"name":"haraka-config","version":"1.0.7","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.7","maintainers":[{"name":"haraka","email":"haraka.mail@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"45b7347de5dcd6084a5d6290e2a01a14fdf7d928","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.7.tgz","integrity":"sha512-OmwFrGoJtfiLd+A0lgVV6AkhRKCKqsQz378VuRVPa/YmA70y5Non/ZP4QcaxGruMudBeMTOBpDLofOryoHfH8A==","signatures":[{"sig":"MEUCIQCOb1pCRFvgafzsak2VWGj603kEHlwZkSKL8+zkRT2VxwIgSBl40kYCEuGWX42YWToH5xtmUNQjitLyqMveMCN5vWo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"config.js","_from":".","_shasum":"45b7347de5dcd6084a5d6290e2a01a14fdf7d928","engines":{"node":">= 4"},"gitHead":"457252dff3c81fac81c9c26b0f3f6d5cbf80b496","scripts":{"lint":"grunt lint","test":"./run_tests","cover":"istanbul cov run_tests"},"_npmUser":{"name":"haraka","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"2.11.3","description":"Haraka's config file loader","directories":{},"_nodeVersion":"4.6.1","dependencies":{"js-yaml":"^3.5.3"},"eslintConfig":{"env":{"node":true},"rules":{"indent":[2,4,{"SwitchCase":1}],"one-var":[2,"never"],"camelcase":[0,{"properties":"never"}],"dot-notation":2,"keyword-spacing":[2,{"overrides":{}}],"no-trailing-spaces":[2,{"skipBlankLines":false}]}},"devDependencies":{"grunt":"*","eslint":">=2","nodeunit":"^0.9.1","grunt-eslint":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.7.tgz_1479404932006_0.12059118668548763","host":"packages-12-west.internal.npmjs.com"}},"1.0.8":{"name":"haraka-config","version":"1.0.8","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.8","maintainers":[{"name":"haraka","email":"haraka.mail@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"dcd0155b844fe8a4aa412a47b3517701f87f205f","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.8.tgz","integrity":"sha512-xA7g2Kbox5vJhTbGP59peZNamXfMwoXIRfXJ+1KBUzUEc/xwV0AwY3uAQrTbNSSAtxmbQpfIsyreynY6xd8CfA==","signatures":[{"sig":"MEYCIQDUEt3j1Hk27lRjqjpqljMeBTcyFLKl1qmeCPLeJleTcgIhAMBAqidRukiuMTJMDkNHgQiObtiwiBNATRJd2gsSh/Ve","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"config.js","_from":".","_shasum":"dcd0155b844fe8a4aa412a47b3517701f87f205f","engines":{"node":">= 4"},"gitHead":"11187940d071512590178ac564a589bf0d72a6de","scripts":{"lint":"grunt lint","test":"./run_tests","cover":"istanbul cov run_tests"},"_npmUser":{"name":"haraka","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"2.11.3","description":"Haraka's config file loader","directories":{},"_nodeVersion":"4.6.1","dependencies":{"js-yaml":"^3.5.3"},"devDependencies":{"grunt":"*","eslint":"*","nodeunit":"*","grunt-eslint":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.8.tgz_1483382435820_0.3240995374508202","host":"packages-18-east.internal.npmjs.com"}},"1.0.9":{"name":"haraka-config","version":"1.0.9","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.9","maintainers":[{"name":"haraka","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"93250afdd9c40c2393dfa0ca7bd3b18234dc00d2","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.9.tgz","integrity":"sha512-L+ra/EptwJIdcd+gFQSeFDN+or83IK7fFWEZbPmOpRWUAdf+4ZscJ0gXQ98MMLvVbDeFYg+hiQPZSSyvozFblg==","signatures":[{"sig":"MEUCIEWvRtd/Mf6q/2rwWAopalPGllLguQYcFGWcnlc6+kDtAiEA6wg2aVIAl6dHuPBaI7nXS6TCSmYkG3c7H8l+go6JL1U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"config.js","_from":".","_shasum":"93250afdd9c40c2393dfa0ca7bd3b18234dc00d2","engines":{"node":">= 4"},"gitHead":"e23eb238a75dbff29d33f94dd2bb22c6ca5c4392","scripts":{"lint":"eslint *.js test/**/*.js","test":"./run_tests","cover":"istanbul cov run_tests","lintfix":"eslint --fix *.js test/**/*.js"},"_npmUser":{"name":"tnpi","email":"matt@tnpi.net"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"2.15.11","description":"Haraka's config file loader","directories":{},"_nodeVersion":"6.9.1","dependencies":{"js-yaml":"^3.5.3"},"devDependencies":{"eslint":"*","nodeunit":"*","eslint-plugin-haraka":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.9.tgz_1485545888237_0.45450157951563597","host":"packages-12-west.internal.npmjs.com"}},"1.0.10":{"name":"haraka-config","version":"1.0.10","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.10","maintainers":[{"name":"haraka","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"a3879c1d5270e04b80b5651a57a94f3161c17042","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.10.tgz","integrity":"sha512-d0DOijycVlyq6lnLZBE6CCrUjcWAbF0U6DgZc08aXI0iO26OjwFjGZIATiM8VDL4SojwksJwu/USwBbD6vQjLg==","signatures":[{"sig":"MEYCIQDLCyzf0l+qGWfgTPxM0v23HuUondRk6XS1kSHNDiyLAwIhALxiMF4+m17YGkJetlg8dsvXp6YPDaGUzf+6dCWqCam/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"config.js","_from":".","_shasum":"a3879c1d5270e04b80b5651a57a94f3161c17042","engines":{"node":">= 4"},"gitHead":"5bbadcd9632ad995d3f4ff417d5303df5c64b6b8","scripts":{"lint":"eslint *.js test/**/*.js","test":"./run_tests","cover":"istanbul cov run_tests","lintfix":"eslint --fix *.js test/**/*.js"},"_npmUser":{"name":"tnpi","email":"matt@tnpi.net"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"2.15.11","description":"Haraka's config file loader","directories":{},"_nodeVersion":"6.9.1","dependencies":{"js-yaml":"^3.5.3"},"devDependencies":{"eslint":"*","nodeunit":"*","eslint-plugin-haraka":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.10.tgz_1485554692680_0.8918296301271766","host":"packages-12-west.internal.npmjs.com"}},"1.0.11":{"name":"haraka-config","version":"1.0.11","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.11","maintainers":[{"name":"haraka","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"d940fa65424c4dd4db1bcd8571aa92fb426454ac","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.11.tgz","integrity":"sha512-xdPq0ACvGPAD7Wo26N0MWety9/7A0Va7i7VgESBjymy8oxsTWr5qmNQyC0rLwnOjFqmhMvvCvXVGPXxE5KDaZQ==","signatures":[{"sig":"MEYCIQCgjbiCJkt53iEbjQty4heoTu6bA7jsrxv4b2Ay9uhGgwIhALzCA8qkh2/wVmc7oly4B60pL4MsBrtU6eIlLvoJOAQY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"config.js","_from":".","_shasum":"d940fa65424c4dd4db1bcd8571aa92fb426454ac","engines":{"node":">= 4"},"gitHead":"8beb293da8900d28034f3eb05e7ef40f6e2133a4","scripts":{"lint":"eslint *.js test/**/*.js","test":"./run_tests","cover":"istanbul cov run_tests","lintfix":"eslint --fix *.js test/**/*.js"},"_npmUser":{"name":"haraka","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"4.2.0","description":"Haraka's config file loader","directories":{},"_nodeVersion":"6.9.5","dependencies":{"js-yaml":"^3.5.3"},"devDependencies":{"eslint":"*","nodeunit":"*","eslint-plugin-haraka":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.11.tgz_1488867126382_0.6560516494791955","host":"packages-12-west.internal.npmjs.com"}},"1.0.12":{"name":"haraka-config","version":"1.0.12","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.12","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"5c70eb380b5633593299b73277bc818606811f32","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.12.tgz","integrity":"sha512-47DI8R3UyWEvsmc5ahNLmkgaWLLI0Y+T87X+wiv+FfdzQtv+H2JmWBOtLfad3+mPrbm/P9A5zgidF6C7jgS94A==","signatures":[{"sig":"MEYCIQDnI/GsApSsb9XUPNhzojOtVyQuUyxVmk4p6zCZjwndeQIhALv9OAtY9XnX164UJYdGdHyCiyJDXpBeFK5bwmFeBc5a","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"config.js","_from":".","_shasum":"5c70eb380b5633593299b73277bc818606811f32","engines":{"node":">= 4"},"gitHead":"db90144535ca185d23cd7ba42e61cfc0139ce7e4","scripts":{"lint":"eslint *.js test/**/*.js","test":"./run_tests","cover":"istanbul cov run_tests","lintfix":"eslint --fix *.js test/**/*.js"},"_npmUser":{"name":"tnpi","email":"matt@tnpi.net"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"4.2.0","description":"Haraka's config file loader","directories":{},"_nodeVersion":"6.10.2","dependencies":{"js-yaml":"^3.5.3"},"devDependencies":{"eslint":"*","nodeunit":"*","eslint-plugin-haraka":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.12.tgz_1495427323783_0.5921925825532526","host":"s3://npm-registry-packages"}},"1.0.13":{"name":"haraka-config","version":"1.0.13","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.13","maintainers":[{"name":"msergeant","email":"helpme@gmail.com"},{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"6fb5131a530e8007ab9c5998cf7a44574a0dbe96","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.13.tgz","integrity":"sha512-qHcz3Fs0JMCc8WMWawfEQb82NzgBhd+SZb3172QVRo3FVwoNQqMw9jCcUPdE+gqnGzotyASgBXzaqnfvU1LS/g==","signatures":[{"sig":"MEUCIG3u8RbTo9QL6mf8QSHpLr1pimK27tcf1OQTicpLGsPTAiEAhgcpO7AiNZ41WJpJbHgQje+6Av4SAExQXAlXRlBGBGg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"config.js","_from":".","_shasum":"6fb5131a530e8007ab9c5998cf7a44574a0dbe96","engines":{"node":">= 4"},"gitHead":"93a8801577b3f3fc7151485d1a6a69fc714bb152","scripts":{"lint":"eslint *.js test/**/*.js","test":"./run_tests","cover":"istanbul cov run_tests","lintfix":"eslint --fix *.js test/**/*.js"},"_npmUser":{"name":"msimerson","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"4.6.1","description":"Haraka's config file loader","directories":{},"_nodeVersion":"6.11.0","dependencies":{"js-yaml":"^3.5.3"},"devDependencies":{"eslint":"*","nodeunit":"*","eslint-plugin-haraka":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.13.tgz_1497660179937_0.4968206530902535","host":"s3://npm-registry-packages"}},"1.0.14":{"name":"haraka-config","version":"1.0.14","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.14","maintainers":[{"name":"msergeant","email":"helpme@gmail.com"},{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"ef4606303e03e2fc41de6d6ac8f26ed4f490e58d","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.14.tgz","integrity":"sha512-lU+At/ePMrXewR4AiaSWOIIQFbuQnuiLt2rVSEaN/YhjCH8UofCNVcNC0qH87DpTC5w5N7kOfg3c3AjXDVc9Jw==","signatures":[{"sig":"MEQCIE51dbdbtDNHHHMsj20Yky+fGEreUr+E62J3PyrUuTz4AiACi8gqb0OAryMYDWY/R1icgyPa5kuGaP3pGxEtZDHiLA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"config.js","_from":".","_shasum":"ef4606303e03e2fc41de6d6ac8f26ed4f490e58d","engines":{"node":">= 6"},"gitHead":"1d176348c8fb932d398794e85389d2aa2e42a246","scripts":{"lint":"eslint *.js test/*.js test/*/*.js","test":"./run_tests","cover":"istanbul cov run_tests","lintfix":"eslint --fix *.js test/*.js test/*/*.js"},"_npmUser":{"name":"tnpi","email":"matt@tnpi.net"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"4.6.1","description":"Haraka's config file loader","directories":{},"_nodeVersion":"6.11.2","dependencies":{"js-yaml":"^3.5.3"},"devDependencies":{"eslint":"*","nodeunit":"*","eslint-plugin-haraka":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.14.tgz_1505923684604_0.7592555903829634","host":"s3://npm-registry-packages"}},"1.0.15":{"name":"haraka-config","version":"1.0.15","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.15","maintainers":[{"name":"msergeant","email":"helpme@gmail.com"},{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"c1002c5c63579b8e7282bb25b17b53c734d5e876","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.15.tgz","integrity":"sha512-1S3YaqZoeDIEjLiUQanwsX0ueNpO4q5+m89yDsTqUr6vi6sohHiPy3/8yFQXBsVD9fjo2UCeaIRnTYcCXymX8g==","signatures":[{"sig":"MEQCICFgo423WWEMZYsuPGmdWzV7bcx3SbeO+D9mpc344mZ/AiBUBpF+UyOg7PlG0Vxel3xlVKk4t0GlqXomL8j8VdKY7Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"config.js","_from":".","_shasum":"c1002c5c63579b8e7282bb25b17b53c734d5e876","engines":{"node":">= 6"},"gitHead":"fced0c43f62467613b2cbdd6ba52fba983ef908f","scripts":{"lint":"eslint *.js test/*.js test/*/*.js","test":"./run_tests","cover":"istanbul cov run_tests","lintfix":"eslint --fix *.js test/*.js test/*/*.js"},"_npmUser":{"name":"tnpi","email":"matt@tnpi.net"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"4.6.1","description":"Haraka's config file loader","directories":{},"_nodeVersion":"6.11.2","dependencies":{"js-yaml":"^3.5.3"},"devDependencies":{"eslint":"*","nodeunit":"*","eslint-plugin-haraka":"*"},"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/haraka-config-1.0.15.tgz_1506020657093_0.8473760355263948","host":"s3://npm-registry-packages"}},"1.0.16":{"name":"haraka-config","version":"1.0.16","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.16","maintainers":[{"name":"msergeant","email":"helpme@gmail.com"},{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"3dd78313649d784f25f21b302e4edaf7a1b9d8d1","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.16.tgz","fileCount":53,"integrity":"sha512-yz3OQAcZ28uInt/1FNBw9I+81LeS9msIOa/7sc/pOQfFpm5HARiazrPBOy/I+gPfx0Rl77Ad0xtFR9knZELcrQ==","signatures":[{"sig":"MEQCIBbPbB7gDiIvBzZzDLKsRS8s6ukiuVZ41W3ro8qgTV1RAiBDTSj5ZfApBmD1eaSZx/mgoFFl27Q4uiEo/cwntZmkYw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85276,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4HoQCRA9TVsSAnZWagAAABcP/jInpAz1Gff+Phm/IYeQ\nNhqcS43+A9zHTgV1CBXU7W/gHqwEn+0jqhpx47UOyHC7StJPpPslRCOPZIU1\nNL8YmVMqW6+L0hqWoWhvIbtC2KypkejJ4Dlu/UsQvVFB4GiXl0Or8TAGbLC9\ngtXMjrLHMiFJYgPwxAYvwSNGISI5pkkO33/mTx3F7634In8puyKV9OykCw/4\nsIGbOX+1D9mW5mrnF0g6AADZ1wMqObH0shxa+umjVOTfBm7VdIYA96jAb/Al\n2ZDZjmeGnNIXF2HJQJ1kBK/0JKhgnM1dm19r73tinglZB6LgDwbEfL424RZ+\nIVHXfjUSDuurZwSUH6kuvxBfyKANvV5Y7kRnV+ZM9vRPm/IJIHlt9QTesZxt\nnQoBJX1DUU3Vyv6E+sYr864qZqDairGRjDYc+N2fkFBTe6qwowwWk/imK17U\nldWugsLw9yHbO6HBkdq6mkgLqiSyBiTBvK+t2RVbV/AOTH3ggZOSvDprJoHG\nUNF6vyqFD0DKJP4NlqpVXVWHgxtYFjH2LmqVaXsaFnM9ocxQLXei+aL2nkb3\ndSIlg/EdNyXft5bd0GdlPtFbNMKeOGOhOsTqU1dGe8n1dzszBtbIswXuZKGf\n+HO3iZQvbKju/KGEk+f1yUzuylUNAOE8Dy3r11QPUhvYaQyFciVmpPV1pD/V\nKjUp\r\n=VvEZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"config.js","engines":{"node":">= 6"},"gitHead":"c00b02377dd1967d6089b5f240b7b9df0c638ebb","scripts":{"lint":"eslint *.js readers/*.js test/*.js test/*/*.js","test":"./run_tests","cover":"istanbul cov run_tests","lintfix":"eslint --fix *.js readers/*.js test/*.js test/*/*.js"},"_npmUser":{"name":"tnpi","email":"matt@tnpi.net"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"6.4.1","description":"Haraka's config file loader","directories":{},"_nodeVersion":"8.12.0","dependencies":{"hjson":"^3.1.0","js-yaml":"^3.5.3"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"*","nodeunit":"*","eslint-plugin-haraka":"*"},"optionalDependencies":{"hjson":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.0.16_1541437967728_0.8158154977304628","host":"s3://npm-registry-packages"}},"1.0.17":{"name":"haraka-config","version":"1.0.17","author":{"name":"Haraka Team","email":"harakamail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.17","maintainers":[{"name":"msergeant","email":"helpme@gmail.com"},{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"427e3f9ed693c052f1f684d0a236e36215a86bd1","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.17.tgz","fileCount":53,"integrity":"sha512-RA/tQsj4BMYNs6606GuHEUdjOHp3yrcSTznT1x8RL3Iku0kvDf++KU4uprb9bjWzHvGh5c8NOp27Pl4hiegGxA==","signatures":[{"sig":"MEYCIQDWkpLsLfkAb8PHQ1dSzjlQJBDUlD3IzLZTOsIPvaX2BAIhAK2Bll+j4YXt3UXZWdl79QyTDoYeu8oql//bht1dgRI2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86095,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcG/sNCRA9TVsSAnZWagAAd6QP/i8HuOeaY8fM3T/IBzKJ\n6Obl69wsiAMzaw2tv4X+lUNvb2AHM2hlNxlDuxSqnmkkn+AkODMzIB2egSck\nuHQjnvU5QNDMFJ7XnekmBJQGLQ9XRTEjoBQN5HuYSsJC1/17m8vitYfknCI0\nb7na5EBkjRnLVs3C5H+oqcLuZdoVHHkQGHSn+OdG1hhysb+vORHthJDWzLON\nTmoLYgf+JtU68C0B9SdxDWvAMMG2ygPwTsLcng3V4YtpTbsonqOUClbodogE\ntIA95JxcAsuDXgeO7ASB6iQt3M0im0dvSyCJizHtiXKSM97Q010vF5SZXR63\nc5GzjQ0zgMfSfHov6A5jwSNA30Mdu+zGkycxMy+4/stYRW9w99A6yz6R/02r\nTWJBebWf3FngE1m/iiL3KxEsNMZExrqn0bjtaMm2arsAppgk7vIx5DrOA9BP\n6pryOi68A7a0aEEeYpADIecx573p0gAkvKKUrWamPIWc/+bqxI9JIxmFMLwY\nbHrWuAfA1hIy1eJJ5Df7ac3aoB0cV27Of7MF7VE/E6bkfNtMhb1E75MwB2m4\ng/kcT3jcixTTEzWOBNOnV8QZG26bz7peLVsv1LtqHNNnjJ2QBQgXq6B5Jk3g\noXcU71krnfe68NdqJW/RXKjAWlQHQzMQwUMVaF4P4Zq6SU4syKoe8+Sp0iBm\ns7JX\r\n=qRVz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"config.js","engines":{"node":">= 6"},"gitHead":"4908010a41f65c3a0d9e2d2879e020b93b3d6e7d","scripts":{"lint":"eslint *.js readers/*.js test/*.js test/*/*.js","test":"./run_tests","cover":"istanbul cov run_tests","lintfix":"eslint --fix *.js readers/*.js test/*.js test/*/*.js"},"_npmUser":{"name":"tnpi","email":"matt@tnpi.net"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"6.4.1","description":"Haraka's config file loader","directories":{},"_nodeVersion":"8.12.0","dependencies":{"hjson":"^3.1.0","js-yaml":"^3.5.3"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"*","nodeunit":"*","eslint-plugin-haraka":"*"},"optionalDependencies":{"hjson":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.0.17_1545337612575_0.45976428185422935","host":"s3://npm-registry-packages"}},"1.0.18":{"name":"haraka-config","version":"1.0.18","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.18","maintainers":[{"name":"msergeant","email":"helpme@gmail.com"},{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"08fabfb6ed0d25a07b36d17158cd95b4a273ee06","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.18.tgz","fileCount":56,"integrity":"sha512-CXvdGc2uBGQETBAyK9qnuvXN0qzAs6pvStrFS3KxS2rv8dPXkCIIJJlWQrFQcVyJ3Y9djUBE/Xo70JMbSRIcog==","signatures":[{"sig":"MEUCIHmJBDOodAH0/8d5enGwK50hVtF/Sh9FE1f741F7lbz+AiEA3jBTx7B3tBqgQuJq041HtRV6mxjrGAYnTr8btVh+OD8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdoOSuCRA9TVsSAnZWagAA46QP/3WIezgEndRAm9K0GVyK\nVifoQHvGVVVu93IRZVyJh9XuRgw42B0BzT/z0YPGBlATwrD5uvIqmSumXIHl\ntJDeeddYPKtEjxdY1IBCRYeBbLhE3zZzibOd1ImJXteJSw+voO9YEbdR1wlv\ngIEfVsB+WC/rCglYyJDA7ID9JWh6Z7dnBXRvkSYuCEpkGC/BA9cY4jfJneYk\nPhMlvExCUkFEQKYGtu8pcKRt8Wx2Sg+bd51+6zhXWYf7dWwxGFb7xf0P8PAP\nWxGYCJXOOHTXjMSS0upNeypB8wjN46veX6KmuxPa+GoNlvoP7NPiA7SDPwHi\nYsq39VB966pLmySQpduzQAQefQRkN06+wAb0omjwXZr/DOcniIy6U0Ooq6qJ\n+Nq2uJ+91yz6Ukg3hCJkgv83gPJTaVX+gScwWDcnChd2lyDRMV1J+4xf9PLf\nWRUjWrnIIJc2r9Ou0XXhSjfofI9v50SYTibX8eY+VQu++hROeuHIiTQf2/Y7\nj4z3kcXhg8+1MPcltDePCR69FSML2LitDRLfAVI8MQKAT0kiW7nIeqORSGOA\n90/ZwOVanQqCbhAzBadD/dln/srklzxNJRJXgrqVsjK1cq3YXqRcPCv9Yquz\nhT3LT3cOH6zkHuTTT+rLxqPqCXeZyfXvYFraLyYYT1XG5FJ1iQM8VeZpoFk5\nEK7B\r\n=JiAK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"config.js","engines":{"node":">= 6"},"gitHead":"84cf6591be77694f28c8d05ffcf55decde2dd6eb","scripts":{"lint":"eslint *.js readers/*.js test/*.js test/*/*.js","test":"mocha test test/readers","cover":"nyc --reporter=lcov ./node_modules/.bin/mocha test test/readers","lintfix":"eslint --fix *.js readers/*.js test/*.js test/*/*.js"},"_npmUser":{"name":"tnpi","email":"matt@tnpi.net"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"6.10.3","description":"Haraka's config file loader","directories":{},"_nodeVersion":"8.16.1","dependencies":{"hjson":"^3.2.0","js-yaml":"^3.13.1"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"*","eslint":"*","eslint-plugin-haraka":"*"},"optionalDependencies":{"hjson":"^3.2.0"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.0.18_1570825389812_0.8393652046580393","host":"s3://npm-registry-packages"}},"1.0.19":{"name":"haraka-config","version":"1.0.19","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.19","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"118dcdea77bb4818bf3cc54d9ec6e62ebd344a7f","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.19.tgz","fileCount":56,"integrity":"sha512-BB0Ufmrm+LA7mjmVei1NFck7MaRwND8ycz6MCsGdf9wXgVAenlIU/dsjiPfX2/2+4AubReQgycODXO2V1u0KiA==","signatures":[{"sig":"MEQCIC6x1SzEZEBvMvE4pphnMTtCXvegkJDG6rdyI4dzY7TFAiB+HnlfdtUcreUM/tSQMD0l+uHvhV1VdFwsEqGy3nwypQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88442,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwr5xCRA9TVsSAnZWagAAjdUP/inQTeTXjhJwu7ENauxh\nYwb5l4osUHd80VhSOp+2Qg7e/JgC9ojj6dL+/IB0kP/fPj0mL/+BvnGKghH7\ninAtshwic0XMOTWF/N0/nvFZcvmajNbBuvecL3IGqyV7WJnSzg0Nfo3YyRCq\nc0HxayCuCir/Kv+8zudU4PDRBhWHYPH6i8wDdh7VZ0sjLanz6HXFk0fb/2RZ\ntTAbUp4HJ1wiRqJZE4OY6MVKMg2IE1yje8pFMEsz4fLtmXQNY2AKPS6GNZLn\n2IaPBprI2kspl5u14SoeHCIJwz5E0fKQk1kgLOjMhhtRvLlqwwWcmJX/SCWa\nLxE74+u4ez910Dia9FNxXZZ4oX/G1MTT6IWMeBBtOE3Ul/6zxCun5VjFu87J\nupMlaUZefV0wcSkXWhnLm2yS98+ozA9nL5xe9iJfuvzETfb+U6nweqE3hK6E\n//lwoT9N3ICqmBbNvsLloXuWmM4O/2ZKPSwacgqQ7N9Mi1KvMrej4y+8+5fe\njuWpaSNqNgOAYYbsbTnacDwL20Un6xwflksDH9tzKTZNrRWk6QHHvaH8drG9\nP4UWjHtz0jZZwzlqg2Ka2bXteV6PINMmstp/SW2SlIYx0hh+14xBc1Xkk+C2\n7J6cpWZGPWSL4MmhvwvlcvhezXy86dDpBm1I+mHNByyfc2ktQ5IYDjYsvbcV\nxsNn\r\n=39cm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"config.js","engines":{"node":">= 10"},"gitHead":"4567de8acccaa5cff0dc77f7139c55fdc085d3fc","scripts":{"lint":"npx eslint *.js readers/*.js test/*.js test/*/*.js","test":"npx mocha test test/readers","cover":"npx nyc --reporter=lcov npm test","lintfix":"npx eslint --fix *.js readers/*.js test/*.js test/*/*.js"},"_npmUser":{"name":"tnpi","email":"matt@tnpi.net"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"7.16.0","description":"Haraka's config file loader","directories":{},"_nodeVersion":"14.17.0","dependencies":{"hjson":"^3.2.0","js-yaml":"^3.13.1"},"_hasShrinkwrap":false,"devDependencies":{"mocha":"*","eslint":"*","eslint-plugin-haraka":"*"},"optionalDependencies":{"hjson":"^3.2.0"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.0.19_1623375473347_0.8374115272029177","host":"s3://npm-registry-packages"}},"1.0.20":{"name":"haraka-config","version":"1.0.20","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.0.20","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"3ca328092989c5b70f8853a8106bd9b3d4b328ad","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.0.20.tgz","fileCount":57,"integrity":"sha512-FWY7m/xV7FCCZZ+Clcg9I3s3GjTmUM5ZFC/+URsBDNKGinmEK/rH5bZhlGJrMv2CXjOVh8pYiklsDbEeRct+Ww==","signatures":[{"sig":"MEUCIATVCSbJm/lMfJmfqOdd90Ak0cyAnZ787rGgzY3gWYVYAiEAmGU6eebzY8NHb64NLWZ2cccchCELVVflrEJAHl2MxqA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88991,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhL9NwCRA9TVsSAnZWagAAKO8QAI7eeskXbXq0/RT7pMB1\n74dKQl5f+vaXL+x1IPu7iDpCLJ1XoPSb5idtg/oNuFBNeGkpEexZslYqMuJ2\nPts83z0p9oAUcpuczEyGWOIB6+Hzal4Y1PmhvqppjUNXYqY5EuP3xFlfSjXZ\n+zZ+3m3KZWtEH7UqmlDA3toyrE07jLizOG2jX4qN2R//q1afSSWQgRzHEIa5\n4p1DyUZEp/vKVlNSB0rIL89c1icUYe7tHNjzdo9dSrpnFmYO9OnTsOM5XwYT\nooQ1gi9KRiNrXOR1dPXCA8jhlpiNEgLey/L6MURT/7dSXDtka6sVuBgcnn7p\nHrvVaYcueJqtq5CdxVtDUVIrpsprzhhP2oQ+YaZh825xWyXdxaMYhSfIIBSv\niyoPV13TIUnxGOUINoETp4fvkHmZOhu5qE6fyPaYgTew7Nj5UAA5EZ5fr8Bz\nrb/KVC/ld9PTU5TsDV7zRTtParOF8RO4n+hUT0im9rOK6daRwBiVX33JfQRw\nx7uK1iaSq0g2ROF5kf2KumZa602sPjpdFPAx/vr91txRS9s3D/gUwYoX+Omk\n8Mr5wXSo6N2lNGqWZkWd4uOAxqyhMkx1NOQ+COvtOXlzOOS59Py9IStNTja8\n+vKxdXjGUZ8EqbrSyCAAAte0ZPHJYDXEVRHniH9hk5MvJTC1/mEDW8e/6Mgp\nTtxW\r\n=Ok9/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"config.js","engines":{"node":">= 12"},"gitHead":"5b330cb62d102bff0c84094b58e9a662261d9c5f","scripts":{"lint":"npx eslint *.js readers/*.js test/*.js test/*/*.js","test":"npx mocha test test/readers","cover":"npx nyc --reporter=lcov npm test","lintfix":"npx eslint --fix *.js readers/*.js test/*.js test/*/*.js"},"_npmUser":{"name":"tnpi","email":"matt@tnpi.net"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"7.20.5","description":"Haraka's config file loader","directories":{},"_nodeVersion":"14.17.4","dependencies":{"hjson":"^3.2.0","js-yaml":"^4.1.0"},"_hasShrinkwrap":false,"devDependencies":{"mocha":">=8","eslint":">=6","eslint-plugin-haraka":"*"},"optionalDependencies":{"hjson":"^3.2.0"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.0.20_1630524272411_0.6458626902851661","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"haraka-config","version":"1.1.0","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.1.0","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"f5931e936fd26ad5429f150bdf74a6b36dff968b","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.1.0.tgz","fileCount":56,"integrity":"sha512-18hp3HFAEnisoQdTvRQpoQJSnWxidiybnbZPfjIlCtzQgVTGF7AtVzIjTYB944OeSnJ5HZtA+qnN6DyMs6tuZw==","signatures":[{"sig":"MEYCIQCnemZr3UDi7r3ulXBk+rU+/1Ra3bji9CBykUjnyGGtzwIhANNW9q372h0KDHq1czlJbfmNeOPIuaw1g8qqlJ2gnn+q","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87832,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJikVYJACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpkRg//dcSI+a6UDvKDkAa1FY+7GoLCtwCCfEhxp4yii2orxj0XUtGr\r\nYCjTgXYxBUcRuIr6HXisPrQyIiw7l426pPHybLWQZVYZMb4Qi+pappkfrDaK\r\nDMhe4PfBiHiPFtFPlATXT9Hua0FtrtxfpG6iLDXZU8pKc8wI4mTX25+Shw29\r\nKn7KZzsOynaBsEt2DqrINnqGy7zPOrSEd5K77GvhRLnUgSzODEqMVhMth0X1\r\nUCwfCPSqo8IQrr4w95i/RY+xMC3ERP/MwDuClK0qUnt5K8BygHTTCOHR4Niu\r\ngUT9BnBT3wbhU4HZtLJgju7c0cnXVLYa562GCIezi58JjCGPrdy6UG5lvTvD\r\n9LKZfqUV6BboKvwguNePxzpKmg50r80up/d+78O/Rki8EAqD14TQvVatlnmW\r\nRwcaJ8mRCiMsMguTqv0WkVzxfhfFRqsCPJ1WAQyim2aEhKQHYw9lhusVtq/C\r\nhYZxx4JE/F6IfgUU/ZFTvg82+cRnsL2m4jwiI9R2G/zq2944is6hdj6855xt\r\nnC42SlMe0NHDgYOLepS6ncXT56sM7WsoLq7g3CD/d7woOT5o1kx4Z35d7U9v\r\n6AvlCT2n9dtm78p25WZXZAYMO1mQePog2YKabR4xSo+2tiG0ch0ZiVXEbRov\r\n7xSdYTyTQ5n6Q8vUO3hvLPPtumiqtRqI3Yk=\r\n=iEQR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"config.js","engines":{"node":">= 12"},"gitHead":"eb3cd487460df731d8a99a2ee8f5cebd6ed1ea5c","scripts":{"lint":"npx eslint *.js readers test test/*/*.js","test":"npx mocha test test/readers","lintfix":"npx eslint --fix *.js readers test test/*/*.js","versions":"npx dependency-version-checker check"},"_npmUser":{"name":"msimerson","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"8.5.5","description":"Haraka's config file loader","directories":{},"_nodeVersion":"16.15.0","dependencies":{"hjson":"^3.2.0","js-yaml":"^4.1.0"},"_hasShrinkwrap":false,"devDependencies":{"mocha":">=9","eslint":">=8","eslint-plugin-haraka":"*"},"optionalDependencies":{"hjson":"^3.2.0"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.1.0_1653691913325_0.9569462356639042","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"haraka-config","version":"1.2.0","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.2.0","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"9d251c74d51b8cc3d696c87ac184a40b7dff85ab","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.2.0.tgz","fileCount":15,"integrity":"sha512-NspYphwiL6s+jllSfFmT8Xd+U4+9BiH1fFWcjLiSeJdIJAdT1rj5xbhDJomi6xGNQ69XbSOWEqQLGSoXJ9N5JA==","signatures":[{"sig":"MEUCIAKoZLmsUuW9YsWrICYQauYWQEVHH1c7hQ/TNHEdGwi3AiEA5QFuR4BJ78ie9dEpbgU5RgT7Kx1NXa8XZMKJEZw3Zr8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36046},"main":"config.js","engines":{"node":">=16"},"gitHead":"aad45762356b7705c9d9c0cb78570d85df03fe30","scripts":{"lint":"npx eslint@^8 *.js lib test test/*/*.js","test":"npx mocha@10 test test/readers","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint@^8 *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","versions":"npx dependency-version-checker check","prettier:fix":"npx prettier . --write --log-level=warn","versions:fix":"npx dependency-version-checker update && npm run prettier:fix"},"_npmUser":{"name":"msimerson","email":"haraka.mail@gmail.com"},"deprecated":"this package has been deprecated","repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"10.5.0","description":"Haraka's config file loader","directories":{},"_nodeVersion":"18.20.2","dependencies":{"js-yaml":"^4.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^1.1.3"},"optionalDependencies":{"hjson":"^3.2.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.2.0_1713988279181_0.3017564404583144","host":"s3://npm-registry-packages"}},"1.2.1":{"name":"haraka-config","version":"1.2.1","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.2.1","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"b13a2137f79f7a497a2424c96bdfc6126fb22a86","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.2.1.tgz","fileCount":15,"integrity":"sha512-j9wCNa8y8cR6Jqy8P1Dg3VpsOBFfqpwgVDkUjx5OpJ1n2cVoHr8wIy07p9R/S744jSyiwn6gUVvK4mUnazqfXQ==","signatures":[{"sig":"MEUCIQDsWFQSyDx3ciuyQKJiT4XaJ7Qi1FpIATCZxtSC69AnwAIgbaJmxlEOkqPxP1GKzO3S2nZdRus0l5qRuuME+kcTVFg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36302},"main":"config.js","engines":{"node":">=16"},"gitHead":"35e1325eb498d62175e7d2a57bda30f215af7611","scripts":{"lint":"npx eslint@^8 *.js lib test test/*/*.js","test":"npx mocha@10 test test/readers","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint@^8 *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","versions":"npx dependency-version-checker check","prettier:fix":"npx prettier . --write --log-level=warn","versions:fix":"npx dependency-version-checker update && npm run prettier:fix"},"_npmUser":{"name":"msimerson","email":"haraka.mail@gmail.com"},"deprecated":"this package has been deprecated","repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"10.5.0","description":"Haraka's config file loader","directories":{},"_nodeVersion":"18.20.2","dependencies":{"js-yaml":"^4.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^1.1.3"},"optionalDependencies":{"hjson":"^3.2.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.2.1_1713989425562_0.26017171235475645","host":"s3://npm-registry-packages"}},"1.2.2":{"name":"haraka-config","version":"1.2.2","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.2.2","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"910a3dc5d6e6c6dc2640912869222636ac23783b","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.2.2.tgz","fileCount":15,"integrity":"sha512-xsKQ2CTvCQcJNyhUUtsX7/Ot+j+peRp6UwbuAoGngakjLLeKzS/gV9S/S76B3wbWZ03jK0BozILOVw7L3Sq61A==","signatures":[{"sig":"MEUCIBVmzuZlC0afNFAwZ1qgSwG9SNAYb7LABPjbH+ZFoxcqAiEAqoE+648JKQUC8KrPzh2K5KXBUdo4fILkKO4g8WS4jOY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36238},"main":"config.js","engines":{"node":">=16"},"gitHead":"d49f50db88fa04c3d1f025b3fd0b42aa7bad8e4d","scripts":{"lint":"npx eslint@^8 *.js lib test test/*/*.js","test":"npx mocha@10 test test/readers","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint@^8 *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","versions":"npx dependency-version-checker check","prettier:fix":"npx prettier . --write --log-level=warn","versions:fix":"npx dependency-version-checker update && npm run prettier:fix"},"_npmUser":{"name":"msimerson","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"10.5.0","description":"Haraka's config file loader","directories":{},"_nodeVersion":"18.20.2","dependencies":{"js-yaml":"^4.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^1.1.3"},"optionalDependencies":{"hjson":"^3.2.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.2.2_1714002381317_0.8955555892589062","host":"s3://npm-registry-packages"}},"1.2.3":{"name":"haraka-config","version":"1.2.3","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.2.3","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"dd1b772ace28e20820ba2c10b36729902a5a3c24","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.2.3.tgz","fileCount":15,"integrity":"sha512-IKhyGVgKVNd6svlMqkSYjdUZiYWcTsFHQ/VcsIl4c5kbI+0hP8XHQFNuAEmhGSDbcMzfovyJzWq4DeTAUzShig==","signatures":[{"sig":"MEYCIQDbKxlRsx8yXMGu7cV7R9wgyto0n4A5iUcXbpKSvSokAwIhAMKkTK1Jp5jirroszoWEs2BCYp2LhXYDG2/zd6UL3rr6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36581},"main":"config.js","engines":{"node":">=16"},"gitHead":"1bffa0c239ca6760bc5db15227c53b259ce98a54","scripts":{"lint":"npx eslint@^8 *.js lib test test/*/*.js","test":"npx mocha@10 test test/readers","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint@^8 *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","versions":"npx dependency-version-checker check","prettier:fix":"npx prettier . --write --log-level=warn","versions:fix":"npx dependency-version-checker update && npm run prettier:fix"},"_npmUser":{"name":"msimerson","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"10.5.0","description":"Haraka's config file loader","directories":{},"_nodeVersion":"18.20.2","dependencies":{"js-yaml":"^4.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^1.1.3"},"optionalDependencies":{"hjson":"^3.2.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.2.3_1714175895627_0.17131215893116392","host":"s3://npm-registry-packages"}},"1.2.4":{"name":"haraka-config","version":"1.2.4","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.2.4","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"24dd41f44c68bcc3903943e6c3c96c2417e11510","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.2.4.tgz","fileCount":15,"integrity":"sha512-UFvMr/M2gGYppIV0sgrSv4VSWrvGWb+WdLhRoBZ8SvCqabLowGIPywbZr2SuUmBLZBTv/iCuE0nx2UR5bi3eCg==","signatures":[{"sig":"MEQCIASfUXxBuwmBcuubR9pmmeak+9ZnjEK9ZZi840u6ZnB5AiApSECSReymHJzZzlWI4bmHT999P/YfoEMvxO+mJKC1+g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36654},"main":"config.js","engines":{"node":">=16"},"gitHead":"0e1bf11678f0bb58e7fbedff6bd8bc6d56fc5d41","scripts":{"lint":"npx eslint@^8 *.js lib test test/*/*.js","test":"npx mocha@10 test test/readers","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint@^8 *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","versions":"npx dependency-version-checker check","prettier:fix":"npx prettier . --write --log-level=warn","versions:fix":"npx dependency-version-checker update && npm run prettier:fix"},"_npmUser":{"name":"msimerson","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"10.5.0","description":"Haraka's config file loader","directories":{},"_nodeVersion":"18.20.2","dependencies":{"js-yaml":"^4.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^1.1.3"},"optionalDependencies":{"hjson":"^3.2.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.2.4_1714189552776_0.1244641391225374","host":"s3://npm-registry-packages"}},"1.3.0":{"name":"haraka-config","version":"1.3.0","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.3.0","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"383811650bedf203a59cbd8298e091c4ca7742d7","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.3.0.tgz","fileCount":15,"integrity":"sha512-Z/aTH4kDZyhbU3tqjTEofiYM3S+A0Afox33f5LIxO57OLRNhtDUj/uDaiWaSEuguhZbvVKcDATvobbBcoVAccQ==","signatures":[{"sig":"MEYCIQCVAZqx6cRi0bLF9P0OwMX9gj9AYlL3XXLaaJjQ35AjIgIhALMjkRS/F71EwwwgbRzs5WjBkrgrT/Y9P3V/8itUpFFu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36997},"main":"config.js","engines":{"node":">=16"},"gitHead":"b19b432b99d87b23f35055f879edfc0b8e5548ab","scripts":{"lint":"npx eslint@^8 *.js lib test test/*/*.js","test":"npx mocha@10 test test/readers","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint@^8 *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","versions":"npx dependency-version-checker check","prettier:fix":"npx prettier . --write --log-level=warn","versions:fix":"npx dependency-version-checker update && npm run prettier:fix"},"_npmUser":{"name":"msimerson","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"10.5.0","description":"Haraka's config file loader","directories":{},"_nodeVersion":"18.20.2","dependencies":{"js-yaml":"^4.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^1.1.3"},"optionalDependencies":{"hjson":"^3.2.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.3.0_1714685228433_0.2679998691014982","host":"s3://npm-registry-packages"}},"1.4.0":{"name":"haraka-config","version":"1.4.0","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.4.0","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"http://haraka.github.io","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"5523eb2078e02b5b56f2fef9967a52e83c672c2e","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.4.0.tgz","fileCount":15,"integrity":"sha512-FIhXw+EKBnC24m3c7l+bQLKwU8SGRvMhTdzfswW1n/J8FCCFhWVCTBuz+feR7fMWXPx+3xGoVndElLSJaH5TfA==","signatures":[{"sig":"MEYCIQDjXlE3CoB14tp/j4LZ84kcAAWNXekrrt0NQPthqywxTwIhAL7yR2C5m7sfhh8w+o/oSWKeltTc+6MkRESel+cfrJzQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37914},"main":"config.js","engines":{"node":">=16"},"gitHead":"42852cac71fbb5b1b092d8e0b57f16984dbc4add","scripts":{"lint":"npx eslint@^8 *.js lib test test/*/*.js","test":"npx mocha@10 test test/readers","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint@^8 *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","versions":"npx dependency-version-checker check","prettier:fix":"npx prettier . --write --log-level=warn","versions:fix":"npx dependency-version-checker update && npm run prettier:fix"},"_npmUser":{"name":"msimerson","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"10.5.0","description":"Haraka's config file loader","directories":{},"_nodeVersion":"18.20.2","dependencies":{"js-yaml":"^4.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^1.1.3"},"optionalDependencies":{"hjson":"^3.2.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.4.0_1715544523738_0.9294084231805828","host":"s3://npm-registry-packages"}},"1.4.1":{"name":"haraka-config","version":"1.4.1","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.4.1","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"https://github.com/haraka/haraka-config","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"3fc4e1a0d130bb3dc49825ba1d219b5fb8c8383b","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.4.1.tgz","fileCount":15,"integrity":"sha512-gqjURvEQSV0CZEY3LBstnBXITpMxd/XIg78oH0DWjXJ7QdSOaQqZWFNaW0PVg+MUsUsaRYUZ6TXENmrhvd0/MQ==","signatures":[{"sig":"MEYCIQDfa0aai0uZoN8KhRQLLgJHWWiX4v40uzvGA+7wdTsZtAIhAIlxNYIZE1EgI/Qv6uFTfHKfPrOLCrEBGtTNySSmdxOT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":38059},"main":"config.js","engines":{"node":">=16"},"gitHead":"0322735b4625097147edfcdb7d3e851fa804b212","scripts":{"lint":"npx eslint@^8 *.js lib test test/*/*.js","test":"npx mocha@10 test test/readers","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint@^8 *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","versions":"npx dependency-version-checker check","prettier:fix":"npx prettier . --write --log-level=warn","versions:fix":"npx dependency-version-checker update && npm run prettier:fix"},"_npmUser":{"name":"msimerson","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"10.8.2","description":"Haraka's config file loader","directories":{},"_nodeVersion":"18.20.5","dependencies":{"js-yaml":"^4.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^1.1.5"},"optionalDependencies":{"hjson":"^3.2.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.4.1_1735407567866_0.6745007493658952","host":"s3://npm-registry-packages-npm-production"}},"1.4.2":{"name":"haraka-config","version":"1.4.2","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.4.2","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"https://github.com/haraka/haraka-config","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"c801e378f419f6bba88c19251b03e4cdc381b451","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.4.2.tgz","fileCount":15,"integrity":"sha512-mlhnUqGLaXmIAVVo7/Ms3FPPQJrNWiwa/OVGIvoj0aZQDacLWIyDwHYZx35ka2zBy4iW0VGY/KjannbMEPD+7g==","signatures":[{"sig":"MEYCIQD10Vp8+7DZk5USU0RLhdSFmZaNEuf3Ul2PipNBfWd/cQIhAP/CxJkkDlQSZPgtwTLiSdayz7HAwyTyxi20RX2E0iOe","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":38179},"main":"config.js","engines":{"node":">=16"},"gitHead":"5ecbe5baaed4928d48bacb235baf8c65f8dc1634","scripts":{"lint":"npx eslint *.js lib test test/*/*.js","test":"npx mocha@10 test test/readers","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","versions":"npx dependency-version-checker check","prettier:fix":"npx prettier . --write --log-level=warn","versions:fix":"npx dependency-version-checker update && npm run prettier:fix"},"_npmUser":{"name":"msimerson","email":"haraka.mail@gmail.com"},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"10.8.2","description":"Haraka's config file loader","directories":{},"_nodeVersion":"18.20.5","dependencies":{"js-yaml":"^4.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^2.0.2"},"optionalDependencies":{"hjson":"^3.2.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.4.2_1736371569178_0.9482429605127121","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"haraka-config","version":"1.5.0","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.5.0","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"https://github.com/haraka/haraka-config","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"9ddd21cb0bc220bb67228ce4f741773beb2aa79c","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.5.0.tgz","fileCount":15,"integrity":"sha512-950lXdVoPuZ7yVCs/Jigi+fkwCS00zLsVO6lwqc2eE9OD/bss+GSArCBJH50Uff+Rtk6Gt0rXklBDrzYzJRgUw==","signatures":[{"sig":"MEUCIBAYWyLOo4DvbJCNWe3RvGAJVw9Ns6lrkgVUCrzPRlUpAiEAwb/FDOj52Sdn9V+uCouFU4ehP6Ppn/LvPE/KmM2u5AE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-config@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":38378},"main":"config.js","engines":{"node":">=20"},"gitHead":"bb86316e26a50268ebeea03829a8e42857aeb0d2","scripts":{"lint":"npx eslint *.js lib test test/*/*.js","test":"node --test test/*.js test/readers/*.js","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","versions":"npx dependency-version-checker check","prettier:fix":"npx prettier . --write --log-level=warn","versions:fix":"npx dependency-version-checker update && npm run prettier:fix"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e92f34ce-eb8f-4e10-a498-ac694f4efa64"}},"prettier":{"semi":false,"printWidth":120,"singleQuote":true},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"11.9.0","description":"Haraka's config file loader","directories":{},"_nodeVersion":"24.14.0","dependencies":{"yaml":"^2.8.2"},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^2.0.3"},"optionalDependencies":{"hjson":"^3.2.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.5.0_1772737895238_0.2463004637834909","host":"s3://npm-registry-packages-npm-production"}},"1.5.2":{"name":"haraka-config","version":"1.5.2","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.5.2","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"https://github.com/haraka/haraka-config","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"6571548cfcccd0e21470b34f4c2979ba8f263784","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.5.2.tgz","fileCount":15,"integrity":"sha512-1KrsE8PqlsW9OfJE4I5qYTbVBbYcAnPSxfsLFRoK39yQshKXUjGotqZAU66VcsTDAlFpTJndtV+ZrgHfsRTSVw==","signatures":[{"sig":"MEQCIGbG9LyNlLFnGBCVgfvv0ad3kXEPfHsoEGEuuwl8wzQcAiByJRnESZT83eQ7M3dI+jrlMnxd3GFZUyKlsGtUCSptQw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-config@1.5.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":42878},"main":"config.js","engines":{"node":">=20"},"gitHead":"03edd8849a8152cd51bbaa249acba54e469073bb","scripts":{"lint":"npx eslint *.js lib test test/*/*.js","test":"node --test test/*.js test/readers/*.js","clean":"rm -rf coverage node_modules package-lock.json","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","versions":"npx npm-dep-mgr check","prettier:fix":"npx prettier . --write --log-level=warn","versions:fix":"npx npm-dep-mgr update","test:coverage":"node --test --experimental-test-coverage test/*.js test/readers/*.js","test:coverage:lcov":"mkdir -p coverage && node --test --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info test/*.js test/readers/*.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3b4122d-4edd-41ad-bb2c-78439d1f8c7f"}},"prettier":{"semi":false,"printWidth":120,"singleQuote":true},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"11.12.1","description":"Haraka's config file loader","directories":{},"_nodeVersion":"24.15.0","dependencies":{"yaml":"^2.9.0"},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^2.0.4"},"optionalDependencies":{"hjson":"^3.2.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.5.2_1779213897147_0.8950771756696356","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"haraka-config","version":"1.6.0","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.6.0","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"https://github.com/haraka/haraka-config","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"524200e7ec3a302bf53f50f8065a2ba3a7b8b4b0","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.6.0.tgz","fileCount":15,"integrity":"sha512-txhfvrqluLqcHLY6x3e0CErlxXgc66zKAgFMOyGeDveSJAFAIwqDAXaIOTa2jnaWeDGqUR9UFIWNKHnHn/THBw==","signatures":[{"sig":"MEQCIA3GHO0fbJxz0csK6bC+btrI/7FZ9NfXvpm+sOvu+5T1AiA1lD8hOWhmZLKKErJ7Jn6I0QI/cqkHelFoiaEFD9HhKw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-config@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":45730},"main":"config.js","engines":{"node":">=20"},"gitHead":"6a53e218216ea2471b8559df92235e9dc18c1440","scripts":{"lint":"npx eslint *.js lib test test/*/*.js","test":"node --test test/*.js test/readers/*.js","clean":"rm -rf coverage node_modules package-lock.json","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","versions":"npx npm-dep-mgr check","prettier:fix":"npx prettier . --write --log-level=warn","versions:fix":"npx npm-dep-mgr update","test:coverage":"node --test --experimental-test-coverage test/*.js test/readers/*.js","test:coverage:lcov":"mkdir -p coverage && node --test --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info test/*.js test/readers/*.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3b4122d-4edd-41ad-bb2c-78439d1f8c7f"}},"prettier":{"semi":false,"printWidth":120,"singleQuote":true},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"11.12.1","description":"Haraka's config file loader","directories":{},"_nodeVersion":"24.15.0","dependencies":{"yaml":"^2.9.0"},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^2.0.4"},"optionalDependencies":{"hjson":"^3.2.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.6.0_1779223424740_0.014884966848907277","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"haraka-config","version":"1.6.1","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.6.1","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"https://github.com/haraka/haraka-config","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"43be27faefd1520328e93f11e1b9d29eb8c3ed09","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.6.1.tgz","fileCount":15,"integrity":"sha512-TWr2MsDLn7CpoxvZvoH1hrWjllxI2h7GIFR/r+pbgCA22rFKb4hRTQCn4gsajdapMFDeKSG+y9VIeG9O/KyasA==","signatures":[{"sig":"MEUCIAEF4hEefWKQJ2YNl/zAr6w6K5NtKwAPcCd2N2PSlZDlAiEAknrnsnyyO9HenbfwAldTCw1fX6Sic/jZ+v3kKvh3K8U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-config@1.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":47551},"main":"config.js","engines":{"node":">=20"},"gitHead":"3bc26ca94f3680e2a302bd34f32e812cfd9486f6","scripts":{"lint":"npx eslint *.js lib test test/*/*.js","test":"node --test test/*.js test/readers/*.js","clean":"rm -rf coverage node_modules package-lock.json","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","versions":"npx npm-dep-mgr check","prettier:fix":"npx prettier . --write --log-level=warn","versions:fix":"npx npm-dep-mgr update","test:coverage":"node --test --experimental-test-coverage test/*.js test/readers/*.js","test:coverage:lcov":"mkdir -p coverage && node --test --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info test/*.js test/readers/*.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3b4122d-4edd-41ad-bb2c-78439d1f8c7f"}},"prettier":{"semi":false,"printWidth":120,"singleQuote":true},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"11.12.1","description":"Haraka's config file loader","directories":{},"_nodeVersion":"24.15.0","dependencies":{"yaml":"^2.9.0"},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^2.0.4"},"optionalDependencies":{"hjson":"^3.2.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.6.1_1779339333464_0.16942937868910724","host":"s3://npm-registry-packages-npm-production"}},"1.6.2":{"name":"haraka-config","version":"1.6.2","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.6.2","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"https://github.com/haraka/haraka-config","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"f399f1e4106f4a65f5e7e842aa1dc744326edafe","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.6.2.tgz","fileCount":15,"integrity":"sha512-bMZNno2WZt0oHKpPlLohYmMQz1g1+0DPPqgvL4EH/BmJDXhjDFAH9XJZOGgXxXcMRZx7McT8O4ybeebHz45tfg==","signatures":[{"sig":"MEUCIQDGuhYbspflcfjMNg7N5UyDFxJTXXo9awylOdrWsueGKwIgYdi8VFOIv693KbLq6ZA4JbCbqSpcdysxWpoLL0Ir8Os=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-config@1.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":48245},"main":"config.js","engines":{"node":">=20"},"gitHead":"7bac0c93f83d3c8c282bfd15e033dc34dafd311c","scripts":{"lint":"npx eslint *.js lib test test/*/*.js","test":"node --test test/*.js test/readers/*.js","clean":"rm -rf coverage node_modules package-lock.json","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","versions":"npx npm-dep-mgr check","prettier:fix":"npx prettier . --write --log-level=warn","versions:fix":"npx npm-dep-mgr update","test:coverage":"node --test --experimental-test-coverage test/*.js test/readers/*.js","test:coverage:lcov":"mkdir -p coverage && node --test --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info test/*.js test/readers/*.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3b4122d-4edd-41ad-bb2c-78439d1f8c7f"}},"prettier":{"semi":false,"printWidth":120,"singleQuote":true},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"11.12.1","description":"Haraka's config file loader","directories":{},"_nodeVersion":"24.15.0","dependencies":{"yaml":"^2.9.0"},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^2.0.4"},"optionalDependencies":{"hjson":"^3.2.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.6.2_1779650095909_0.09671545751133714","host":"s3://npm-registry-packages-npm-production"}},"1.6.3":{"name":"haraka-config","version":"1.6.3","author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","_id":"haraka-config@1.6.3","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"homepage":"https://github.com/haraka/haraka-config","bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"dist":{"shasum":"3375c12aecbce1e9e8dd523e2d70a41e0aa4def1","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.6.3.tgz","fileCount":13,"integrity":"sha512-UhfnaTLzNSzK5g+dSumi3LSZCMxany6MrSizqDheEnJX7mkczvu+nQua4JKt31AWg/o4LoTGn7GPY83znnZiQQ==","signatures":[{"sig":"MEYCIQCTzrebxFVo3aGxEpAN5bDkDUU377HhRGi0Sm2Fetr/lgIhAKP4zRM0IfaG+3n8e8nk1zslbGHSezNKUukwJDZEOP4D","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-config@1.6.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":50392},"main":"config.js","engines":{"node":">=20"},"gitHead":"d65d3ecca939d12c9a9a436e43dc009e8783dafe","scripts":{"lint":"npx eslint *.js lib test test/*/*.js","qlty":"qlty smells --all","test":"node --test test/*.js test/readers/*.js","clean":"rm -rf coverage node_modules package-lock.json","format":"npm run prettier:fix && npm run lint:fix","prepare":"git rev-parse --git-dir >/dev/null 2>&1 && git config core.hooksPath .githooks || true","lint:fix":"npx eslint *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","versions":"npx npm-dep-mgr check","prettier:fix":"npx prettier . --write --log-level=warn","versions:fix":"npx npm-dep-mgr update","test:coverage":"node --test --experimental-test-coverage test/*.js test/readers/*.js","test:coverage:lcov":"mkdir -p coverage && node --test --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info test/*.js test/readers/*.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3b4122d-4edd-41ad-bb2c-78439d1f8c7f"}},"prettier":{"semi":false,"printWidth":120,"singleQuote":true},"repository":{"url":"git+ssh://git@github.com/haraka/haraka-config.git","type":"git"},"_npmVersion":"11.13.0","description":"Haraka's config file loader","directories":{},"_nodeVersion":"24.16.0","dependencies":{"yaml":"^2.9.0"},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^3.0.0"},"optionalDependencies":{"hjson":"^3.2.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-config_1.6.3_1780952099037_0.5229930110284067","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"name":"haraka-config","license":"MIT","description":"Haraka's config file loader","version":"1.7.0","homepage":"https://github.com/haraka/haraka-config","repository":{"type":"git","url":"git+ssh://git@github.com/haraka/haraka-config.git"},"main":"config.js","engines":{"node":">=20"},"dependencies":{"yaml":"^2.9.0"},"optionalDependencies":{"hjson":"^3.2.2"},"devDependencies":{"@haraka/eslint-config":"^3.0.0"},"bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"scripts":{"prepare":"git rev-parse --git-dir >/dev/null 2>&1 && git config core.hooksPath .githooks || true","clean":"rm -rf coverage node_modules package-lock.json","format":"npm run prettier:fix && npm run lint:fix","fuzz":"node --test test/fuzz.js","lint":"npx eslint *.js lib test test/*/*.js","lint:fix":"npx eslint *.js lib test test/*/*.js --fix","prettier":"npx prettier . --check","prettier:fix":"npx prettier . --write --log-level=warn","qlty":"qlty smells --all","test":"node --test test/*.js test/readers/*.js","test:coverage":"node --test --experimental-test-coverage test/*.js test/readers/*.js","test:coverage:lcov":"mkdir -p coverage && node --test --experimental-test-coverage --test-reporter=lcov --test-reporter-destination=coverage/lcov.info test/*.js test/readers/*.js","versions":"npx npm-dep-mgr check","versions:fix":"npx npm-dep-mgr update"},"prettier":{"singleQuote":true,"printWidth":120,"semi":false},"gitHead":"7251842e9886b23f2b6e013845d94e8c91b3277d","_id":"haraka-config@1.7.0","_nodeVersion":"24.20.0","_npmVersion":"11.19.0","dist":{"integrity":"sha512-VaHGb3v+835gS8MW6oqrCZOYQAEVmbKZPllTMoqtGxU+qzE2bnM+1qNHjRD6BqzT2z10jnyDPokqwIDmDZyORA==","shasum":"8d4290289527fa2d3eff60103aa12ea22b5cca0f","tarball":"https://registry.npmjs.org/haraka-config/-/haraka-config-1.7.0.tgz","fileCount":16,"unpackedSize":55731,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-config@1.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDrnuV7sQICItUYRZWoJnRGTi+DZJU7+t1qUzSXMF61GAiEApEJ2C87WcwK9Y8LxZmub3TD/aVNo/C5AJ+gNsDmVBrw="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3b4122d-4edd-41ad-bb2c-78439d1f8c7f"}},"directories":{},"maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/haraka-config_1.7.0_1788406666475_0.46147928464472465"},"_hasShrinkwrap":false}},"time":{"created":"2016-02-22T16:31:52.829Z","modified":"2026-09-03T03:37:46.942Z","1.0.0":"2016-02-22T16:31:52.829Z","1.0.1":"2016-02-25T07:14:50.209Z","1.0.2":"2016-02-28T22:03:57.360Z","1.0.3":"2016-04-01T17:34:08.845Z","1.0.4":"2016-10-20T19:13:35.525Z","1.0.5":"2016-10-25T19:47:44.248Z","1.0.6":"2016-11-11T06:44:58.891Z","1.0.7":"2016-11-17T17:48:52.238Z","1.0.8":"2017-01-02T18:40:37.618Z","1.0.9":"2017-01-27T19:38:08.481Z","1.0.10":"2017-01-27T22:04:52.924Z","1.0.11":"2017-03-07T06:12:06.674Z","1.0.12":"2017-05-22T04:28:43.889Z","1.0.13":"2017-06-17T00:43:00.044Z","1.0.14":"2017-09-20T16:08:04.704Z","1.0.15":"2017-09-21T19:04:17.166Z","1.0.16":"2018-11-05T17:12:47.899Z","1.0.17":"2018-12-20T20:26:52.658Z","1.0.18":"2019-10-11T20:23:09.939Z","1.0.19":"2021-06-11T01:37:53.547Z","1.0.20":"2021-09-01T19:24:32.562Z","1.1.0":"2022-05-27T22:51:53.530Z","1.2.0":"2024-04-24T19:51:19.333Z","1.2.1":"2024-04-24T20:10:25.726Z","1.2.2":"2024-04-24T23:46:21.479Z","1.2.3":"2024-04-26T23:58:15.775Z","1.2.4":"2024-04-27T03:45:52.950Z","1.3.0":"2024-05-02T21:27:08.595Z","1.4.0":"2024-05-12T20:08:43.873Z","1.4.1":"2024-12-28T17:39:28.022Z","1.4.2":"2025-01-08T21:26:09.346Z","1.5.0":"2026-03-05T19:11:35.420Z","1.5.2":"2026-05-19T18:04:57.300Z","1.6.0":"2026-05-19T20:43:44.884Z","1.6.1":"2026-05-21T04:55:33.591Z","1.6.2":"2026-05-24T19:14:56.046Z","1.6.3":"2026-06-08T20:54:59.195Z","1.7.0":"2026-09-03T03:37:46.603Z"},"bugs":{"url":"https://github.com/haraka/haraka-config/issues"},"author":{"name":"Haraka Team","email":"haraka.mail@gmail.com"},"license":"MIT","homepage":"https://github.com/haraka/haraka-config","repository":{"type":"git","url":"git+ssh://git@github.com/haraka/haraka-config.git"},"description":"Haraka's config file loader","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"},{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msergeant","email":"helpme@gmail.com"}],"readme":"# haraka-config\n\n[![Build][ci-img]][ci-url] [![Cover][cov-img]][cov-url] [![Qlty][qlty-img]][qlty-url]\n\nHaraka config file loader, parser, and watcher.\n\n# Config Files\n\n## Config file type/formats\n\nHaraka's config loader can load several types of configuration files.\n\n- value - load a flat file containing a single value (default)\n- ini - load an ini file\n- json - load a json file\n- hjson - load a hjson file\n- yaml - load a yaml file\n- list - load a flat file containing a list of values\n- data - load a flat file containing a list, keeping comments and whitespace.\n- binary - load a binary file into a Buffer\n- js - `require()` a JavaScript module and use its export as config\n\nSee the [File Formats](#file_formats) section below for a more detailed\nexplanation of each of the formats.\n\n> Security note: a `js` config is executed, not parsed — loading it runs\n> the module's code. There is also an opt-in `<name>.js` fallback for\n> missing files (env var `HARAKA_JS_CONFIG=1`). See [JS Files](#js-files)\n> for the env-var use case, the shape contract, and the security\n> implications of the fallback.\n\n# Usage\n\n```js\n// From within a plugin:\nconst cfg = this.config.get(name, [type], [callback], [options])\n```\n\nThis will load the file config/rambling.paths in the Haraka directory.\n\n`name` is normally a filename in the config/ directory, not a full path.\nFor example:\n\n```js\nconst cfg = this.config.get('rambling.paths', 'list')\n```\n\nA relative `name` is confined to the config directory: a name containing\n`..` that would resolve outside the config root is rejected. An explicit\nabsolute path (e.g. `/etc/services`) is still accepted as a deliberate\nopt-in.\n\n`type` can be any of the types listed above.\n\nIf the file name has an `.ini`, `.json` or `.yaml` suffix,\nthe `type` parameter can be omitted.\n\n`callback` is an optional callback function that will be called when\nan update is detected on the file after the configuration cache has been\nupdated by re-reading the file. Use this to refresh configuration\nvariables within your plugin.\n\nIf the changed file fails to parse, the previously loaded config stays in\neffect and the callback is invoked with the parse `Error` as its first\nargument (it is called with no argument on success). The file continues to\nbe watched, so correcting it triggers another reload. Example:\n\n```js\nexports.register = function () {\n  this.loginfo('register called')\n  this.load_my_plugin_ini()\n}\n\nexports.load_my_plugin_ini = function () {\n  this.cfg = this.config.get('my_plugin.ini', () => {\n    // This closure is run a few seconds after my_plugin.ini changes\n    // Re-run the outer function again\n    this.load_my_plugin_ini()\n  })\n  this.loginfo(`cfg=${JSON.stringify(this.cfg)}`)\n}\n\nexports.hook_connect = function (next, connection) {\n  // this.cfg here will be kept updated\n}\n```\n\nThe `options` object can accepts the following keys:\n\n- `no_watch` (default: false) - prevents Haraka from watching for updates.\n- `booleans` (default: none) - for .ini files, this allows specifying boolean type keys. Default true or false can be specified.\n\n## <a name=\"overrides\">Default Config and Overrides</a>\n\nThe config loader supports dual config files - a file containing defaults,\nand another user installed file containing overrides. The default configs\nreside:\n\n- Haraka: within the config directory in the Haraka install (where `npm i`\n  installed Haraka)\n- NPM plugins - inside the module/config directory\n\nConfig files with overrides are **always** installed in the Haraka config\ndirectory, which you specified when you ran `haraka -i`.\n\nOverrides work in the following manner:\n\n- For `json`, `ini` and `yaml` config, values are overridden on a deep key by key basis.\n- For every other config format, an override file replaces the entire config.\n- If `smtp.json` or `smtp.yaml` exist, their contents will be loaded before all other config files. You can make use of [JSON Overrides](#json-overrides) here for a single file config.\n\n## Examples\n\n1. a plugin installed as a module (or a core Haraka plugin) loads a `list` config\n   from their own `config/plugin_name` file. That list can be completely overridden\n   by a non-empty file called `config/plugin_name` in the Haraka local install directory.\n\n2. a plugin using default config from `config/plugin_name.ini` can be overridden\n   on a key-by-key basis. A default `plugin_name.ini` might contain:\n\n```ini\ntoplevel1=foo\ntoplevel2=bar\n\n[subsection]\nsub1=something\n```\n\nAnd the local `plugin_name.ini` might contain:\n\n```ini\ntoplevel2=blee\n\n[subsection]\nsub2=otherthing\n```\n\nThis would be the equivalent of loading config containing:\n\n```ini\ntoplevel1=foo\ntoplevel2=blee\n\n[subsection]\nsub1=something\nsub2=otherthing\n```\n\nThis allows plugins to ship a default config and users can override\nvalues on a key-by-key basis.\n\n# <a name=\"file_formats\">File Formats</a>\n\n## Ini Files\n\n[INI files](https://en.wikipedia.org/wiki/INI_file) are key=value pairs, with optional [sections]. A typical example:\n\n```ini\nfirst_name=Matt\nlast_name=Sergeant\n\n[job]\ntitle=Senior Principal Software Engineer\nrole=Architect\n\n[projects]\nharaka\nqpsmtpd\nspamassassin\n```\n\nThat produces the following Javascript object:\n\n```js\n{\n    main: {\n        first_name: 'Matt',\n        last_name: 'Sergeant'\n    },\n    job: {\n        title: 'Senior Principal Software Engineer',\n        role: 'Architect'\n    },\n    projects: {\n        haraka: undefined,\n        qpsmtpd: undefined,\n        spamassassin: undefined,\n    }\n}\n```\n\nItems before any `[section]` marker are in the implicit `[main]` section.\n\nSome values on the right hand side of the equals are converted:\n\n- integers are converted to integers\n- floats are converted to floats.\n\nThe key=value pairs support continuation lines using the backslash \"\\\" character.\n\nThe `options` object allows you to specify which keys are boolean:\n\n```js\n{\n  booleans: ['reject', 'some_true_value']\n}\n```\n\nOn the options declarations, key names are formatted as section.key.\nIf the key name does not specify a section, it is presumed to be `[main]`.\n\nDeclaring booleans ensures that values are converted as boolean when parsed, and supports the following options for boolean values:\n\n```\ntrue, yes, ok, enabled, on, 1\n```\n\nAnything else is treated as false.\n\nTo default a boolean as true (when the key is undefined or the config file is\nmissing), prefix the key with +:\n\n```js\n{\n  booleans: ['+reject']\n}\n```\n\nFor completeness the inverse is also allowed:\n\n```js\n{\n  booleans: ['-reject']\n}\n```\n\nLists are supported using this syntax:\n\n```ini\nhosts[] = first_host\nhosts[] = second_host\nhosts[] = third_host\n```\n\nwhich produces this javascript array:\n\n<!-- prettier-ignore -->\n```js\n['first_host', 'second_host', 'third_host']\n```\n\n## Flat Files\n\nFlat files are simply either lists of values separated by \\n or a single value in a file on its own. Qmail or qpsmtpd users will be familiar with this format. Lines starting with '#' and blank lines will be ignored unless the type is specified as 'data', however even then line endings will be stripped.\n\n## JSON Files\n\nThese are as you would expect, and return an object as given in the file.\n\nIf a requested .json or .hjson file does not exist then the same file will be checked for with a .yaml extension and that will be loaded instead. This is done because YAML files are far easier for a human to write.\n\n### <a name=\"json-overrides\">JSON Overrides</a>\n\nYou can use JSON, HJSON or YAML files to override any other file by prefixing the outer variable name with a `!` e.g.\n\n```js\n{\n  \"!smtpgreeting\": ['this is line one', 'this is line two'],\n  \"!smtp.ini\": {\n    main: {\n      nodes: 0,\n    },\n    headers: {\n      max_lines: 1000,\n      max_received: 100,\n    },\n  },\n  \"!custom-plugin.yaml\": {\n    secret: 'example',\n  },\n}\n```\n\nIf the config/smtpgreeting wasn't loaded before, then this value would replace it. Since `smtp.json` is always loaded first, it can be used to override existing config files.\n\nNOTE: You must ensure that the data type (e.g. Object, Array or String) for the replaced value is correct. This cannot be done automatically.\n\n## Hjson Files\n\nHjson is a syntax extension to JSON. It is intended to be used like a user interface for humans, to read and edit before passing the JSON data to the machine. That means you can use it to parse JSON files but it is not intended as a replacement.\n\nYou can check [Hjson's homepage](https://hjson.github.io/) to get familiar with it and you can [try out its syntax](https://hjson.github.io/try.html).\n\nMain features:\n\n- Comments\n- Optional quotes\n- Optional commas\n- Heredoc\n\nExample syntax\n\n```hjson\n{\n  # specify rate in requests/second (because comments are helpful!)\n  rate: 1000\n\n  // prefer c-style comments?\n  /* feeling old fashioned? */\n\n  # did you notice that rate does not need quotes?\n  hey: look ma, no quotes for strings either!\n\n  # best of all\n  notice: []\n  anything: ?\n\n  # yes, commas are optional!\n}\n```\n\nNOTE: Hjson can be also replaced by a YAML configuration file. You can find more on this issue under JSON section.\n\n## YAML Files\n\nAs per JSON files above but in YAML format.\n\n## JS Files\n\nA `.js` config is a Node module that is `require()`d; its `module.exports`\nbecomes the config value. Because it is code, it can compute config at load\ntime — most usefully from `process.env`, (issue #39).\n\n```js\n// config/host_list.js\nmodule.exports = (process.env.HARAKA_HOST_LIST || '').split(/\\s+/).filter(Boolean)\n```\n\n### `<name>.js` fallback (opt-in)\n\nSo that environment-driven config works, when `HARAKA_JS_CONFIG=1` is enabled\na missing config file falls back to `<name>.js`. For `host_list.ini` the fallback\nis `host_list.ini.js`.\n\nThe `.js` module must export the structure the caller's `type` expects — an array for `list`, a scalar for `value`, the section/key object an `ini` consumer expects, etc. No coercion is performed.\n\n> Security note: a `js` config is **executed, not parsed** — loading it runs\n> the module's code. Only enable this where the config directory is trusted.\n\n# Reloading/Caching\n\nHaraka automatically reloads configuration files, but this only works if whatever is looking at that config re-calls config.get() to retrieve the new config. Providing a callback in the config.get() call is the most efficient method to do this.\n\nConfiguration files are watched for changes using filesystem events which are inexpensive. Due to caching, calling config.get() is normally a lightweight process.\n\nOn Linux/Windows, newly created files that Haraka has tried to read in the past will be noticed immediately and loaded. For other operating systems, it may take up to 60 seconds to load, due to differences between in the kernel APIs for watching files or directories.\n\nHaraka reads a number of configuration files at startup. Any files read in a plugins register() function are read _before_ Haraka drops privileges. Be sure that Haraka's user/group has permission to read these files else Haraka will be unable to read updates after they change.\n\n# Fuzzing\n\n`test/fuzz.js` is a seeded property fuzzer over the parsers, the override merge\nand copy, path confinement, and the regex patterns. `npm test` runs a short pass\nof it; `npm run fuzz` runs a long one. A failure prints a command that replays\nthat single iteration:\n\n```sh\nFUZZ_SEED=<seed> FUZZ_ONLY=<target> FUZZ_START=<iteration> FUZZ_ITERATIONS=1 node --test test/fuzz.js\n```\n\n`FUZZ_ITERATIONS` (per target), `FUZZ_ONLY=ini,flat,...`, and `FUZZ_SLOW_MS` tune a run.\n\n[ci-img]: https://github.com/haraka/haraka-config/actions/workflows/ci.yml/badge.svg\n[ci-url]: https://github.com/haraka/haraka-config/actions/workflows/ci.yml\n[cov-img]: https://codecov.io/github/haraka/haraka-config/coverage.svg\n[cov-url]: https://codecov.io/github/haraka/haraka-config\n[qlty-img]: https://qlty.sh/gh/haraka/projects/haraka-config/maintainability.svg\n[qlty-url]: https://qlty.sh/gh/haraka/projects/haraka-config\n","readmeFilename":"README.md"}