## 4.4.1 - Fixed issue where a `field_split_pattern` containing a literal backslash failed to match correctly [#87](https://github.com/logstash-plugins/logstash-filter-kv/issues/87) ## 4.4.0 - Changed timeout handling using the Timeout class [#84](https://github.com/logstash-plugins/logstash-filter-kv/pull/84) ## 4.3.3 - Fixed asciidoc formatting in docs ## 4.3.2 - Resolved potential race condition in pipeline shutdown where the timeout enforcer could be shut down while work was still in-flight, potentially leading to stuck pipelines. - Resolved potential race condition in pipeline shutdown where work could be submitted to the timeout enforcer after it had been shutdown, potentially leading to stuck pipelines. ## 4.3.1 - Fixed asciidoc formatting in documentation [#81](https://github.com/logstash-plugins/logstash-filter-kv/pull/81) ## 4.3.0 - Added a timeout enforcer which prevents inputs that are pathological against the generated parser from blocking the pipeline. By default, timeout is a generous 30s, but can be configured or disabled entirely with the new `timeout_millis` and `tag_on_timeout` directives ([#79](https://github.com/logstash-plugins/logstash-filter-kv/pull/79)) - Made error-handling configurable with `tag_on_failure` directive. ## 4.2.1 - Fixes performance regression introduced in 4.1.0 ([#70](https://github.com/logstash-plugins/logstash-filter-kv/issues/70)) ## 4.2.0 - Added `whitespace => strict` mode, which allows the parser to behave more predictably when input is known to avoid unnecessary whitespace. - Added error handling, which tags the event with `_kv_filter_error` if an exception is raised while handling an event instead of allowing the plugin to crash. ## 4.1.2 - bugfix: improves trim_key and trim_value to trim any _sequence_ of matching characters from the beginning and ends of the corresponding keys and values; a previous implementation limitited trim to a single character from each end, which was surprising. - bugfix: fixes issue where we can fail to correctly break up a sequence that includes a partially-quoted value followed by another fully-quoted value by slightly reducing greediness of quoted-value captures. ## 4.1.1 - bugfix: correctly handle empty values between value separator and field separator (#58) ## 4.1.0 - feature: add option to split fields and values using a regex pattern (#55) ## 4.0.3 - Update gemspec summary ## 4.0.2 - Fix some documentation issues ## 4.0.0 - breaking: trim and trimkey options are renamed to trim_value and trim_key - bugfix: trim_value and trim_key options now remove only leading and trailing characters (#10) - feature: new options remove_char_value and remove_char_key to remove all characters from keys/values whatever their position ## 3.1.1 - internal,deps: Relax constraint on logstash-core-plugin-api to >= 1.60 <= 2.99 ## 3.1.0 - Adds :transform_value and :transform_key options to lowercase/upcase or capitalize all keys/values ## 3.0.1 - internal: Republish all the gems under jruby. ## 3.0.0 - internal,deps: Update the plugin to the version 2.0 of the plugin api, this change is required for Logstash 5.0 compatibility. See https://github.com/elastic/logstash/issues/5141 ## 2.0.7 - feature: With include_brackets enabled, angle brackets (\< and \>) are treated the same as square brackets and parentheses, making it easy to parse strings like "a=\ c=\". - feature: An empty value_split option value now gives a useful error message. ## 2.0.6 - internal,deps: Depend on logstash-core-plugin-api instead of logstash-core, removing the need to mass update plugins on major releases of logstash ## 2.0.5 - internal,deps: New dependency requirements for logstash-core for the 5.0 release ## 2.0.4 - bugfix: Fields without values could claim the next field + value under certain circumstances. Reported in #22 ## 2.0.3 - bugfix: fixed short circuit expressions, some optimizations, added specs, PR #20 - bugfix: fixed event field assignment, PR #21 ## 2.0.0 - internal: Plugins were updated to follow the new shutdown semantic, this mainly allows Logstash to instruct input plugins to terminate gracefully, instead of using Thread.raise on the plugins' threads. Ref: https://github.com/elastic/logstash/pull/3895 - internal,deps: Dependency on logstash-core update to 2.0 ## 1.1.0 - feature: support spaces between key and value_split, support brackets and recursive option.