All notable changes to this project are documented in this file.
The format follows Keep a Changelog and the project adheres to Semantic Versioning.
- CI now pins PIOArduino Core to
v6.1.19and installs the ESP32 platform viapio pkg install, restoring PlatformIO compatibility with the currentplatform-espressif32package. - Added teardown contract support with
deinit(),isInitialized(), and destructor-driven cleanup. - Added lifecycle tests covering pre-init
deinit(), repeateddeinit(), andinit -> deinit -> init. - Updated README and examples to use explicit
deinit(). - Removed
ready()in favor ofisInitialized()(no compatibility alias). - Added
setDefault()and the no-argumentgetOr()overload for stored defaults. - Added
ESPStoreCodechelpers for IPAddress and ESPDate DateTime (epoch + ISO-8601). - Added examples for codec usage, runtime overrides, and clearing/reseeding stores.
- Added LocalDateTime codec example using
{ epochSeconds, offsetMinutes }. - Added
ESPStoreCodec::decodeLocalDateTimehelper. - Added
ESPStoreCodec::encodeLocalDateTimehelper. - Added
init(db, collection, key)overloads so multipleESPStoreinstances can share one collection safely with unique keys. - Changed
clear()to remove only the current store key instead of dropping the entire collection. - Fixed ArduinoJson v7 explicit-constructor warning in
get()by avoiding brace aggregate initialization ofStoreResponse.
1.0.0 - 2026-02-05
- Initial release of ESPStore, a single-document key/value store built on ESPJsonDB.
get,set, andgetOrhelpers for configuration-style storage.- Examples for quick start usage and default-value retrieval.