rustixml 0.3.1

Native iXML (Invisible XML) parser with left-recursion support - 76.9% spec conformance, works in Rust and WebAssembly
Documentation
[package]
name = "rustixml"
version = "0.3.1"
edition = "2021"
authors = ["Alex Everitt <bigale@netzero.net>"]
description = "Native iXML (Invisible XML) parser with left-recursion support - 76.9% spec conformance, works in Rust and WebAssembly"
license = "MIT OR Apache-2.0"
repository = "https://github.com/bigale/rustixml"
homepage = "https://github.com/bigale/rustixml"
documentation = "https://docs.rs/rustixml"
keywords = ["parser", "xml", "ixml", "invisible-xml", "wasm"]
categories = ["parsing", "text-processing", "wasm"]
readme = "README.md"
exclude = [
    "ixml_tests/",
    "target/",
    ".github/",
    ".git/",
    "*.log",
    "conformance_results*.txt"
]

[lib]
crate-type = ["cdylib", "rlib"]

[dependencies]
unicode-general-category = "1.0"

# WASM-specific dependencies (only when building for wasm32 AND NOT IC canister)
[target.'cfg(all(target_arch = "wasm32", not(feature = "ic-canister")))'.dependencies]
wasm-bindgen = "0.2"
serde = { version = "1.0", features = ["derive"] }
serde-wasm-bindgen = "0.6"
console_error_panic_hook = { version = "0.1", optional = true }
wee_alloc = { version = "0.4", optional = true }

[dev-dependencies]
wasm-bindgen-test = "0.3"

[features]
default = []
ic-canister = []  # Disable wasm-bindgen for IC canister builds
console_error_panic_hook = ["dep:console_error_panic_hook"]
wee_alloc = ["dep:wee_alloc"]

[[bin]]
name = "ixml"
path = "src/bin/main.rs"
doc = false

[[bin]]
name = "conformance_test"
path = "src/bin/native_conformance_runner.rs"
doc = false

[[bin]]
name = "rustixml"
path = "src/bin/ixml_cli.rs"
doc = false

[profile.release]
opt-level = 3
lto = true
codegen-units = 1

[profile.release.package."*"]
opt-level = "z"