fluent-plugin-record-modifier 0.6.0 → 0.6.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: dbb0e44223c741d2f1c7bed9f61ed7e174c40428
4
- data.tar.gz: bc472ac107bef79ce85e9dd561dc8aca9370a78e
3
+ metadata.gz: 438ccea5164c0e705dff68f7482312e20b1c84a3
4
+ data.tar.gz: 9a2b5a6893a56928e71cddd0bab98eb8f015b833
5
5
  SHA512:
6
- metadata.gz: a94230f5226d68bbb72b7456bb7aa12ce2e7654fe93ca133db4bdd1a464588449ff30d16e94f23cc8b6f268cf883f90587354d768bec9eea90307fea43f96ee1
7
- data.tar.gz: a8112001bd72021279339f9cfa60dd2f8872d0eb484768ce2da65de4b7892420f9c46cf3a44055d18864cd51f9706c2b96ab8158cc4418fa97400c452634f3be
6
+ metadata.gz: 88dfb45817738a35242e9eb08ca66511d80056a4744513222654251b762fe901c86b63e7bc5780d83e8d1370f74c375d109ca4dc7c6c6d1cad27a102ae310b71
7
+ data.tar.gz: 12069d1234c29caa145f8f32943c842b029b462e747a4c2c18df28d31d28df7cc66948587f32878a80560ab56e7ff9cc03ebf288dfe55231fd8a08766a254903
data/.travis.yml CHANGED
@@ -1,25 +1,25 @@
1
1
  language: ruby
2
2
 
3
3
  rvm:
4
- - 2.0.0
5
4
  - 2.1
6
5
  - 2.2.5
7
6
  - 2.3.1
7
+ - 2.4.2
8
8
  - ruby-head
9
- - rbx
10
9
 
11
10
  branches:
12
11
  only:
13
12
  - master
13
+ - v0.12
14
14
 
15
15
  gemfile:
16
16
  - Gemfile
17
17
 
18
+ sudo: false
19
+
18
20
  matrix:
19
21
  allow_failures:
20
22
  - rvm: ruby-head
21
- - rvm: rbx
22
- - rvm: 2.0.0
23
23
 
24
24
  before_install: gem update bundler
25
25
  script: bundle exec rake test
data/ChangeLog CHANGED
@@ -1,3 +1,9 @@
1
+ Release 0.6.1 - 2017/12/12
2
+
3
+ * Drop fluentd v0.10 support
4
+ * Add frozen object support
5
+ https://github.com/repeatedly/fluent-plugin-record-modifier/pull/26
6
+
1
7
  Release 0.6.0 - 2017/06/06
2
8
 
3
9
  * Drop fluentd v0.10 support
data/Gemfile CHANGED
@@ -1,3 +1,5 @@
1
1
  source "http://rubygems.org"
2
2
 
3
+ gem 'fluentd', '~> 0.12.0'
4
+
3
5
  gemspec
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.6.0
1
+ 0.6.1
@@ -116,7 +116,13 @@ DESC
116
116
  if value.is_a?(String)
117
117
  value.force_encoding(@from_enc)
118
118
  elsif value.is_a?(Hash)
119
- value.each_pair { |k, v| set_encoding(v) }
119
+ value.each_pair { |k, v|
120
+ if v.frozen?
121
+ value[k] = set_encoding(v.dup)
122
+ else
123
+ set_encoding(v)
124
+ end
125
+ }
120
126
  elsif value.is_a?(Array)
121
127
  value.each { |v| set_encoding(v) }
122
128
  end
@@ -127,7 +133,13 @@ DESC
127
133
  value.force_encoding(@from_enc) if value.encoding == Encoding::BINARY
128
134
  value.encode!(@to_enc, @from_enc, :invalid => :replace, :undef => :replace)
129
135
  elsif value.is_a?(Hash)
130
- value.each_pair { |k, v| convert_encoding(v) }
136
+ value.each_pair { |k, v|
137
+ if v.frozen?
138
+ value[k] = convert_encoding(v.dup)
139
+ else
140
+ convert_encoding(v)
141
+ end
142
+ }
131
143
  elsif value.is_a?(Array)
132
144
  value.each { |v| convert_encoding(v) }
133
145
  end
@@ -11,7 +11,6 @@ class RecordModifierFilterTest < Test::Unit::TestCase
11
11
  end
12
12
 
13
13
  CONFIG = %q!
14
- type record_modifier
15
14
  remove_keys hoge
16
15
 
17
16
  <record>
@@ -57,8 +56,6 @@ class RecordModifierFilterTest < Test::Unit::TestCase
57
56
 
58
57
  def test_set_char_encoding
59
58
  d = create_driver %[
60
- type record_modifier
61
-
62
59
  char_encoding utf-8
63
60
  ]
64
61
 
@@ -77,8 +74,6 @@ class RecordModifierFilterTest < Test::Unit::TestCase
77
74
 
78
75
  def test_convert_char_encoding
79
76
  d = create_driver %[
80
- type record_modifier
81
-
82
77
  char_encoding utf-8:cp932
83
78
  ]
84
79
 
@@ -97,8 +92,6 @@ class RecordModifierFilterTest < Test::Unit::TestCase
97
92
 
98
93
  def test_remove_one_key
99
94
  d = create_driver %[
100
- type record_modifier
101
-
102
95
  remove_keys k1
103
96
  ]
104
97
 
@@ -111,8 +104,6 @@ class RecordModifierFilterTest < Test::Unit::TestCase
111
104
 
112
105
  def test_remove_multiple_keys
113
106
  d = create_driver %[
114
- type record_modifier
115
-
116
107
  remove_keys k1, k2, k3
117
108
  ]
118
109
 
@@ -125,8 +116,6 @@ class RecordModifierFilterTest < Test::Unit::TestCase
125
116
 
126
117
  def test_remove_non_whitelist_keys
127
118
  d = create_driver %[
128
- type record_modifier
129
-
130
119
  whitelist_keys k1, k2, k3
131
120
  ]
132
121
 
@@ -136,4 +125,38 @@ class RecordModifierFilterTest < Test::Unit::TestCase
136
125
 
137
126
  assert_equal [{"k1" => 'v', "k2" => 'v'}], d.filtered_as_array.map(&:last)
138
127
  end
128
+
129
+ sub_test_case 'frozen check' do
130
+ def test_set_char_encoding
131
+ d = create_driver %[
132
+ char_encoding utf-8
133
+ ]
134
+
135
+ d.run do
136
+ d.emit("k" => 'v'.force_encoding('BINARY').freeze)
137
+ d.emit("k" => {"l" => 'v'.force_encoding('BINARY').freeze})
138
+ end
139
+
140
+ assert_equal [
141
+ {"k" => 'v'.force_encoding('UTF-8')},
142
+ {"k" => {"l" => 'v'.force_encoding('UTF-8')}},
143
+ ], d.filtered_as_array.map { |e| e.last }
144
+ end
145
+
146
+ def test_convert_char_encoding
147
+ d = create_driver %[
148
+ char_encoding utf-8:cp932
149
+ ]
150
+
151
+ d.run do
152
+ d.emit("k" => 'v'.force_encoding('utf-8').freeze)
153
+ d.emit("k" => {"l" => 'v'.force_encoding('utf-8').freeze})
154
+ end
155
+
156
+ assert_equal [
157
+ {"k" => 'v'.force_encoding('cp932')},
158
+ {"k" => {"l" => 'v'.force_encoding('cp932')}},
159
+ ], d.filtered_as_array.map { |e| e.last }
160
+ end
161
+ end
139
162
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-record-modifier
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.6.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Masahiro Nakagawa
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-06-06 00:00:00.000000000 Z
11
+ date: 2017-12-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fluentd
@@ -95,7 +95,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
95
95
  version: '0'
96
96
  requirements: []
97
97
  rubyforge_project:
98
- rubygems_version: 2.6.11
98
+ rubygems_version: 2.6.13
99
99
  signing_key:
100
100
  specification_version: 4
101
101
  summary: Filter plugin for modifying event record