# 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"
name = "wgpu-core"
version = "0.20.0"
authors = ["gfx-rs developers"]
description = "WebGPU core logic on wgpu-hal"
homepage = "https://wgpu.rs/"
keywords = ["graphics"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/gfx-rs/wgpu"

[package.metadata.cargo-machete]
ignored = ["cfg_aliases"]

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "docsrs",
]
targets = [
    "x86_64-unknown-linux-gnu",
    "x86_64-apple-darwin",
    "x86_64-pc-windows-msvc",
    "wasm32-unknown-unknown",
]

[lib]

[dependencies]
arrayvec = "0.7"
bit-vec = "0.6"
bitflags = "2"
document-features = "0.2.8"
indexmap = "2"
log = "0.4"
once_cell = "1"
parking_lot = ">=0.11,<0.13"
rustc-hash = "1.1"
smallvec = "1"
thiserror = "1"

[dependencies.bytemuck]
version = "1.16"
optional = true

[dependencies.hal]
version = "0.20.0"
path = "../wgpu-hal"
default-features = false
package = "wgpu-hal"

[dependencies.naga]
version = "0.20.0"
path = "../naga"

[dependencies.profiling]
version = "1"
default-features = false

[dependencies.raw-window-handle]
version = "0.6"
optional = true

[dependencies.ron]
version = "0.8"
optional = true

[dependencies.serde]
version = "1"
features = ["serde_derive"]
optional = true

[dependencies.wgt]
version = "0.20.0"
path = "../wgpu-types"
package = "wgpu-types"

[build-dependencies]
cfg_aliases = "0.1"

[features]
api_log_info = []
dx12 = ["hal/dx12"]
fragile-send-sync-non-atomic-wasm = [
    "hal/fragile-send-sync-non-atomic-wasm",
    "wgt/fragile-send-sync-non-atomic-wasm",
]
gles = ["hal/gles"]
glsl = ["naga/glsl-in"]
metal = ["hal/metal"]
renderdoc = ["hal/renderdoc"]
replay = [
    "serde",
    "naga/deserialize",
]
resource_log_info = []
serde = [
    "dep:serde",
    "wgt/serde",
    "arrayvec/serde",
]
spirv = [
    "naga/spv-in",
    "dep:bytemuck",
]
strict_asserts = ["wgt/strict_asserts"]
trace = [
    "dep:ron",
    "serde",
    "naga/serialize",
]
vulkan = ["hal/vulkan"]
wgsl = ["naga/wgsl-in"]
