[package] # Metadata about the package. authors = ["The DateTime (DTT) contributors"] build = "build.rs" categories = ["date-and-time", "parser-implementations", "value-formatting"] description = """ A Rust library for parsing, validating, manipulating, and formatting dates and times. """ documentation = "https://docs.rs/dtt" edition = "2021" exclude = ["/.git/*", "/.github/*", "/.gitignore", "/.vscode/*"] homepage = "https://dttlib.com/" keywords = ["dtt", "date", "datetime", "time", "timezone"] license = "MIT OR Apache-2.0" name = "dtt" readme = "README.md" repository = "https://github.com/sebastienrousseau/dtt.git" rust-version = "1.56.0" version = "0.0.8" # Included and excluded files. include = [ "/CONTRIBUTING.md", "/LICENSE-APACHE", "/LICENSE-MIT", "/benches/**", "/build.rs", "/Cargo.toml", "/examples/**", "/README.md", "/src/**", "/tests/**", ] [[bench]] # [[bench]] sections define benchmarks. name = "benchmark" harness = false path = "benches/criterion.rs" [profile.bench] # Profile for benchmarks. debug = true [dependencies] # Dependencies are only used for building. lazy_static = "1.5.0" paste = "1.0" regex = "1.10" serde = { version = "1.0", features = ["derive"] } serde_derive = "1.0" serde_json = "1.0" time = { version = "0.3", features = ["serde", "formatting", "parsing", "macros"] } thiserror = "1.0" [dev-dependencies] # Development dependencies are only used for testing and building. assert_cmd = "2.0" criterion = "0.5" serde_json = "1.0" [build-dependencies] # Dependencies for build scripts. version_check = "0.9.4" # Check the Rust version used to compile the package. [lib] # Library configuration. crate-type = ["lib"] name = "dtt" path = "src/lib.rs" [features] # No default features default = [] bench = [] [package.metadata.docs.rs] # Specify arguments for rustdoc to enhance documentation quality. rustdoc-args = [ "--generate-link-to-definition", "--cfg", "docsrs", "--document-private-items", ] # Build docs with all crate features enabled to cover the entire API. all-features = true # Target platform for the docs, ensuring compatibility with common Linux servers. targets = ["x86_64-unknown-linux-gnu"] # Linting config [lints.rust] ## Warn box_pointers = "warn" missing_copy_implementations = "warn" missing_docs = "warn" unstable_features = "warn" # unused_crate_dependencies = "warn" unused_extern_crates = "warn" unused_results = "warn" ## Allow bare_trait_objects = "allow" elided_lifetimes_in_paths = "allow" non_camel_case_types = "allow" non_upper_case_globals = "allow" trivial_bounds = "allow" unsafe_code = "allow" ## Forbid missing_debug_implementations = "forbid" non_ascii_idents = "forbid" unreachable_pub = "forbid" ## Deny dead_code = "deny" deprecated_in_future = "deny" ellipsis_inclusive_range_patterns = "deny" explicit_outlives_requirements = "deny" future_incompatible = { level = "deny", priority = -1 } keyword_idents = { level = "deny", priority = -1 } macro_use_extern_crate = "deny" meta_variable_misuse = "deny" missing_fragment_specifier = "deny" noop_method_call = "deny" rust_2018_idioms = { level = "deny", priority = -1 } rust_2021_compatibility = { level = "deny", priority = -1 } single_use_lifetimes = "deny" trivial_casts = "deny" trivial_numeric_casts = "deny" unused = { level = "deny", priority = -1 } unused_features = "deny" unused_import_braces = "deny" unused_labels = "deny" unused_lifetimes = "deny" unused_macro_rules = "deny" unused_qualifications = "deny" variant_size_differences = "deny" [package.metadata.clippy] warn-lints = [ "clippy::all", "clippy::pedantic", "clippy::cargo", "clippy::nursery", ] [profile.dev] codegen-units = 256 debug = true debug-assertions = true incremental = true lto = false opt-level = 0 overflow-checks = true panic = 'unwind' rpath = false strip = false [profile.release] codegen-units = 1 debug = false debug-assertions = false incremental = false lto = true opt-level = "s" overflow-checks = false panic = "abort" rpath = false strip = "symbols" [profile.test] codegen-units = 256 debug = true debug-assertions = true incremental = true lto = false opt-level = 0 overflow-checks = true rpath = false strip = false