@mavogel/awscdk-rootmail 0.0.219 → 0.0.221
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +4 -4
- package/lib/rootmail.js +1 -1
- package/lib/ses-receive.js +1 -1
- package/node_modules/cdk-nag/.jsii +2 -2
- package/node_modules/cdk-nag/lib/ignore-suppression-conditions.js +5 -5
- package/node_modules/cdk-nag/lib/nag-logger.js +2 -2
- package/node_modules/cdk-nag/lib/nag-pack.js +1 -1
- package/node_modules/cdk-nag/lib/nag-rules.js +1 -1
- package/node_modules/cdk-nag/lib/nag-suppressions.js +1 -1
- package/node_modules/cdk-nag/lib/packs/aws-solutions.js +1 -1
- package/node_modules/cdk-nag/lib/packs/hipaa-security.js +1 -1
- package/node_modules/cdk-nag/lib/packs/nist-800-53-r4.js +1 -1
- package/node_modules/cdk-nag/lib/packs/nist-800-53-r5.js +1 -1
- package/node_modules/cdk-nag/lib/packs/pci-dss-321.js +1 -1
- package/node_modules/cdk-nag/package.json +1 -1
- package/node_modules/encoding-japanese/README.md +65 -13
- package/node_modules/encoding-japanese/encoding.js +7 -2
- package/node_modules/encoding-japanese/encoding.min.js +2 -2
- package/node_modules/encoding-japanese/package.json +2 -2
- package/node_modules/encoding-japanese/src/encoding-convert.js +5 -0
- package/node_modules/libbase64/.prettierrc.js +4 -1
- package/node_modules/libbase64/lib/libbase64.js +2 -1
- package/node_modules/libbase64/package.json +9 -8
- package/node_modules/libmime/CHANGELOG.md +7 -0
- package/node_modules/libmime/package.json +5 -5
- package/node_modules/libqp/CHANGELOG.md +15 -0
- package/node_modules/libqp/lib/libqp.js +13 -21
- package/node_modules/libqp/package.json +7 -6
- package/node_modules/libqp/test/libqp-test.js +161 -0
- package/node_modules/mailparser/CHANGELOG.md +7 -0
- package/node_modules/mailparser/package.json +8 -8
- package/node_modules/mailsplit/LICENSE.MIT +6 -1
- package/node_modules/mailsplit/README.md +2 -0
- package/node_modules/mailsplit/lib/headers.js +5 -1
- package/node_modules/mailsplit/package.json +10 -9
- package/node_modules/nodemailer/.ncurc.js +4 -1
- package/node_modules/nodemailer/CHANGELOG.md +25 -0
- package/node_modules/nodemailer/lib/addressparser/index.js +22 -8
- package/node_modules/nodemailer/lib/mime-funcs/mime-types.js +2 -0
- package/node_modules/nodemailer/lib/nodemailer.js +13 -6
- package/node_modules/nodemailer/lib/smtp-connection/index.js +9 -0
- package/node_modules/nodemailer/lib/well-known/services.json +14 -3
- package/node_modules/nodemailer/package.json +5 -5
- package/node_modules/tlds/index.json +0 -3
- package/node_modules/tlds/package.json +1 -1
- package/package.json +4 -4
- package/node_modules/libmime/node_modules/libbase64/.eslintrc +0 -11
- package/node_modules/libmime/node_modules/libbase64/.prettierrc.js +0 -8
- package/node_modules/libmime/node_modules/libbase64/LICENSE +0 -19
- package/node_modules/libmime/node_modules/libbase64/README.md +0 -113
- package/node_modules/libmime/node_modules/libbase64/lib/libbase64.js +0 -253
- package/node_modules/libmime/node_modules/libbase64/package.json +0 -35
- package/node_modules/libmime/node_modules/libqp/.eslintrc +0 -15
- package/node_modules/libmime/node_modules/libqp/.prettierrc.js +0 -8
- package/node_modules/libmime/node_modules/libqp/CHANGELOG.md +0 -8
- package/node_modules/libmime/node_modules/libqp/LICENSE +0 -19
- package/node_modules/libmime/node_modules/libqp/README.md +0 -119
- package/node_modules/libmime/node_modules/libqp/lib/libqp.js +0 -320
- package/node_modules/libmime/node_modules/libqp/package.json +0 -28
- package/node_modules/libmime/node_modules/libqp/test/libqp-test.js +0 -41
- package/node_modules/mailsplit/node_modules/encoding-japanese/LICENSE +0 -21
- package/node_modules/mailsplit/node_modules/encoding-japanese/README.md +0 -542
- package/node_modules/mailsplit/node_modules/encoding-japanese/encoding.js +0 -6077
- package/node_modules/mailsplit/node_modules/encoding-japanese/encoding.min.js +0 -8
- package/node_modules/mailsplit/node_modules/encoding-japanese/encoding.min.js.map +0 -1
- package/node_modules/mailsplit/node_modules/encoding-japanese/package.json +0 -70
- package/node_modules/mailsplit/node_modules/encoding-japanese/src/banner.js +0 -6
- package/node_modules/mailsplit/node_modules/encoding-japanese/src/config.js +0 -139
- package/node_modules/mailsplit/node_modules/encoding-japanese/src/encoding-convert.js +0 -1676
- package/node_modules/mailsplit/node_modules/encoding-japanese/src/encoding-detect.js +0 -502
- package/node_modules/mailsplit/node_modules/encoding-japanese/src/encoding-table.js +0 -4
- package/node_modules/mailsplit/node_modules/encoding-japanese/src/index.js +0 -593
- package/node_modules/mailsplit/node_modules/encoding-japanese/src/jis-to-utf8-table.js +0 -5
- package/node_modules/mailsplit/node_modules/encoding-japanese/src/jisx0212-to-utf8-table.js +0 -5
- package/node_modules/mailsplit/node_modules/encoding-japanese/src/kana-case-table.js +0 -41
- package/node_modules/mailsplit/node_modules/encoding-japanese/src/utf8-to-jis-table.js +0 -1493
- package/node_modules/mailsplit/node_modules/encoding-japanese/src/utf8-to-jisx0212-table.js +0 -1224
- package/node_modules/mailsplit/node_modules/encoding-japanese/src/util.js +0 -361
- package/node_modules/mailsplit/node_modules/libmime/.eslintrc +0 -7
- package/node_modules/mailsplit/node_modules/libmime/.gitattributes +0 -1
- package/node_modules/mailsplit/node_modules/libmime/.github/FUNDING.yml +0 -4
- package/node_modules/mailsplit/node_modules/libmime/.github/workflows/test.yml +0 -21
- package/node_modules/mailsplit/node_modules/libmime/.prettierrc.js +0 -8
- package/node_modules/mailsplit/node_modules/libmime/CHANGELOG.md +0 -110
- package/node_modules/mailsplit/node_modules/libmime/LICENSE +0 -19
- package/node_modules/mailsplit/node_modules/libmime/README.md +0 -207
- package/node_modules/mailsplit/node_modules/libmime/lib/charset.js +0 -117
- package/node_modules/mailsplit/node_modules/libmime/lib/charsets.js +0 -212
- package/node_modules/mailsplit/node_modules/libmime/lib/libmime.js +0 -903
- package/node_modules/mailsplit/node_modules/libmime/lib/mimetypes.js +0 -2049
- package/node_modules/mailsplit/node_modules/libmime/package.json +0 -37
- /package/node_modules/{libmime/node_modules/libbase64 → libbase64}/.github/FUNDING.yml +0 -0
- /package/node_modules/{libmime/node_modules/libbase64 → libbase64}/.github/workflows/release.yaml +0 -0
- /package/node_modules/{libmime/node_modules/libbase64 → libbase64}/.github/workflows/test.yml +0 -0
- /package/node_modules/{libmime/node_modules/libbase64 → libbase64}/.ncurc.js +0 -0
- /package/node_modules/{libmime/node_modules/libbase64 → libbase64}/CHANGELOG.md +0 -0
- /package/node_modules/{libmime/node_modules/libqp → libqp}/.github/FUNDING.yml +0 -0
- /package/node_modules/{libmime/node_modules/libqp → libqp}/.github/workflows/release.yaml +0 -0
- /package/node_modules/{libmime/node_modules/libqp → libqp}/.github/workflows/test.yml +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "encoding-japanese",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.2.0",
|
|
4
4
|
"description": "Convert and detect character encoding in JavaScript",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"files": [
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"bannerify": "^1.0.1",
|
|
55
55
|
"browserify": "^17.0.0",
|
|
56
56
|
"eslint": "^8.57.0",
|
|
57
|
-
"mocha": "^10.
|
|
57
|
+
"mocha": "^10.4.0",
|
|
58
58
|
"package-json-versionify": "^1.0.4",
|
|
59
59
|
"power-assert": "^1.6.1",
|
|
60
60
|
"uglify-js": "^3.17.4",
|
|
@@ -1672,5 +1672,10 @@ function handleFallback(results, bytes, fallbackOption) {
|
|
|
1672
1672
|
}
|
|
1673
1673
|
results[results.length] = 0x3B; // ;
|
|
1674
1674
|
}
|
|
1675
|
+
break;
|
|
1676
|
+
case 'error':
|
|
1677
|
+
throw new Error('Character cannot be represented: [' + bytes.join(', ') + ']');
|
|
1678
|
+
case 'ignore':
|
|
1679
|
+
break;
|
|
1675
1680
|
}
|
|
1676
1681
|
}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "libbase64",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0",
|
|
4
4
|
"description": "Encode and decode base64 encoded strings",
|
|
5
5
|
"main": "lib/libbase64.js",
|
|
6
6
|
"scripts": {
|
|
7
|
-
"test": "grunt"
|
|
7
|
+
"test": "grunt",
|
|
8
|
+
"update": "rm -rf node_modules package-lock.json && ncu -u && npm install"
|
|
8
9
|
},
|
|
9
10
|
"repository": {
|
|
10
11
|
"type": "git",
|
|
@@ -21,14 +22,14 @@
|
|
|
21
22
|
},
|
|
22
23
|
"homepage": "https://github.com/nodemailer/libbase64",
|
|
23
24
|
"devDependencies": {
|
|
24
|
-
"chai": "4.
|
|
25
|
+
"chai": "4.4.1",
|
|
25
26
|
"eslint-config-nodemailer": "1.2.0",
|
|
26
|
-
"eslint-config-prettier": "
|
|
27
|
-
"grunt": "1.
|
|
28
|
-
"grunt-cli": "1.3
|
|
29
|
-
"grunt-eslint": "
|
|
27
|
+
"eslint-config-prettier": "9.1.0",
|
|
28
|
+
"grunt": "1.6.1",
|
|
29
|
+
"grunt-cli": "1.4.3",
|
|
30
|
+
"grunt-eslint": "24.3.0",
|
|
30
31
|
"grunt-mocha-test": "0.13.3",
|
|
31
|
-
"mocha": "
|
|
32
|
+
"mocha": "10.3.0"
|
|
32
33
|
},
|
|
33
34
|
"dependencies": {}
|
|
34
35
|
}
|
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [5.3.6](https://github.com/nodemailer/libmime/compare/v5.3.5...v5.3.6) (2024-11-29)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* **deps:** Bumped libqp to fix issue with missing whitespace ([1137a9f](https://github.com/nodemailer/libmime/commit/1137a9f2222ed21926e69ba8855e93e5a421fecc))
|
|
9
|
+
|
|
3
10
|
## [5.3.5](https://github.com/nodemailer/libmime/compare/v5.3.4...v5.3.5) (2024-04-12)
|
|
4
11
|
|
|
5
12
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "libmime",
|
|
3
3
|
"description": "Encode and decode quoted printable and base64 strings",
|
|
4
|
-
"version": "5.3.
|
|
4
|
+
"version": "5.3.6",
|
|
5
5
|
"main": "lib/libmime.js",
|
|
6
6
|
"homepage": "https://github.com/nodemailer/libmime",
|
|
7
7
|
"repository": {
|
|
@@ -20,19 +20,19 @@
|
|
|
20
20
|
"update": "rm -rf node_modules package-lock.json && ncu -u && npm install"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"encoding-japanese": "2.
|
|
23
|
+
"encoding-japanese": "2.2.0",
|
|
24
24
|
"iconv-lite": "0.6.3",
|
|
25
25
|
"libbase64": "1.3.0",
|
|
26
|
-
"libqp": "2.1.
|
|
26
|
+
"libqp": "2.1.1"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"chai": "4.4.1",
|
|
30
30
|
"eslint-config-nodemailer": "1.2.0",
|
|
31
31
|
"eslint-config-prettier": "9.1.0",
|
|
32
32
|
"grunt": "1.6.1",
|
|
33
|
-
"grunt-cli": "1.
|
|
33
|
+
"grunt-cli": "1.5.0",
|
|
34
34
|
"grunt-eslint": "24.3.0",
|
|
35
35
|
"grunt-mocha-test": "0.13.3",
|
|
36
|
-
"mocha": "10.
|
|
36
|
+
"mocha": "10.8.2"
|
|
37
37
|
}
|
|
38
38
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## [2.1.1](https://github.com/nodemailer/libqp/compare/v2.1.0...v2.1.1) (2024-11-29)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* **decode-stream:** Fix issue where some whitespace characters were lost ([2231159](https://github.com/nodemailer/libqp/commit/2231159f38e865ef8cf4f7f8bf28cabc00217ffe))
|
|
9
|
+
|
|
10
|
+
## [2.1.0](https://github.com/nodemailer/libqp/compare/v2.0.1...v2.1.0) (2024-02-23)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Features
|
|
14
|
+
|
|
15
|
+
* **deploy:** Added autodeploy system ([def1b22](https://github.com/nodemailer/libqp/commit/def1b2282e9304a5c330e1e92f3db619179bcd3b))
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
'use strict';
|
|
4
4
|
|
|
5
|
-
const
|
|
5
|
+
const { Buffer } = require('node:buffer');
|
|
6
|
+
const stream = require('node:stream');
|
|
6
7
|
const Transform = stream.Transform;
|
|
7
8
|
|
|
8
9
|
/**
|
|
@@ -254,6 +255,7 @@ class Encoder extends Transform {
|
|
|
254
255
|
|
|
255
256
|
/**
|
|
256
257
|
* Creates a transform stream for decoding Quoted-Printable encoded strings
|
|
258
|
+
* The input is not actually processed as a stream but concatted and processed as a single input
|
|
257
259
|
*
|
|
258
260
|
* @constructor
|
|
259
261
|
* @param {Object} options Stream options
|
|
@@ -269,42 +271,32 @@ class Decoder extends Transform {
|
|
|
269
271
|
|
|
270
272
|
this.inputBytes = 0;
|
|
271
273
|
this.outputBytes = 0;
|
|
274
|
+
|
|
275
|
+
this.qpChunks = [];
|
|
272
276
|
}
|
|
273
277
|
|
|
274
278
|
_transform(chunk, encoding, done) {
|
|
275
|
-
let qp, buf;
|
|
276
|
-
|
|
277
|
-
chunk = chunk.toString('ascii');
|
|
278
|
-
|
|
279
279
|
if (!chunk || !chunk.length) {
|
|
280
280
|
return done();
|
|
281
281
|
}
|
|
282
282
|
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
qp = this._curLine + chunk;
|
|
286
|
-
this._curLine = '';
|
|
287
|
-
qp = qp.replace(/\=[^\n]?$/, lastLine => {
|
|
288
|
-
this._curLine = lastLine;
|
|
289
|
-
return '';
|
|
290
|
-
});
|
|
291
|
-
|
|
292
|
-
if (qp) {
|
|
293
|
-
buf = decode(qp);
|
|
294
|
-
this.outputBytes += buf.length;
|
|
295
|
-
this.push(buf);
|
|
283
|
+
if (typeof chunk === 'string') {
|
|
284
|
+
chunk = Buffer.from(chunk, encoding);
|
|
296
285
|
}
|
|
297
286
|
|
|
287
|
+
this.qpChunks.push(chunk);
|
|
288
|
+
this.inputBytes += chunk.length;
|
|
289
|
+
|
|
298
290
|
done();
|
|
299
291
|
}
|
|
300
292
|
|
|
301
293
|
_flush(done) {
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
buf = decode(this._curLine);
|
|
294
|
+
if (this.inputBytes) {
|
|
295
|
+
let buf = decode(Buffer.concat(this.qpChunks, this.inputBytes).toString());
|
|
305
296
|
this.outputBytes += buf.length;
|
|
306
297
|
this.push(buf);
|
|
307
298
|
}
|
|
299
|
+
|
|
308
300
|
done();
|
|
309
301
|
}
|
|
310
302
|
}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "libqp",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.1.1",
|
|
4
4
|
"description": "Encode and decode quoted-printable strings according to rfc2045",
|
|
5
5
|
"main": "lib/libqp.js",
|
|
6
6
|
"scripts": {
|
|
7
|
-
"test": "node --test
|
|
7
|
+
"test": "node --test",
|
|
8
|
+
"update": "rm -rf node_modules package-lock.json && ncu -u && npm install"
|
|
8
9
|
},
|
|
9
10
|
"repository": {
|
|
10
11
|
"type": "git",
|
|
11
|
-
"url": "git://github.com/
|
|
12
|
+
"url": "git://github.com/nodemailer/libqp.git"
|
|
12
13
|
},
|
|
13
14
|
"keywords": [
|
|
14
15
|
"quoted-printable",
|
|
@@ -17,11 +18,11 @@
|
|
|
17
18
|
"author": "Andris Reinman",
|
|
18
19
|
"license": "MIT",
|
|
19
20
|
"bugs": {
|
|
20
|
-
"url": "https://github.com/
|
|
21
|
+
"url": "https://github.com/nodemailer/libqp/issues"
|
|
21
22
|
},
|
|
22
|
-
"homepage": "https://github.com/
|
|
23
|
+
"homepage": "https://github.com/nodemailer/libqp",
|
|
23
24
|
"devDependencies": {
|
|
24
25
|
"eslint-config-nodemailer": "1.2.0",
|
|
25
|
-
"eslint-config-prettier": "
|
|
26
|
+
"eslint-config-prettier": "9.1.0"
|
|
26
27
|
}
|
|
27
28
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
const { Buffer } = require('node:buffer');
|
|
3
4
|
const test = require('node:test');
|
|
4
5
|
const assert = require('node:assert').strict;
|
|
5
6
|
|
|
@@ -38,3 +39,163 @@ test('Encoding tests', async t => {
|
|
|
38
39
|
assert.strictEqual(encoded, 'tere j=C3=B5geva');
|
|
39
40
|
});
|
|
40
41
|
});
|
|
42
|
+
|
|
43
|
+
test('Decoding tests', async t => {
|
|
44
|
+
// Example taken from RFC2045 section 6.7
|
|
45
|
+
const encoded =
|
|
46
|
+
"Now's the time =\r\n" +
|
|
47
|
+
"for all folk to come=\r\n" +
|
|
48
|
+
" to the aid of their country."
|
|
49
|
+
const expectedDecoded =
|
|
50
|
+
"Now's the time for all folk to come to the aid of their country."
|
|
51
|
+
|
|
52
|
+
await t.test('simple string', async () => {
|
|
53
|
+
const decoded = libqp.decode(encoded).toString();
|
|
54
|
+
assert.strictEqual(decoded, expectedDecoded);
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
await t.test('stream', async () => {
|
|
58
|
+
const decoder = new libqp.Decoder();
|
|
59
|
+
|
|
60
|
+
const decoded = await new Promise((resolve, reject) => {
|
|
61
|
+
const chunks = [];
|
|
62
|
+
decoder.on('readable', () => {
|
|
63
|
+
let chunk;
|
|
64
|
+
|
|
65
|
+
while ((chunk = decoder.read()) !== null) {
|
|
66
|
+
chunks.push(chunk);
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
decoder.on('end', () => {
|
|
70
|
+
resolve(Buffer.concat(chunks).toString());
|
|
71
|
+
});
|
|
72
|
+
decoder.on('Error', err => {
|
|
73
|
+
reject(err);
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
decoder.end(Buffer.from(encoded));
|
|
77
|
+
});
|
|
78
|
+
|
|
79
|
+
assert.strictEqual(decoded, expectedDecoded);
|
|
80
|
+
});
|
|
81
|
+
|
|
82
|
+
await t.test('stream, multiple chunks', async () => {
|
|
83
|
+
const encodedChunk1Length = 3;
|
|
84
|
+
const encodedChunk1 = encoded.substring(0, encodedChunk1Length)
|
|
85
|
+
const encodedChunk2 = encoded.substring(encodedChunk1Length)
|
|
86
|
+
|
|
87
|
+
const decoder = new libqp.Decoder();
|
|
88
|
+
|
|
89
|
+
const decoded = await new Promise((resolve, reject) => {
|
|
90
|
+
const chunks = [];
|
|
91
|
+
decoder.on('readable', () => {
|
|
92
|
+
let chunk;
|
|
93
|
+
|
|
94
|
+
while ((chunk = decoder.read()) !== null) {
|
|
95
|
+
chunks.push(chunk);
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
decoder.on('end', () => {
|
|
99
|
+
resolve(Buffer.concat(chunks).toString());
|
|
100
|
+
});
|
|
101
|
+
decoder.on('Error', err => {
|
|
102
|
+
reject(err);
|
|
103
|
+
});
|
|
104
|
+
|
|
105
|
+
decoder.write(Buffer.from(encodedChunk1));
|
|
106
|
+
decoder.end(Buffer.from(encodedChunk2));
|
|
107
|
+
});
|
|
108
|
+
|
|
109
|
+
assert.strictEqual(decoded, expectedDecoded);
|
|
110
|
+
});
|
|
111
|
+
|
|
112
|
+
await t.test('stream, space at end of chunk', async () => {
|
|
113
|
+
const encodedChunk1Length = encoded.indexOf(' ') + 1;
|
|
114
|
+
const encodedChunk1 = encoded.substring(0, encodedChunk1Length)
|
|
115
|
+
const encodedChunk2 = encoded.substring(encodedChunk1Length)
|
|
116
|
+
|
|
117
|
+
const decoder = new libqp.Decoder();
|
|
118
|
+
|
|
119
|
+
const decoded = await new Promise((resolve, reject) => {
|
|
120
|
+
const chunks = [];
|
|
121
|
+
decoder.on('readable', () => {
|
|
122
|
+
let chunk;
|
|
123
|
+
|
|
124
|
+
while ((chunk = decoder.read()) !== null) {
|
|
125
|
+
chunks.push(chunk);
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
decoder.on('end', () => {
|
|
129
|
+
resolve(Buffer.concat(chunks).toString());
|
|
130
|
+
});
|
|
131
|
+
decoder.on('Error', err => {
|
|
132
|
+
reject(err);
|
|
133
|
+
});
|
|
134
|
+
|
|
135
|
+
decoder.write(Buffer.from(encodedChunk1));
|
|
136
|
+
decoder.end(Buffer.from(encodedChunk2));
|
|
137
|
+
});
|
|
138
|
+
|
|
139
|
+
assert.strictEqual(decoded, expectedDecoded);
|
|
140
|
+
});
|
|
141
|
+
|
|
142
|
+
await t.test('stream, soft line break equals sign at end of chunk', async () => {
|
|
143
|
+
const encodedChunk1Length = encoded.indexOf('=') + 1;
|
|
144
|
+
const encodedChunk1 = encoded.substring(0, encodedChunk1Length)
|
|
145
|
+
const encodedChunk2 = encoded.substring(encodedChunk1Length)
|
|
146
|
+
|
|
147
|
+
const decoder = new libqp.Decoder();
|
|
148
|
+
|
|
149
|
+
const decoded = await new Promise((resolve, reject) => {
|
|
150
|
+
const chunks = [];
|
|
151
|
+
decoder.on('readable', () => {
|
|
152
|
+
let chunk;
|
|
153
|
+
|
|
154
|
+
while ((chunk = decoder.read()) !== null) {
|
|
155
|
+
chunks.push(chunk);
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
decoder.on('end', () => {
|
|
159
|
+
resolve(Buffer.concat(chunks).toString());
|
|
160
|
+
});
|
|
161
|
+
decoder.on('Error', err => {
|
|
162
|
+
reject(err);
|
|
163
|
+
});
|
|
164
|
+
|
|
165
|
+
decoder.write(Buffer.from(encodedChunk1));
|
|
166
|
+
decoder.end(Buffer.from(encodedChunk2));
|
|
167
|
+
});
|
|
168
|
+
|
|
169
|
+
assert.strictEqual(decoded, expectedDecoded);
|
|
170
|
+
});
|
|
171
|
+
|
|
172
|
+
await t.test('stream, CR at end of chunk', async () => {
|
|
173
|
+
const encodedChunk1Length = encoded.indexOf('\r') + 1;
|
|
174
|
+
const encodedChunk1 = encoded.substring(0, encodedChunk1Length)
|
|
175
|
+
const encodedChunk2 = encoded.substring(encodedChunk1Length)
|
|
176
|
+
|
|
177
|
+
const decoder = new libqp.Decoder();
|
|
178
|
+
|
|
179
|
+
const decoded = await new Promise((resolve, reject) => {
|
|
180
|
+
const chunks = [];
|
|
181
|
+
decoder.on('readable', () => {
|
|
182
|
+
let chunk;
|
|
183
|
+
|
|
184
|
+
while ((chunk = decoder.read()) !== null) {
|
|
185
|
+
chunks.push(chunk);
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
decoder.on('end', () => {
|
|
189
|
+
resolve(Buffer.concat(chunks).toString());
|
|
190
|
+
});
|
|
191
|
+
decoder.on('Error', err => {
|
|
192
|
+
reject(err);
|
|
193
|
+
});
|
|
194
|
+
|
|
195
|
+
decoder.write(Buffer.from(encodedChunk1));
|
|
196
|
+
decoder.end(Buffer.from(encodedChunk2));
|
|
197
|
+
});
|
|
198
|
+
|
|
199
|
+
assert.strictEqual(decoded, expectedDecoded);
|
|
200
|
+
});
|
|
201
|
+
});
|
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [3.7.2](https://github.com/nodemailer/mailparser/compare/v3.7.1...v3.7.2) (2024-11-29)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* **deps:** Bumped deps to fix issue with missing whitespace ([92884d0](https://github.com/nodemailer/mailparser/commit/92884d0619efa77042ecc35fbc887e93a59e5a93))
|
|
9
|
+
|
|
3
10
|
## [3.7.1](https://github.com/nodemailer/mailparser/compare/v3.7.0...v3.7.1) (2024-04-25)
|
|
4
11
|
|
|
5
12
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mailparser",
|
|
3
|
-
"version": "3.7.
|
|
3
|
+
"version": "3.7.2",
|
|
4
4
|
"description": "Parse e-mails",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -17,24 +17,24 @@
|
|
|
17
17
|
],
|
|
18
18
|
"license": "MIT",
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"encoding-japanese": "2.
|
|
20
|
+
"encoding-japanese": "2.2.0",
|
|
21
21
|
"he": "1.2.0",
|
|
22
22
|
"html-to-text": "9.0.5",
|
|
23
23
|
"iconv-lite": "0.6.3",
|
|
24
|
-
"libmime": "5.3.
|
|
24
|
+
"libmime": "5.3.6",
|
|
25
25
|
"linkify-it": "5.0.0",
|
|
26
|
-
"mailsplit": "5.4.
|
|
27
|
-
"nodemailer": "6.9.
|
|
26
|
+
"mailsplit": "5.4.2",
|
|
27
|
+
"nodemailer": "6.9.16",
|
|
28
28
|
"punycode.js": "2.3.1",
|
|
29
|
-
"tlds": "1.
|
|
29
|
+
"tlds": "1.255.0"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
|
-
"ajv": "8.
|
|
32
|
+
"ajv": "8.17.1",
|
|
33
33
|
"eslint": "8.57.0",
|
|
34
34
|
"eslint-config-nodemailer": "1.2.0",
|
|
35
35
|
"eslint-config-prettier": "9.1.0",
|
|
36
36
|
"grunt": "1.6.1",
|
|
37
|
-
"grunt-cli": "1.
|
|
37
|
+
"grunt-cli": "1.5.0",
|
|
38
38
|
"grunt-contrib-nodeunit": "5.0.0",
|
|
39
39
|
"grunt-eslint": "24.3.0",
|
|
40
40
|
"iconv": "3.0.1",
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2011-2019, 2024 Andris Reinman and Zone Media OÜ
|
|
2
4
|
|
|
3
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
6
|
of this software and associated documentation files (the "Software"), to deal
|
|
@@ -7,6 +9,9 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
|
7
9
|
copies of the Software, and to permit persons to whom the Software is
|
|
8
10
|
furnished to do so, subject to the following conditions:
|
|
9
11
|
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
10
15
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
11
16
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
12
17
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
@@ -210,3 +210,5 @@ Done. 20000 messages [1244 MB] processed in 55.882 s. with average of 358 messag
|
|
|
210
210
|
## License
|
|
211
211
|
|
|
212
212
|
Dual licensed under **MIT** or **EUPLv1.1+**
|
|
213
|
+
|
|
214
|
+
> `mailsplit` is part of the Zone Mail Suite (ZMS). Suite of programs and modules for an efficient, fast and modern email server.
|
|
@@ -1,28 +1,29 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mailsplit",
|
|
3
|
-
"version": "5.4.
|
|
3
|
+
"version": "5.4.2",
|
|
4
4
|
"description": "Split email messages into an object stream",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"directories": {
|
|
7
7
|
"test": "test"
|
|
8
8
|
},
|
|
9
9
|
"scripts": {
|
|
10
|
-
"test": "grunt"
|
|
10
|
+
"test": "grunt",
|
|
11
|
+
"update": "rm -rf node_modules package-lock.json && ncu -u && npm install"
|
|
11
12
|
},
|
|
12
13
|
"author": "Andris Reinman",
|
|
13
14
|
"license": "(MIT OR EUPL-1.1+)",
|
|
14
15
|
"dependencies": {
|
|
15
|
-
"libbase64": "1.
|
|
16
|
-
"libmime": "5.
|
|
17
|
-
"libqp": "2.
|
|
16
|
+
"libbase64": "1.3.0",
|
|
17
|
+
"libmime": "5.3.6",
|
|
18
|
+
"libqp": "2.1.1"
|
|
18
19
|
},
|
|
19
20
|
"devDependencies": {
|
|
20
21
|
"eslint": "8.29.0",
|
|
21
22
|
"eslint-config-nodemailer": "1.2.0",
|
|
22
|
-
"eslint-config-prettier": "
|
|
23
|
-
"grunt": "1.
|
|
24
|
-
"grunt-cli": "1.
|
|
25
|
-
"grunt-contrib-nodeunit": "
|
|
23
|
+
"eslint-config-prettier": "9.1.0",
|
|
24
|
+
"grunt": "1.6.1",
|
|
25
|
+
"grunt-cli": "1.5.0",
|
|
26
|
+
"grunt-contrib-nodeunit": "5.0.0",
|
|
26
27
|
"grunt-eslint": "24.0.1",
|
|
27
28
|
"random-message": "1.1.0"
|
|
28
29
|
},
|
|
@@ -1,5 +1,30 @@
|
|
|
1
1
|
# CHANGELOG
|
|
2
2
|
|
|
3
|
+
## [6.9.16](https://github.com/nodemailer/nodemailer/compare/v6.9.15...v6.9.16) (2024-10-28)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* **addressparser:** Correctly detect if user local part is attached to domain part ([f2096c5](https://github.com/nodemailer/nodemailer/commit/f2096c51b92a69ecfbcc15884c28cb2c2f00b826))
|
|
9
|
+
|
|
10
|
+
## [6.9.15](https://github.com/nodemailer/nodemailer/compare/v6.9.14...v6.9.15) (2024-08-08)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Bug Fixes
|
|
14
|
+
|
|
15
|
+
* Fix memory leak ([#1667](https://github.com/nodemailer/nodemailer/issues/1667)) ([baa28f6](https://github.com/nodemailer/nodemailer/commit/baa28f659641a4bc30360633673d851618f8e8bd))
|
|
16
|
+
* **mime:** Added GeoJSON closes [#1637](https://github.com/nodemailer/nodemailer/issues/1637) ([#1665](https://github.com/nodemailer/nodemailer/issues/1665)) ([79b8293](https://github.com/nodemailer/nodemailer/commit/79b8293ad557d36f066b4675e649dd80362fd45b))
|
|
17
|
+
|
|
18
|
+
## [6.9.14](https://github.com/nodemailer/nodemailer/compare/v6.9.13...v6.9.14) (2024-06-19)
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
### Bug Fixes
|
|
22
|
+
|
|
23
|
+
* **api:** Added support for Ethereal authentication ([56b2205](https://github.com/nodemailer/nodemailer/commit/56b22052a98de9e363f6c4d26d1512925349c3f3))
|
|
24
|
+
* **services.json:** Add Email Services Provider Feishu Mail (CN) ([#1648](https://github.com/nodemailer/nodemailer/issues/1648)) ([e9e9ecc](https://github.com/nodemailer/nodemailer/commit/e9e9ecc99b352948a912868c7912b280a05178c6))
|
|
25
|
+
* **services.json:** update Mailtrap host and port in well known ([#1652](https://github.com/nodemailer/nodemailer/issues/1652)) ([fc2c9ea](https://github.com/nodemailer/nodemailer/commit/fc2c9ea0b4c4f4e514143d2a138c9a23095fc827))
|
|
26
|
+
* **well-known-services:** Add Loopia in well known services ([#1655](https://github.com/nodemailer/nodemailer/issues/1655)) ([21a28a1](https://github.com/nodemailer/nodemailer/commit/21a28a18fc9fdf8e0e86ddd846e54641395b2cb6))
|
|
27
|
+
|
|
3
28
|
## [6.9.13](https://github.com/nodemailer/nodemailer/compare/v6.9.12...v6.9.13) (2024-03-20)
|
|
4
29
|
|
|
5
30
|
|