Sha256: bc5c064ed65a89be9961f3d8bbab6944955f2df34132a508f027f3f71043b695

Contents?: true

Size: 1.87 KB

Versions: 1

Compression:

Stored size: 1.87 KB

Contents

## Version 0.9.1

* To preserve the order and limit of ActiveRecord Relations, use of
  `ActiveRecord::Relation#find_in_batches` has been removed in favor of
  `Enumerable#each_slice` during batch caching.

## Version 0.9.0

* `as_json` and `to_json` now take a block. The block will be applied to each
  model as it is being cached, allowing for serializers or presenters without
  much additional memory overhead.
* `as_json` has been removed. The overhead from marshalling/unmarshalling had
  enough overhead that it negated the caching benefits.
* Strategies no longer expect a `suffix` property, as anything cached is
  expected to be a JSON string.
* Caching is performed in batches, which can be controlled by passing
  `batch_size` through to `to_json`. Arrays are refined to support
  `find_in_batches` in order to maintain compatibility with ActiveRecord
  Relations. For especially large collections this can provide significant
  memory savings (particularly when paired with passing a block through for
  custom serialization).

## Version 0.8.2

* Really force the use of custom `fetch_multi` when using `NullStore`, not just
  when using `MemoryStore`.

## Version 0.8.1

* Force use of custom implementation of `fetch_multi`. This makes using the
  default ActiveSupport stores (Memory) possible in versions of Rails between
  4.0 and 4.2.
* Use array extract option support in custom fetch.

## Version 0.8.0

* Support reconstructing collections of rooted objects and associations.

## Version 0.7.0

* Alter the implementation of `fetch_multi` to return a hash rather than an
  array. This is consistent with the new Dalli implementation, and what should
  be new the Rails implementation.

## Version 0.6.0

* Prevent frozen string errors by duplicating hash keys before fetching.
* Use the native cache store's `fetch_multi` implementation if available.

## Version 0.5.0

* Initial release!

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
perforated-0.9.1 CHANGELOG.md