taurus v0.10.0
Breaking — legacy parser DELETED (3092 lines removed)
The legacy parser (parser_new.c, 1956 lines) is gone. direct_parse
(with DTD entity support from v0.9.0) now covers the full XML feature
set. The three-parser architecture collapses to two.
Deleted
src/taurus/parse/parser_new.c— 1956 linessrc/taurus/parse/parser_new.h— 175 linessrc/taurus/parse/compact_parser.c— 654 lines (was dead code)- Legacy parser fallback in
taurus_parse— 319 lines - Legacy parser path in
taurus_parse_inplace— delegates totaurus_parse
The src/taurus/parse/ directory is now empty.
Changes
taurus_parse: whendirect_parseandflat_parseboth fail,
returns NULL. No legacy fallback.taurus_parse_inplace: delegates totaurus_parse(direct_parse
copies the caller's buffer for in-place NUL termination).direct_parseandflat_parser: now respectg_taurus_max_depth
(custom depth limit) via__thread extern. Falls back to
DP_MAX_DEPTH(256) /FLAT_MAX_DEPTHwhen the limit is 0.
Architecture after this release
Two parsers instead of three:
flat/direct_parse.c— single-pass, zero-copy, bulk-alloc,
DTD-aware (primary).flat/flat_parser.c— FlatDoc intermediate + lazy promote
(fallback for edge casesdirect_parserejects).
This is an internal ABI change (no public API surface change).
576/576 tests pass; ASAN clean.