threemf2 0.2.0

3MF (3D Manufacturing Format) file format support
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.89"
name = "threemf2"
version = "0.2.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "3MF (3D Manufacturing Format) file format support"
homepage = "https://github.com/vshashi01/threemf2"
readme = "README.md"
keywords = [
    "3MF",
    "CAD",
    "slicer",
    "triangle",
    "mesh",
]
categories = [
    "encoding",
    "rendering::data-formats",
]
license = "MIT or Apache-2.0"
repository = "https://github.com/vshashi01/threemf2"

[package.metadata.cargo-all-features]
max_combination_size = 3

[features]
default = [
    "io-write",
    "io-memory-optimized-read",
    "io-lazy-read",
    "write",
    "memory-optimized-read",
]
io-lazy-read = [
    "dep:once_cell",
    "io-memory-optimized-read",
]
io-memory-optimized-read = [
    "dep:zip",
    "dep:thiserror",
    "memory-optimized-read",
]
io-speed-optimized-read = [
    "dep:zip",
    "dep:thiserror",
    "speed-optimized-read",
]
io-write = [
    "dep:zip",
    "dep:thiserror",
    "write",
]
memory-optimized-read = [
    "dep:instant-xml",
    "dep:lexical-core",
]
speed-optimized-read = [
    "dep:serde-roxmltree",
    "dep:serde",
    "dep:lexical-core",
]
write = [
    "dep:instant-xml",
    "dep:lexical-core",
]

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

[[example]]
name = "beamlattice_write"
path = "examples/beamlattice_write.rs"
required-features = ["io-write"]

[[example]]
name = "boolean_write"
path = "examples/boolean_write.rs"
required-features = ["io-write"]

[[example]]
name = "builder_beamlattice_example"
path = "examples/builder_beamlattice_example.rs"
required-features = ["io-write"]

[[example]]
name = "builder_example"
path = "examples/builder_example.rs"
required-features = ["io-write"]

[[example]]
name = "core-no-default-features"
path = "examples/core-no-default-features.rs"

[[example]]
name = "io_memory_optimized_read"
path = "examples/io_memory_optimized_read.rs"
required-features = ["io-memory-optimized-read"]

[[example]]
name = "io_speed_optimized_read"
path = "examples/io_speed_optimized_read.rs"
required-features = ["io-speed-optimized-read"]

[[example]]
name = "query_example"
path = "examples/query_example.rs"
required-features = ["io-memory-optimized-read"]

[[example]]
name = "string_extraction"
path = "examples/string_extraction.rs"
required-features = ["io-lazy-read"]

[[example]]
name = "unpack"
path = "examples/unpack.rs"
required-features = ["io-lazy-read"]

[[example]]
name = "write"
path = "examples/write.rs"
required-features = ["io-write"]

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

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

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

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

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

[dependencies.instant-xml]
version = "0.6.0"
optional = true

[dependencies.lexical-core]
version = "1.0.6"
optional = true

[dependencies.once_cell]
version = "1.21.3"
optional = true

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

[dependencies.serde-roxmltree]
version = "0.10.0"
optional = true

[dependencies.thiserror]
version = "2.0.3"
optional = true

[dependencies.zip]
version = "8.4.0"
features = ["deflate"]
optional = true
default-features = false

[dev-dependencies.pretty_assertions]
version = "1.4.1"

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

[dev-dependencies.serde-roxmltree]
version = "0.10.0"

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