logstash-core 6.0.1-java → 6.1.0-java

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 (64) hide show
  1. checksums.yaml +4 -4
  2. data/gemspec_jars.rb +1 -1
  3. data/lib/logstash-core/logstash-core.jar +0 -0
  4. data/lib/logstash-core/logstash-core.rb +14 -2
  5. data/lib/logstash-core_jars.rb +4 -2
  6. data/lib/logstash/agent.rb +8 -2
  7. data/lib/logstash/api/modules/node.rb +11 -5
  8. data/lib/logstash/api/modules/stats.rb +13 -7
  9. data/lib/logstash/compiler.rb +6 -10
  10. data/lib/logstash/compiler/lscl.rb +10 -1
  11. data/lib/logstash/compiler/lscl/helpers.rb +3 -1
  12. data/lib/logstash/config/mixin.rb +2 -2
  13. data/lib/logstash/environment.rb +1 -6
  14. data/lib/logstash/errors.rb +1 -1
  15. data/lib/logstash/event.rb +0 -2
  16. data/lib/logstash/filter_delegator.rb +1 -2
  17. data/lib/logstash/instrument/metric_type/counter.rb +1 -1
  18. data/lib/logstash/instrument/metric_type/gauge.rb +1 -1
  19. data/lib/logstash/instrument/wrapped_write_client.rb +1 -1
  20. data/lib/logstash/java_filter_delegator.rb +79 -0
  21. data/lib/logstash/java_pipeline.rb +690 -0
  22. data/lib/logstash/json.rb +4 -29
  23. data/lib/logstash/output_delegator.rb +3 -2
  24. data/lib/logstash/patches/bugfix_jruby_2558.rb +1 -1
  25. data/lib/logstash/pipeline.rb +32 -89
  26. data/lib/logstash/pipeline_action/create.rb +8 -2
  27. data/lib/logstash/pipeline_action/reload.rb +6 -1
  28. data/lib/logstash/pipeline_reporter.rb +2 -1
  29. data/lib/logstash/pipeline_settings.rb +1 -0
  30. data/lib/logstash/plugins/plugin_factory.rb +100 -0
  31. data/lib/logstash/plugins/registry.rb +18 -7
  32. data/lib/logstash/queue_factory.rb +3 -1
  33. data/lib/logstash/runner.rb +13 -56
  34. data/lib/logstash/settings.rb +2 -2
  35. data/lib/logstash/timestamp.rb +0 -1
  36. data/lib/logstash/util.rb +13 -21
  37. data/lib/logstash/util/java_version.rb +0 -1
  38. data/lib/logstash/util/settings_helper.rb +79 -0
  39. data/lib/logstash/util/{environment_variables.rb → substitution_variables.rb} +10 -8
  40. data/lib/logstash/util/wrapped_acked_queue.rb +17 -108
  41. data/lib/logstash/util/wrapped_synchronous_queue.rb +38 -178
  42. data/locales/en.yml +2 -0
  43. data/spec/conditionals_spec.rb +235 -80
  44. data/spec/logstash/api/modules/node_spec.rb +11 -0
  45. data/spec/logstash/compiler/compiler_spec.rb +28 -2
  46. data/spec/logstash/environment_spec.rb +0 -5
  47. data/spec/logstash/event_spec.rb +7 -2
  48. data/spec/logstash/filter_delegator_spec.rb +1 -1
  49. data/spec/logstash/filters/base_spec.rb +30 -28
  50. data/spec/logstash/instrument/wrapped_write_client_spec.rb +2 -2
  51. data/spec/logstash/java_filter_delegator_spec.rb +176 -0
  52. data/spec/logstash/java_pipeline_spec.rb +933 -0
  53. data/spec/logstash/json_spec.rb +27 -45
  54. data/spec/logstash/plugins/registry_spec.rb +7 -0
  55. data/spec/logstash/queue_factory_spec.rb +5 -2
  56. data/spec/logstash/settings_spec.rb +1 -1
  57. data/spec/logstash/util/java_version_spec.rb +1 -3
  58. data/spec/logstash/util/wrapped_synchronous_queue_spec.rb +27 -24
  59. data/spec/logstash/webserver_spec.rb +3 -6
  60. data/spec/support/helpers.rb +5 -0
  61. data/spec/support/pipeline/pipeline_helpers.rb +97 -0
  62. data/versions-gem-copy.yml +5 -2
  63. metadata +14 -5
  64. data/lib/logstash/patches/rubygems.rb +0 -38
@@ -33,60 +33,42 @@ describe "LogStash::Json" do
33
33
  ]
34
34
  }
35
35
 
36
- if LogStash::Environment.jruby?
37
-
38
- ### JRuby specific
39
- # Former expectation in this code were removed because of https://github.com/rspec/rspec-mocks/issues/964
40
- # as soon as is fix we can re introduce them if desired, however for now the completeness of the test
41
- # is also not affected as the conversion would not work if the expectation where not meet.
42
- ###
43
- context "jruby deserialize" do
44
- it "should respond to load and deserialize object" do
45
- expect(LogStash::Json.load(json_hash)).to eql(hash)
46
- end
36
+ # Former expectation in this code were removed because of https://github.com/rspec/rspec-mocks/issues/964
37
+ # as soon as is fix we can re introduce them if desired, however for now the completeness of the test
38
+ # is also not affected as the conversion would not work if the expectation where not meet.
39
+ ###
40
+ context "jruby deserialize" do
41
+ it "should respond to load and deserialize object" do
42
+ expect(LogStash::Json.load(json_hash)).to eql(hash)
47
43
  end
44
+ end
48
45
 
49
- context "jruby serialize" do
50
- it "should respond to dump and serialize object" do
51
- expect(LogStash::Json.dump(string)).to eql(json_string)
52
- end
53
-
54
- it "should call JrJackson::Raw.generate for Hash" do
55
- expect(LogStash::Json.dump(hash)).to eql(json_hash)
56
- end
57
-
58
- it "should call JrJackson::Raw.generate for Array" do
59
- expect(LogStash::Json.dump(array)).to eql(json_array)
60
- end
61
-
62
- context "pretty print" do
63
-
64
- let(:hash) { { "foo" => "bar", :zoo => 2 } }
46
+ context "jruby serialize" do
47
+ it "should respond to dump and serialize object" do
48
+ expect(LogStash::Json.dump(string)).to eql(json_string)
49
+ end
65
50
 
66
- it "should serialize with pretty print" do
67
- pprint_json = LogStash::Json.dump(hash, :pretty => true)
68
- expect(pprint_json).to include("\n")
69
- end
51
+ it "should call JrJackson::Raw.generate for Hash" do
52
+ expect(LogStash::Json.dump(hash)).to eql(json_hash)
53
+ end
70
54
 
71
- it "should by default do no pretty print" do
72
- pprint_json = LogStash::Json.dump(hash)
73
- expect(pprint_json).not_to include("\n")
74
- end
75
- end
55
+ it "should call JrJackson::Raw.generate for Array" do
56
+ expect(LogStash::Json.dump(array)).to eql(json_array)
76
57
  end
77
58
 
78
- else
59
+ context "pretty print" do
79
60
 
80
- ### MRI specific
61
+ let(:hash) { { "foo" => "bar", :zoo => 2 } }
81
62
 
82
- it "should respond to load and deserialize object on mri" do
83
- expect(Oj).to receive(:load).with(json).and_call_original
84
- expect(LogStash::Json.load(json)).to eql(hash)
85
- end
63
+ it "should serialize with pretty print" do
64
+ pprint_json = LogStash::Json.dump(hash, :pretty => true)
65
+ expect(pprint_json).to include("\n")
66
+ end
86
67
 
87
- it "should respond to dump and serialize object on mri" do
88
- expect(Oj).to receive(:dump).with(hash, anything).and_call_original
89
- expect(LogStash::Json.dump(hash)).to eql(json)
68
+ it "should by default do no pretty print" do
69
+ pprint_json = LogStash::Json.dump(hash)
70
+ expect(pprint_json).not_to include("\n")
71
+ end
90
72
  end
91
73
  end
92
74
 
@@ -61,6 +61,13 @@ describe LogStash::Plugins::Registry do
61
61
  expect(registry.lookup("filter", "simple_plugin")).to eq(simple_plugin)
62
62
  end
63
63
 
64
+ it "should be possible to remove the plugin" do
65
+ registry.add(:filter, "simple_plugin", simple_plugin)
66
+ expect(registry.lookup("filter", "simple_plugin")).to eq(simple_plugin)
67
+ registry.remove(:filter, "simple_plugin")
68
+ expect { registry.lookup("filter", "simple_plugin") }.to raise_error(LoadError)
69
+ end
70
+
64
71
  it "doesn't add multiple time the same plugin" do
65
72
  plugin1 = Class.new
66
73
  plugin2 = Class.new
@@ -15,7 +15,9 @@ describe LogStash::QueueFactory do
15
15
  LogStash::Setting::Numeric.new("queue.checkpoint.acks", 1024),
16
16
  LogStash::Setting::Numeric.new("queue.checkpoint.writes", 1024),
17
17
  LogStash::Setting::Numeric.new("queue.checkpoint.interval", 1000),
18
- LogStash::Setting::String.new("pipeline.id", pipeline_id)
18
+ LogStash::Setting::String.new("pipeline.id", pipeline_id),
19
+ LogStash::Setting::PositiveInteger.new("pipeline.batch.size", 125),
20
+ LogStash::Setting::PositiveInteger.new("pipeline.workers", LogStash::Config::CpuCoreStrategy.maximum)
19
21
  ]
20
22
  end
21
23
 
@@ -72,9 +74,10 @@ describe LogStash::QueueFactory do
72
74
  context "when `queue.type` is `memory`" do
73
75
  before do
74
76
  settings.set("queue.type", "memory")
77
+ settings.set("pipeline.batch.size", 1024)
75
78
  end
76
79
 
77
- it "returns a `WrappedAckedQueue`" do
80
+ it "returns a `WrappedSynchronousQueue`" do
78
81
  queue = subject.create(settings)
79
82
  expect(queue).to be_kind_of(LogStash::Util::WrappedSynchronousQueue)
80
83
  queue.close
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
  require "spec_helper"
3
- require "logstash/util/environment_variables"
3
+ require "logstash/util/substitution_variables"
4
4
  require "logstash/settings"
5
5
  require "fileutils"
6
6
 
@@ -6,9 +6,7 @@ describe "LogStash::Util::JavaVersion" do
6
6
  subject(:mod) { LogStash::Util::JavaVersion }
7
7
 
8
8
  it "should get the current java version if we're on Java" do
9
- if LogStash::Environment.jruby?
10
- expect(LogStash::Util::JavaVersion.version).to be_a(String)
11
- end
9
+ expect(LogStash::Util::JavaVersion.version).to be_a(String)
12
10
  end
13
11
 
14
12
  it "should mark a bad beta version as bad" do
@@ -5,6 +5,8 @@ require "logstash/instrument/collector"
5
5
 
6
6
  describe LogStash::Util::WrappedSynchronousQueue do
7
7
 
8
+ subject {LogStash::Util::WrappedSynchronousQueue.new(5)}
9
+
8
10
  describe "queue clients" do
9
11
  context "when requesting a write client" do
10
12
  it "returns a client" do
@@ -18,15 +20,9 @@ describe LogStash::Util::WrappedSynchronousQueue do
18
20
  end
19
21
  end
20
22
 
21
- class DummyQueue < Array
22
- def take() shift(); end
23
- def poll(*) shift(); end
24
- end
25
-
26
23
  describe "WriteClient | ReadClient" do
27
- let(:queue) { DummyQueue.new }
28
- let(:write_client) { LogStash::Util::WrappedSynchronousQueue::WriteClient.new(queue)}
29
- let(:read_client) { LogStash::Util::WrappedSynchronousQueue::ReadClient.new(queue)}
24
+ let(:write_client) { subject.write_client }
25
+ let(:read_client) { subject.read_client }
30
26
 
31
27
  context "when reading from the queue" do
32
28
  let(:collector) { LogStash::Instrument::Collector.new }
@@ -64,16 +60,16 @@ describe LogStash::Util::WrappedSynchronousQueue do
64
60
 
65
61
  context "when we have item in the queue" do
66
62
  it "records the `duration_in_millis`" do
67
- batch = write_client.get_new_batch
68
- 5.times {|i| batch.push("value-#{i}")}
63
+ batch = []
64
+ 5.times {|i| batch.push(LogStash::Event.new({"message" => "value-#{i}"}))}
69
65
  write_client.push_batch(batch)
70
66
 
71
67
  read_batch = read_client.read_batch
72
68
  sleep(0.1) # simulate some work for the `duration_in_millis`
73
69
  # TODO: this interaction should be cleaned in an upcoming PR,
74
70
  # This is what the current pipeline does.
75
- read_client.add_filtered_metrics(read_batch)
76
- read_client.add_output_metrics(read_batch)
71
+ read_client.add_filtered_metrics(read_batch.filtered_size)
72
+ read_client.add_output_metrics(read_batch.filtered_size)
77
73
  read_client.close_batch(read_batch)
78
74
  store = collector.snapshot_metric.metric_store
79
75
 
@@ -94,26 +90,33 @@ describe LogStash::Util::WrappedSynchronousQueue do
94
90
  end
95
91
 
96
92
  it "appends batches to the queue" do
97
- batch = write_client.get_new_batch
98
- 5.times {|i| batch.push(LogStash::Event.new({"message" => "value-#{i}"}))}
93
+ batch = []
94
+ messages = []
95
+ 5.times do |i|
96
+ message = "value-#{i}"
97
+ batch.push(LogStash::Event.new({"message" => message}))
98
+ messages << message
99
+ end
99
100
  write_client.push_batch(batch)
100
101
  read_batch = read_client.read_batch
101
102
  expect(read_batch.size).to eq(5)
102
- i = 0
103
- read_batch.each do |data|
104
- expect(data.get("message")).to eq("value-#{i}")
103
+ read_batch.to_a.each do |data|
104
+ message = data.get("message")
105
+ expect(messages).to include(message)
106
+ messages.delete(message)
105
107
  # read_batch.cancel("value-#{i}") if i > 2 # TODO: disabled for https://github.com/elastic/logstash/issues/6055 - will have to properly refactor
106
- data.cancel if i > 2
107
- read_batch.merge(LogStash::Event.new({"message" => "generated-#{i}"})) if i > 2
108
- i += 1
108
+ if message.match /value-[3-4]/
109
+ data.cancel
110
+ read_batch.merge(LogStash::Event.new({ "message" => message.gsub(/value/, 'generated') }))
111
+ end
109
112
  end
110
113
  # expect(read_batch.cancelled_size).to eq(2) # disabled for https://github.com/elastic/logstash/issues/6055
111
- i = 0
114
+ received = []
112
115
  read_batch.each do |data|
113
- expect(data.get("message")).to eq("value-#{i}") if i < 3
114
- expect(data.get("message")).to eq("generated-#{i}") if i > 2
115
- i += 1
116
+ received << data.get("message")
116
117
  end
118
+ (0..2).each {|i| expect(received).to include("value-#{i}")}
119
+ (3..4).each {|i| expect(received).to include("generated-#{i}")}
117
120
  end
118
121
  end
119
122
  end
@@ -13,16 +13,12 @@ def block_ports(range)
13
13
  range.each do |port|
14
14
  begin
15
15
  server = TCPServer.new("localhost", port)
16
- Thread.new do
17
- client = server.accept rescue nil
18
- end
19
16
  servers << server
20
17
  rescue => e
21
18
  # The port can already be taken
22
19
  end
23
20
  end
24
21
 
25
- sleep(1)
26
22
  servers
27
23
  end
28
24
 
@@ -78,7 +74,8 @@ describe LogStash::WebServer do
78
74
  sleep(1)
79
75
 
80
76
  # We cannot use stop here, since the code is stuck in an infinite loop
81
- t.kill rescue nil
77
+ t.kill
78
+ t.join
82
79
 
83
80
  silence_warnings do
84
81
  STDERR = backup_stderr
@@ -107,7 +104,7 @@ describe LogStash::WebServer do
107
104
  expect(subject.address).to eq("localhost:10006")
108
105
 
109
106
  subject.stop
110
- t.kill rescue nil
107
+ t.join
111
108
  end
112
109
  end
113
110
 
@@ -54,6 +54,11 @@ def mock_pipeline_from_string(config_string, settings = LogStash::SETTINGS, metr
54
54
  LogStash::Pipeline.new(pipeline_config, metric)
55
55
  end
56
56
 
57
+ def mock_java_pipeline_from_string(config_string, settings = LogStash::SETTINGS, metric = nil)
58
+ pipeline_config = mock_pipeline_config(settings.get("pipeline.id"), config_string, settings)
59
+ LogStash::JavaPipeline.new(pipeline_config, metric)
60
+ end
61
+
57
62
  def mock_pipeline_config(pipeline_id, config_string = nil, settings = {})
58
63
  config_string = "input { stdin { id => '#{pipeline_id}' }}" if config_string.nil?
59
64
 
@@ -0,0 +1,97 @@
1
+ require "logstash/agent"
2
+ require "logstash/java_pipeline"
3
+ require "logstash/event"
4
+ require "stud/try"
5
+ require "rspec/expectations"
6
+ require "thread"
7
+
8
+ java_import org.logstash.common.SourceWithMetadata
9
+
10
+ module PipelineHelpers
11
+
12
+ class SpecSamplerInput < LogStash::Inputs::Base
13
+ config_name "spec_sampler_input"
14
+
15
+ def register
16
+ end
17
+
18
+ def run(queue)
19
+ unless @@event.nil?
20
+ queue.push_batch(@@event)
21
+ @@event = nil
22
+ end
23
+ end
24
+
25
+ def close
26
+ @@event = nil
27
+ end
28
+
29
+ def self.set_event(event)
30
+ @@event = event
31
+ end
32
+ end
33
+
34
+ class SpecSamplerOutput < LogStash::Outputs::Base
35
+ config_name "spec_sampler_output"
36
+
37
+ def register
38
+ @@seen = []
39
+ end
40
+
41
+ def multi_receive(events)
42
+ @@seen += events
43
+ end
44
+
45
+ def self.seen
46
+ @@seen
47
+ end
48
+ end
49
+
50
+ def sample_one(sample_event, &block)
51
+ name = sample_event.is_a?(String) ? sample_event : LogStash::Json.dump(sample_event)
52
+ name = name[0..50] + "..." if name.length > 50
53
+
54
+ before do
55
+ LogStash::PLUGIN_REGISTRY.add(:input, "spec_sampler_input", SpecSamplerInput)
56
+ LogStash::PLUGIN_REGISTRY.add(:output, "spec_sampler_output", SpecSamplerOutput)
57
+ end
58
+
59
+ describe "\"#{name}\"" do
60
+ let(:pipeline) do
61
+ settings = ::LogStash::SETTINGS.clone
62
+ settings.set_value("queue.drain", true)
63
+ settings.set_value("pipeline.workers", 1)
64
+ LogStash::JavaPipeline.new(
65
+ LogStash::Config::PipelineConfig.new(
66
+ LogStash::Config::Source::Local, :main,
67
+ SourceWithMetadata.new(
68
+ "config_string", "config_string",
69
+ "input { spec_sampler_input {} }\n" + config + "\noutput { spec_sampler_output {} }"
70
+ ), settings
71
+ )
72
+ )
73
+ end
74
+ let(:event) do
75
+ sample_event = [sample_event] unless sample_event.is_a?(Array)
76
+ next sample_event.collect do |e|
77
+ e = { "message" => e } if e.is_a?(String)
78
+ next LogStash::Event.new(e)
79
+ end
80
+ end
81
+
82
+ let(:results) do
83
+ SpecSamplerInput.set_event event
84
+ pipeline.run
85
+ SpecSamplerOutput.seen
86
+ end
87
+
88
+ after do
89
+ pipeline.close
90
+ end
91
+
92
+ subject {results.length > 1 ? results : results.first}
93
+
94
+ it("when processed", &block)
95
+ end
96
+ end
97
+ end
@@ -1,7 +1,10 @@
1
1
  ---
2
- logstash: 6.0.1
3
- logstash-core: 6.0.1
2
+ logstash: 6.1.0
3
+ logstash-core: 6.1.0
4
4
  logstash-core-plugin-api: 2.1.16
5
+
6
+ # jruby must reference a *released* version of jruby which can be downloaded from the official download url
7
+ # *and* for which jars artifacts are published for compile-time
5
8
  jruby:
6
9
  version: 9.1.13.0
7
10
  sha1: 815bac27d5daa1459a4477d6d80584f007ce6a68
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.0.1
4
+ version: 6.1.0
5
5
  platform: java
6
6
  authors:
7
7
  - Elastic
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-12-04 00:00:00.000000000 Z
11
+ date: 2017-12-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement
@@ -417,7 +417,9 @@ files:
417
417
  - lib/logstash/instrument/periodic_pollers.rb
418
418
  - lib/logstash/instrument/snapshot.rb
419
419
  - lib/logstash/instrument/wrapped_write_client.rb
420
+ - lib/logstash/java_filter_delegator.rb
420
421
  - lib/logstash/java_integration.rb
422
+ - lib/logstash/java_pipeline.rb
421
423
  - lib/logstash/json.rb
422
424
  - lib/logstash/logging.rb
423
425
  - lib/logstash/logging/json.rb
@@ -453,7 +455,6 @@ files:
453
455
  - lib/logstash/patches/exception_to_json.rb
454
456
  - lib/logstash/patches/profile_require_calls.rb
455
457
  - lib/logstash/patches/puma.rb
456
- - lib/logstash/patches/rubygems.rb
457
458
  - lib/logstash/patches/stronger_openssl_defaults.rb
458
459
  - lib/logstash/pipeline.rb
459
460
  - lib/logstash/pipeline_action.rb
@@ -465,6 +466,7 @@ files:
465
466
  - lib/logstash/pipeline_settings.rb
466
467
  - lib/logstash/plugin.rb
467
468
  - lib/logstash/plugins/hooks_registry.rb
469
+ - lib/logstash/plugins/plugin_factory.rb
468
470
  - lib/logstash/plugins/registry.rb
469
471
  - lib/logstash/queue_factory.rb
470
472
  - lib/logstash/runner.rb
@@ -482,7 +484,6 @@ files:
482
484
  - lib/logstash/util/dead_letter_queue_manager.rb
483
485
  - lib/logstash/util/decorators.rb
484
486
  - lib/logstash/util/duration_formatter.rb
485
- - lib/logstash/util/environment_variables.rb
486
487
  - lib/logstash/util/filetools.rb
487
488
  - lib/logstash/util/java_version.rb
488
489
  - lib/logstash/util/loggable.rb
@@ -492,7 +493,9 @@ files:
492
493
  - lib/logstash/util/prctl.rb
493
494
  - lib/logstash/util/retryable.rb
494
495
  - lib/logstash/util/safe_uri.rb
496
+ - lib/logstash/util/settings_helper.rb
495
497
  - lib/logstash/util/socket_peer.rb
498
+ - lib/logstash/util/substitution_variables.rb
496
499
  - lib/logstash/util/thread_dump.rb
497
500
  - lib/logstash/util/time_value.rb
498
501
  - lib/logstash/util/unicode_trimmer.rb
@@ -551,7 +554,9 @@ files:
551
554
  - spec/logstash/instrument/periodic_poller/load_average_spec.rb
552
555
  - spec/logstash/instrument/periodic_poller/os_spec.rb
553
556
  - spec/logstash/instrument/wrapped_write_client_spec.rb
557
+ - spec/logstash/java_filter_delegator_spec.rb
554
558
  - spec/logstash/java_integration_spec.rb
559
+ - spec/logstash/java_pipeline_spec.rb
555
560
  - spec/logstash/json_spec.rb
556
561
  - spec/logstash/legacy_ruby_event_spec.rb
557
562
  - spec/logstash/legacy_ruby_timestamp_spec.rb
@@ -609,6 +614,7 @@ files:
609
614
  - spec/support/helpers.rb
610
615
  - spec/support/matchers.rb
611
616
  - spec/support/mocks_classes.rb
617
+ - spec/support/pipeline/pipeline_helpers.rb
612
618
  - spec/support/shared_contexts.rb
613
619
  - spec/support/shared_examples.rb
614
620
  - versions-gem-copy.yml
@@ -637,7 +643,7 @@ requirements:
637
643
  - jar com.fasterxml.jackson.core:jackson-core, 2.9.1
638
644
  - jar com.fasterxml.jackson.core:jackson-databind, 2.9.1
639
645
  - jar com.fasterxml.jackson.core:jackson-annotations, 2.9.1
640
- - jar com.fasterxml.jackson.module:jackson-module-afterburner, 2.9.1
646
+ - jar org.codehaus.janino:janino, 3.0.7
641
647
  - jar com.fasterxml.jackson.dataformat:jackson-dataformat-cbor, 2.9.1
642
648
  rubyforge_project:
643
649
  rubygems_version: 2.6.13
@@ -693,7 +699,9 @@ test_files:
693
699
  - spec/logstash/instrument/periodic_poller/load_average_spec.rb
694
700
  - spec/logstash/instrument/periodic_poller/os_spec.rb
695
701
  - spec/logstash/instrument/wrapped_write_client_spec.rb
702
+ - spec/logstash/java_filter_delegator_spec.rb
696
703
  - spec/logstash/java_integration_spec.rb
704
+ - spec/logstash/java_pipeline_spec.rb
697
705
  - spec/logstash/json_spec.rb
698
706
  - spec/logstash/legacy_ruby_event_spec.rb
699
707
  - spec/logstash/legacy_ruby_timestamp_spec.rb
@@ -751,5 +759,6 @@ test_files:
751
759
  - spec/support/helpers.rb
752
760
  - spec/support/matchers.rb
753
761
  - spec/support/mocks_classes.rb
762
+ - spec/support/pipeline/pipeline_helpers.rb
754
763
  - spec/support/shared_contexts.rb
755
764
  - spec/support/shared_examples.rb