Changelog#

All notable changes to call-report are documented on this page, newest release first. See the Release Process for how this page fits into cutting a release.

0.1.0 (2026-07-26)#

Initial release.

  • Package configuration (call_report.config): choose the dataframe backend a reader returns native frames of (pandas, polars, or pyarrow), and whether frames are returned eager or lazy, via get_config(), set_config(), and config_context().

  • Shared, source-agnostic core vocabulary (call_report.core): the calendar-quarter reporting-period objects ReportingPeriod and PeriodRange, the cross-source Quarter, Source, and FileType enums, and BaseCallReport, the abstract, scikit-learn-style interface every source-specific entry point implements.

  • A shared exception hierarchy (call_report.exceptions).

  • The first regulatory source, call_report.fca: FCACallReport reads already-extracted Farm Credit Administration Call Report releases from a local directory, with lower-level building blocks (layout parsing, schedule and institution data reading, and pluggable transports) available on their own. Live downloading directly from FCA is not yet supported; this repository ships every quarterly release since 2000 as a packaged archive, usable immediately via PackagedArchiveTransport.

  • Supports Python 3.11 through 3.14 on Linux, macOS, and Windows.

Live downloading from FCA and the FFIEC, FDIC, and NCUA sources are planned for later releases – see the project’s CLAUDE.md for the current roadmap.