libxml_rs/compatibility/mod.rs
1//! Compatibility profiles, historical behavior, and platform quirks (§68, §69).
2//!
3//! This module provides version-aware compatibility profiles that allow
4//! libxml-rs to emulate the behavior of specific historical upstream versions.
5//!
6//! # Semantic epochs (§68)
7//!
8//! | Epoch | libxml2 range | libxslt range | Characteristics |
9//! |-------|---------------|---------------|-----------------|
10//! | `pre2` | 0.99–1.8.17 | — | Original libxml, libxml.so.1, legacy parser |
11//! | `legacy_parser` | 2.0–2.4 | 0.0.0–1.0.x | SAX1, no SAX2 default |
12//! | `sax2` | 2.5–2.6 | 1.0.x | SAX2 namespace-aware default |
13//! | `validation_era` | 2.6–2.8 | 1.1.x | Schemas/RELAX NG/reader mature |
14//! | `security_hardening` | 2.9.0–2.9.14 | 1.1.x | Entity limits, option system |
15//! | `modern` | 2.10+ | 1.1.33+ | Current ABI, lazy init, hardening |
16//!
17//! # Phase 0 status
18//!
19//! This module is scaffolded. Historical profiling will be built as the
20//! historical delta atlas (§10) is populated and semantic epochs are validated.
21//!
22//! See `atlas/HISTORY.md` for the full history atlas.
23
24pub mod historical;
25pub mod platform;
26pub mod profiles;
27pub mod quirks;