For installation instructions check out the getting started guide.
New
- New (experimental) Apache Pulsar input and output.
- Field
codec
added to thesocket
output. - New Bloblang method
map_each_key
. - General config linting improvements.
- Bloblang mappings and interpolated fields within configs are now compile checked during linting.
- New output level
metadata.exclude_prefixes
config field for restricting metadata values sent to the following outputs:kafka
,aws_s3
,amqp_0_9
,redis_streams
,aws_sqs
,gcp_pubsub
. - All NATS components now have
tls
support. - Bloblang now supports context capture in query lambdas.
- New subcommand
benthos blobl server
that hosts a Bloblang editor web application. - New (experimental)
mongodb
output, cache and processor. - New (experimental)
gcp_cloud_storage
input and output. - Field
batch_as_multipart
added to thehttp_client
output. - Inputs, outputs, processors, caches and rate limits now have a component level config field
label
, which sets the metrics and logging prefix. - Resources can now be declared in the new
<component>_resources
fields at the root of config files, the oldresources.<component>s.<label>
style is still valid for backwards compatibility reasons. - Bloblang mappings now support importing the entirety of a map from a path using
from "<path>"
syntax.
Fixed
- Corrected ack behaviour for the beta
azure_queue_storage
input. - Bloblang compressed arithmetic expressions with field names (
foo+bar
) now correctly parse. - Fixed throughput issues with the
aws_sqs
input. - Prevented using the
root
keyword within Bloblang queries, returning an error message explaining alternative options. Eventuallyroot
references within queries will be fully supported and so returning clear errors messages is a temporary fix. - Increased the offset commit API version used by the
kafka
input to v0.8.2 when consuming explicit partitions.
Changed
- Go API: Component implementations now require explicit import from
./public/components/all
in order to be invokable. This should be done automatically at all plugin and custom build entry points. If, however, you notice that your builds have begun complaining that known components do not exist then you will need to explicitly import the package with_ "github.com/Jeffail/benthos/v3/public/components/all"
, if this is the case then please report it as an issue so that it can be dealt with.
The full change log can be found here.