taurus v0.11.0
ONE parser architecture — flat subsystem DELETED (4479 lines removed)
direct_parse is now the sole XML parser. The entire flat/
subsystem (flat_parser, flat_promote, flat_doc, flat_fast,
flat_serialize, flat_xpath) is deleted. One parser, like pugixml.
Changes
-
UTF-8 name support: Added
CT_UTF8flag to the shared
chartype table for bytes >= 0x80.IS_NAME_CHARand
IS_NAME_STARTnow includeCT_UTF8, so UTF-8 multibyte names
(<café>) scan without truncation. -
Close tag prefix:local fix: Close tag verification now
strips the prefix from</ns:elem>before comparing with the
open element's local name. This was a latent bug that surfaced
when the flat_parser fallback was removed. -
Deleted flat subsystem (~4479 lines):
flat_doc.c/h,flat_parser.c/h,flat_promote.c/h,
flat_fast.c/h,flat_serialize.c/h,flat_xpath.c/htest/flat/directory +test_flat_promote_line.cppbenchmarks/flat/bench_flat_parse.cflat_doc/flat_promotedfields fromstruct taurus_document- Flat fast-path checks in
xpath_public.candserialize.c
-
taurus_parsecallsdirect_parsedirectly — no fallback chain. -
taurus_document_ensure_promotedis now a no-op chokepoint.
Architecture
src/taurus/parse/— empty (legacy parser deleted v0.10.0)src/taurus/flat/— onlydirect_parse.canddirect_parse.h
One parser, one codebase, ~7500 lines of parser code removed across
v0.10.0 + v0.11.0.