lib 0.0.4

A Rust foundation library organized around the built-in capabilities of the Java JDK and C#/.NET standard libraries.
Documentation
[package]
name = "lib"
version = "0.0.4"
edition = "2024"
license = "MIT OR Apache-2.0"
repository = "https://github.com/HCO168/rust_lib"
description = "A Rust foundation library organized around the built-in capabilities of the Java JDK and C#/.NET standard libraries."
readme = "README.md"
keywords = ["standard-library", "jdk", "dotnet", "utilities", "facade"]
categories = ["rust-patterns"]

[features]
default = ["errors", "random", "text", "time", "serialization", "encoding"]
full = [
    "async",
    "cli",
    "collections",
    "compression",
    "concurrency",
    "database",
    "encoding",
    "errors",
    "filesystem",
    "globalization",
    "logging",
    "math",
    "network",
    "random",
    "security",
    "serialization",
    "system",
    "text",
    "time",
]
async = ["dep:bytes", "dep:futures", "dep:tokio"]
cli = ["dep:clap"]
collections = ["dep:dashmap", "dep:indexmap", "dep:itertools"]
compression = ["dep:flate2", "dep:tar", "dep:zip"]
concurrency = ["dep:crossbeam", "dep:dashmap", "dep:parking_lot", "dep:rayon"]
database = ["async", "dep:sqlx"]
encoding = ["dep:base64", "dep:hex", "dep:url", "dep:uuid"]
errors = ["dep:anyhow", "dep:thiserror"]
filesystem = ["dep:glob", "dep:notify", "dep:tempfile", "dep:walkdir"]
globalization = ["dep:icu"]
logging = ["dep:log", "dep:tracing"]
math = ["dep:num-bigint", "dep:num-traits", "dep:rust_decimal"]
network = ["dep:bytes", "dep:http", "dep:reqwest", "dep:rustls", "dep:url"]
random = ["dep:rand"]
security = ["dep:ring", "dep:rustls"]
serialization = ["dep:quick-xml", "dep:serde", "dep:serde_json", "dep:toml"]
system = ["dep:libloading", "dep:sysinfo"]
text = ["dep:regex", "dep:unicode-segmentation"]
time = ["dep:chrono"]

[dependencies]
anyhow = { version = "1", optional = true }
base64 = { version = "0.22", optional = true }
bytes = { version = "1", optional = true }
chrono = { version = "0.4", features = ["serde"], optional = true }
clap = { version = "4", features = ["derive"], optional = true }
crossbeam = { version = "0.8", optional = true }
dashmap = { version = "6", optional = true }
flate2 = { version = "1", optional = true }
futures = { version = "0.3", optional = true }
glob = { version = "0.3", optional = true }
hex = { version = "0.4", optional = true }
http = { version = "1", optional = true }
icu = { version = "2.3", features = ["compiled_data"], optional = true }
indexmap = { version = "2", features = ["serde"], optional = true }
itertools = { version = "0.14", optional = true }
libloading = { version = "0.8", optional = true }
log = { version = "0.4", optional = true }
notify = { version = "8", optional = true }
num-bigint = { version = "0.4", features = ["serde"], optional = true }
num-traits = { version = "0.2", optional = true }
parking_lot = { version = "0.12", optional = true }
quick-xml = { version = "0.39", features = ["serialize"], optional = true }
rand = { version = "0.10", optional = true }
rayon = { version = "1", optional = true }
regex = { version = "1", optional = true }
reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls"], optional = true }
ring = { version = "0.17", optional = true }
rust_decimal = { version = "1", features = ["maths", "serde"], optional = true }
rustls = { version = "0.23", default-features = false, features = ["ring", "std", "tls12"], optional = true }
serde = { version = "1", features = ["derive"], optional = true }
serde_json = { version = "1", optional = true }
sqlx = { version = "0.9", default-features = false, features = ["all-databases", "chrono", "json", "macros", "migrate", "runtime-tokio", "rust_decimal", "tls-rustls-ring-native-roots", "uuid"], optional = true }
sysinfo = { version = "0.37", optional = true }
tar = { version = "0.4", optional = true }
tempfile = { version = "3", optional = true }
thiserror = { version = "2", optional = true }
tokio = { version = "1", features = ["full"], optional = true }
toml = { version = "0.9", optional = true }
tracing = { version = "0.1", optional = true }
unicode-segmentation = { version = "1", optional = true }
url = { version = "2", optional = true }
uuid = { version = "1", features = ["serde", "v4", "v7"], optional = true }
walkdir = { version = "2", optional = true }
zip = { version = "3", default-features = false, features = ["deflate"], optional = true }

[package.metadata.docs.rs]
all-features = true