Skip to content

v4.21.2 - Critical Point Release

Choose a tag to compare

@dgunning dgunning released this 23 Oct 01:37
· 1977 commits to main since this release

v4.21.2 - Critical Point Release (2025-10-22)

Fixed

Issue #466: Dimension column always False in XBRL statements (REGRESSION)

Fixed critical regression where the dimension column in statement DataFrames incorrectly showed False for all line items, including dimensional data (Revenue by Product/Geography).

Root Cause: Key name mismatch introduced in Issue #463 DataFrame refactoring (v4.21.0). Code looked for 'dimension' key but XBRL parser uses 'is_dimension'.

Solution: Changed item.get('dimension', False) to item.get('is_dimension', False) in edgar/xbrl/statements.py:318

Impact:

  • Dimensional data (Revenue by Product/Geography/Segment) now correctly tagged with dimension=True
  • Users can filter and analyze segment-specific financial data
  • Regression from v4.21.0 fully resolved

Tests: 6 regression tests pass (Issue #416 tests un-skipped + 3 new Issue #466 tests)

Timeline: Fixed within 5 hours of classification


Installation

pip install --upgrade edgartools

Or install specific version:

pip install edgartools==4.21.2

Verification

Verify the fix works:

from edgar import Company

# Dimensional data should now show dimension=True
filing = Company("AAPL").get_filings(form="10-K", year=2024).latest()
df = filing.xbrl().statements.income_statement().to_dataframe()

# Check dimensional rows exist
dimensional_rows = df[df['dimension'] == True]
print(f"Found {len(dimensional_rows)} dimensional rows")  # Should be > 0

Closes #466