[package] name = "punchcard" version = "0.10.5" edition = "2021" authors = ["Campbell M. Cole "] description = "A CLI tool for tracking work-from-home hours." license = "AGPL-3.0-or-later" repository = "https://github.com/campbellcole/punchcard" categories = [ "command-line-utilities", "date-and-time", "finance", "visualization", ] homepage = "https://github.com/campbellcole/punchcard" keywords = [ "work-from-home", "time-tracking", "time-management", "punchcard", "hours-tracker", ] exclude = [ "flake.*", "**/*.sh", ".envrc", ".env.example", "/.vscode", "/assets", ] [dependencies] chrono = { version = "0.4.24", features = ["serde"] } chrono-tz = { version = "0.8.2" } clap = { version = "4.3", features = ["derive", "env"] } clap_complete_command = "0.5.1" color-eyre = "0.6.2" comfy-table = "7.0.1" comrak = "0.20.0" csv = "1.2.1" dirs = "5.0.1" dotenvy = "0.15.7" humantime = "2.1.0" iana-time-zone = "0.1.56" owo-colors = "4.0.0" polars = { version = "0.36.2", default-features = false, features = [ "csv", # for reading/writing CSV files "lazy", # for LazyFrame "timezones", # for interpreting timezones "temporal", # for operating on temporal data "diff", # for diffing rows to find durations "dynamic_group_by", # for resampling by week "strings", # for parsing strings to dates "horizontal_concat", # temporary fix for https://github.com/pola-rs/polars/issues/13684 ] } rand = { version = "0.8.5", optional = true } serde = { version = "1", features = ["derive"] } snailquote = "0.3.1" temp-dir = "0.1.11" thiserror = "1.0.40" tracing = "0.1.37" tracing-error = "0.2.0" tracing-subscriber = { version = "0.3.17", features = ["env-filter"] } [target.'cfg(not(target_env = "msvc"))'.dependencies] jemallocator = "0.5" [features] default = ["performant", "nightly"] stable = ["performant"] debug = ["generate_test_data", "nightly"] # enables the generation of test data generate_test_data = ["rand"] nightly = ["polars/nightly"] performant = ["polars/performant"] [profile.release] lto = true opt-level = "s" codegen-units = 16