wgpu/Cargo.toml
Erich Gubler b37dda8854
build: move to the Rust 2021 edition (#2085)
* build: move to the Rust 2021 edition

Since the MSRV of `naga` [is currently 1.56][msrv], I don't think there's a strong reason to stay
with the 2018 edition, and there _are_ a [few good reasons][edition-guide] to move to the 2021
edition.

I did this migration mostly automatically, per [official Rust guidelines]:

```sh
$ cargo fix --edition --all-targets
$ sed -i Cargo.toml 's/2018/2021'
$ cargo fix --edition-idioms --allow-dirty # doesn't change anything
```

The only manual edit needed to stymie a new warning introduced was the removal of the `TryFrom`
import in several modules, since it's now in the 2021 prelude.

[msrv]: a7193d652e/.github/workflows/pipeline.yml (L14)
[edition-guide]: https://doc.rust-lang.org/edition-guide/rust-2021/index.html
[official Rust guidelines]: https://doc.rust-lang.org/cargo/commands/cargo-fix.html#edition-migration

* refactor(wgsl-in): use `pat` instead of `pat_param` again

How we were using `pat` in the Rust 2018 edition is actually the use case that
Rust 2021's `pat` fragment specifier is intended to satisfy. So, let's just use
that!
2022-10-25 08:44:17 -07:00

86 lines
2.6 KiB
TOML

[package]
name = "naga"
version = "0.10.0"
authors = ["Naga Developers"]
edition = "2021"
description = "Shader translation infrastructure"
homepage = "https://github.com/gfx-rs/naga"
repository = "https://github.com/gfx-rs/naga"
keywords = ["shader", "SPIR-V", "GLSL", "MSL"]
license = "MIT OR Apache-2.0"
exclude = ["bin/**/*", "tests/**/*", "Cargo.lock", "target/**/*"]
resolver = "2"
rust-version = "1.56"
[package.metadata.docs.rs]
all-features = true
[profile.release]
panic = "abort"
[profile.dev]
panic = "abort"
[features]
default = []
clone = []
dot-out = []
glsl-in = ["pp-rs"]
glsl-out = []
msl-out = []
serialize = ["serde", "indexmap/serde-1"]
deserialize = ["serde", "indexmap/serde-1"]
spv-in = ["petgraph", "spirv"]
spv-out = ["spirv"]
wgsl-in = ["codespan-reporting", "hexf-parse", "termcolor", "unicode-xid"]
wgsl-out = []
hlsl-out = []
span = ["codespan-reporting", "termcolor"]
validate = []
[[bench]]
name = "criterion"
harness = false
[dependencies]
arbitrary = { version = "1.0.2", features = ["derive"], optional = true }
bitflags = "1.0.5"
bit-set = "0.5"
termcolor = { version = "1.0.4", optional = true }
# remove termcolor dep when updating to the next version of codespan-reporting
# termcolor minimum version was wrong and was fixed in
# https://github.com/brendanzab/codespan/commit/e99c867339a877731437e7ee6a903a3d03b5439e
codespan-reporting = { version = "0.11.0", optional = true }
rustc-hash = "1.1.0"
indexmap = { version = "1.6", features = ["std"] }
log = "0.4"
num-traits = "0.2"
spirv = { version = "0.2", optional = true }
thiserror = "1.0.21"
serde = { version = "1.0.103", features = ["derive"], optional = true }
petgraph = { version ="0.6", optional = true }
pp-rs = { version = "0.2.1", optional = true }
hexf-parse = { version = "0.2.1", optional = true }
unicode-xid = { version = "0.2.3", optional = true }
[dev-dependencies]
bincode = "1"
criterion = { version = "0.3", features = [] }
diff = "0.1"
# Require at least version 0.7.1 of ron, this version changed how floating points are
# serialized by forcing them to always have the decimal part, this makes it backwards
# incompatible with our tests because we do a syntatic diff and not a semantic one.
ron = "~0.7.1"
serde = { version = "1.0", features = ["derive"] }
spirv = { version = "0.2", features = ["deserialize"] }
rspirv = "0.11"
env_logger = "0.9"
[workspace]
members = [".", "cli"]
# Include "cli", so that `cargo run` runs the CLI by default. Include ".", so
# that `cargo test` includes naga's own tests by default (but note, using the
# features that `cli/Cargo.toml` requests).
default-members = [".", "cli"]