[package]
edition = "2024"
name = "fastxml"
version = "0.8.1"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A fast, memory-efficient XML library with XPath and XSD validation support"
homepage = "https://github.com/reearth/fastxml"
documentation = "https://docs.rs/fastxml"
readme = "README.md"
keywords = [
"xml",
"xpath",
"xsd",
"streaming",
"parser",
]
categories = [
"parser-implementations",
"encoding",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/reearth/fastxml"
[features]
async-trait = ["dep:async-trait"]
compare-libxml = ["dep:libxml"]
default = []
profile = ["memory-stats"]
tokio = [
"async-trait",
"dep:reqwest",
"dep:tokio",
]
ureq = [
"dep:ureq",
"dep:clap",
"dep:serde",
"dep:serde_json",
"dep:flate2",
]
[lib]
name = "fastxml"
path = "src/lib.rs"
[[bin]]
name = "fastxml-validate"
path = "src/bin/validate.rs"
required-features = ["ureq"]
[[example]]
name = "async_schema_resolution"
path = "examples/async_schema_resolution.rs"
required-features = ["tokio"]
[[example]]
name = "bench"
path = "examples/bench.rs"
[[example]]
name = "dom_modification"
path = "examples/dom_modification.rs"
[[example]]
name = "dom_parsing"
path = "examples/dom_parsing.rs"
[[example]]
name = "profile_cli"
path = "examples/profile_cli.rs"
required-features = ["profile"]
[[example]]
name = "schema_validation"
path = "examples/schema_validation.rs"
[[example]]
name = "streaming_parser"
path = "examples/streaming_parser.rs"
[[example]]
name = "streaming_validation"
path = "examples/streaming_validation.rs"
[[example]]
name = "transform_benchmark"
path = "examples/transform_benchmark.rs"
[[example]]
name = "transform_example"
path = "examples/transform_example.rs"
[[example]]
name = "xpath_namespaces"
path = "examples/xpath_namespaces.rs"
[[test]]
name = "cross_namespace_type_test"
path = "tests/cross_namespace_type_test.rs"
[[test]]
name = "error_display_test"
path = "tests/error_display_test.rs"
[[test]]
name = "error_test"
path = "tests/error_test.rs"
[[test]]
name = "namespace_test"
path = "tests/namespace_test.rs"
[[test]]
name = "parse_test"
path = "tests/parse_test.rs"
[[test]]
name = "requirement_test"
path = "tests/requirement_test.rs"
[[test]]
name = "schema_basic_test"
path = "tests/schema_basic_test.rs"
[[test]]
name = "schema_duplicate_test"
path = "tests/schema_duplicate_test.rs"
[[test]]
name = "schema_import_test"
path = "tests/schema_import_test.rs"
[[test]]
name = "schema_inheritance_test"
path = "tests/schema_inheritance_test.rs"
[[test]]
name = "schema_namespace_test"
path = "tests/schema_namespace_test.rs"
[[test]]
name = "transform_advanced_test"
path = "tests/transform_advanced_test.rs"
[[test]]
name = "transform_basic_test"
path = "tests/transform_basic_test.rs"
[[test]]
name = "transform_editable_test"
path = "tests/transform_editable_test.rs"
[[test]]
name = "transform_namespace_test"
path = "tests/transform_namespace_test.rs"
[[test]]
name = "transform_xpath_test"
path = "tests/transform_xpath_test.rs"
[[test]]
name = "validation_constraint_advanced_test"
path = "tests/validation_constraint_advanced_test.rs"
[[test]]
name = "validation_constraints_test"
path = "tests/validation_constraints_test.rs"
[[test]]
name = "validation_content_model_advanced_test"
path = "tests/validation_content_model_advanced_test.rs"
[[test]]
name = "validation_content_test"
path = "tests/validation_content_test.rs"
[[test]]
name = "validation_facet_advanced_test"
path = "tests/validation_facet_advanced_test.rs"
[[test]]
name = "validation_facets_test"
path = "tests/validation_facets_test.rs"
[[test]]
name = "validation_parsing_test"
path = "tests/validation_parsing_test.rs"
[[test]]
name = "validation_schema_error_test"
path = "tests/validation_schema_error_test.rs"
[[test]]
name = "validation_streaming_test"
path = "tests/validation_streaming_test.rs"
[[test]]
name = "xpath_advanced_test"
path = "tests/xpath_advanced_test.rs"
[[test]]
name = "xpath_functions_test"
path = "tests/xpath_functions_test.rs"
[[test]]
name = "xpath_test"
path = "tests/xpath_test.rs"
[[test]]
name = "xsd_integration"
path = "tests/xsd_integration.rs"
[[bench]]
name = "load_test"
path = "benches/load_test.rs"
harness = false
[[bench]]
name = "profile"
path = "benches/profile.rs"
harness = false
[dependencies.async-trait]
version = "0.1"
optional = true
[dependencies.clap]
version = "4"
features = ["derive"]
optional = true
[dependencies.compact_str]
version = "0.8"
[dependencies.dashmap]
version = "6"
[dependencies.flate2]
version = "1"
optional = true
[dependencies.indexmap]
version = "2"
[dependencies.libxml]
version = "0.3"
optional = true
[dependencies.memory-stats]
version = "1"
optional = true
[dependencies.parking_lot]
version = "0.12"
[dependencies.quick-xml]
version = "0.37"
features = ["serialize"]
[dependencies.regex]
version = "1"
[dependencies.reqwest]
version = "0.12"
features = ["rustls-tls"]
optional = true
default-features = false
[dependencies.serde]
version = "1"
features = ["derive"]
optional = true
[dependencies.serde_json]
version = "1"
optional = true
[dependencies.smallvec]
version = "1"
[dependencies.tempfile]
version = "3"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = ["fs"]
optional = true
[dependencies.tracing]
version = "0.1"
[dependencies.ureq]
version = "2"
optional = true
[dependencies.url]
version = "2"
[dependencies.xxhash-rust]
version = "0.8"
features = ["xxh64"]
[dev-dependencies.clap]
version = "4"
features = ["derive"]
[dev-dependencies.criterion]
version = "0.5"
[dev-dependencies.flate2]
version = "1"
[dev-dependencies.serde_json]
version = "1"
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"macros",
]
[dev-dependencies.tokio-test]
version = "0.4"
[dev-dependencies.ureq]
version = "2"