Skip to content

v0.2.1

Latest

Choose a tag to compare

@romansklenar romansklenar released this 15 Jul 02:23

Cleanup release finishing the remaining two findings from the deep code review behind 0.2.0.

Fixed

  • The schema cache stores the full base schema instead of only the tables configured at fetch time — a table added to config.tables after the cache warmed up (24 h expiry, shared store in Rails hosts) now resolves immediately instead of raising ConfigurationError until expiry.

Changed

  • Record payloads are parsed by string keys directly instead of deep-converting every record with with_indifferent_access — one avoided deep copy per record on where/all/find, two per record on batch updates. The (undocumented) instantiate_from_api_response and apply_response_fields now expect string-keyed parsed payloads, i.e. the shape the JSON middleware produces; createdTime parsing lives in the single Persistence.parse_created_time helper.

Upgrade notes

  • bundle update airtable-orm — no configuration or public-API changes.
  • Only if your app or specs call instantiate_from_api_response / apply_response_fields directly with symbol-keyed hashes (an undocumented internal API), switch those payloads to string keys.

Full changelog: https://github.com/romansklenar/airtable-orm/blob/main/CHANGELOG.md
Full diff: v0.2.0...v0.2.1