From 64adc0d315ee0dd7f345573a3b623fd5d4e6d8c2 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sun, 9 Aug 2026 23:31:52 +0000 Subject: [PATCH 1/2] release: v0.11.0 --- CHANGELOG.md | 10 ++++++++++ CMakeLists.txt | 2 +- vcpkg.json | 2 +- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a09adcd..a287a86 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,15 @@ ## [Unreleased] +## [0.11.0] - Y-08-09 + + + + +### Changed + +- (describe changes here) + + ## [0.10.0] - 2026-08-09 ### Breaking — legacy parser DELETED (3092 lines removed) diff --git a/CMakeLists.txt b/CMakeLists.txt index d943029..a0704f2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.20) project(taurus - VERSION 0.10.0 + VERSION 0.11.0 DESCRIPTION "Fast XML parser and XPath evaluator in pure C" LANGUAGES C CXX ) diff --git a/vcpkg.json b/vcpkg.json index 149d9e9..c50d40a 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -1,7 +1,7 @@ { "$schema": "https://raw.githubusercontent.com/microsoft/vcpkg/master/scripts/vcpkg.schema.json", "name": "taurus", - "version": "0.10.0", + "version": "0.11.0", "description": "High-performance XML parser and XPath 1.0 engine in C (libtaurus)", "homepage": "https://github.com/lutaml/taurus", "license": "MIT", From 10e0f2480bd204a0ae60092f3bab6592bd9f0520 Mon Sep 17 00:00:00 2001 From: Ronald Tse Date: Mon, 10 Aug 2026 07:32:47 +0800 Subject: [PATCH 2/2] release: v0.11.0 changelog entry --- CHANGELOG.md | 40 +++++++++++++++++++++++++++++++++++----- 1 file changed, 35 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a287a86..f5c497a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,13 +1,43 @@ ## [Unreleased] -## [0.11.0] - Y-08-09 +## [0.11.0] - 2026-08-10 - - +### ONE parser architecture — flat subsystem DELETED (4479 lines removed) -### Changed +`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. -- (describe changes here) +#### Changes + +- **UTF-8 name support**: Added `CT_UTF8` flag to the shared + chartype table for bytes >= 0x80. `IS_NAME_CHAR` and + `IS_NAME_START` now include `CT_UTF8`, so UTF-8 multibyte names + (``) scan without truncation. + +- **Close tag prefix:local fix**: Close tag verification now + strips the prefix from `` 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/h` + - `test/flat/` directory + `test_flat_promote_line.cpp` + - `benchmarks/flat/bench_flat_parse.c` + - `flat_doc`/`flat_promoted` fields from `struct taurus_document` + - Flat fast-path checks in `xpath_public.c` and `serialize.c` + +- `taurus_parse` calls `direct_parse` directly — no fallback chain. +- `taurus_document_ensure_promoted` is now a no-op chokepoint. + +#### Architecture + +- `src/taurus/parse/` — empty (legacy parser deleted v0.10.0) +- `src/taurus/flat/` — only `direct_parse.c` and `direct_parse.h` + +One parser, one codebase, ~7500 lines of parser code removed across +v0.10.0 + v0.11.0. ## [0.10.0] - 2026-08-09