Garner v0.4.0 Release Notes

Release Date: 2013-06-17 // almost 11 years ago
    • ⬆️ Complete rewrite of Garner. See [UPGRADING](UPGRADING.md) for details on how to upgrade from Garner 0.3.3 and earlier versions - @fancyremarker.
    • 🛠 Fixed #6: Garner fails if Mongoid not loaded yet - @fancyremarker.
    • Closed #12: Support arrays in Garner.config.mongoid_identity_fields- @fancyremarker.
    • Closed #13: Replace faulty multiple-identity logic- @fancyremarker.
    • 🛠 Fixed #14: Disambiguate binding models by :id and :slug- @fancyremarker.
    • 🛠 Fixed #15: Remove need for cache_as from subclassed Mongoid models - @fancyremarker.
    • Closed #23: Abstract all Grape mixins to be more generically Rack mixins - @fancyremarker.
    • Closed #24: Implement garnered_find method for Mongoid::Document classes - @fancyremarker.
    • Extracted Binding, Context and Identity as explicit classes from ObjectIdentity - @fancyremarker.
    • ➕ Added support for all ActiveModel-compliant ORMs - @fancyremarker.
    • ✂ Removed HTTP caching responsibilities from the library entirely - @fancyremarker.
    • Introduced a SafeCacheKey binding key strategy, which appends subsecond precision to cache keys, to make them usable - @fancyremarker.
    • Added a cache_key implementation at the class level in Mongoid, which returns the cache_key of the most recently updated document in the collection (by :updated_at) - @fancyremarker.
    • 🛠 Fixed #29: Restrict the filename string used for the Caller context key strategy to just the portion of the path relevant to the current app. In a Rails app, this defaults to Rails.root; otherwise we search for the nearest ancestor directory containing a Gemfile - @fancyremarker.