product-os-utilities 0.0.23

Product OS : Utilities provides a suite of features to support the Product OS set of packages including security tools, text manipulation, data manipulation and generalisation and logging, networking and file management tools.
Documentation
[package]
name = "product-os-utilities" # name - The name of the package.
version = "0.0.23" # version - The version of the package.
authors = ["Jeremy de Oliveira-Kumar <eremyj@gmail.com>"] # authors - The authors of the package.
edition = "2021" # edition - The Rust edition. 2021
rust-version = "1.69" # rust-version - The minimal supported Rust version. min 1.69
description = "Product OS : Utilities provides a suite of features to support the Product OS set of packages including security tools, text manipulation, data manipulation and generalisation and logging, networking and file management tools." # description - A description of the package.
# documentation = "" # documentation - URL of the package documentation.
readme = "readme.md" # readme - Path to the package’s README file.  Use https://www.makeareadme.com/
# homepage = "" # homepage - URL of the package homepage.
# repository = "" # repository - URL of the package source repository.
license = "AGPL-3.0-only" # license - The package license.
# license-file = "license.txt" # license-file - Path to the text of the license.  Use https://choosealicense.com/
keywords = ["product-os"] # keywords - Keywords for the package.
categories = [] # categories - Categories of the package. https://crates.io/category_slugs
# workspace = "" # workspace - Path to the workspace for the package.
build = false # build - Path to the package build script.  default "build.rs" or specify
# links = "" # links - Name of the native library the package links with.
exclude = [] # exclude - Files to exclude when publishing.
include = [] # include - Files to include when publishing.
# publish = [] # publish - Can be used to prevent publishing the package. false to prevent publish, list of registries otherwise
# default-run = "" # default-run - The default binary to run by cargo run.
autobins = true # autobins - Disables binary auto discovery.
autoexamples = true # autoexamples - Disables example auto discovery.
autotests = true # autotests - Disables test auto discovery.
autobenches = true # autobenches - Disables bench auto discovery.
resolver = "2" # resolver - Sets the dependency resolver to use.  Use 2 with 2021, 1 prior

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
no-std-compat = { version = "0.4.1", features = ["alloc"], optional = false }

tracing = { version = "0.1.41", features = [], default-features = false, optional = true }
tracing-subscriber = { version = "0.3.19", features = [], default-features = false, optional = true }

serde = { version = "1.0.217", features = ["derive"], default-features = false, optional = false } # Support for serialize/deserialize objects
serde_json = { version = "1.0.134", features = [], default-features = false, optional = true }
serde_yaml = { version = "0.9.33", features = [], default-features = false, optional = true }
serde_xml = { version = "0.9.1", features = [], default-features = false, optional = true } #XML data representation
serde_with = { version = "3.12.0", features = [], default-features = false, optional = true }

regex = { version = "1.11.1", features = ["unicode-perl", "unicode-case"], default-features = false, optional = true }
chrono = { version = "0.4.39", features = [], default-features = false, optional = true }
mime-sniffer = { version = "0.1.2", features = [], default-features = false, optional = true }
content_inspector = { version = "0.2.4", features = [], default-features = false, optional = true }
xml-rs = { version = "0.8.24", features = [], default-features = false, optional = true }

walkdir = { version = "2.5.0", features = [], default-features = false, optional = true }
parking_lot = { version = "0.12.3", features = ["send_guard"], default-features = false, optional = true }

dns-lookup = { version = "2.0.4", features = [], default-features = false, optional = true }
pnet = { version = "0.34.0", features = [], default-features = true, optional = true }

base64 = { version = "0.22.1", features = [], default-features = true, optional = true }

product-os-net = { version = ">= 0.0.1", features = [], default-features = true, optional = true }
product-os-security = { version = ">= 0.0.1", features = ["generator", "byte_vector"], default-features = false, optional = false }


[patch.crates-io]
product-os-net = { path = "../product-os-net", features = [], default-features = true, optional = true }
product-os-security = { path = "../product-os-security", features = ["generator", "byte_vector"], default-features = false, optional = false }



[features]
default = ["no-std-compat/std", "product-os-security/default"]
all = ["default", "files", "logging", "networking", "json", "content", "xml", "text", "yaml", "data"]
logging = ["tracing", "tracing-subscriber/alloc"]
networking = ["product-os-net"]
json = ["regex", "chrono/alloc", "serde_with/alloc", "serde_json/alloc"]
text = []

# Requires std
data = ["json", "yaml", "xml", "text", "tracing", "base64", "chrono", "chrono/serde"]
xml = ["xml-rs"]
yaml = ["serde_yaml", "text"]
content = ["mime-sniffer", "content_inspector"]
logging_std = ["tracing-subscriber/fmt", "tracing"]
networking_std = ["product-os-net/std", "dns-lookup", "tracing"]
networking_advanced = ["pnet", "tracing", "product-os-net"]
files = ["no-std-compat/std", "walkdir", "parking_lot", "tracing"]

[workspace]