Show HN: Xmloxide – an agent made rust replacement for libxml2

AI-built Rust tool replaces the web’s XML workhorse — applause, side-eye, and corporate shame

TLDR: An AI-assisted Rust project, xmloxide, steps in to replace the now-unmaintained libxml2, promising safety and full test compliance. Commenters celebrated the rescue but argued over hidden “unsafe” code, real security fixes, AI “vibe-coded” risks, and why giant companies let essential tools rot in the first place.

The internet’s longtime XML/HTML engine, libxml2, went unmaintained with known security issues — and now an AI-assisted Rust remake called xmloxide bursts in claiming memory safety and a perfect score on official tests. It parses messy documents, searches with XPath (a query language), and even ships a command-line tool. Sounds heroic, right? The crowd loved the ambition — but the comments immediately turned into a spicy reality show.

Safety hawks zeroed in on the phrase ‘zero unsafe in the public API,’ asking if there’s risky stuff tucked under the hood. Security worriers wanted receipts: does it really fix the flaws that helped sink libxml2? Metrics goblins asked for line counts. And the ‘agent-made’ origin lit a bonfire — one dev pushed to normalize warnings for ‘vibe-coded’ packages, basically: if AI helped write this, label it loud so teams know the risk.

The hottest take dragged Big Tech: so many companies relied on libxml2, and yet nobody stepped up to maintain it. Cue memes about trillion-dollar free riders and “XML PTSD” jokes. Fans cheered the 100% test pass and speed talk, skeptics demanded transparency on any hidden sharp edges, and cynics sighed about industry neglect. Translation for non-nerds: a core web tool broke, a bold fix arrived, and the comments turned into a courtroom drama over trust, safety, and who pays the maintenance bill. Also, yes, XML is a data format from the early web era — XML is still everywhere, which is why this matters.

Key Points

  • Xmloxide is a pure Rust reimplementation of libxml2 focused on memory safety and performance.
  • It claims 100% conformance on the W3C XML Conformance Test Suite (1727 applicable tests).
  • Supports multiple parsing APIs (DOM, SAX2, XmlReader, push), error recovery, HTML 4.01 parsing, and XPath 1.0.
  • Provides validation (DTD, RelaxNG, XSD), Canonical XML (C14N), XInclude, and OASIS XML Catalogs.
  • Offers an xmllint CLI and a full C API for C/C++ integration, with minimal dependencies (encoding_rs; clap for CLI).

Hottest takes

Does this imply it's using unsafe behind the hood? — blegge
normalize disclaimers for 'vibe-coded' packages — kburman
so many companies use this library in production and not one steps in — wooptoo
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.