mailparser 0.5.7 → 0.5.8

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2310e94f3de77f05994cdf3ce1c92bf8f16309e2
4
- data.tar.gz: 8ad3d13a7f0e6d06d1c84d098922c703eebf605e
3
+ metadata.gz: 7d761a9419015163c12809cf410a36489d1353ec
4
+ data.tar.gz: 15970ff8192c5cf4a068567d9f26cb89483e27c0
5
5
  SHA512:
6
- metadata.gz: 951e389194febaeb67affa9fccf35a7d6cc90cbde8b374c7cfe0c6c103b19e08e9f0beadca5b08113f9fb3bbade798a2d69803ccdfa42b5959e0804b10c9019b
7
- data.tar.gz: 96142fc8a2285eb75c08cf0d03e5f0d3ab7d067b61421034886cd047aec2c3b455290daf8c6a7d57294f8e63da8eca5787809f4d1551b537fdf37a274b74f8bc
6
+ metadata.gz: 64d34c5f824d9d88ed2c0afc858315e938f33ad131e4054d26486b61add4533a0a3f3bebc6332d467f578acd8c02d63ccec3ac37a438b381e8ebbd55404a70f4
7
+ data.tar.gz: 0223da30aadf2ce4e5256b909f987c6a718d94f6b397ad6306100f0bb8f096f02c21241e0ab11587b991242479c559ec636ed62e6d5e94f70efca4a28c05d1f9
@@ -21,7 +21,6 @@ module MailParser::RFC2047
21
21
  end
22
22
  charset_converter ||= MailParser::ConvCharset.method(:conv_charset)
23
23
  words = []
24
- mime_word = false
25
24
  ss = StringScanner.new(str.gsub(/\r?\n/, ''))
26
25
  until ss.eos?
27
26
  if s = ss.scan(/\=\?[^\(\)\<\>\@\,\;\:\"\/\[\]\?\.\=]+\?[QB]\?[^\? ]+\?\=/i)
@@ -43,7 +42,7 @@ module MailParser::RFC2047
43
42
  begin
44
43
  ret = words.join
45
44
  rescue
46
- ret = words.map{|s| s.to_s.force_encoding('binary')}.join
45
+ ret = words.map{|w| w.to_s.force_encoding('binary')}.join
47
46
  end
48
47
  charset ? charset_converter.call(charset, charset, ret) : ret
49
48
  end
@@ -9,7 +9,7 @@ module MailParser::RFC2231
9
9
  def parse_param(params, opt={:strict=>true})
10
10
  opt = {:strict=>opt} unless opt.is_a? Hash
11
11
  newparams = {}
12
- h = Hash.new{|h,k| h[k] = []}
12
+ h = Hash.new{|_h,k| _h[k] = []}
13
13
  char_lang = {}
14
14
  params.each do |key, value|
15
15
  case key
@@ -19,7 +19,7 @@ module MailParser::RFC2231
19
19
  char_lang[name] = [char, lang]
20
20
  if v.nil? then
21
21
  raise MailParser::ParseError, "#{key}=#{value}" if opt[:strict]
22
- v = lang || char
22
+ v = lang || char || ''
23
23
  end
24
24
  v = v.gsub(/%([0-9A-F][0-9A-F])/i){$1.hex.chr}
25
25
  if ord then
@@ -502,7 +502,7 @@ class TC_Loose_Tokenizer < Test::Unit::TestCase
502
502
  end
503
503
 
504
504
  def test_token_received_VT()
505
- timeout(2) do
505
+ Timeout.timeout(2) do
506
506
  assert_equal(["a","b","c","d"], Tokenizer.token_received("a b\vc d"))
507
507
  end
508
508
  end
@@ -131,6 +131,14 @@ class TC_RFC2231 < Test::Unit::TestCase
131
131
  assert_equal "abc", h["hoge"]
132
132
  end
133
133
 
134
+ def test_parse_param_with_empty_value
135
+ params = {
136
+ "hoge*" => "",
137
+ }
138
+ h = MailParser::RFC2231.parse_param(params, strict: false)
139
+ assert_equal "", h["hoge"]
140
+ end
141
+
134
142
  def test_rfc_example()
135
143
  params = {
136
144
  "URL*0" => "ftp://",
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mailparser
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.7
4
+ version: 0.5.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - TOMITA Masahiro
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-02 00:00:00.000000000 Z
11
+ date: 2016-02-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mmapscanner
@@ -74,7 +74,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
74
74
  version: '0'
75
75
  requirements: []
76
76
  rubyforge_project:
77
- rubygems_version: 2.4.5.1
77
+ rubygems_version: 2.5.0
78
78
  signing_key:
79
79
  specification_version: 4
80
80
  summary: Mail Parser