Repository navigation
Release v0.21.1
xbrlkit v0.21.1
A patch release that enhances TAVI serialization by automatically generating the draft's group tree from the source filing's section titles, improving structural fidelity when round-tripping filings. No breaking changes — existing serialization workflows continue to work unchanged.
Key Features & Improvements
- Automatic group tree generation (#99): The TAVI serializer now derives and writes a draft's group tree directly from the filing's section titles, so section hierarchy is preserved in the generated draft rather than being left empty or flat.
- Deserialization alignment:
xbrlkit/deserialize/tavi.pyupdated to correctly read back the newly emitted group tree structure, keeping serialize → deserialize round-trips lossless.
Technical Notes
- Changes are isolated to the TAVI serialize/deserialize modules (
xbrlkit/serialize/tavi.py,xbrlkit/deserialize/tavi.py); other formats and APIs are untouched. - Group tree nodes are built from section titles discovered on the filing, meaning output now depends on the presence and ordering of those titles — filings without section titles will produce a minimal/empty tree as before.
- Expanded test coverage in
tests/test_tavi.pyfor group tree construction and round-trip behavior. - Version metadata bumped in
pyproject.tomlandserver.json.
Breaking Changes
None.
Bug Fixes
- Drafts produced by the TAVI serializer no longer omit group/section structure that was present in the source filing.
Upgrade Notes
Drop-in upgrade from v0.21.0. If your tooling asserts on exact serialized draft output, expect additional group tree entries in the generated payload.
📊 Release Statistics
- Commits: 3
- Files Changed: 5
- Lines Added: 185
- Lines Deleted: 3
- Previous Release: v0.21.0
🔗 Links
- Full Changelog: v0.21.0...v0.21.1
- All Releases: View all releases
🤖 Generated with Claude Code