Releases: redpanda-data/connect
v4.13.0
For installation instructions check out the getting started guide.
Added
- New
nats_kv
processor, input and output. - Field
partition
added to thekafka_franz
output, allowing for manual partitioning.
Fixed
- The
broker
output with the patternfan_out_sequential
will no longer abandon in-flight requests that are error blocked until the full shutdown timeout has occurred. - The
broker
input no longer reports itself as unavailable when a child input has intentionally closed. - Config unit tests that check for structured data should no longer fail in all cases.
- The
http_server
input with a custom address now supports path variables.
The full change log can be found here.
v4.12.1
For installation instructions check out the getting started guide.
Fixed
- Fixed a regression bug in the
nats
components where panics occur during a flood of messages. This issue was introduced in v4.12.0 (45f785a).
The full change log can be found here.
v4.12.0
For installation instructions check out the getting started guide.
Added
- Format
csv:x
added to theunarchive
processor. - Field
max_buffer
added to theaws_s3
input. - Field
open_message_type
added to thewebsocket
input. - The experimental
--watcher
cli flag now takes into account file deletions and new files that match wildcard patterns. - Field
dump_request_log_level
added to HTTP components. - New
couchbase
cache implementation. - New
compress
anddecompress
Bloblang methods. - Field
endpoint
added to thegcp_pubsub
input and output. - Fields
file_name
,file_extension
andrequest_id
added to thesnowflake_put
output. - Add interpolation support to the
path
field of thesnowflake_put
output. - Add ZSTD compression support to the
compression
field of thesnowflake_put
output. - New Bloblang method
concat
. - New
redis
ratelimit. - The
socket_server
input now supportstls
as a network type. - New bloblang function
timestamp_unix_milli
. - New bloblang method
ts_unix_milli
. - JWT based HTTP authentication now supports
EdDSA
. - New
flow_control
fields added to thegcp_pubsub
output. - Added bloblang methods
sign_jwt_hs256
,sign_jwt_hs384
andsign_jwt_hs512
- New bloblang methods
parse_jwt_hs256
,parse_jwt_hs384
,parse_jwt_hs512
. - The
open_telemetry_collector
tracer now automatically sets theservice.name
andservice.version
tags if they are not configured by the user. - New bloblang string methods
trim_prefix
andtrim_suffix
.
Fixed
- Fixed an issue where messages caught in a retry loop from inputs that do not support nacks (
generate
,kafka
,file
, etc) could be retried in their post-mutation form from theswitch
output rather than the original copy of the message. - The
sqlite
buffer should no longer printFailed to ack buffer message
logs during graceful termination. - The default value of the
conn_max_idle
field has been changed from 0 to 2 for allsql_*
components in accordance
to thedatabase/sql
docs. - The
parse_csv
bloblang method withparse_header_row
set tofalse
no longer produces rows that are of anunknown
type. - Fixed a bug where the
oracle
driver for thesql_*
components was returning timestamps which were getting marshalled into an empty JSON object instead of a string. - The
aws_sqs
input no longer backs off on subsequent empty requests when long polling is enabled. - It's now possible to mock resources within the main test target file in config unit tests.
- Unit test linting no longer incorrectly expects the
json_contains
predicate to contain a string value only. - Config component initialisation errors should no longer show nested path annotations.
- Prevented panics from the
jq
processor when querying invalid types. - The
jaeger
tracer no longer emits theservice.version
tag automatically if the user sets theservice.name
tag explicitly. - The
int64()
,int32()
,uint64()
anduint32()
bloblang methods can now infer the number base as documented here. - The
mapping
andmutation
processors should provide metrics and tracing events again. - Fixed a data race in the
redis_streams
input. - Upgraded the Redis components to
github.com/redis/go-redis/v9
.
The full change log can be found here.
v4.11.0
For installation instructions check out the getting started guide.
Added
- Field
default_encoding
added to theparquet_encode
processor. - Field
client_session_keep_alive
added to thesnowflake_put
output. - Bloblang now supports metadata access via
@foo
syntax, which also supports arbitrary values. - TLS client certs now support both PKCS#1 and PKCS#8 encrypted keys.
- New
redis_script
processor. - New
wasm
processor. - Fields marked as secrets will no longer be printed with
benthos echo
or debug HTTP endpoints. - Add
no_indent
parameter to theformat_json
bloblang method. - New
format_xml
bloblang method. - New
batched
higher level input type. - The
gcp_pubsub
input now supports optionally creating subscriptions. - New
sqlite
buffer. - Bloblang now has
int64
,int32
,uint64
anduint32
methods for casting explicit integer types. - Field
application_properties_map
added to theamqp1
output. - Param
parse_header_row
,delimiter
andlazy_quotes
added to theparse_csv
bloblang method. - Field
delete_on_finish
added to thecsv
input. - Metadata fields
header
,path
,mod_time_unix
andmod_time
added to thecsv
input. - New
couchbase
processor. - Field
max_attempts
added to thensq
input. - Messages consumed by the
nsq
input are now enriched with metadata. - New Bloblang method
parse_url
.
Fixed
- Fixed a regression bug in the
mongodb
processor where message errors were not set any more. This issue was introduced in v4.7.0 (64eb72). - The
avro-ocf:marshaler=json
input codec now omits unexpected logical type fields. - Fixed a bug in the
sql_insert
output (see commit c6a71e9) where transaction-based drivers (clickhouse
andoracle
) would fail to roll back an in-progress transaction if any of the messages caused an error. - The
resource
input should no longer block the first layer of graceful termination.
Changed
- The
catch
method now defines the context of argument mappings to be the string of the caught error. In previous cases the context was undocumented, vague and would often bind to the outer context. It's still possible to reference this outer context by capturing the error (e.g..catch(_ -> this)
). - Field interpolations that fail due to mapping errors will no longer produce placeholder values and will instead provide proper errors that result in nacks or retries similar to other issues.
The full change log can be found here.
v4.11.0-rc1
For installation instructions check out the getting started guide.
Added
- Field
default_encoding
added to theparquet_encode
processor. - Field
client_session_keep_alive
added to thesnowflake_put
output. - Bloblang now supports metadata access via
@foo
syntax, which also supports arbitrary values. - TLS client certs now support both PKCS#1 and PKCS#8 encrypted keys.
- New
redis_script
processor. - New
wasm
processor. - Fields marked as secrets will no longer be printed with
benthos echo
or debug HTTP endpoints. - Add
no_indent
parameter to theformat_json
bloblang method. - New
format_xml
bloblang method. - New
batched
higher level input type. - The
gcp_pubsub
input now supports optionally creating subscriptions. - New
sqlite
buffer. - Bloblang now has
int64
,int32
,uint64
anduint32
methods for casting explicit integer types. - Field
application_properties_map
added to theamqp1
output. - Param
parse_header_row
,delimiter
andlazy_quotes
added to theparse_csv
bloblang method. - Field
delete_on_finish
added to thecsv
input. - Metadata fields
header
,path
,mod_time_unix
andmod_time
added to thecsv
input. - New
couchbase
processor. - Field
max_attempts
added to thensq
input. - Messages consumed by the
nsq
input are now enriched with metadata. - New Bloblang method
parse_url
.
Fixed
- Fixed a regression bug in the
mongodb
processor where message errors were not set any more. This issue was introduced in v4.7.0 (64eb72). - The
avro-ocf:marshaler=json
input codec now omits unexpected logical type fields. - Fixed a bug in the
sql_insert
output (see commit c6a71e9) where transaction-based drivers (clickhouse
andoracle
) would fail to roll back an in-progress transaction if any of the messages caused an error. - The
resource
input should no longer block the first layer of graceful termination.
Changed
- The
catch
method now defines the context of argument mappings to be the string of the caught error. In previous cases the context was undocumented, vague and would often bind to the outer context. It's still possible to reference this outer context by capturing the error (e.g..catch(_ -> this)
). - Field interpolations that fail due to mapping errors will no longer produce placeholder values and will instead provide proper errors that result in nacks or retries similar to other issues.
The full change log can be found here.
v4.10.0
For installation instructions check out the getting started guide.
Added
- The
nats_jetstream
input now adds a range of useful metadata information to messages. - Field
transaction_type
added to theazure_table_storage
output, which deprecates the previousinsert_type
field and supports interpolation functions. - Field
logged_batch
added to thecassandra
output. - All
sql
components now support Snowflake. - New
azure_table_storage
input. - New
sql_raw
input. - New
tracing_id
bloblang function. - New
with
bloblang method. - Field
multi_header
added to thekafka
andkafka_franz
inputs. - New
cassandra
input. - New
base64_encode
andbase64_decode
functions for the awk processor. - Param
use_number
added to theparse_json
bloblang method. - Fields
init_statement
andinit_files
added to all sql components. - New
find
andfind_all
bloblang array methods.
Fixed
- The
gcp_cloud_storage
output no longer ignores errors when closing a written file, this was masking issues when the target bucket was invalid. - Upgraded the
kafka_franz
input and output to use github.com/twmb/[email protected] since some bug fixes were made recently. - Fixed an issue where a
read_until
child input with processors affiliated would block graceful termination. - The
--labels
linting option no longer flags resource components.
The full change log can be found here.
v4.9.1
For installation instructions check out the getting started guide.
Added
- Go API: A new
BatchError
type added for distinguishing errors of a given batch.
Fixed
- Rolled back
kafka
input and output underlying sarama client library to fix a regression introduced in 4.9.0 😅 whereinvalid configuration (Consumer.Group.Rebalance.GroupStrategies and Consumer.Group.Rebalance.Strategy cannot be set at the same time)
errors would prevent consumption under certain configurations. We've decided to roll back rather than upgrade as a breaking API change was introduced that could cause issues for Go API importers (more info here: IBM/sarama#2358).
The full change log can be found here.
v4.9.0
For installation instructions check out the getting started guide.
Added
- New
parquet
input for reading a batch of Parquet files from disk. - Field
max_in_flight
added to theredis_list
input.
Fixed
- Upgraded
kafka
input and output underlying sarama client library to fix a regression introduced in 4.7.0 whereThe requested offset is outside the range of offsets maintained by the server for the given topic/partition
errors would prevent consumption of partitions. - The
cassandra
output now inserts logged batches of data rather than the less efficient (and unnecessary) unlogged form.
The full change log can be found here.
v4.8.0
For installation instructions check out the getting started guide.
Added
- All
sql
components now support Oracle DB.
Fixed
- All SQL components now accept an empty or unspecified
args_mapping
as an alias for no arguments. - Field
unsafe_dynamic_query
added to thesql_raw
output. - Fixed a regression in 4.7.0 where HTTP client components were sending duplicate request headers.
The full change log can be found here.
v4.7.0
For installation instructions check out the getting started guide.
Added
- Field
avro_raw_json
added to theschema_registry_decode
processor. - Field
priority
added to thegcp_bigquery_select
input. - The
hash
bloblang method now supportscrc32
. - New
tracing_span
bloblang function. - All
sql
components now support SQLite. - New
beanstalkd
input and output. - Field
json_marshal_mode
added to themongodb
input. - The
schema_registry_encode
andschema_registry_decode
processors now support Basic, OAuth and JWT authentication.
Fixed
- The streams mode
/ready
endpoint no longer returns status503
for streams that gracefully finished. - The performance of the bloblang
.explode
method now scales linearly with the target size. - The
influxdb
andlogger
metrics outputs should no longer mix up tag names. - Fix a potential race condition in the
read_until
connect check on terminated input. - The
parse_parquet
bloblang method andparquet_decode
processor now automatically parseBYTE_ARRAY
values as strings when the logical type is UTF8. - The
gcp_cloud_storage
output now correctly cleans up temporary files on error conditions when the collision mode is set to append.
The full change log can be found here.