DEV Community

Cover image for First 2026 DocWire SDK Release: Modern C++20 XML Parsing, Safety Policies, and Parser Resilience
Krzysztof Nowicki
Krzysztof Nowicki

Posted on

First 2026 DocWire SDK Release: Modern C++20 XML Parsing, Safety Policies, and Parser Resilience

We’ve released a new version of DocWire SDK focused on core architecture, safety, and robustness, rather than user-facing features.

This update introduces a modern C++20 foundation for XML parsing, type-safe conversions, and configurable safety guarantees, alongside multiple improvements in parser resilience and memory management.

Highlights of this release

  • Modern C++20 XML parsing API
    A new forward-only, single-pass XML reader based on C++20 ranges and views replaces the legacy XmlStream implementation.

  • Configurable safety policies
    Developers can choose between strict checking (exceptions on violations) and relaxed, zero-overhead execution via checked, not_null, and enforce utilities.

  • Type-safe data conversion framework
    New convert::try_to and convert::to APIs replace ad-hoc string conversions and support custom formats (e.g. date parsing).

  • Standardized date/time handling
    All date and time logic now uses std::chrono::sys_seconds instead of struct tm.

  • Partial failure resilience
    Parsers can continue processing even when some sub-items fail, while still detecting total failures.

  • New core utilities
    Named parameters, non-null enforcement, ranged numeric types, and debug-only assertions.

In addition, the release includes parser-specific robustness fixes (HTML, PST, PDF), logging refinements, updated documentation, and expanded test coverage.

Links

Feedback from developers working with document processing or backend systems in modern C++ is welcome.

--The DocWire Team--

Top comments (0)