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.tablesafter the cache warmed up (24 h expiry, shared store in Rails hosts) now resolves immediately instead of raisingConfigurationErroruntil 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 onwhere/all/find, two per record on batch updates. The (undocumented)instantiate_from_api_responseandapply_response_fieldsnow expect string-keyed parsed payloads, i.e. the shape the JSON middleware produces;createdTimeparsing lives in the singlePersistence.parse_created_timehelper.
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_fieldsdirectly 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