Repository navigation
Release v0.20.8
xbrlkit v0.20.8
Summary
A focused patch release that fixes taxonomy package registration in the Arelle loader, ensuring a filing's packages are scoped to the load that requested them rather than leaking into the global Arelle environment.
Bug Fixes
- Per-load package registration (#95): Taxonomy packages discovered for a filing are now registered only for the duration of that load, then unwound. Previously, packages accumulated in the shared Arelle package manager across loads, which could cause one filing's entry points to resolve schema references for an unrelated filing — producing incorrect concept resolution, mismatched labels, or nondeterministic results depending on load order.
Technical Changes
xbrlkit/parse/arelle_load.py: package registration/reset is now bracketed around each load so the ArellePackageManagerstate is restored afterward, making repeated and concurrent-ish loads deterministic.- Expanded coverage in
tests/test_arelle_cache.pyfor registration scoping and cleanup behavior. - Documentation updated in
xbrlkit/parse/README.mdto describe the per-load package lifecycle.
Breaking Changes
None. The public API is unchanged.
Note: If your code relied (intentionally or not) on packages registered by a prior
arelle_loadcall remaining available for subsequent loads, you should now pass the required packages explicitly with each load.
Housekeeping
- Version bumps in
pyproject.tomlandserver.json.
📊 Release Statistics
- Commits: 3
- Files Changed: 5
- Lines Added: 112
- Lines Deleted: 6
- Previous Release: v0.20.7
🔗 Links
- Full Changelog: v0.20.7...v0.20.8
- All Releases: View all releases
🤖 Generated with Claude Code