Cargo Features

[dependencies]
vrl = { version = "0.19.0", default-features = false, features = ["compiler", "value", "diagnostic", "path", "parser", "parsing", "core", "string_path", "datadog", "datadog_filter", "datadog_grok", "datadog_search", "cli", "test_framework", "lua", "float_roundtrip", "arbitrary", "proptest", "test", "stdlib"] }
default = compiler, core, datadog, diagnostic, parser, path, stdlib, value

These default features are set whenever vrl is added without default-features = false somewhere in the dependency tree.

compiler default parsing? stdlib test_framework? = diagnostic, parser, path, value

Main features (on by default)

Enables bytes, chrono, chrono-tz, dyn-clone, indoc, lalrpop-util ^0.21, ordered-float, paste, regex, serde, snafu, and thiserror ^1

Affects vrl::compiler

value default compiler core datadog_grok? parser parsing? path = path

Enables bytes, chrono, ordered-float, regex, and serde_json

Affects vrl::value

diagnostic default compiler parser

Enables codespan-reporting and termcolor

Affects vrl::diagnostic

path default compiler datadog_filter? parser value = value

Enables once_cell, regex, serde, and snafu

Affects vrl::path

parser default compiler = diagnostic, path, value

Enables lalrpop-util ^0.21, ordered-float, and thiserror ^1

Affects vrl::parser

parsing datadog_grok? stdlib = compiler, value

Enables nom, regex, roxmltree, rust_decimal, and url

Affects vrl::parsing

core default stdlib = value

Enables nom and snafu

Affects vrl::core

string_path test?
datadog default stdlib = datadog_filter, datadog_grok, datadog_search

Datadog related features (on by default)

datadog_filter datadog = datadog_search, path

Enables dyn-clone and regex

Affects datadog::filter

datadog_grok datadog = parsing, value

Enables chrono, chrono-tz, fancy-regex ^0.13.0, lalrpop-util ^0.21, nom, onig, peeking_take_while, percent-encoding, serde_json, and thiserror ^1

Affects datadog::grok

Enables itertools, once_cell, pest, pest_derive, regex, and serde

Affects datadog::search

cli = stdlib

Features that aren't used as often (default off)

Enables clap, exitcode, prettytable-rs, rustyline ^14, serde_json, thiserror ^1, and webbrowser

Affects vrl::cli

test_framework = compiler

Enables ansi_term, prettydiff ^0.7, and serde_json

ansi_term:

Optional dependencies

Affects vrl::test

lua

Enables mlua ^0.9

float_roundtrip

Enables float_roundtrip of serde_json

serde_json:

Use sufficient precision when parsing fixed precision floats from JSON to ensure that they maintain accuracy when round-tripped through JSON. This comes at an approximately 2x performance cost for parsing floats compared to the default best-effort precision.

Unlike arbitrary_precision, this feature makes f64 -> JSON -> f64 produce output identical to the input.

arbitrary

Enables arbitrary and quickcheck

proptest

Enables proptest and proptest-derive ^0.4

test = string_path

Internal testing utilities (used for benches)

stdlib default cli? = compiler, core, datadog, parsing

All stdlib functions

Enables aes, base16, base62, base64, cbc, cfb-mode, chacha20poly1305, charset, cidr-utils, community-id, convert_case, crypto_secretbox, and csv

aes:

Cryptography

and ctr, data-encoding, digest, dns-lookup, domain, flate2, grok, hex, hmac, hostname, iana-time-zone, idna ^0.5, indexmap, influxdb-line-protocol, md-5, nom, ofb, once_cell, and percent-encoding

ctr:

Cryptography - Block Modes

and prost, prost-reflect, psl, psl-types, publicsuffix, quoted_printable, rand, roxmltree, rust_decimal, seahash, sha-1, sha2, sha3, snap, strip-ansi-escapes, syslog_loose, tokio, uaparser, url, utf8-width, uuid, woothee, and zstd

prost:

Protobuf support.

Affects vrl::stdlib, vrl::protobuf, stdlib::all