{"_id":"haraka-message-stream","_rev":"19-999f77065ebbae36c422f59be31d5dd4","name":"haraka-message-stream","dist-tags":{"latest":"2.0.7"},"versions":{"1.0.0":{"name":"haraka-message-stream","version":"1.0.0","keywords":["haraka","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@1.0.0","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"fec10bb85e9d2c0176db47d768b54ed36348a4b0","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-1.0.0.tgz","fileCount":6,"integrity":"sha512-OP75R9pT9Hwvil+QPBEdKjb5Z0vKUsuoM7NTK8onToFoFi07Dsj8sGHDIN5fWdLDgzMZScyhQMgNaRKwx+1XKw==","signatures":[{"sig":"MEUCIQC+MbkXjXOXlPYJ0m6g9ATNrDzzHUoiTkUuRnEXCgY2TgIgJ3XdCeDU28elvdVBGKrxk/QDbho7An4sztgLSeG6OVk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":15808,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJitU7tACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpl3A//f1uX0eTi0dAkb/vcuiP8AyidNeTujMJizSpIq/9IOqTW+dIl\r\nrCEB8bL9QQtxyu5mgOXTti3ajv0Tj0XK7YTWodODcuj5ltmaMJio8zKvbL5V\r\nFBzN8BXt5FYSPBObF2VcHC1tb4NUPyjZp5alOrUw/hNh4Q0qZU1R3CYqXcOw\r\nV2VSTLjvKUA3QazUapqDoSPqJxbwSmTomUhzhXn9/1rDGy1OaIE4Qh8SvJtW\r\nNSAqr+FUSB8Kse5VpuCj+nqLhQuVAjUfVRnxvmmWkWUVZby5L25s+D0f7RuT\r\nr1tPP+o1bMekpbJm0v+XI40c9wCMyROpQs3JOrdYiiZFwNR4jVFZPTTINwdY\r\nI547i6tzGaHWj9Q5ycBbKB5oUQQWbg7PlpZjmW6GhrrXVqIHn0DvAk95+k3G\r\nGwvpMACOyQaBk9FLbxUcVB5jKvpdlhJhU+78hU1/T+OjykIMLOQvVF/ShZwM\r\n/ryPIlUQQy2IaqDIi72SFY0ahTqkRd7BaqFINbsB/Ja98OIBg9XPZOpak9ew\r\n8yZW9Z9Bbzeo2XHVlrPgLq7XRy8KJF+nxkE1hITeH6USFlpdplK6y6ara9sc\r\nEQfvFNhbAd04lFASR3S/7tQNAzDzxSk/6ZcE0S6f/Xh26DGViHwMc5aZUu/D\r\nb6pcwuIgfO1dvt3aDFW40ERAMgpVnVALOF4=\r\n=h33p\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"a6cd3f2dfc2b376bec2d1b7374cd781329701948","scripts":{"lint":"npx eslint *.js test/*.js","test":"npx mocha","lintfix":"npx eslint --fix *.js test","versions":"npx dependency-version-checker check"},"_npmUser":{"name":"msimerson","email":"haraka.mail@gmail.com"},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"8.11.0","description":"Haraka message stream library","directories":{},"_nodeVersion":"16.15.1","dependencies":{"haraka-utils":"^1.0.3","haraka-chunk-emitter":"^1.0.1"},"_hasShrinkwrap":false,"devDependencies":{"mocha":">=9","eslint":">=8","eslint-plugin-haraka":"*","haraka-test-fixtures":"*"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_1.0.0_1656049389729_0.7424651636009634","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"haraka-message-stream","version":"1.1.0","keywords":["haraka","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@1.1.0","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"cdeb0356210994ca3f08e5423ef2f9d770c55574","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-1.1.0.tgz","fileCount":6,"integrity":"sha512-5joTB5WfXrXZCVTyg3NGuVjZNNYE/qkMTYsboXK9Ju129jV4LKgQXyynLuu1IjKAXqof68DgdDRaV3uERWax3Q==","signatures":[{"sig":"MEYCIQCE1VDokI/IUmSTfbY+8mG50JslkzsVXGRy+nBOFBjekwIhAMF1mLg+0YgvbatKDRouCcqYbMeEwBSzXmb5VHJZszLL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":15991,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJitV5AACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrDQw/9EZ4o4qyQY2AjDm/QfX5P2VIfXQ5A1FtzeU5D515Uasjvhwfq\r\ntFgi/J/etPp0+VGus2EDv7QI6ajpZXj8cY+G4zdjNREnhNlqQExYvqk8Ths7\r\ndXT+Vj+xT6cSQlVozCi9TMTgO90l7/9yqWh+v4o0QOv5SX5+UUvk4d0nghf9\r\nA+vTrMN2E8xaJSIvNsisyHDTdIuCKdNce2iLiF6FWWl28vUJNHgA8tC41Z1U\r\nZ7+ZuWcyOwYDSWWcFrecQcpnKCgVBEV/I/+0hMr75V19/mSa0+1tTODGqjrn\r\nBPwV5VgetoN5LwtH12IzC+QA2L6Qa0BNrZI5gS1BxiA8l44oEKb1RVILLhn6\r\nBT94cP6BrJHgs1VhbWtTRjgwY9lJDIw+bc8AwLWyUMkn8KrFq/xG0fBwDIT5\r\nP5cd2sZvm+3bPVXN5naIleywrWl48J9jiyV1fDk0X1vKyERRhTb+3AYF2HRq\r\nVWp3FryosojlekuTWP8eNz5cs8Z/RjwFQ9rgMSILvxuRorh6c1+PSVd9U1/N\r\n8RtgCgCJBj1cT/HCgCBKeJt6aiR97zYDSB59uuXgOt/qRk00HmfLbICTIewu\r\n7bVAkTTkNaoQLv4726HITgeBkFN2ghd3Haow2giF1UifufDfiRWqijGVhu+1\r\ntCPLVcdP7KZ+hYDgfRoGFsi9FFuErUzJX28=\r\n=80tl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"83fc34689dae664f699de3cb1cea21d307ba9b6b","scripts":{"lint":"npx eslint *.js test/*.js","test":"npx mocha","lintfix":"npx eslint --fix *.js test","versions":"npx dependency-version-checker check"},"_npmUser":{"name":"msimerson","email":"haraka.mail@gmail.com"},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"8.11.0","description":"Haraka message stream library","directories":{},"_nodeVersion":"16.15.1","dependencies":{"haraka-utils":"^1.0.3","haraka-chunk-emitter":"^1.0.1"},"_hasShrinkwrap":false,"devDependencies":{"mocha":">=9","eslint":">=8","eslint-plugin-haraka":"*","haraka-test-fixtures":"*"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_1.1.0_1656053312086_0.1782235593257333","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"haraka-message-stream","version":"1.2.0","keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@1.2.0","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"1f2fa4ae80e00e6f621be6e78d0548f0eac32a33","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-1.2.0.tgz","fileCount":9,"integrity":"sha512-AlqkGCjU0IivV7rdd9RrMsgoe4V9LXbjcH1NQ84kpqsDeo6nkV7JVjhpo66ToEZWjZoxkfk0vFZ4Q6fK99el7Q==","signatures":[{"sig":"MEQCIQDPBttAXy8cbty44BZH8EvRx4hGE8yH43UTf4K5/pbWRgIfDhqLumbtTrXnxvA+8se4C/nAAwtLDCuTxuLt9AsXtg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":149579,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJitf2sACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq73g//afj+/DnqBGGICn4o55uIr4z7+10eAyn48M3koDvOoGWW8xWG\r\nhnfhAOZYQaY2BMmNlT3L8Gb6dmrQaBmXbWZf6egIEpfZlP17GqZvOUANi/bH\r\ncupjoX+ZfDo9azJwxE8SKrK2odFVmP2XFqTUEXw/b6Dr+5QSsJleLCTQWZ4F\r\n9kKaXDtYHDscKVxqZmXO5JjBNc9G4Epqpi56aRHU6wDGZ0gKHiEXlcCV4BTQ\r\n1f+KsDBC9N1OLc/JVgtdWXBoY54tk1YeaGQ+p4GdDaPhEDruwngGN2oIvPli\r\n2b0shQOsubBLmA3T/wW/+nD+Ur7sh01IiJP/YaOmBdh61KBlnd8xH/IvTujl\r\nUX999YUbupnGVe79z/BCMVMC26k1VoVdTja99aO4AvBMNyS2Nic9wVRVWgSQ\r\nHj0UkQWYEHbTDlNJfbA1JTAByroY+qCjY3c6fKc2ovQWvPwC9zTadx0YPaMO\r\n/zMy4uv+OVBgjXUBf2e2mM7mvHuR8CPJLYxE2FHkjuP5XkBUdd1lPZioK8yv\r\nYGT/rG/WSpoGgjN5FjVM5LcInXb4UfXAA7o1rKqV0M+ZPdmR1B+3QB0PPAWE\r\nsWq8HDor+djbyzGSj429pZzoPeulVKSgFfpyv8jBWUVW57KV84pz3BV6zi+r\r\nE3/5XnOqyUzcRz9bcR0BGu2kSXTYkT5X7Pw=\r\n=gY6K\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"39aeaa1c4e1caa9a1b2bd542a871179cf7d99b38","scripts":{"lint":"npx eslint *.js test","test":"npx mocha","lintfix":"npx eslint --fix *.js test","versions":"npx dependency-version-checker check"},"_npmUser":{"name":"msimerson","email":"haraka.mail@gmail.com"},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"8.11.0","description":"Haraka email message stream","directories":{},"_nodeVersion":"16.15.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"mocha":">=9","eslint":">=8","eslint-plugin-haraka":"*","haraka-test-fixtures":"*"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_1.2.0_1656094124674_0.988778685288304","host":"s3://npm-registry-packages"}},"1.2.1":{"name":"haraka-message-stream","version":"1.2.1","keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@1.2.1","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"3da7583d79f02dd2c3c299e76f4267dd114a108c","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-1.2.1.tgz","fileCount":9,"integrity":"sha512-j8sDJiUQuRYXgl7dgxRXYXStlS1zYshCPm1oPU7DUYZcATiw8V9Kt+jO2hF97bFnvF+FDTtBmuk0oJa03rVbXA==","signatures":[{"sig":"MEUCIBLzZpz1UfgjjGU6euhn9eDOq8XtUH5tpXs+yPN6FTkdAiEAvsU9aRLM/l8ZJ0vT6lOd5sKi8+DT2rcT8VSeflUH7II=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":149582},"main":"index.js","gitHead":"a0b8843482062c9a4fd4cc0472ed6e43aefd2670","scripts":{"lint":"npx eslint@^8 *.js test","test":"npx mocha@^10","lintfix":"npx eslint@^8 --fix *.js test","versions":"npx dependency-version-checker check"},"_npmUser":{"name":"msimerson","email":"haraka.mail@gmail.com"},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"10.5.0","description":"Haraka email message stream","directories":{},"_nodeVersion":"18.20.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"eslint-plugin-haraka":"^1.0.15","haraka-test-fixtures":"^1.3.3"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_1.2.1_1712182849064_0.16616495588964608","host":"s3://npm-registry-packages"}},"1.2.2":{"name":"haraka-message-stream","version":"1.2.2","keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@1.2.2","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"a2fb4588e67a852ceaca1004fcc5009c1b6cf1ea","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-1.2.2.tgz","fileCount":5,"integrity":"sha512-2Tzjgu16zh9BH7Qbm/ktikaqvm/sse8J63U4HnPEVDfgd7Cw0dgqZ5BwfdHRzNdnKPlVx1k8sFDAHBr4JI1NFw==","signatures":[{"sig":"MEYCIQCScGQqBai97oU5xBvuw5+ahvblsk+47FiJTF68IQrVJQIhALR6iR/pgDscJPDYmLE9U+PYTpNuScuAl1lly+4FSPm8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":17926},"main":"index.js","gitHead":"c23640543249e1cf46305fe84647004973824845","scripts":{"lint":"npx eslint@^8 *.js test","test":"npx mocha@^10","format":"npm run prettier:fix && npm run lint:fix","lintfix":"npx eslint@^8 --fix *.js test","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+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"10.7.0","description":"Haraka email message stream","directories":{},"_nodeVersion":"18.20.4","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"haraka-test-fixtures":"^1.3.3","@haraka/eslint-config":"^1.1.3"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_1.2.2_1722895151952_0.9914395521368149","host":"s3://npm-registry-packages"}},"1.2.3":{"name":"haraka-message-stream","version":"1.2.3","keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@1.2.3","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"ad633c55bdb974cb5c79d02cb0022fda2c42e965","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-1.2.3.tgz","fileCount":5,"integrity":"sha512-drDyhUDVOp1ge36qGDqtLxCkFn5zFwGXQkk1NhqTVEcLPiXI0esBuD4WeP03IHtJxwwZvaJ6qlkYcpkynl61Ag==","signatures":[{"sig":"MEQCID2niSVzr1/V4sp6TZQ97FFqaaMTGGmA804GSevh3oOMAiBnOJ/8JerltYOu3Txn39x2UhcqpOdyuCtW99hBt+hbNA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18171},"main":"index.js","gitHead":"1182dd1ef6e99887e5a429d3704124b327842001","scripts":{"lint":"npx eslint@^9 *.js test","test":"npx mocha@^11","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint@^9 --fix *.js test","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"},"prettier":{"semi":false,"singleQuote":true},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"10.8.2","description":"Haraka email message stream","directories":{},"_nodeVersion":"20.18.2","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"haraka-test-fixtures":"^1.3.9","@haraka/eslint-config":"^2.0.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_1.2.3_1738522841598_0.7711452272817094","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"haraka-message-stream","version":"1.3.0","keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@1.3.0","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"aa37cfbb9f38ec467ee7df2df869bb2479c055a4","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-1.3.0.tgz","fileCount":5,"integrity":"sha512-91mrazveqeew8cax9hNZO35VZ92SNq5koaBWO8UUgTlm9gkbIo+fySLIPLcbbR08cz+1vj601I5DT9rSfAEiYA==","signatures":[{"sig":"MEUCIG/k+eq6m1X7q7U9mG/V9ZaYpFCQL6RlUdtwYDZzdglXAiEAwqXtCClAyAhaQHqZh3GrED/l52oksVhk1A5inncs6v4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18908},"main":"index.js","gitHead":"d147847a533da95a5e5d781a9c5792f7c322f77b","scripts":{"lint":"npx eslint@^9 *.js test","test":"node --test","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint@^9 --fix *.js test","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","actor":{"name":"msimerson","type":"user","email":"haraka.mail@gmail.com"},"email":"haraka.mail@gmail.com"},"prettier":{"semi":false,"singleQuote":true},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"10.8.2","description":"Haraka email message stream","directories":{},"_nodeVersion":"20.19.2","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"haraka-test-fixtures":"^1.3.10","@haraka/eslint-config":"^2.0.3"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_1.3.0_1751843752209_0.8733522618720346","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"haraka-message-stream","version":"1.3.1","keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@1.3.1","maintainers":[{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"874e39a5c6bc4fbfe68920a01fab1b43d6ec0d85","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-1.3.1.tgz","fileCount":5,"integrity":"sha512-8glInBsi1d8lhtU6tyggQqkyrbIqMvKgu4ccJfn18ISFBr+hOOvav6USmC2qcYGatasKxQpjrgo1bX8Yo1znBQ==","signatures":[{"sig":"MEQCIFQ0Pz2ZokookLs+uYLE25fQox4Pz/ppYdwV2kLXx3SPAiBPJ2Lnan36u48aghAQce9Ztg0obgwUL+ERZUrNVMFobg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":19352},"main":"index.js","gitHead":"c05b2469d10d79b8b60661c8ef40c8445ff3598b","scripts":{"lint":"npx eslint@^9 *.js test","test":"node --test","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint@^9 --fix *.js test","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"},"prettier":{"semi":false,"singleQuote":true},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"10.8.2","description":"Haraka email message stream","directories":{},"_nodeVersion":"20.19.4","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"haraka-test-fixtures":"^1.3.10","@haraka/eslint-config":"^2.0.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_1.3.1_1753307733087_0.6534776217673719","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"haraka-message-stream","version":"1.3.2","keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@1.3.2","maintainers":[{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"d3c665711858b155912578775834787f2a5543c8","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-1.3.2.tgz","fileCount":5,"integrity":"sha512-ssHDIWRN+mtPYjTh03m6aJU+Cy4OqKNPASIPaj3EHgEw/rd3YE2TI+PIBT6t7gGmmB6Umec6SwwBMOH/sLjiLw==","signatures":[{"sig":"MEUCIQD+S32msAHddt9Cbh0DfxVsbuSqyfnR+//NiMe+uGaObwIgJZzOfMqmcDLfeIrHVp1BdAhSKcFAsNw3abABX34DrSA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-message-stream@1.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":19355},"main":"index.js","gitHead":"0a85a889481397726bc96cd8937f03e86365ec86","scripts":{"lint":"npx eslint@^9 *.js test","test":"node --test","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint@^9 --fix *.js test","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:ec3a03d3-1233-4b7e-aa59-46f29a745e13"}},"prettier":{"semi":false,"singleQuote":true},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"11.6.2","description":"Haraka email message stream","directories":{},"_nodeVersion":"24.12.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"haraka-test-fixtures":"^1.3.10","@haraka/eslint-config":"^2.0.2"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_1.3.2_1767212378955_0.5047336272227041","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"haraka-message-stream","version":"1.3.3","keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@1.3.3","maintainers":[{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"03c00a38ff34cae60c04bf57dc9e53fae91c3cbf","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-1.3.3.tgz","fileCount":5,"integrity":"sha512-aBsCavBf+AK8ZgKwlV41lwwFzUpADF3fW7f3nfOHAgZi1HK9TFA1MkXSXA5naN07NF9YLWXXVKizPHDo6n2m3w==","signatures":[{"sig":"MEQCIHFHM/QT5ZqtrwGNQUC7D5TPdW9YAUeBBeXh8kFIvyt6AiAVArmRlw6TPyJBnIr/U08hP6ieVvey77PcZYx0N8DPFg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-message-stream@1.3.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":19870},"main":"index.js","gitHead":"9030081ce30666a2783c2378a8e946fdc4356a35","scripts":{"lint":"npx eslint *.js test","test":"node --test","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint --fix *.js test","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":"npx c8 --reporter=text --reporter=text-summary npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fae21b44-d868-452a-b9da-6a2f652077ea"}},"prettier":{"semi":false,"singleQuote":true},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"11.9.0","description":"Haraka email message stream","directories":{},"_nodeVersion":"24.14.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^2.0.4"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_1.3.3_1774328566081_0.07103847388241724","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"haraka-message-stream","version":"2.0.0","keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@2.0.0","maintainers":[{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"a767a7001ea680df7ddebf3558071150a1a6ad5f","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-2.0.0.tgz","fileCount":8,"integrity":"sha512-Ek8NZn7gdEm5Nj6txqiW1diCufonJkIRHkTocV3mqpghVCDutPO5x2Sg4vy1mNEN3O18vacLEiADvEE4jE1UhQ==","signatures":[{"sig":"MEQCIBZ5aWZCpTrbFl0w6yo2E9mYe0uI57v1FD2LkBnLJq33AiASHSPcb7oNB3Nbpf/T01SxyKfhLzSRhcI3xcc3uV9dOw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-message-stream@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":26634},"main":"index.js","gitHead":"abe435e091ae02e7915215755fff6c629a74cfcc","scripts":{"lint":"npx eslint *.js test","test":"node --test","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint --fix *.js test","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":"npx c8 --reporter=text --reporter=text-summary npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fae21b44-d868-452a-b9da-6a2f652077ea"}},"prettier":{"semi":false,"singleQuote":true},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"11.9.0","description":"Haraka email message stream","directories":{},"_nodeVersion":"24.14.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^2.0.4"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_2.0.0_1774335180895_0.9194193007306033","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"haraka-message-stream","version":"2.0.1","keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@2.0.1","maintainers":[{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"3e0af9329f7f3db11cca9398f9ea3d2916ae651e","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-2.0.1.tgz","fileCount":8,"integrity":"sha512-9+3jug8AsfKjOrkcpk6FVAoRdIRerGQJpEOW23lw9A956WjovIp2TysG8JqgjDpPI65G1SS9u2A8zYY6rqwAUg==","signatures":[{"sig":"MEUCIQCotA9FtcbSrKC96vhpGXCAzVwxmvgx35Q8/xVpit7EWQIgCsDCy1NlyfSSVdAF7YUHoaB8zNJosi6ZGDVFtuSjHEs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-message-stream@2.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":26610},"main":"index.js","gitHead":"4de3beb61f50ba981540c759a7796a840dd4b6c3","scripts":{"lint":"npx eslint *.js test","test":"node --test","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint --fix *.js test","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":"npx c8 --reporter=text --reporter=text-summary npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fae21b44-d868-452a-b9da-6a2f652077ea"}},"prettier":{"semi":false,"singleQuote":true},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"11.9.0","description":"Haraka email message stream","directories":{},"_nodeVersion":"24.14.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^2.0.4"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_2.0.1_1775145018754_0.5482392395011322","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"haraka-message-stream","version":"2.0.2","keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@2.0.2","maintainers":[{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"ca8f5dd130958aa9237dd7a55ae3d0400f7684c2","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-2.0.2.tgz","fileCount":8,"integrity":"sha512-ST0BwENQIk3mCmORwSrtqX3wq4QePr950rqIi1uUyynLwSIIdDu+p++O54ivIwKm92Xqdfjb0ql334BU0FOnqw==","signatures":[{"sig":"MEUCIQCwvFEsblQek9s+nwiL44lxK4y2ZTghtDKjL+/i5p10MQIgXwMqbF26TDWDvFa0g5dG6an5hTjx34jutEJi9oHAOcA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-message-stream@2.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":27979},"main":"index.js","gitHead":"4ee9df24bfee527b8c25500df14e1aed0568a5c0","scripts":{"lint":"npx eslint *.js test","test":"node --test","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint --fix *.js test","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":"npx c8 --reporter=text --reporter=text-summary npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fae21b44-d868-452a-b9da-6a2f652077ea"}},"prettier":{"semi":false,"singleQuote":true},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"11.11.0","description":"Haraka email message stream","directories":{},"_nodeVersion":"24.14.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^2.0.4"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_2.0.2_1775681597344_0.8394908918918749","host":"s3://npm-registry-packages-npm-production"}},"2.0.3":{"name":"haraka-message-stream","version":"2.0.3","keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@2.0.3","maintainers":[{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"16c8ecfb51e2576ee69eb67d231f6cef52b81595","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-2.0.3.tgz","fileCount":8,"integrity":"sha512-j5LVmb29c12KLeosuf6UEJjWxPaCHg5Ge4MBpIYXSH4yoGGgde4b5xpy8xeF8m4n819X1HoRvQDIlgDwNjTGHQ==","signatures":[{"sig":"MEUCIQCa+92NX5P3upIw1H7wm1I4zfqJ32of9GazkmQxdVMZFgIgfbtCS/LZ1RGsJz7Njnwqr+SS/CO04uoSdET0oQs+pfk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-message-stream@2.0.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":28368},"main":"index.js","gitHead":"2b84d975ed9b14ad94984ac82ab6479328eccd3a","scripts":{"lint":"npx eslint *.js test","test":"node --test","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint --fix *.js test","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":"npx c8 --reporter=text --reporter=text-summary npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fae21b44-d868-452a-b9da-6a2f652077ea"}},"prettier":{"semi":false,"singleQuote":true},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"11.11.0","description":"Haraka email message stream","directories":{},"_nodeVersion":"24.14.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^2.0.4"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_2.0.3_1777323018138_0.966479622580285","host":"s3://npm-registry-packages-npm-production"}},"2.0.4":{"name":"haraka-message-stream","version":"2.0.4","keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@2.0.4","maintainers":[{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"cf83c617fa14bed9194ecdeefc0cee6c8e2bd68f","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-2.0.4.tgz","fileCount":8,"integrity":"sha512-Pu6miBQt0/JKVW81MmGgSd6brwwey8pFF4fGwUzKiF9wLZ/aP3IXFjbgmLPrMaQGnaB1ljcJAEb2bRFugKsIQA==","signatures":[{"sig":"MEUCIE2xF2BP7xefsKdgAGK639mzFfi6y9cHsc0cZehm8E8BAiEAySP7lWwnZks5dpCiBUFT9KdsPC3YSqL9+aHqXAlURuk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-message-stream@2.0.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31319},"main":"index.js","gitHead":"f0c5408b5bb7d732d45672064ca7d588aecfa255","scripts":{"lint":"npx eslint *.js test","test":"node --test","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint --fix *.js test","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":"npx c8 --reporter=text --reporter=text-summary npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fae21b44-d868-452a-b9da-6a2f652077ea"}},"prettier":{"semi":false,"singleQuote":true},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"11.11.0","description":"Haraka email message stream","directories":{},"_nodeVersion":"24.14.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^2.0.4"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_2.0.4_1778451253041_0.2129160950072868","host":"s3://npm-registry-packages-npm-production"}},"2.0.5":{"name":"haraka-message-stream","version":"2.0.5","keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@2.0.5","maintainers":[{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"64ea1a1aec47ee4436718b5a2112631068b01c12","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-2.0.5.tgz","fileCount":8,"integrity":"sha512-m+GFTk8vLdcHvaPN2j19+Mj/zP6RZmwtPlZFQI1yuVOvCtjg9C3xj6L+lFsjJId7Szd1t4BCgAvDOMBnf2oGXw==","signatures":[{"sig":"MEUCIQD78PeOZfdsdOyeap8v8jFKx+0ax5nvdJzc80tfzxtRuwIgcY/s5lwFpJG35CJni8CPFdOi/CC/n1Yx6XgdL8jSoh4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-message-stream@2.0.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31895},"main":"index.js","gitHead":"d7ba87f961e55668971f7f8698597774667e096d","scripts":{"lint":"npx eslint *.js test","test":"node --test","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint --fix *.js test","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":"npx c8 --reporter=text --reporter=text-summary npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fae21b44-d868-452a-b9da-6a2f652077ea"}},"prettier":{"semi":false,"singleQuote":true},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"11.11.0","description":"Haraka email message stream","directories":{},"_nodeVersion":"24.14.1","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^2.0.4"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_2.0.5_1778611756756_0.5630797392793963","host":"s3://npm-registry-packages-npm-production"}},"2.0.6":{"name":"haraka-message-stream","version":"2.0.6","keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","_id":"haraka-message-stream@2.0.6","maintainers":[{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msimerson","email":"haraka.mail@gmail.com"}],"homepage":"https://github.com/haraka/message-stream#readme","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"dist":{"shasum":"c10eeb597dedd3cf4a5131101578ed122296f26b","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-2.0.6.tgz","fileCount":8,"integrity":"sha512-M6Vr3bMwBnnqCSZiuhrU3P3bHWbISfiJkKFKDtQrOaROi3tnWzzVbATCH3nRgOQwvWJbwbrwOh6YmUowxGldVg==","signatures":[{"sig":"MEQCIHGeJcPOP+e5I868WJ1YG0umMBX2EC546vM+kZD5Y3KNAiAEk5QCZ71tXks/JoSXSSPy/CDUyLqsZXaf7saYHWpg6g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-message-stream@2.0.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":34257},"main":"index.js","gitHead":"343d76e357914b0dde2551136b6f4bed62c41478","scripts":{"lint":"npx eslint *.js test","test":"node --test","format":"npm run prettier:fix && npm run lint:fix","lint:fix":"npx eslint --fix *.js test","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":"npx c8 --reporter=text --reporter=text-summary npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fae21b44-d868-452a-b9da-6a2f652077ea"}},"prettier":{"semi":false,"singleQuote":true},"repository":{"url":"git+https://github.com/haraka/message-stream.git","type":"git"},"_npmVersion":"11.12.1","description":"Haraka email message stream","directories":{},"_nodeVersion":"24.15.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"@haraka/eslint-config":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/haraka-message-stream_2.0.6_1779861371852_0.81946511355167","host":"s3://npm-registry-packages-npm-production"}},"2.0.7":{"name":"haraka-message-stream","version":"2.0.7","description":"Haraka email message stream","main":"index.js","scripts":{"prepare":"git rev-parse --git-dir >/dev/null 2>&1 && git config core.hooksPath .githooks || true","format":"npm run prettier:fix && npm run lint:fix","lint":"npx eslint *.js test","lint:fix":"npx eslint --fix *.js test","prettier":"npx prettier . --check","prettier:fix":"npx prettier . --write --log-level=warn","qlty":"qlty smells --all","test":"node --test","test:coverage":"npx c8 --reporter=text --reporter=text-summary npm test","versions":"npx npm-dep-mgr check","versions:fix":"npx npm-dep-mgr update"},"repository":{"type":"git","url":"git+https://github.com/haraka/message-stream.git"},"keywords":["haraka","email","message-stream"],"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/haraka/message-stream/issues"},"homepage":"https://github.com/haraka/message-stream#readme","devDependencies":{"@haraka/eslint-config":"^3.0.0"},"dependencies":{},"prettier":{"singleQuote":true,"semi":false},"gitHead":"17fb22caaf2155ac366263d456fb6391486de21a","_id":"haraka-message-stream@2.0.7","_nodeVersion":"24.19.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-oVB2Rz83aBxIyPxMGdqVUACVb02f3YAhTPQEBL0w8YHszB1CwdhyfzO1BcbZGY9wjcdEENE3mU9yC9tLmEGRMg==","shasum":"04577a8caf95d972a8a0d4544563b3aad1b8d1fa","tarball":"https://registry.npmjs.org/haraka-message-stream/-/haraka-message-stream-2.0.7.tgz","fileCount":8,"unpackedSize":34904,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/haraka-message-stream@2.0.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIA1niIcoJ1l7GYIlT8gWfXBGwHD/NxIKbB0IUiejaqtlAiA6nb81/RpNJtGNAkcjHlGdQvp4V3DuLxpmOPq6329lPw=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fae21b44-d868-452a-b9da-6a2f652077ea"}},"directories":{},"maintainers":[{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msimerson","email":"haraka.mail@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/haraka-message-stream_2.0.7_1788476365562_0.660200525885609"},"_hasShrinkwrap":false}},"time":{"created":"2022-06-24T05:43:09.729Z","modified":"2026-09-03T22:59:25.997Z","1.0.0":"2022-06-24T05:43:09.899Z","1.1.0":"2022-06-24T06:48:32.252Z","1.2.0":"2022-06-24T18:08:44.942Z","1.2.1":"2024-04-03T22:20:49.281Z","1.2.2":"2024-08-05T21:59:12.204Z","1.2.3":"2025-02-02T19:00:41.762Z","1.3.0":"2025-07-06T23:15:52.392Z","1.3.1":"2025-07-23T21:55:33.262Z","1.3.2":"2025-12-31T20:19:39.239Z","1.3.3":"2026-03-24T05:02:46.254Z","2.0.0":"2026-03-24T06:53:01.034Z","2.0.1":"2026-04-02T15:50:18.902Z","2.0.2":"2026-04-08T20:53:17.525Z","2.0.3":"2026-04-27T20:50:18.279Z","2.0.4":"2026-05-10T22:14:13.201Z","2.0.5":"2026-05-12T18:49:16.937Z","2.0.6":"2026-05-27T05:56:12.017Z","2.0.7":"2026-09-03T22:59:25.711Z"},"bugs":{"url":"https://github.com/haraka/message-stream/issues"},"author":{"name":"Haraka Team","email":"haraka.team@gmail.com"},"license":"MIT","homepage":"https://github.com/haraka/message-stream#readme","keywords":["haraka","email","message-stream"],"repository":{"type":"git","url":"git+https://github.com/haraka/message-stream.git"},"description":"Haraka email message stream","maintainers":[{"name":"tnpi","email":"matt@tnpi.net"},{"name":"msimerson","email":"haraka.mail@gmail.com"}],"readme":"[![CI Test Status][ci-img]][ci-url]\n[![Qlty][clim-img]][clim-url]\n[![Test Coverage][cov-img]][cov-url]\n\n# haraka-message-stream\n\nA dual-mode message buffer for SMTP: accepts lines as they arrive from the wire, spools to disk when a size threshold is exceeded, and replays the message to one or more downstream consumers via a standard stream pipeline.\n\n## Used By\n\n- Haraka/transaction.js\n- haraka/test-fixtures/transaction\n\n## Construction\n\n```js\nconst MessageStream = require('haraka-message-stream')\n\nconst ms = new MessageStream(cfg, uuid, headers)\n```\n\n| Parameter | Type       | Description                                                                                                                                     |\n| --------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |\n| `cfg`     | `object`   | Haraka config object. Reads `cfg.main.spool_after` (bytes; `-1` = never spool; default 25 MiB) and `cfg.main.spool_dir` (path, default `/tmp`). |\n| `uuid`    | `string`   | Required. Used as the spool filename base (`<spool_dir>/<uuid>.eml`).                                                                           |\n| `headers` | `string[]` | Optional. Pre-parsed header lines. When supplied they are emitted first and the raw header block in stored data is skipped.                     |\n\n## Writing\n\nFeed lines in as they arrive. Call `add_line_end()` when the DATA terminator (`.`) is received.\n\n```js\nms.add_line('From: sender@example.com\\r\\n')\nms.add_line('To: rcpt@example.com\\r\\n')\nms.add_line('\\r\\n') // end-of-headers blank line\nms.add_line('Hello, world.\\r\\n')\n\nms.add_line_end(() => {\n  // writing is complete; safe to start reading\n})\n```\n\n`add_line_end(cb)` is optional — the callback fires once all data has been flushed to memory or disk.\n\n## Reading\n\n#### `pipe(destination, options)` — legacy event-driven style\n\nReplays the stored message to any writable stream. Can be called sequentially (not concurrently).\n\n```js\nconst { createWriteStream } = require('fs')\n\nms.pipe(createWriteStream('/tmp/out.eml'))\n```\n\n**Pipe options**\n\n| Option         | Type               | Default  | Description                                                                                                                                                                      |\n| -------------- | ------------------ | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `line_endings` | `'\\r\\n'` \\| `'\\n'` | `'\\r\\n'` | Output line endings. Use `'\\n'` to strip `\\r` for local processing.                                                                                                              |\n| `dot_stuffed`  | `boolean`          | `true`   | When `true`, removes SMTP dot-stuffing (`..line` → `.line`) for local delivery/scanning. Set to `false` when relaying over SMTP so stored dot-stuffing is preserved on the wire. |\n| `ending_dot`   | `boolean`          | `false`  | Append `.\\r\\n` (or `.\\n`) after the last body line — required when forwarding over SMTP. Forces stored dot-stuffing to be preserved on the wire (overrides `dot_stuffed`).       |\n| `clamd_style`  | `boolean`          | `false`  | Prefix each chunk with a 4-byte big-endian length; append a 4-byte zero terminator. Used with ClamAV's INSTREAM protocol.                                                        |\n| `skip_headers` | `boolean`          | `false`  | Omit the header block from output (emit body only).                                                                                                                              |\n| `buffer_size`  | `number`           | `65536`  | Internal read chunk size in bytes.                                                                                                                                               |\n\n```js\n// Forward message over SMTP — preserve dot-stuffing, add terminating dot\nms.pipe(socket, { dot_stuffed: false, ending_dot: true })\n\n// Local virus scan — unstuff dots, bare LF, clamd framing\nms.pipe(clamdSocket, {\n  line_endings: '\\n',\n  dot_stuffed: true,\n  clamd_style: true,\n})\n\n// Body-only, no \\r, sequential second pass\nms.pipe(bodyParser, { skip_headers: true, line_endings: '\\n' })\n```\n\n#### `unpipe()` — abort the active pipe\n\nTears down the internal source/transformer synchronously and frees the stream for a subsequent `pipe()`. Idempotent; no-op when no pipe is active.\n\n**Call `unpipe()` before destroying the destination** when your handler reacts to a mid-stream failure (socket error, scan timeout, etc.) — the destination's `'close'` event is asynchronous, so calling `next()` immediately after `destination.destroy()` would race the cleanup and the next consumer's `pipe()` would throw `Cannot pipe while currently piping`.\n\n```js\nfunction onError(err) {\n  ms.unpipe() // synchronous teardown\n  socket.destroy()\n  next()\n}\nsocket.on('error', onError)\nsocket.on('timeout', onError)\nms.pipe(socket)\n```\n\nThe library also installs prepended `'error'` / `'close'` listeners on the destination as a safety net, but consumers that synchronously start a new pipe must call `unpipe()` explicitly. See [haraka/message-stream#22](https://github.com/haraka/message-stream/issues/22).\n\n### `get_data([options,] callback)` — collect into a Buffer\n\n```js\nms.get_data((buf) => {\n  console.log(buf.toString())\n})\n\n// with pipe options\nms.get_data({ line_endings: '\\n', dot_stuffed: true }, (buf) => {\n  process(buf)\n})\n```\n\n### `for await...of` — modern async iterator\n\nThe stream implements `Symbol.asyncIterator`, so you can consume it with a `for await` loop. All pipe options are supported.\n\n```js\n// Default: CRLF, dot_stuffed: true\nfor await (const chunk of ms) {\n  process(chunk)\n}\n\n// With options\nfor await (const chunk of ms[Symbol.asyncIterator]({ line_endings: '\\n' })) {\n  process(chunk)\n}\n```\n\n## Spooling\n\nWhen `total_buffered` exceeds `cfg.main.spool_after`, the stream transparently spools to `<spool_dir>/<uuid>.eml`. The consumer API is identical in both cases. The spool file is not removed automatically — call `ms.destroy()` when done.\n\n`spool_after` accepted values:\n\n- a finite non-negative number — spool once `total_buffered` exceeds this many bytes (`0` spools immediately);\n- `-1` — never spool, keep everything in memory (matches Haraka's `connection.ini` sentinel);\n- omitted / `undefined` — fall back to a safe 25 MiB default;\n- anything else (non-numeric strings, `NaN`, other negatives) — rejected with a `console.warn`, default applies.\n\n```js\nconst cfg = {\n  main: {\n    spool_after: 1024 * 1024, // spool messages larger than 1 MB\n    spool_dir: '/var/spool/haraka',\n  },\n}\n\nconst ms = new MessageStream(cfg, transaction.uuid)\n// ... write lines ...\nms.add_line_end(async () => {\n  for await (const chunk of ms) {\n    await forward(chunk)\n  }\n  ms.destroy() // close fd and remove spool file\n})\n```\n\n## Flow control\n\n```js\nms.pause() // suspend the active pipe's source readable\nms.resume() // resume it\nms.unpipe() // abort the active pipe (synchronous; see Reading)\nms.destroy() // close the spool file descriptor and delete the file\n```\n\n## Pipeline internals (2.x)\n\nThe 2.x refactor separated concerns into two composable Transform stages:\n\n```\nstored data\n    │\n    ▼\nHeaderSkipper          (strips raw header block when constructor headers are used)\n    │\n    ▼\nLineTransformer        (dot-unstuffing · CRLF normalisation · ending dot · clamd framing)\n    │\n    ▼\ndestination\n```\n\n`ChunkEmitter` is still exported for write-side batching used by `add_line`.\n\n```js\nconst { ChunkEmitter } = require('haraka-message-stream')\n```\n\n## Error handling\n\nErrors from disk I/O (spool open, write drain, read) are emitted on the `MessageStream` instance.\n\n```js\nms.on('error', (err) => {\n  console.error('message-stream error', err)\n})\n```\n\n## REFERENCES\n\nThis module is used by Haraka [Transaction](https://haraka.github.io/core/Transaction).\n\n<!-- leave these buried at the bottom of the document -->\n\n[ci-img]: https://github.com/haraka/message-stream/actions/workflows/ci.yml/badge.svg\n[ci-url]: https://github.com/haraka/message-stream/actions/workflows/ci.yml\n[clim-img]: https://qlty.sh/gh/haraka/projects/message-stream/maintainability.svg\n[clim-url]: https://qlty.sh/gh/haraka/projects/message-stream\n[cov-img]: https://coveralls.io/repos/github/haraka/message-stream/badge.svg\n[cov-url]: https://coveralls.io/github/haraka/message-stream\n","readmeFilename":"README.md"}