# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.74.0"
name = "normpath"
version = "1.2.0"
authors = ["dylni"]
exclude = [
    ".*",
    "tests.rs",
    "/rustfmt.toml",
    "/src/bin",
    "/tests",
]
description = """
More reliable path manipulation
"""
readme = "README.md"
keywords = [
    "absolute",
    "canonicalize",
    "path",
    "normalize",
    "windows",
]
categories = [
    "command-line-interface",
    "filesystem",
    "os",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/dylni/normpath"

[package.metadata.docs.rs]
all-features = true
rustc-args = [
    "--cfg",
    "normpath_docs_rs",
]
rustdoc-args = [
    "--cfg",
    "normpath_docs_rs",
]

[dependencies.print_bytes]
version = "2.0"
features = ["os_str_bytes"]
optional = true

[dependencies.serde]
version = "1.0"
optional = true

[dependencies.uniquote]
version = "3.0"
optional = true

[dev-dependencies.bincode]
version = "1.0"

[dev-dependencies.tempfile]
version = "3.0"

[features]
localization = [
    "windows-sys/Win32_UI_Shell",
    "windows-sys/Win32_UI_WindowsAndMessaging",
]

[target."cfg(not(windows))".dev-dependencies.libc]
version = "0.2"

[target."cfg(windows)".dependencies.windows-sys]
version = "0.52"
features = ["Win32_Storage_FileSystem"]

[target."cfg(windows)".dev-dependencies.windows-sys]
version = "0.52"
features = ["Win32_Foundation"]
