All Versions
29
Latest Version
Avg Release Cycle
79 days
Latest Release
917 days ago

Changelog History
Page 2

  • v0.8.0 Changes

    October 01, 2018

    🔋 Features

    Added ability to specify the debounce time to avoid spamming logs creation.

    👀 See PR #87.

    Usage:

    # 5000msrails generate logidze:model story --debounce\_time=5000
    

    👀 You see the following in generated migration

    CREATE TRIGGER logidze\_on\_stories BEFORE UPDATE OR INSERT ON stories FOR EACH ROW WHEN (coalesce(#{current\_setting('logidze.disabled')}, '') \<\> 'on') EXECUTE PROCEDURE logidze\_logger(null, 'updated\_at', null, 5000);
    

    ⬆️ How to upgrade.

    ⚡️ Please run rails generate logidze:install --update to regenerate stored functions.

    ✅ This feature checks if several logs came in within a debounce time period then only keep the latest one
    🔀 by merging the latest in previous others.

    The concept is similar to https://underscorejs.org/#debounce

    without debounce_time

    { "h": [{ "c": { "content": "Content 1" }, "v": 1, "ts": 0 }, { "c": { "content": "content 2", "active": true }, "v": 2, "ts": 100 }, { "c": { "content": "content 3", }, "v": 3, "ts": 101 }], "v": 3}
    

    with debounce_time of 10ms

    { "h": [{ "c": { "content": "Content 1" }, "v": 1, "ts": 0 }, { "c": { "content": "content 3", "active": true }, "v": 2, "ts": 101 }], "v": 3}
    
  • v0.7.0 Changes

    August 29, 2018
    • 🛠 [Fixes #75] Fix association versioning with an optional belongs to ([@ankursethi-uscis][])

    • [PR #79] Allow adding meta information to versions using with_meta (addressed Issue [#60]). ([@DmitryTsepelev][])

    Usage:

    Logidze.with_meta(ip: request.ip) { post.save }
    puts post.meta # => { 'ip' => '95.66.157.226' }
    

    ⬆️ How to upgrade.

    ⚡️ Please run rails generate logidze:install --update to regenerate stored functions.

    This feature replaces the implementation of with_responsible, now responsible_id is stored inside of the meta hash with the key _r.

    There is fallback to the old data structure ({ 'r' => 42 } opposed to { 'm' => { '_r' => 42 } } in the current implementation), so responsible_id should work as usual for the existing data.

    If you've accessed the value manually (e.g. post.log_data.current_version.data['r']), you'll have to add the fallback too.

  • v0.6.5 Changes

    August 08, 2018
    • 🚅 Make compatible with Rails 5.2.1 ([@palkan][])
  • v0.6.4 Changes

    April 30, 2018
    • 🚚 [Fixes #70] Ignore missing (e.g. removed) columns in diffs and past versions. ([@palkan][])

    👀 This is a quick fix for a more general problem (see #59).

  • v0.6.3 Changes

    January 17, 2018
    • 🛠 [Fixes #57] Support associations versioning for at(version:). ([@palkan][])

    • ➕ Add rubocop-md

  • v0.6.2 Changes

    January 11, 2018
    • 🛠 [Fixes #53] Fix storing empty log entries with blacklisting. ([@charlie-wasp][])
  • v0.6.1 Changes

    January 06, 2018
    • 🚅 [Fixes #54] Fix loading of ActiveModel::Type::Value for Rails 5.2. ([@palkan][])
  • v0.6.0 Changes

    December 27, 2017
    • 🛠 [Fixes #33] Support attributes types. ([@palkan][])

    Added deserialization of complex types (such as jsonb, arrays, whatever).

    • 👉 Use positional arguments in at/diff_from methods and allow passing version. ([@palkan][])

    Now you can write post.diff_from(time: ts), post.diff_from(version: x), Post.at(time: 1.day.ago)`, etc.

    NOTE: the previous behaviour is still supported (but gonna be deprecated), i.e. you still can use post.diff_from(ts) if you don't mind the deprecation warning.

  • v0.5.3 Changes

    August 22, 2017
    • ➕ Add --update flag to model migration. ([@palkan][])
  • v0.5.2 Changes

    June 19, 2017
    • 🚅 Use versioned migrations in Rails 5+. ([@palkan][])