email_reply_trimmer 0.1.12 → 0.1.13
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/lib/email_reply_trimmer.rb +59 -50
- data/test/before/forwarded_apple.txt +1 -0
- data/test/before/forwarded_gmail.txt +1 -0
- data/test/elided/forwarded_apple.txt +15 -0
- data/test/elided/forwarded_gmail.txt +15 -0
- data/test/elided/spam_1.txt +75 -0
- data/test/elided/spam_2.txt +152 -0
- data/test/emails/forwarded_apple.txt +17 -0
- data/test/emails/forwarded_gmail.txt +17 -0
- data/test/emails/spam_1.txt +75 -0
- data/test/emails/spam_2.txt +174 -0
- data/test/embedded/forwarded_apple.txt +13 -0
- data/test/embedded/forwarded_gmail.txt +14 -0
- data/test/test_email_reply_trimmer.rb +5 -1
- data/test/trimmed/forwarded_apple.txt +1 -0
- data/test/trimmed/forwarded_gmail.txt +1 -0
- data/test/trimmed/spam_1.txt +0 -0
- data/test/trimmed/spam_2.txt +21 -0
- metadata +19 -5
- data/Gemfile.lock +0 -37
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: c094ba472eabd06ed02276c4ec9e42cb32ccb873871e46e55c46cd4640425470
|
4
|
+
data.tar.gz: 968cee2c9b3de46ef86814dd84ee8449c400e9c5fa8d61363cbb90064204fadf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6c71cad161a2aaa27e813ff63f91b1e10359d73ffc95d0d01df0374dc8cc9a2ba506985cd4e33d12e63b3f41cd9e6f66bbe42293feea3f6e968c7d90e79a88de
|
7
|
+
data.tar.gz: e7e3661094d8b1183f572b7e847cac62a71215a341d12b627e0b2d5cfedfdad161f858b8aba3d97463d5ffda5919211da2b268dbd75e7edc48a95811d1e5b481
|
data/lib/email_reply_trimmer.rb
CHANGED
@@ -6,7 +6,7 @@ require_relative "email_reply_trimmer/email_header_matcher"
|
|
6
6
|
require_relative "email_reply_trimmer/quote_matcher"
|
7
7
|
|
8
8
|
class EmailReplyTrimmer
|
9
|
-
VERSION = "0.1.
|
9
|
+
VERSION = "0.1.13"
|
10
10
|
|
11
11
|
DELIMITER = "d"
|
12
12
|
EMBEDDED = "b"
|
@@ -54,7 +54,7 @@ class EmailReplyTrimmer
|
|
54
54
|
end
|
55
55
|
|
56
56
|
# when the reply is at the end of the email
|
57
|
-
if pattern
|
57
|
+
if is_reply_at_end?(pattern)
|
58
58
|
index = pattern =~ /t[et]*$/
|
59
59
|
pattern = ""
|
60
60
|
lines = lines[index..-1]
|
@@ -78,8 +78,8 @@ class EmailReplyTrimmer
|
|
78
78
|
|
79
79
|
# if there is some text before a huge quote ending the email,
|
80
80
|
# then remove the quote
|
81
|
-
if pattern =~ /
|
82
|
-
index = pattern =~ /
|
81
|
+
if pattern =~ /t?e*[qbe]+$/
|
82
|
+
index = pattern =~ /t?e*[qbe]+$/
|
83
83
|
pattern = pattern[0..index]
|
84
84
|
lines = lines[0..index]
|
85
85
|
end
|
@@ -144,6 +144,12 @@ class EmailReplyTrimmer
|
|
144
144
|
|
145
145
|
if index = pattern =~ /(?:h[eqd]*?){3,}[tq]/
|
146
146
|
embedded = lines[index..-1].join("\n").strip
|
147
|
+
elsif index = pattern =~ /b(?:[eqd]*){3,}[tq]/
|
148
|
+
# Exception for email clients (macOS / iOS) which embed fwd emails in quotes.
|
149
|
+
embedded = lines[index + 1..-1].map { |l| l.gsub(/^>\s*/, '') }.join("\n").strip
|
150
|
+
end
|
151
|
+
|
152
|
+
if index
|
147
153
|
before = lines[0...(pattern[0...index] =~ /e*(b[eqd]*|b*[ed]*)$/)].join("\n").strip
|
148
154
|
return [embedded, before]
|
149
155
|
end
|
@@ -151,59 +157,62 @@ class EmailReplyTrimmer
|
|
151
157
|
|
152
158
|
private
|
153
159
|
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
# fix embedded email markers that might span over multiple lines
|
176
|
-
(
|
177
|
-
EmbeddedEmailMatcher::ON_DATE_SOMEONE_WROTE_REGEXES +
|
178
|
-
EmbeddedEmailMatcher::SOMEONE_WROTE_ON_DATE_REGEXES +
|
179
|
-
EmbeddedEmailMatcher::DATE_SOMEONE_WROTE_REGEXES +
|
180
|
-
[EmbeddedEmailMatcher::DATE_SOMEONE_EMAIL_REGEX]
|
181
|
-
).each do |r|
|
182
|
-
text.gsub!(r) do |m|
|
183
|
-
m.count("\n") > 4 ? m : m.gsub(/\n+[[:space:]]*/, " ")
|
184
|
-
end
|
185
|
-
end
|
160
|
+
def self.preprocess!(text)
|
161
|
+
# normalize line endings
|
162
|
+
text.gsub!("\r\n", "\n")
|
163
|
+
|
164
|
+
# remove PGP markers
|
165
|
+
text.gsub!(/\A-----BEGIN PGP SIGNED MESSAGE-----\n(?:Hash: \w+)?\s+/i, "")
|
166
|
+
text.gsub!(/^-----BEGIN PGP SIGNATURE-----$[\s\S]+^-----END PGP SIGNATURE-----/, "")
|
167
|
+
|
168
|
+
# remove unsubscribe links
|
169
|
+
text.gsub!(/^Unsubscribe: .+@.+(\n.+http:.+)?\s*\z/i, "")
|
170
|
+
|
171
|
+
# remove alias-style quotes marker
|
172
|
+
text.gsub!(/^.*>{5} "[^"\n]+" == .+ writes:/, "")
|
173
|
+
|
174
|
+
# change enclosed-style quotes format
|
175
|
+
text.gsub!(/^>>> ?(.+) ?>>>$\n([\s\S]+?)\n^<<< ?\1 ?<<<$/) { $2.gsub(/^/, "> ") }
|
176
|
+
text.gsub!(/^>{4,}[[:blank:]]*$\n([\s\S]+?)\n^<{4,}[[:blank:]]*$/) { $1.gsub(/^/, "> ") }
|
177
|
+
|
178
|
+
# fix all quotes formats
|
179
|
+
text.gsub!(/^((?:[[:blank:]]*[[:alpha:]]*[>|])+)/) { $1.gsub(/([[:alpha:]]+>|\|)/, ">") }
|
186
180
|
|
187
|
-
|
188
|
-
|
181
|
+
# fix embedded email markers that might span over multiple lines
|
182
|
+
(
|
183
|
+
EmbeddedEmailMatcher::ON_DATE_SOMEONE_WROTE_REGEXES +
|
184
|
+
EmbeddedEmailMatcher::SOMEONE_WROTE_ON_DATE_REGEXES +
|
185
|
+
EmbeddedEmailMatcher::DATE_SOMEONE_WROTE_REGEXES +
|
186
|
+
[EmbeddedEmailMatcher::DATE_SOMEONE_EMAIL_REGEX]
|
187
|
+
).each do |r|
|
188
|
+
text.gsub!(r) do |m|
|
189
|
+
m.count("\n") > 4 ? m : m.gsub(/\n+[[:space:]]*/, " ")
|
190
|
+
end
|
189
191
|
end
|
190
192
|
|
191
|
-
|
192
|
-
|
193
|
+
# remove leading/trailing whitespaces
|
194
|
+
text.strip!
|
195
|
+
end
|
196
|
+
|
197
|
+
def self.compute_elided(text, lines)
|
198
|
+
elided = []
|
193
199
|
|
194
|
-
|
195
|
-
|
200
|
+
t = 0
|
201
|
+
l = 0
|
196
202
|
|
197
|
-
|
198
|
-
|
199
|
-
t += 1
|
200
|
-
l += 1
|
201
|
-
end
|
202
|
-
elided << text[t]
|
203
|
+
while t < text.size
|
204
|
+
while l < lines.size && text[t] == lines[l]
|
203
205
|
t += 1
|
206
|
+
l += 1
|
204
207
|
end
|
205
|
-
|
206
|
-
|
208
|
+
elided << text[t]
|
209
|
+
t += 1
|
207
210
|
end
|
208
211
|
|
212
|
+
elided.join("\n").strip
|
213
|
+
end
|
214
|
+
|
215
|
+
def self.is_reply_at_end?(pattern)
|
216
|
+
pattern =~ /^b[^t]+t[et]*$/
|
217
|
+
end
|
209
218
|
end
|
@@ -0,0 +1 @@
|
|
1
|
+
This email has been forwarded from Apple Mail.
|
@@ -0,0 +1 @@
|
|
1
|
+
This email has been forwarded from Gmail.
|
@@ -0,0 +1,15 @@
|
|
1
|
+
> Begin forwarded message:
|
2
|
+
>
|
3
|
+
> From: Foo Discourse <foo@discourse.org>
|
4
|
+
> Subject: This email is going to be forwarded
|
5
|
+
> Date: 01 January 2019 at 12:00:00 EET
|
6
|
+
> To: bar@discourse.org
|
7
|
+
>
|
8
|
+
> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi auctor
|
9
|
+
> lacus in metus vehicula, non dictum mi consequat. Nunc eget quam sit
|
10
|
+
> amet dolor scelerisque cursus. Etiam laoreet lectus a rutrum
|
11
|
+
> sollicitudin. Nullam sit amet lorem id ante lobortis fringilla. Duis
|
12
|
+
> dictum tempus sem et ultrices. Sed ac lectus ante. Vivamus interdum,
|
13
|
+
> risus non tincidunt accumsan, purus mi accumsan dolor, vitae euismod
|
14
|
+
> turpis orci ut est. Integer ut ante eu velit dignissim ullamcorper non
|
15
|
+
> id nibh. Nulla auctor magna erat, et posuere sapien gravida convallis.
|
@@ -0,0 +1,15 @@
|
|
1
|
+
---------- Forwarded message ---------
|
2
|
+
From: Foo Discourse <foo@discourse.org>
|
3
|
+
Date: Tue, Jan 01, 2019 at 12:00 PM
|
4
|
+
Subject: This email is going to be forwarded
|
5
|
+
To: <bar@discourse.org>
|
6
|
+
|
7
|
+
|
8
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi auctor
|
9
|
+
lacus in metus vehicula, non dictum mi consequat. Nunc eget quam sit
|
10
|
+
amet dolor scelerisque cursus. Etiam laoreet lectus a rutrum
|
11
|
+
sollicitudin. Nullam sit amet lorem id ante lobortis fringilla. Duis
|
12
|
+
dictum tempus sem et ultrices. Sed ac lectus ante. Vivamus interdum,
|
13
|
+
risus non tincidunt accumsan, purus mi accumsan dolor, vitae euismod
|
14
|
+
turpis orci ut est. Integer ut ante eu velit dignissim ullamcorper non
|
15
|
+
id nibh. Nulla auctor magna erat, et posuere sapien gravida convallis.
|
@@ -0,0 +1,75 @@
|
|
1
|
+
> On Thu, Apr 30, 2020 at 10:07 AM, "someone" <someone@example.com> wrote:
|
2
|
+
>
|
3
|
+
>> On Thu, Apr 30, 2020 at 10:07 AM, "someone" <someone@example.com> wrote:
|
4
|
+
>>
|
5
|
+
>>> On Thu, Apr 30, 2020 at 10:07 AM, "someone" <someone@example.com> wrote:
|
6
|
+
>>>
|
7
|
+
>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
8
|
+
>>>>
|
9
|
+
>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
10
|
+
>>>>>
|
11
|
+
>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
12
|
+
>>>>>>
|
13
|
+
>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
14
|
+
>>>>>>>
|
15
|
+
>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
16
|
+
>>>>>>>>
|
17
|
+
>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
18
|
+
>>>>>>>>>
|
19
|
+
>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
20
|
+
>>>>>>>>>>
|
21
|
+
>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
22
|
+
>>>>>>>>>>>
|
23
|
+
>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
24
|
+
>>>>>>>>>>>>
|
25
|
+
>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
26
|
+
>>>>>>>>>>>>>
|
27
|
+
>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
28
|
+
>>>>>>>>>>>>>>
|
29
|
+
>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
30
|
+
>>>>>>>>>>>>>>>
|
31
|
+
>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
32
|
+
>>>>>>>>>>>>>>>>
|
33
|
+
>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
34
|
+
>>>>>>>>>>>>>>>>>
|
35
|
+
>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
36
|
+
>>>>>>>>>>>>>>>>>>
|
37
|
+
>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
38
|
+
>>>>>>>>>>>>>>>>>>>
|
39
|
+
>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
40
|
+
>>>>>>>>>>>>>>>>>>>>
|
41
|
+
>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
42
|
+
>>>>>>>>>>>>>>>>>>>>>
|
43
|
+
>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
44
|
+
>>>>>>>>>>>>>>>>>>>>>>
|
45
|
+
>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
46
|
+
>>>>>>>>>>>>>>>>>>>>>>>
|
47
|
+
>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
48
|
+
>>>>>>>>>>>>>>>>>>>>>>>>
|
49
|
+
>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
50
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>
|
51
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
52
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>
|
53
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
54
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
55
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
56
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
57
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
58
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
59
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
60
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
61
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
62
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
63
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
64
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
65
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
66
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
67
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
68
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
69
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
70
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
71
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
72
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
73
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
74
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
75
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
@@ -0,0 +1,152 @@
|
|
1
|
+
> On Thu, Apr 30, 2020 at 10:07 AM, "someone" <someone@example.com> wrote:
|
2
|
+
>
|
3
|
+
>> Hello world!
|
4
|
+
>>
|
5
|
+
>> On Thu, Apr 30, 2020 at 10:07 AM, "someone" <someone@example.com> wrote:
|
6
|
+
>>
|
7
|
+
>>> Hello world!
|
8
|
+
>>>
|
9
|
+
>>> On Thu, Apr 30, 2020 at 10:07 AM, "someone" <someone@example.com> wrote:
|
10
|
+
>>>
|
11
|
+
>>>> Hello world!
|
12
|
+
>>>>
|
13
|
+
>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
14
|
+
>>>>
|
15
|
+
>>>>> Hello world!
|
16
|
+
>>>>>
|
17
|
+
>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
18
|
+
>>>>>
|
19
|
+
>>>>>> Hello world!
|
20
|
+
>>>>>>
|
21
|
+
>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
22
|
+
>>>>>>
|
23
|
+
>>>>>>> Hello world!
|
24
|
+
>>>>>>>
|
25
|
+
>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
26
|
+
>>>>>>>
|
27
|
+
>>>>>>>> Hello world!
|
28
|
+
>>>>>>>>
|
29
|
+
>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
30
|
+
>>>>>>>>
|
31
|
+
>>>>>>>>> Hello world!
|
32
|
+
>>>>>>>>>
|
33
|
+
>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
34
|
+
>>>>>>>>>
|
35
|
+
>>>>>>>>>> Hello world!
|
36
|
+
>>>>>>>>>>
|
37
|
+
>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
38
|
+
>>>>>>>>>>
|
39
|
+
>>>>>>>>>>> Hello world!
|
40
|
+
>>>>>>>>>>>
|
41
|
+
>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
42
|
+
>>>>>>>>>>>
|
43
|
+
>>>>>>>>>>>> Hello world!
|
44
|
+
>>>>>>>>>>>>
|
45
|
+
>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
46
|
+
>>>>>>>>>>>>
|
47
|
+
>>>>>>>>>>>>> Hello world!
|
48
|
+
>>>>>>>>>>>>>
|
49
|
+
>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
50
|
+
>>>>>>>>>>>>>
|
51
|
+
>>>>>>>>>>>>>> Hello world!
|
52
|
+
>>>>>>>>>>>>>>
|
53
|
+
>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
54
|
+
>>>>>>>>>>>>>>
|
55
|
+
>>>>>>>>>>>>>>> Hello world!
|
56
|
+
>>>>>>>>>>>>>>>
|
57
|
+
>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
58
|
+
>>>>>>>>>>>>>>>
|
59
|
+
>>>>>>>>>>>>>>>> Hello world!
|
60
|
+
>>>>>>>>>>>>>>>>
|
61
|
+
>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
62
|
+
>>>>>>>>>>>>>>>>
|
63
|
+
>>>>>>>>>>>>>>>>> Hello world!
|
64
|
+
>>>>>>>>>>>>>>>>>
|
65
|
+
>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
66
|
+
>>>>>>>>>>>>>>>>>
|
67
|
+
>>>>>>>>>>>>>>>>>> Hello world!
|
68
|
+
>>>>>>>>>>>>>>>>>>
|
69
|
+
>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
70
|
+
>>>>>>>>>>>>>>>>>>
|
71
|
+
>>>>>>>>>>>>>>>>>>> Hello world!
|
72
|
+
>>>>>>>>>>>>>>>>>>>
|
73
|
+
>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
74
|
+
>>>>>>>>>>>>>>>>>>>
|
75
|
+
>>>>>>>>>>>>>>>>>>>> Hello world!
|
76
|
+
>>>>>>>>>>>>>>>>>>>>
|
77
|
+
>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
78
|
+
>>>>>>>>>>>>>>>>>>>>
|
79
|
+
>>>>>>>>>>>>>>>>>>>>> Hello world!
|
80
|
+
>>>>>>>>>>>>>>>>>>>>>
|
81
|
+
>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
82
|
+
>>>>>>>>>>>>>>>>>>>>>
|
83
|
+
>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
84
|
+
>>>>>>>>>>>>>>>>>>>>>>
|
85
|
+
>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
86
|
+
>>>>>>>>>>>>>>>>>>>>>>
|
87
|
+
>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
88
|
+
>>>>>>>>>>>>>>>>>>>>>>>
|
89
|
+
>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
90
|
+
>>>>>>>>>>>>>>>>>>>>>>>
|
91
|
+
>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
92
|
+
>>>>>>>>>>>>>>>>>>>>>>>>
|
93
|
+
>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
94
|
+
>>>>>>>>>>>>>>>>>>>>>>>>
|
95
|
+
>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
96
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>
|
97
|
+
>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
98
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>
|
99
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
100
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>
|
101
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
102
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>
|
103
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
104
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
105
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
106
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
107
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
108
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
109
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
110
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
111
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
112
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
113
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
114
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
115
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
116
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
117
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
118
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
119
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
120
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
121
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
122
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
123
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
124
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
125
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
126
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
127
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
128
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
129
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
130
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
131
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
132
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
133
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
134
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
135
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
136
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
137
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
138
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
139
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
140
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
141
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
142
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
143
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
144
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
145
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
146
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
147
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
148
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
149
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
150
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
151
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
152
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
@@ -0,0 +1,17 @@
|
|
1
|
+
This email has been forwarded from Apple Mail.
|
2
|
+
|
3
|
+
> Begin forwarded message:
|
4
|
+
>
|
5
|
+
> From: Foo Discourse <foo@discourse.org>
|
6
|
+
> Subject: This email is going to be forwarded
|
7
|
+
> Date: 01 January 2019 at 12:00:00 EET
|
8
|
+
> To: bar@discourse.org
|
9
|
+
>
|
10
|
+
> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi auctor
|
11
|
+
> lacus in metus vehicula, non dictum mi consequat. Nunc eget quam sit
|
12
|
+
> amet dolor scelerisque cursus. Etiam laoreet lectus a rutrum
|
13
|
+
> sollicitudin. Nullam sit amet lorem id ante lobortis fringilla. Duis
|
14
|
+
> dictum tempus sem et ultrices. Sed ac lectus ante. Vivamus interdum,
|
15
|
+
> risus non tincidunt accumsan, purus mi accumsan dolor, vitae euismod
|
16
|
+
> turpis orci ut est. Integer ut ante eu velit dignissim ullamcorper non
|
17
|
+
> id nibh. Nulla auctor magna erat, et posuere sapien gravida convallis.
|
@@ -0,0 +1,17 @@
|
|
1
|
+
This email has been forwarded from Gmail.
|
2
|
+
|
3
|
+
---------- Forwarded message ---------
|
4
|
+
From: Foo Discourse <foo@discourse.org>
|
5
|
+
Date: Tue, Jan 01, 2019 at 12:00 PM
|
6
|
+
Subject: This email is going to be forwarded
|
7
|
+
To: <bar@discourse.org>
|
8
|
+
|
9
|
+
|
10
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi auctor
|
11
|
+
lacus in metus vehicula, non dictum mi consequat. Nunc eget quam sit
|
12
|
+
amet dolor scelerisque cursus. Etiam laoreet lectus a rutrum
|
13
|
+
sollicitudin. Nullam sit amet lorem id ante lobortis fringilla. Duis
|
14
|
+
dictum tempus sem et ultrices. Sed ac lectus ante. Vivamus interdum,
|
15
|
+
risus non tincidunt accumsan, purus mi accumsan dolor, vitae euismod
|
16
|
+
turpis orci ut est. Integer ut ante eu velit dignissim ullamcorper non
|
17
|
+
id nibh. Nulla auctor magna erat, et posuere sapien gravida convallis.
|
@@ -0,0 +1,75 @@
|
|
1
|
+
> On Thu, Apr 30, 2020 at 10:07 AM, "someone" <someone@example.com> wrote:
|
2
|
+
>
|
3
|
+
>> On Thu, Apr 30, 2020 at 10:07 AM, "someone" <someone@example.com> wrote:
|
4
|
+
>>
|
5
|
+
>>> On Thu, Apr 30, 2020 at 10:07 AM, "someone" <someone@example.com> wrote:
|
6
|
+
>>>
|
7
|
+
>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
8
|
+
>>>>
|
9
|
+
>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
10
|
+
>>>>>
|
11
|
+
>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
12
|
+
>>>>>>
|
13
|
+
>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
14
|
+
>>>>>>>
|
15
|
+
>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
16
|
+
>>>>>>>>
|
17
|
+
>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
18
|
+
>>>>>>>>>
|
19
|
+
>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
20
|
+
>>>>>>>>>>
|
21
|
+
>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
22
|
+
>>>>>>>>>>>
|
23
|
+
>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
24
|
+
>>>>>>>>>>>>
|
25
|
+
>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
26
|
+
>>>>>>>>>>>>>
|
27
|
+
>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
28
|
+
>>>>>>>>>>>>>>
|
29
|
+
>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
30
|
+
>>>>>>>>>>>>>>>
|
31
|
+
>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
32
|
+
>>>>>>>>>>>>>>>>
|
33
|
+
>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
34
|
+
>>>>>>>>>>>>>>>>>
|
35
|
+
>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
36
|
+
>>>>>>>>>>>>>>>>>>
|
37
|
+
>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
38
|
+
>>>>>>>>>>>>>>>>>>>
|
39
|
+
>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
40
|
+
>>>>>>>>>>>>>>>>>>>>
|
41
|
+
>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
42
|
+
>>>>>>>>>>>>>>>>>>>>>
|
43
|
+
>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
44
|
+
>>>>>>>>>>>>>>>>>>>>>>
|
45
|
+
>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
46
|
+
>>>>>>>>>>>>>>>>>>>>>>>
|
47
|
+
>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
48
|
+
>>>>>>>>>>>>>>>>>>>>>>>>
|
49
|
+
>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
50
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>
|
51
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
52
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>
|
53
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
54
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
55
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
56
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
57
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
58
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
59
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
60
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
61
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
62
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
63
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
64
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
65
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
66
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
67
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
68
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
69
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
70
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
71
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
72
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
73
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
74
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
75
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
@@ -0,0 +1,174 @@
|
|
1
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec sit amet dictum
|
2
|
+
lectus, at efficitur neque. Class aptent taciti sociosqu ad litora torquent per
|
3
|
+
conubia nostra, per inceptos himenaeos. Aenean dictum pulvinar tortor non
|
4
|
+
ultricies. Maecenas cursus lobortis dolor quis feugiat. Integer efficitur,
|
5
|
+
mauris sit amet lobortis consectetur, urna augue feugiat mi, et tempor dui
|
6
|
+
sapien vehicula dolor. Aenean sit amet ultrices tortor. Praesent vel porttitor
|
7
|
+
risus, eu fringilla nibh. Phasellus sollicitudin elit id tortor dapibus, at
|
8
|
+
euismod odio sodales. Ut est ex, pharetra malesuada dui maximus, ullamcorper
|
9
|
+
fringilla turpis. Nullam gravida, elit blandit commodo blandit, velit sem
|
10
|
+
ornare odio, eu ultricies arcu ex sit amet libero. Vestibulum eu fringilla
|
11
|
+
ante, nec blandit nunc.
|
12
|
+
|
13
|
+
Nullam nec viverra ipsum. Nullam semper eu urna id facilisis. Nam blandit
|
14
|
+
dictum eros, sit amet auctor dui fermentum a. Quisque finibus magna nisi, ac
|
15
|
+
hendrerit purus lacinia ut. Donec maximus, enim id tincidunt vulputate, libero
|
16
|
+
ex tempor elit, vitae sagittis libero leo sed leo. Quisque non gravida ex,
|
17
|
+
efficitur interdum neque. Interdum et malesuada fames ac ante ipsum primis in
|
18
|
+
faucibus. Phasellus rhoncus nisi vitae turpis bibendum luctus. Duis placerat
|
19
|
+
aliquam lectus, pellentesque commodo dolor hendrerit quis. Suspendisse ipsum
|
20
|
+
sapien, interdum ac felis ac, mattis varius neque. Maecenas nec risus sit amet
|
21
|
+
ex aliquam vestibulum. Maecenas a turpis et turpis volutpat congue.
|
22
|
+
|
23
|
+
> On Thu, Apr 30, 2020 at 10:07 AM, "someone" <someone@example.com> wrote:
|
24
|
+
>
|
25
|
+
>> Hello world!
|
26
|
+
>>
|
27
|
+
>> On Thu, Apr 30, 2020 at 10:07 AM, "someone" <someone@example.com> wrote:
|
28
|
+
>>
|
29
|
+
>>> Hello world!
|
30
|
+
>>>
|
31
|
+
>>> On Thu, Apr 30, 2020 at 10:07 AM, "someone" <someone@example.com> wrote:
|
32
|
+
>>>
|
33
|
+
>>>> Hello world!
|
34
|
+
>>>>
|
35
|
+
>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
36
|
+
>>>>
|
37
|
+
>>>>> Hello world!
|
38
|
+
>>>>>
|
39
|
+
>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
40
|
+
>>>>>
|
41
|
+
>>>>>> Hello world!
|
42
|
+
>>>>>>
|
43
|
+
>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
44
|
+
>>>>>>
|
45
|
+
>>>>>>> Hello world!
|
46
|
+
>>>>>>>
|
47
|
+
>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
48
|
+
>>>>>>>
|
49
|
+
>>>>>>>> Hello world!
|
50
|
+
>>>>>>>>
|
51
|
+
>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
52
|
+
>>>>>>>>
|
53
|
+
>>>>>>>>> Hello world!
|
54
|
+
>>>>>>>>>
|
55
|
+
>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
56
|
+
>>>>>>>>>
|
57
|
+
>>>>>>>>>> Hello world!
|
58
|
+
>>>>>>>>>>
|
59
|
+
>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
60
|
+
>>>>>>>>>>
|
61
|
+
>>>>>>>>>>> Hello world!
|
62
|
+
>>>>>>>>>>>
|
63
|
+
>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
64
|
+
>>>>>>>>>>>
|
65
|
+
>>>>>>>>>>>> Hello world!
|
66
|
+
>>>>>>>>>>>>
|
67
|
+
>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
68
|
+
>>>>>>>>>>>>
|
69
|
+
>>>>>>>>>>>>> Hello world!
|
70
|
+
>>>>>>>>>>>>>
|
71
|
+
>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
72
|
+
>>>>>>>>>>>>>
|
73
|
+
>>>>>>>>>>>>>> Hello world!
|
74
|
+
>>>>>>>>>>>>>>
|
75
|
+
>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
76
|
+
>>>>>>>>>>>>>>
|
77
|
+
>>>>>>>>>>>>>>> Hello world!
|
78
|
+
>>>>>>>>>>>>>>>
|
79
|
+
>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
80
|
+
>>>>>>>>>>>>>>>
|
81
|
+
>>>>>>>>>>>>>>>> Hello world!
|
82
|
+
>>>>>>>>>>>>>>>>
|
83
|
+
>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
84
|
+
>>>>>>>>>>>>>>>>
|
85
|
+
>>>>>>>>>>>>>>>>> Hello world!
|
86
|
+
>>>>>>>>>>>>>>>>>
|
87
|
+
>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
88
|
+
>>>>>>>>>>>>>>>>>
|
89
|
+
>>>>>>>>>>>>>>>>>> Hello world!
|
90
|
+
>>>>>>>>>>>>>>>>>>
|
91
|
+
>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
92
|
+
>>>>>>>>>>>>>>>>>>
|
93
|
+
>>>>>>>>>>>>>>>>>>> Hello world!
|
94
|
+
>>>>>>>>>>>>>>>>>>>
|
95
|
+
>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
96
|
+
>>>>>>>>>>>>>>>>>>>
|
97
|
+
>>>>>>>>>>>>>>>>>>>> Hello world!
|
98
|
+
>>>>>>>>>>>>>>>>>>>>
|
99
|
+
>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
100
|
+
>>>>>>>>>>>>>>>>>>>>
|
101
|
+
>>>>>>>>>>>>>>>>>>>>> Hello world!
|
102
|
+
>>>>>>>>>>>>>>>>>>>>>
|
103
|
+
>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
104
|
+
>>>>>>>>>>>>>>>>>>>>>
|
105
|
+
>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
106
|
+
>>>>>>>>>>>>>>>>>>>>>>
|
107
|
+
>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
108
|
+
>>>>>>>>>>>>>>>>>>>>>>
|
109
|
+
>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
110
|
+
>>>>>>>>>>>>>>>>>>>>>>>
|
111
|
+
>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
112
|
+
>>>>>>>>>>>>>>>>>>>>>>>
|
113
|
+
>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
114
|
+
>>>>>>>>>>>>>>>>>>>>>>>>
|
115
|
+
>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
116
|
+
>>>>>>>>>>>>>>>>>>>>>>>>
|
117
|
+
>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
118
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>
|
119
|
+
>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
120
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>
|
121
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
122
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>
|
123
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
124
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>
|
125
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
126
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
127
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
128
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
129
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
130
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
131
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
132
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
133
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
134
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
135
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
136
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
137
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
138
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
139
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
140
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
141
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
142
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
143
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
144
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
145
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
146
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
147
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
148
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
149
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
150
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
151
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
152
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
153
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
154
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
155
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
156
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
157
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
158
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
159
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
160
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
161
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
162
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
163
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
164
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
165
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
166
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
167
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
168
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
169
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
170
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
171
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thu, Apr 30, 2020 at 10:06 AM, "someone" <someone@example.com> wrote:
|
172
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
173
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello world!
|
174
|
+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
@@ -0,0 +1,13 @@
|
|
1
|
+
From: Foo Discourse <foo@discourse.org>
|
2
|
+
Subject: This email is going to be forwarded
|
3
|
+
Date: 01 January 2019 at 12:00:00 EET
|
4
|
+
To: bar@discourse.org
|
5
|
+
|
6
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi auctor
|
7
|
+
lacus in metus vehicula, non dictum mi consequat. Nunc eget quam sit
|
8
|
+
amet dolor scelerisque cursus. Etiam laoreet lectus a rutrum
|
9
|
+
sollicitudin. Nullam sit amet lorem id ante lobortis fringilla. Duis
|
10
|
+
dictum tempus sem et ultrices. Sed ac lectus ante. Vivamus interdum,
|
11
|
+
risus non tincidunt accumsan, purus mi accumsan dolor, vitae euismod
|
12
|
+
turpis orci ut est. Integer ut ante eu velit dignissim ullamcorper non
|
13
|
+
id nibh. Nulla auctor magna erat, et posuere sapien gravida convallis.
|
@@ -0,0 +1,14 @@
|
|
1
|
+
From: Foo Discourse <foo@discourse.org>
|
2
|
+
Date: Tue, Jan 01, 2019 at 12:00 PM
|
3
|
+
Subject: This email is going to be forwarded
|
4
|
+
To: <bar@discourse.org>
|
5
|
+
|
6
|
+
|
7
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi auctor
|
8
|
+
lacus in metus vehicula, non dictum mi consequat. Nunc eget quam sit
|
9
|
+
amet dolor scelerisque cursus. Etiam laoreet lectus a rutrum
|
10
|
+
sollicitudin. Nullam sit amet lorem id ante lobortis fringilla. Duis
|
11
|
+
dictum tempus sem et ultrices. Sed ac lectus ante. Vivamus interdum,
|
12
|
+
risus non tincidunt accumsan, purus mi accumsan dolor, vitae euismod
|
13
|
+
turpis orci ut est. Integer ut ante eu velit dignissim ullamcorper non
|
14
|
+
id nibh. Nulla auctor magna erat, et posuere sapien gravida convallis.
|
@@ -19,6 +19,10 @@ class TestEmailReplyTrimmer < Minitest::Test
|
|
19
19
|
assert_match(/\r\n/, File.read("test/emails/normalize_line_endings.txt"))
|
20
20
|
end
|
21
21
|
|
22
|
+
def test_is_reply_at_end?
|
23
|
+
Timeout::timeout(1) { assert_nil(EmailReplyTrimmer.send(:is_reply_at_end?, "bq" * 100)) }
|
24
|
+
end
|
25
|
+
|
22
26
|
EMAILS.each do |filename|
|
23
27
|
name = File.basename(filename, ".txt")
|
24
28
|
define_method("test_#{name}") do
|
@@ -30,7 +34,7 @@ class TestEmailReplyTrimmer < Minitest::Test
|
|
30
34
|
EMBEDDED_EMAILS = %w{
|
31
35
|
email_headers_1 email_headers_2 email_headers_3 email_headers_4
|
32
36
|
embedded_email_10 embedded_email_german_3 embedded_email_spanish_2
|
33
|
-
forwarded_message
|
37
|
+
forwarded_message forwarded_gmail forwarded_apple
|
34
38
|
}
|
35
39
|
|
36
40
|
EMBEDDED_EMAILS.each do |name|
|
@@ -0,0 +1 @@
|
|
1
|
+
This email has been forwarded from Apple Mail.
|
@@ -0,0 +1 @@
|
|
1
|
+
This email has been forwarded from Gmail.
|
File without changes
|
@@ -0,0 +1,21 @@
|
|
1
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec sit amet dictum
|
2
|
+
lectus, at efficitur neque. Class aptent taciti sociosqu ad litora torquent per
|
3
|
+
conubia nostra, per inceptos himenaeos. Aenean dictum pulvinar tortor non
|
4
|
+
ultricies. Maecenas cursus lobortis dolor quis feugiat. Integer efficitur,
|
5
|
+
mauris sit amet lobortis consectetur, urna augue feugiat mi, et tempor dui
|
6
|
+
sapien vehicula dolor. Aenean sit amet ultrices tortor. Praesent vel porttitor
|
7
|
+
risus, eu fringilla nibh. Phasellus sollicitudin elit id tortor dapibus, at
|
8
|
+
euismod odio sodales. Ut est ex, pharetra malesuada dui maximus, ullamcorper
|
9
|
+
fringilla turpis. Nullam gravida, elit blandit commodo blandit, velit sem
|
10
|
+
ornare odio, eu ultricies arcu ex sit amet libero. Vestibulum eu fringilla
|
11
|
+
ante, nec blandit nunc.
|
12
|
+
|
13
|
+
Nullam nec viverra ipsum. Nullam semper eu urna id facilisis. Nam blandit
|
14
|
+
dictum eros, sit amet auctor dui fermentum a. Quisque finibus magna nisi, ac
|
15
|
+
hendrerit purus lacinia ut. Donec maximus, enim id tincidunt vulputate, libero
|
16
|
+
ex tempor elit, vitae sagittis libero leo sed leo. Quisque non gravida ex,
|
17
|
+
efficitur interdum neque. Interdum et malesuada fames ac ante ipsum primis in
|
18
|
+
faucibus. Phasellus rhoncus nisi vitae turpis bibendum luctus. Duis placerat
|
19
|
+
aliquam lectus, pellentesque commodo dolor hendrerit quis. Suspendisse ipsum
|
20
|
+
sapien, interdum ac felis ac, mattis varius neque. Maecenas nec risus sit amet
|
21
|
+
ex aliquam vestibulum. Maecenas a turpis et turpis volutpat congue.
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: email_reply_trimmer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.13
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Régis Hanol
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-06-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -61,7 +61,6 @@ extensions: []
|
|
61
61
|
extra_rdoc_files: []
|
62
62
|
files:
|
63
63
|
- Gemfile
|
64
|
-
- Gemfile.lock
|
65
64
|
- LICENSE
|
66
65
|
- README.md
|
67
66
|
- Rakefile
|
@@ -80,6 +79,8 @@ files:
|
|
80
79
|
- test/before/embedded_email_10.txt
|
81
80
|
- test/before/embedded_email_german_3.txt
|
82
81
|
- test/before/embedded_email_spanish_2.txt
|
82
|
+
- test/before/forwarded_apple.txt
|
83
|
+
- test/before/forwarded_gmail.txt
|
83
84
|
- test/before/forwarded_message.txt
|
84
85
|
- test/elided/delimiters.txt
|
85
86
|
- test/elided/dual_embedded.txt
|
@@ -131,12 +132,16 @@ files:
|
|
131
132
|
- test/elided/embedded_email_spanish_2.txt
|
132
133
|
- test/elided/embedded_email_swedish.txt
|
133
134
|
- test/elided/embedded_email_ukrainian.txt
|
135
|
+
- test/elided/forwarded_apple.txt
|
136
|
+
- test/elided/forwarded_gmail.txt
|
134
137
|
- test/elided/forwarded_message.txt
|
135
138
|
- test/elided/normalize_line_endings.txt
|
136
139
|
- test/elided/quote_and_text.txt
|
137
140
|
- test/elided/quote_only.txt
|
138
141
|
- test/elided/retains_spaces_and_formatting.txt
|
139
142
|
- test/elided/signatures.txt
|
143
|
+
- test/elided/spam_1.txt
|
144
|
+
- test/elided/spam_2.txt
|
140
145
|
- test/elided/strip.txt
|
141
146
|
- test/elided/text_only.txt
|
142
147
|
- test/elided/usenet.txt
|
@@ -190,12 +195,16 @@ files:
|
|
190
195
|
- test/emails/embedded_email_spanish_2.txt
|
191
196
|
- test/emails/embedded_email_swedish.txt
|
192
197
|
- test/emails/embedded_email_ukrainian.txt
|
198
|
+
- test/emails/forwarded_apple.txt
|
199
|
+
- test/emails/forwarded_gmail.txt
|
193
200
|
- test/emails/forwarded_message.txt
|
194
201
|
- test/emails/normalize_line_endings.txt
|
195
202
|
- test/emails/quote_and_text.txt
|
196
203
|
- test/emails/quote_only.txt
|
197
204
|
- test/emails/retains_spaces_and_formatting.txt
|
198
205
|
- test/emails/signatures.txt
|
206
|
+
- test/emails/spam_1.txt
|
207
|
+
- test/emails/spam_2.txt
|
199
208
|
- test/emails/strip.txt
|
200
209
|
- test/emails/text_only.txt
|
201
210
|
- test/emails/usenet.txt
|
@@ -206,6 +215,8 @@ files:
|
|
206
215
|
- test/embedded/embedded_email_10.txt
|
207
216
|
- test/embedded/embedded_email_german_3.txt
|
208
217
|
- test/embedded/embedded_email_spanish_2.txt
|
218
|
+
- test/embedded/forwarded_apple.txt
|
219
|
+
- test/embedded/forwarded_gmail.txt
|
209
220
|
- test/embedded/forwarded_message.txt
|
210
221
|
- test/matchers/does_not_contain_embedded_email.txt
|
211
222
|
- test/test_email_matcher.rb
|
@@ -260,12 +271,16 @@ files:
|
|
260
271
|
- test/trimmed/embedded_email_spanish_2.txt
|
261
272
|
- test/trimmed/embedded_email_swedish.txt
|
262
273
|
- test/trimmed/embedded_email_ukrainian.txt
|
274
|
+
- test/trimmed/forwarded_apple.txt
|
275
|
+
- test/trimmed/forwarded_gmail.txt
|
263
276
|
- test/trimmed/forwarded_message.txt
|
264
277
|
- test/trimmed/normalize_line_endings.txt
|
265
278
|
- test/trimmed/quote_and_text.txt
|
266
279
|
- test/trimmed/quote_only.txt
|
267
280
|
- test/trimmed/retains_spaces_and_formatting.txt
|
268
281
|
- test/trimmed/signatures.txt
|
282
|
+
- test/trimmed/spam_1.txt
|
283
|
+
- test/trimmed/spam_2.txt
|
269
284
|
- test/trimmed/strip.txt
|
270
285
|
- test/trimmed/text_only.txt
|
271
286
|
- test/trimmed/usenet.txt
|
@@ -288,8 +303,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
288
303
|
- !ruby/object:Gem::Version
|
289
304
|
version: '0'
|
290
305
|
requirements: []
|
291
|
-
|
292
|
-
rubygems_version: 2.6.14
|
306
|
+
rubygems_version: 3.0.3
|
293
307
|
signing_key:
|
294
308
|
specification_version: 4
|
295
309
|
summary: Library to trim replies from plain text email.
|
data/Gemfile.lock
DELETED
@@ -1,37 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
email_reply_trimmer (0.1.11)
|
5
|
-
|
6
|
-
GEM
|
7
|
-
remote: https://rubygems.org/
|
8
|
-
specs:
|
9
|
-
ast (2.4.0)
|
10
|
-
minitest (5.11.3)
|
11
|
-
parallel (1.12.1)
|
12
|
-
parser (2.4.0.2)
|
13
|
-
ast (~> 2.3)
|
14
|
-
powerpack (0.1.1)
|
15
|
-
rainbow (3.0.0)
|
16
|
-
rake (12.3.0)
|
17
|
-
rubocop (0.52.1)
|
18
|
-
parallel (~> 1.10)
|
19
|
-
parser (>= 2.4.0.2, < 3.0)
|
20
|
-
powerpack (~> 0.1)
|
21
|
-
rainbow (>= 2.2.2, < 4.0)
|
22
|
-
ruby-progressbar (~> 1.7)
|
23
|
-
unicode-display_width (~> 1.0, >= 1.0.1)
|
24
|
-
ruby-progressbar (1.9.0)
|
25
|
-
unicode-display_width (1.3.0)
|
26
|
-
|
27
|
-
PLATFORMS
|
28
|
-
ruby
|
29
|
-
|
30
|
-
DEPENDENCIES
|
31
|
-
email_reply_trimmer!
|
32
|
-
minitest (~> 5)
|
33
|
-
rake (~> 12)
|
34
|
-
rubocop (~> 0.52.1)
|
35
|
-
|
36
|
-
BUNDLED WITH
|
37
|
-
1.16.1
|