openusd 0.7.0

Rust native USD library
Documentation
# 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 = "2024"
rust-version = "1.96"
name = "openusd"
version = "0.7.0"
build = false
exclude = ["/fixtures"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Rust native USD library"
readme = "README.md"
keywords = [
    "usd",
    "usda",
    "usdc",
    "usdz",
    "pxr",
]
categories = [
    "graphics",
    "rendering",
    "rendering::data-formats",
]
license = "MIT"
repository = "https://github.com/mxpv/openusd"

[package.metadata.docs.rs]
all-features = true

[features]
serde = [
    "dep:serde",
    "half/serde",
]

[lib]
name = "openusd"
path = "src/lib.rs"

[[example]]
name = "author_variant_and_reference"
path = "examples/author_variant_and_reference.rs"

[[example]]
name = "dump_usdc"
path = "examples/dump_usdc.rs"

[[example]]
name = "usdtree"
path = "examples/usdtree.rs"

[[example]]
name = "write_usda"
path = "examples/write_usda.rs"

[[example]]
name = "write_usdc"
path = "examples/write_usdc.rs"

[[test]]
name = "archive_writer_roundtrip"
path = "tests/archive_writer_roundtrip.rs"

[[test]]
name = "asset_resolution"
path = "tests/asset_resolution.rs"

[[test]]
name = "binary_format"
path = "tests/binary_format.rs"

[[test]]
name = "binary_writer_roundtrip"
path = "tests/binary_writer_roundtrip.rs"
required-features = ["serde"]

[[test]]
name = "changes"
path = "tests/changes.rs"

[[test]]
name = "collections"
path = "tests/collections.rs"

[[test]]
name = "combine_chain"
path = "tests/combine_chain.rs"

[[test]]
name = "composition"
path = "tests/composition.rs"

[[test]]
name = "cross_format_roundtrip"
path = "tests/cross_format_roundtrip.rs"
required-features = ["serde"]

[[test]]
name = "interp"
path = "tests/interp.rs"

[[test]]
name = "schema_registry"
path = "tests/schema_registry.rs"

[[test]]
name = "stage"
path = "tests/stage.rs"

[[test]]
name = "text_format"
path = "tests/text_format.rs"
required-features = ["serde"]

[[test]]
name = "text_writer_roundtrip"
path = "tests/text_writer_roundtrip.rs"
required-features = ["serde"]

[[test]]
name = "value_invalidation"
path = "tests/value_invalidation.rs"

[[test]]
name = "value_resolution"
path = "tests/value_resolution.rs"

[dependencies.bitflags]
version = "2.11.1"

[dependencies.bytemuck]
version = "1.14.0"
features = ["derive"]

[dependencies.derive_more]
version = "2.1.1"
features = [
    "deref",
    "deref_mut",
    "add",
    "add_assign",
    "mul",
    "mul_assign",
    "not",
    "sum",
    "from",
]

[dependencies.half]
version = "2.3.1"
features = [
    "bytemuck",
    "num-traits",
]

[dependencies.logos]
version = "0.16.0"

[dependencies.lz4_flex]
version = "0.14.0"

[dependencies.num-traits]
version = "0.2.17"

[dependencies.regex-lite]
version = "0.1.9"

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

[dependencies.strum]
version = "0.28.0"
features = ["derive"]

[dependencies.thiserror]
version = "2"

[dependencies.zip]
version = "8.2.0"
features = ["deflate"]
default-features = false

[dev-dependencies.diff_json]
version = "0.1"

[dev-dependencies.serde]
version = "1"
features = ["derive"]

[dev-dependencies.serde_json]
version = "1"

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

[lints.clippy]
await_holding_lock = "deny"
char_lit_as_u8 = "deny"
checked_conversions = "deny"
dbg_macro = "deny"
debug_assert_with_mut_call = "deny"
disallowed_script_idents = "deny"
doc_markdown = "deny"
empty_enums = "deny"
enum_glob_use = "deny"
equatable_if_let = "deny"
exit = "deny"
expl_impl_clone_on_copy = "deny"
explicit_deref_methods = "deny"
explicit_into_iter_loop = "deny"
fallible_impl_from = "deny"
filter_map_next = "deny"
flat_map_option = "deny"
float_cmp_const = "deny"
fn_params_excessive_bools = "deny"
fn_to_numeric_cast_any = "deny"
from_iter_instead_of_collect = "deny"
if_let_mutex = "deny"
implicit_clone = "deny"
imprecise_flops = "deny"
index_refutable_slice = "deny"
inefficient_to_string = "deny"
invalid_upcast_comparisons = "deny"
iter_not_returning_iterator = "deny"
large_digit_groups = "deny"
large_stack_arrays = "deny"
large_types_passed_by_value = "deny"
let_unit_value = "deny"
linkedlist = "deny"
lossy_float_literal = "deny"
macro_use_imports = "deny"
manual_ok_or = "deny"
map_flatten = "deny"
map_unwrap_or = "deny"
match_same_arms = "deny"
match_wild_err_arm = "deny"
match_wildcard_for_single_variants = "deny"
mem_forget = "deny"
missing_enforced_import_renames = "deny"
mut_mut = "deny"
mutex_integer = "deny"
needless_borrow = "deny"
needless_continue = "deny"
needless_for_each = "deny"
negative_feature_names = "deny"
nonstandard_macro_braces = "deny"
option_option = "deny"
path_buf_push_overwrite = "deny"
ptr_as_ptr = "deny"
rc_mutex = "deny"
ref_option_ref = "deny"
rest_pat_in_fully_bound_structs = "deny"
same_functions_in_if_condition = "deny"
semicolon_if_nothing_returned = "deny"
single_match_else = "deny"
string_add = "deny"
string_add_assign = "deny"
string_lit_as_bytes = "deny"
trailing_empty_array = "deny"
trait_duplication_in_bounds = "deny"
undocumented_unsafe_blocks = "deny"
unimplemented = "deny"
unnested_or_patterns = "deny"
unused_self = "deny"
useless_transmute = "deny"
verbose_file_reads = "deny"
zero_sized_map_values = "deny"

[lints.clippy.all]
level = "deny"
priority = -1

[lints.rust]
trivial_numeric_casts = "deny"
unsafe_code = "deny"

[lints.rust.future_incompatible]
level = "deny"
priority = -1

[lints.rust.nonstandard_style]
level = "deny"
priority = -1

[lints.rust.rust_2018_idioms]
level = "deny"
priority = -1

[lints.rustdoc]
missing_crate_level_docs = "deny"