We only depended on it transitively in the past, this makes it explicit.
This caused an issue in the google pubsub plugins, reported here: https://github.com/elastic/logstash/issues/9592
In the future, this will be a non-concern when your java plugin API launch with classloader isolation.
Fixes#9622
* Created `org.logstash.Logstash` as entrypoint
* Safely handle `Ruby` runtime (which sadly is still a singleton, moving away from that will require a few iterations on top of this)
* Adjusted `bat` and `sh` entry point wrappers
* Verified manually that performance is unchanged (i.e. all Java opts are still loaded properly)
* Flattened `.jar` path to make it a little less bothersome to build the `-cp` string
* Retained ability to load jars from Ruby via the global `$LS_JARS_LOADED` variable hack, to keep plugin specs that load LS as a `.gem` functional (like e.g. the ITs in LS itself)
* No need for the gem jars magic anymore, the downloading and moving into place of jars is now all handled by Gradle
Fixes#8161
final (I hope) fixes for consolidated versioning.
After testing with rake artifact:zip, need to try both files.
Add desc to rake test:install-* tasks, tired of
not seeing them in rake -vT
changes requested via review
Fixes#8373
This change moves the definition of the counters and gauges from Ruby to Java, providing a Ruby bridge that allows support for Ruby duck typing to Java strict typing.
This change also moves the serialzation from JRuby (Jackson) to Java (Jackson).
This change also removes the decrement from counter api and requires counters start at zero. This helps to allowing for reliable aggregrations over time.
This change removes the base Ruby class for metrics, and replaces with base Java class.
This change removes the to_hash method (no known usages).
This change also has minor changes to the Ruby type() and inspect() methods.
Fixes#7509Fixes#7595
This change to ensure that Java and JRuby agree upon the version of Jackson. This downgrades Java from 2.7.4 to 2.7.3 (which is the JRuby version).
Fixes: #6781Fixes#7614
We have multiple places to declare the jruby version, this commit
centralize everything into the `version.yml` file. This is now used by
the ruby part and the gradle build file to correctly fetch the jruby
library.
Fixes#7434
Remove static method in ByteBufferPageIO, replacing with static test helper method to move
the required functionality to a single place.
Cleans up HeadPageTest, using try... with resources in place of explicit, and
potentially missed, close() calls.
Adds elastic/securemock mocking framework dependency
Resolves#6594Fixes#7268
This library provides a "log4j 1.2"-like API from the log4j2 library.
We don't seem to use this, and including it seems to be the cause of the
Logstash log4j input rejecting log4j 1.x's SocketAppender with this
message:
org.apache.log4j.spi.LoggingEvent; class invalid for deserialization
The origin of this error is that log4j2's log4j-1.2-api defines
LoggingEvent without `implements Serializable`.
This commit also includes regenerated gemspec_jars.rb and
logstash-core_jars.rb.
Reference: https://github.com/logstash-plugins/logstash-input-log4j/issues/36Fixes#6309