You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
collect/Cargo.toml

60 lines
2.3 KiB

[package]
name = "collect"
version = "0.2.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[features]
default = ["jemalloc", "memfile", "logging", "tracing/release_max_level_warn"] #, "memfile" ]
# TODO: mmap, memfd_create() ver
memfile = ["bitflags", "lazy_static", "stackalloc"]
# When unable to determine the size of the input, preallocate the buffer to a multiple of the system page-size before writing to it. This can save extra `ftruncate()` calls, but will also result in the buffer needing to be truncated to the correct size at the end if the sizes as not matched.
memfile-preallocate = ["memfile"]
# bytes: use `bytes` crate for collecting instead of `std::vec`
# Use jemalloc instead of system malloc.
#
# Decreases memory-handling function calls, resulting in less "used" memory and faster allocation speeds at the cost of mapping a huge amount of virtual memory.
jemalloc = ["jemallocator"]
# Remove all runtime logging code.
#
# The capturing of spantraces will still happen if `logging` is enabled.
disable-logging = [] #["tracing/max_level_off"] <-- no longer needed, would enable the `tracing` feature which we don't want.
# Capture spantraces
#
# Will cause a slowdown, but provide more information in the event of an error or when debugging.
logging = ["tracing", "tracing-subscriber", "tracing-error", "color-eyre/capture-spantrace"] #, "recolored" <- XXX doesn't work in tracing output for some reason...]
[profile.release]
opt-level = 3
lto = "fat"
codegen-units = 1
strip=true
[profile.symbols]
inherits="release"
#incremental=true
strip=false
[dependencies]
bytes = { version = "1.1.0", optional = true }
cfg-if = { version = "1.0.0" }
jemallocator = { version = "0.3.2", optional = true }
libc = "0.2.122"
tracing = { version = "0.1.33", features = ["attributes"], optional = true }
tracing-error = {version = "0.2.0", optional = true }
tracing-subscriber = { version = "0.3.11", features = ["tracing", "env-filter"], optional = true }
color-eyre = { version = "0.6.1", default-features=false }#, features = ["capture-spantrace"] }
recolored = { version = "1.9.3", optional = true }
memchr = "2.4.1"
lazy_format = "1.10.0"
bitflags = {version = "1.3.2", optional = true }
stackalloc = {version = "1.1.1", optional = true }
lazy_static = { version = "1.4.0", optional = true }