1.2.0.0 is available for download today — the first release of cparse as a project in its own right, rather than an embedded copy living inside the two projects that use it.
What's in it
cparse itself has not moved much: Cursor, Parser, Generator and Indentation are the same recursive-descent building blocks that fson and UMTSM have relied on internally for over a year. Two things stand out for anyone who has only known cparse as an embedded copy:
- Truncated input is now detected.
Parsergained an opt-in open-scope counter —enterScope(),leaveScope(),openScopeDepth()(see Reference › Parser › enterScope) — so a grammar with nesting can distinguish a clean end-of-input from one that landed mid-construct. Previously a file cut short at a member boundary loaded as valid, with the missing half silently defaulted. The change is purely additive: a grammar that never calls these two methods behaves exactly as before. - A generated API reference sits alongside the hand-written Reference Manual — Doxygen output with class diagrams, per-function call/caller graphs, and header dependency graphs, built straight from the same doc comments that back the manual pages.
Full notes, checksums and both archive formats are on the Downloads page.
Why this release exists
This is the point where cparse stops being only something read out of another project's libs/external/ tree. Source archives, checksums, and a release-notes page that will keep growing with each cut — that's a different commitment than an embedded submodule carries.
What's next
Binary packages (.deb, .rpm) are on the roadmap — the CMake tree already produces both locally via CPack, the missing piece is a proper APT/YUM repository to serve them from. In-site source browsing and the deeper grammar-patterns / code-generation guide sections mentioned at launch are still coming; nothing about this release changes that list, it just moves the download link from "coming soon" to real.
If you pick up cparse, the contact page is the place to report back — bugs, friction in the install guide, or just confirming it worked.

