plv 0.26.0

A terminal viewer and editor for CSV, TSV, JSONL, Parquet and DuckLake data
[package]
name = "plv"
version = "0.26.0"
edition = "2024"
rust-version = "1.95"
authors = ["Gabriel Gellner <gabrielgellner@gmail.com>"]
description = "A terminal viewer and editor for CSV, TSV, JSONL, Parquet and DuckLake data"
documentation = "https://docs.rs/plv"
repository = "https://github.com/gabrielgellner/plv"
homepage = "https://github.com/gabrielgellner/plv"
readme = "README.md"
license = "MIT"
keywords = ["csv", "parquet", "tui", "ducklake", "viewer"]
categories = ["command-line-utilities", "visualization", "database"]
exclude = [
    ".cargo/",
    ".github/",
    "CLAUDE.md",
    "cliff.toml",
    "justfile",
]

# cargo-binstall fetches the release tarball instead of compiling, which for
# plv is the difference between a download and a DuckDB build. Its default
# guesses at a URL do not match what the release workflow names — those put the
# target before the version — so the layout is spelled out rather than left to
# convention. The extension is written literally for the same reason: one less
# template variable whose expansion has to be taken on trust.
[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/v{ version }/{ name }-{ version }-{ target }.tar.gz"
bin-dir = "{ name }-{ version }-{ target }/{ bin }{ binary-ext }"
pkg-fmt = "tgz"

[dependencies]
anyhow = "1.0.102"
regex = "1"
sysinfo = { version = "0.39", default-features = false, features = ["system"] }
clap = { version = "4.6.0", features = ["derive"] }
color-eyre = "0.6.3"
crossterm = "0.29.0"
polars = { version = "0.55.2", features = ["lazy", "parquet", "strings", "regex"] }
ratatui = "0.30.0"
duckdb = { version = "1.10505.0", features = ["bundled"] }

# Read the optimization guideline for more details: https://ratatui.rs/recipes/apps/release-your-app/#optimizations
[profile.release]
codegen-units = 1
lto = true
opt-level = "s"
strip = true

[lib]
name = "plv"
path = "src/lib.rs"