replyr 0.0.1

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.
Files changed (117) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +3 -0
  3. data/Gemfile +14 -0
  4. data/MIT-LICENSE +20 -0
  5. data/README.md +94 -0
  6. data/Rakefile +32 -0
  7. data/lib/email_reply_parser/LICENSE +22 -0
  8. data/lib/email_reply_parser/email_reply_parser.rb +475 -0
  9. data/lib/generators/replyr/install_generator.rb +15 -0
  10. data/lib/generators/replyr/templates/mailman_daemon +12 -0
  11. data/lib/generators/replyr/templates/mailman_server +50 -0
  12. data/lib/generators/replyr/templates/replyr.rb.erb +8 -0
  13. data/lib/replyr/config.rb +22 -0
  14. data/lib/replyr/engine.rb +14 -0
  15. data/lib/replyr/handle_reply.rb +36 -0
  16. data/lib/replyr/reply_address.rb +111 -0
  17. data/lib/replyr/reply_email.rb +50 -0
  18. data/lib/replyr/version.rb +3 -0
  19. data/lib/replyr.rb +26 -0
  20. data/lib/tasks/replyr_tasks.rake +4 -0
  21. data/test/dummy/README.rdoc +28 -0
  22. data/test/dummy/Rakefile +6 -0
  23. data/test/dummy/app/assets/javascripts/application.js +13 -0
  24. data/test/dummy/app/assets/stylesheets/application.css +13 -0
  25. data/test/dummy/app/controllers/application_controller.rb +5 -0
  26. data/test/dummy/app/helpers/application_helper.rb +2 -0
  27. data/test/dummy/app/models/comment.rb +7 -0
  28. data/test/dummy/app/models/user.rb +3 -0
  29. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  30. data/test/dummy/bin/bundle +3 -0
  31. data/test/dummy/bin/rails +4 -0
  32. data/test/dummy/bin/rake +4 -0
  33. data/test/dummy/config/application.rb +23 -0
  34. data/test/dummy/config/boot.rb +5 -0
  35. data/test/dummy/config/database.yml +8 -0
  36. data/test/dummy/config/environment.rb +5 -0
  37. data/test/dummy/config/environments/development.rb +29 -0
  38. data/test/dummy/config/environments/production.rb +80 -0
  39. data/test/dummy/config/environments/test.rb +36 -0
  40. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  41. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  42. data/test/dummy/config/initializers/inflections.rb +16 -0
  43. data/test/dummy/config/initializers/mime_types.rb +5 -0
  44. data/test/dummy/config/initializers/replyr.rb +2 -0
  45. data/test/dummy/config/initializers/secret_token.rb +12 -0
  46. data/test/dummy/config/initializers/session_store.rb +3 -0
  47. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  48. data/test/dummy/config/locales/en.yml +23 -0
  49. data/test/dummy/config/routes.rb +56 -0
  50. data/test/dummy/config.ru +4 -0
  51. data/test/dummy/db/test.sqlite3 +0 -0
  52. data/test/dummy/log/development.log +0 -0
  53. data/test/dummy/log/test.log +12557 -0
  54. data/test/dummy/public/404.html +58 -0
  55. data/test/dummy/public/422.html +58 -0
  56. data/test/dummy/public/500.html +57 -0
  57. data/test/dummy/public/favicon.ico +0 -0
  58. data/test/email_reply_parser/email_reply_parser_test.rb +488 -0
  59. data/test/email_reply_parser/emails/correct_sig.txt +4 -0
  60. data/test/email_reply_parser/emails/email_1_1.txt +13 -0
  61. data/test/email_reply_parser/emails/email_1_2.txt +51 -0
  62. data/test/email_reply_parser/emails/email_1_3.txt +55 -0
  63. data/test/email_reply_parser/emails/email_1_4.txt +5 -0
  64. data/test/email_reply_parser/emails/email_1_5.txt +15 -0
  65. data/test/email_reply_parser/emails/email_1_6.txt +15 -0
  66. data/test/email_reply_parser/emails/email_1_7.txt +12 -0
  67. data/test/email_reply_parser/emails/email_1_8.txt +6 -0
  68. data/test/email_reply_parser/emails/email_1_9.txt +9 -0
  69. data/test/email_reply_parser/emails/email_2_1.txt +25 -0
  70. data/test/email_reply_parser/emails/email_2_2.txt +10 -0
  71. data/test/email_reply_parser/emails/email_2_3.txt +14 -0
  72. data/test/email_reply_parser/emails/email_2_4.txt +14 -0
  73. data/test/email_reply_parser/emails/email_2_5.txt +15 -0
  74. data/test/email_reply_parser/emails/email_2_6.txt +11 -0
  75. data/test/email_reply_parser/emails/email_2_7.txt +5 -0
  76. data/test/email_reply_parser/emails/email_2_7_1.txt +5 -0
  77. data/test/email_reply_parser/emails/email_2_7_de.txt +5 -0
  78. data/test/email_reply_parser/emails/email_2_8.txt +3 -0
  79. data/test/email_reply_parser/emails/email_2_9.txt +9 -0
  80. data/test/email_reply_parser/emails/email_2nd_paragraph_starting_with_on.txt +12 -0
  81. data/test/email_reply_parser/emails/email_BlackBerry.txt +3 -0
  82. data/test/email_reply_parser/emails/email_bullets.txt +22 -0
  83. data/test/email_reply_parser/emails/email_from_address_in_quote_header.txt +12 -0
  84. data/test/email_reply_parser/emails/email_from_name_in_quote_header.txt +12 -0
  85. data/test/email_reply_parser/emails/email_hyphens.txt +5 -0
  86. data/test/email_reply_parser/emails/email_iPhone.txt +3 -0
  87. data/test/email_reply_parser/emails/email_iPhone_de.txt +3 -0
  88. data/test/email_reply_parser/emails/email_iPhone_de_2.txt +3 -0
  89. data/test/email_reply_parser/emails/email_mentions_own_email_address.txt +6 -0
  90. data/test/email_reply_parser/emails/email_mentions_own_name.txt +6 -0
  91. data/test/email_reply_parser/emails/email_multi_word_sent_from_my_mobile_device.txt +3 -0
  92. data/test/email_reply_parser/emails/email_multiline_quote_header_de_mx.txt +8 -0
  93. data/test/email_reply_parser/emails/email_multiline_quote_header_es_mx.txt +8 -0
  94. data/test/email_reply_parser/emails/email_multiline_quote_header_fr.txt +8 -0
  95. data/test/email_reply_parser/emails/email_multiline_quote_header_from_first.txt +11 -0
  96. data/test/email_reply_parser/emails/email_multiline_quote_header_from_replyto_date_to_subject.txt +12 -0
  97. data/test/email_reply_parser/emails/email_multiline_quote_header_from_to_date_subject.txt +11 -0
  98. data/test/email_reply_parser/emails/email_multiline_quote_header_none.txt +11 -0
  99. data/test/email_reply_parser/emails/email_multiline_quote_header_pt_br.txt +8 -0
  100. data/test/email_reply_parser/emails/email_multiline_quote_header_with_asterisks.txt +21 -0
  101. data/test/email_reply_parser/emails/email_multiline_quote_header_with_cc.txt +9 -0
  102. data/test/email_reply_parser/emails/email_multiline_quote_header_with_multiline_headers.txt +14 -0
  103. data/test/email_reply_parser/emails/email_no_signature_deliminator.txt +7 -0
  104. data/test/email_reply_parser/emails/email_no_signature_deliminator_adds_a_middle_initial.txt +7 -0
  105. data/test/email_reply_parser/emails/email_one_is_not_on.txt +10 -0
  106. data/test/email_reply_parser/emails/email_sent_from_my_not_signature.txt +3 -0
  107. data/test/email_reply_parser/emails/email_was_showing_as_nothing_visible.txt +13 -0
  108. data/test/email_reply_parser/emails/new_content/email_1_2.txt +28 -0
  109. data/test/replyr/handle_reply_test.rb +46 -0
  110. data/test/replyr/reply_address_test.rb +77 -0
  111. data/test/replyr/reply_email_test.rb +19 -0
  112. data/test/replyr_test.rb +7 -0
  113. data/test/support/emails/reply_multipart.eml +35 -0
  114. data/test/support/emails/reply_plain.eml +11 -0
  115. data/test/support/emails/reply_with_attachment.eml +466 -0
  116. data/test/test_helper.rb +23 -0
  117. metadata +228 -0
metadata ADDED
@@ -0,0 +1,228 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: replyr
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Philipp Wüllner
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-03-20 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: mailman
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 0.7.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 0.7.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: daemons
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rails
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 3.2.13
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 3.2.13
55
+ - !ruby/object:Gem::Dependency
56
+ name: minitest
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "<"
60
+ - !ruby/object:Gem::Version
61
+ version: 5.0.0
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "<"
67
+ - !ruby/object:Gem::Version
68
+ version: 5.0.0
69
+ - !ruby/object:Gem::Dependency
70
+ name: sqlite3
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ description: Receive and parse incoming emails with ease
84
+ email:
85
+ - wursttheke@me.com
86
+ executables: []
87
+ extensions: []
88
+ extra_rdoc_files: []
89
+ files:
90
+ - lib/email_reply_parser/email_reply_parser.rb
91
+ - lib/email_reply_parser/LICENSE
92
+ - lib/generators/replyr/install_generator.rb
93
+ - lib/generators/replyr/templates/mailman_daemon
94
+ - lib/generators/replyr/templates/mailman_server
95
+ - lib/generators/replyr/templates/replyr.rb.erb
96
+ - lib/replyr/config.rb
97
+ - lib/replyr/engine.rb
98
+ - lib/replyr/handle_reply.rb
99
+ - lib/replyr/reply_address.rb
100
+ - lib/replyr/reply_email.rb
101
+ - lib/replyr/version.rb
102
+ - lib/replyr.rb
103
+ - lib/tasks/replyr_tasks.rake
104
+ - test/dummy/app/assets/javascripts/application.js
105
+ - test/dummy/app/assets/stylesheets/application.css
106
+ - test/dummy/app/controllers/application_controller.rb
107
+ - test/dummy/app/helpers/application_helper.rb
108
+ - test/dummy/app/models/comment.rb
109
+ - test/dummy/app/models/user.rb
110
+ - test/dummy/app/views/layouts/application.html.erb
111
+ - test/dummy/bin/bundle
112
+ - test/dummy/bin/rails
113
+ - test/dummy/bin/rake
114
+ - test/dummy/config/application.rb
115
+ - test/dummy/config/boot.rb
116
+ - test/dummy/config/database.yml
117
+ - test/dummy/config/environment.rb
118
+ - test/dummy/config/environments/development.rb
119
+ - test/dummy/config/environments/production.rb
120
+ - test/dummy/config/environments/test.rb
121
+ - test/dummy/config/initializers/backtrace_silencers.rb
122
+ - test/dummy/config/initializers/filter_parameter_logging.rb
123
+ - test/dummy/config/initializers/inflections.rb
124
+ - test/dummy/config/initializers/mime_types.rb
125
+ - test/dummy/config/initializers/replyr.rb
126
+ - test/dummy/config/initializers/secret_token.rb
127
+ - test/dummy/config/initializers/session_store.rb
128
+ - test/dummy/config/initializers/wrap_parameters.rb
129
+ - test/dummy/config/locales/en.yml
130
+ - test/dummy/config/routes.rb
131
+ - test/dummy/config.ru
132
+ - test/dummy/db/test.sqlite3
133
+ - test/dummy/log/development.log
134
+ - test/dummy/log/test.log
135
+ - test/dummy/public/404.html
136
+ - test/dummy/public/422.html
137
+ - test/dummy/public/500.html
138
+ - test/dummy/public/favicon.ico
139
+ - test/dummy/Rakefile
140
+ - test/dummy/README.rdoc
141
+ - test/email_reply_parser/email_reply_parser_test.rb
142
+ - test/email_reply_parser/emails/correct_sig.txt
143
+ - test/email_reply_parser/emails/email_1_1.txt
144
+ - test/email_reply_parser/emails/email_1_2.txt
145
+ - test/email_reply_parser/emails/email_1_3.txt
146
+ - test/email_reply_parser/emails/email_1_4.txt
147
+ - test/email_reply_parser/emails/email_1_5.txt
148
+ - test/email_reply_parser/emails/email_1_6.txt
149
+ - test/email_reply_parser/emails/email_1_7.txt
150
+ - test/email_reply_parser/emails/email_1_8.txt
151
+ - test/email_reply_parser/emails/email_1_9.txt
152
+ - test/email_reply_parser/emails/email_2_1.txt
153
+ - test/email_reply_parser/emails/email_2_2.txt
154
+ - test/email_reply_parser/emails/email_2_3.txt
155
+ - test/email_reply_parser/emails/email_2_4.txt
156
+ - test/email_reply_parser/emails/email_2_5.txt
157
+ - test/email_reply_parser/emails/email_2_6.txt
158
+ - test/email_reply_parser/emails/email_2_7.txt
159
+ - test/email_reply_parser/emails/email_2_7_1.txt
160
+ - test/email_reply_parser/emails/email_2_7_de.txt
161
+ - test/email_reply_parser/emails/email_2_8.txt
162
+ - test/email_reply_parser/emails/email_2_9.txt
163
+ - test/email_reply_parser/emails/email_2nd_paragraph_starting_with_on.txt
164
+ - test/email_reply_parser/emails/email_BlackBerry.txt
165
+ - test/email_reply_parser/emails/email_bullets.txt
166
+ - test/email_reply_parser/emails/email_from_address_in_quote_header.txt
167
+ - test/email_reply_parser/emails/email_from_name_in_quote_header.txt
168
+ - test/email_reply_parser/emails/email_hyphens.txt
169
+ - test/email_reply_parser/emails/email_iPhone.txt
170
+ - test/email_reply_parser/emails/email_iPhone_de.txt
171
+ - test/email_reply_parser/emails/email_iPhone_de_2.txt
172
+ - test/email_reply_parser/emails/email_mentions_own_email_address.txt
173
+ - test/email_reply_parser/emails/email_mentions_own_name.txt
174
+ - test/email_reply_parser/emails/email_multi_word_sent_from_my_mobile_device.txt
175
+ - test/email_reply_parser/emails/email_multiline_quote_header_de_mx.txt
176
+ - test/email_reply_parser/emails/email_multiline_quote_header_es_mx.txt
177
+ - test/email_reply_parser/emails/email_multiline_quote_header_fr.txt
178
+ - test/email_reply_parser/emails/email_multiline_quote_header_from_first.txt
179
+ - test/email_reply_parser/emails/email_multiline_quote_header_from_replyto_date_to_subject.txt
180
+ - test/email_reply_parser/emails/email_multiline_quote_header_from_to_date_subject.txt
181
+ - test/email_reply_parser/emails/email_multiline_quote_header_none.txt
182
+ - test/email_reply_parser/emails/email_multiline_quote_header_pt_br.txt
183
+ - test/email_reply_parser/emails/email_multiline_quote_header_with_asterisks.txt
184
+ - test/email_reply_parser/emails/email_multiline_quote_header_with_cc.txt
185
+ - test/email_reply_parser/emails/email_multiline_quote_header_with_multiline_headers.txt
186
+ - test/email_reply_parser/emails/email_no_signature_deliminator.txt
187
+ - test/email_reply_parser/emails/email_no_signature_deliminator_adds_a_middle_initial.txt
188
+ - test/email_reply_parser/emails/email_one_is_not_on.txt
189
+ - test/email_reply_parser/emails/email_sent_from_my_not_signature.txt
190
+ - test/email_reply_parser/emails/email_was_showing_as_nothing_visible.txt
191
+ - test/email_reply_parser/emails/new_content/email_1_2.txt
192
+ - test/replyr/handle_reply_test.rb
193
+ - test/replyr/reply_address_test.rb
194
+ - test/replyr/reply_email_test.rb
195
+ - test/replyr_test.rb
196
+ - test/support/emails/reply_multipart.eml
197
+ - test/support/emails/reply_plain.eml
198
+ - test/support/emails/reply_with_attachment.eml
199
+ - test/test_helper.rb
200
+ - CHANGELOG.md
201
+ - Gemfile
202
+ - MIT-LICENSE
203
+ - Rakefile
204
+ - README.md
205
+ homepage: http://www.github.com/wursttheke/replyr
206
+ licenses: []
207
+ metadata: {}
208
+ post_install_message:
209
+ rdoc_options: []
210
+ require_paths:
211
+ - lib
212
+ required_ruby_version: !ruby/object:Gem::Requirement
213
+ requirements:
214
+ - - ">="
215
+ - !ruby/object:Gem::Version
216
+ version: '0'
217
+ required_rubygems_version: !ruby/object:Gem::Requirement
218
+ requirements:
219
+ - - ">="
220
+ - !ruby/object:Gem::Version
221
+ version: 1.3.4
222
+ requirements: []
223
+ rubyforge_project:
224
+ rubygems_version: 2.1.11
225
+ signing_key:
226
+ specification_version: 4
227
+ summary: Receive emails with Rails
228
+ test_files: []