[package] name = "safekeeper" version = "0.1.0" edition = "2024" license.workspace = true [features] default = [] # Enables test-only APIs, incuding failpoints. In particular, enables the `fail_point!` macro, # which adds some runtime cost to run tests on outage conditions testing = ["fail/failpoints"] benchmarking = [] [dependencies] async-stream.workspace = true anyhow.workspace = true byteorder.workspace = true bytes.workspace = true camino.workspace = true camino-tempfile.workspace = true chrono.workspace = true clap = { workspace = true, features = ["derive"] } crc32c.workspace = true fail.workspace = true hex.workspace = true humantime.workspace = true http.workspace = true hyper0.workspace = true itertools.workspace = true jsonwebtoken.workspace = true futures.workspace = true once_cell.workspace = true parking_lot.workspace = true pageserver_api.workspace = true postgres-protocol.workspace = true pprof.workspace = true rand.workspace = true regex.workspace = true reqwest = { workspace = true, features = ["json"] } rustls.workspace = true scopeguard.workspace = true serde.workspace = true serde_json.workspace = true smallvec.workspace = true strum.workspace = true strum_macros.workspace = true thiserror.workspace = true tikv-jemallocator.workspace = true tokio = { workspace = true, features = ["fs"] } tokio-io-timeout.workspace = true tokio-postgres.workspace = true tokio-rustls.workspace = true tokio-tar.workspace = true tokio-util = { workspace = true } tracing.workspace = true url.workspace = true metrics.workspace = true pem.workspace = true postgres_backend.workspace = true postgres_ffi.workspace = true postgres_ffi_types.workspace = true postgres_versioninfo.workspace = true pq_proto.workspace = true remote_storage.workspace = true safekeeper_api.workspace = true safekeeper_client.workspace = true sha2.workspace = true sd-notify.workspace = true storage_broker.workspace = true tokio-stream.workspace = true http-utils.workspace = true utils.workspace = true wal_decoder.workspace = true env_logger.workspace = true workspace_hack.workspace = true [dev-dependencies] criterion.workspace = true itertools.workspace = true walproposer.workspace = true rand.workspace = true desim.workspace = true tracing.workspace = true tracing-subscriber = { workspace = true, features = ["json"] } [[bench]] name = "receive_wal" harness = false required-features = ["benchmarking"]