Skip to content

Latest commit

 

History

History
178 lines (124 loc) · 15.2 KB

CHANGELOG.md

File metadata and controls

178 lines (124 loc) · 15.2 KB

0.9.0 (Next)

0.8.5 (2021/09/18)

  • #250: Migrate to Github actions - @johnnyshields.
  • #249: Don't update version on embedded documents if the document itself is being destroyed - @getaroom.
  • #248: Don't update version on embedded documents if an ancestor is being destroyed in the same operation - @getaroom.

0.8.4 (2021/09/18)

  • Not released.

0.8.3 (2020/06/17)

  • #236: Fix Ruby 2.7 keyword argument warnings - @vasilysn.
  • #237: Fix tracking subclasses with additional fields - @getaroom.
  • #239: Optimize modified_attributes_for_create 6-7x - @getaroom.
  • #240: Mongoid::History.disable and disable_tracking now restore the original state - @getaroom.
  • #240: Added Mongoid::History.enable, Mongoid::History.enable!, Mongoid::History.disable!, enable_tracking, enable_tracking!, and disable_tracking! - @getaroom.

0.8.2 (2019/12/02)

  • #233: Bug fix-Track ALL embedded relations when used with fields and filtered attributes on embedded objects - @jagdeepsingh.
  • #232: Bug/187 track changes from embedded documents (not deeply nested) - @Startouf.
  • #227: Store options in inheritable class attributes - @jnfeinstein.
  • #229, #225: Fixed inheritance of history_trackable_options - @jnfeinstein.

0.8.1 (2018/06/28)

0.8.0 (2018/01/16)

0.7.0 (2017/11/14)

  • #202: Do not create tracker on persistence error - @mikwat.
  • #196: Fix bug causing history tracks to get mixed up between multiple trackers when using multiple trackers - @ojbucao.

0.6.1 (2017/01/04)

0.6.0 (2016/09/13)

  • #2: Forked into the mongoid organization - @dblock.
  • #1: Added Danger, PR linter - @dblock.
  • #166: Hash fields should default to an empty Hash - @johnnyshields.
  • #162: Do not consider embedded relations as dynamic fields - @JagdeepSingh.
  • #144: Can modify history tracker insertion on object creation - @sivagollapalli.
  • #155: Add support to whitelist the attributes for tracked embeds_one and embeds_many relations - @JagdeepSingh.
  • #154: Prevent soft-deleted embedded documents from tracking - @JagdeepSingh.
  • #151: Added ability to customize tracker class for each trackable; multiple trackers across the app are now possible - @JagdeepSingh.
  • #151: Added automatic support for request_store gem as drop-in replacement for Thread.current - @JagdeepSingh.
  • #150: Added support for keeping embedded objects audit history in parent itself - @JagdeepSingh.

0.5.0 (2015/09/18)

  • #143: Added support for Mongoid 5 - @dblock.
  • #133: Added dynamic attributes tracking (Mongoid::Attributes::Dynamic) - @minisai.
  • #142: Allow non-database fields to be specified in conjunction with a custom changes method - @kayakyakr.

0.4.7 (2015/04/06)

  • #124: You can require both mongoid-history and mongoid/history - @dblock.

0.4.5 (2015/02/09)

  • #131: Added undo method, that helps to get specific version of an object without saving changes - @alexkravets.
  • #127: Fixed gem naming per rubygems specs, now you can require 'mongoid/history' - @nofxx.
  • #129: Support multiple levels of embedded polimorphic documents - @BrunoChauvet.
  • #123: Used a method compatible with mongoid-observers to determinine the version of Mongoid - @zeitnot.

0.4.4 (2014/7/29)

  • #111: Fixed compatibility of undo! and redo! methods with Rails 3.x - @mrjlynch.

0.4.3 (2014/07/10)

0.4.2 (2014/07/01)

  • #106: Added support for polymorphic relationship scope - @adbeelitamar.
  • #106: Enabled specifying an array of relationships in scope - @adbeelitamar.
  • #83: Added support for Mongoid 4.x, which removed attr_accessible in favor of protected attributes - @dblock.
  • #103: Fixed compatibility with models using default_scope - @mrjlynch.

0.4.1 (2014/01/11)

  • Fixed compatibility with Mongoid 4.x - @dblock.
  • Mongoid::History::Sweeper has been removed, in accorance with Mongoid 4.x (see #3108) and Rails 4.x observer deprecation - @dblock.
  • Default modifier parameter to nil in undo! and redo! - @dblock.
  • Fixed undo! and redo! for mass-assignment protected attributes - @mati0090.
  • Implemented Rubocop, Ruby style linter - @dblock.
  • Remove unneeded coma from README - @matsprea.
  • Replace Jeweler with Gem-Release - @johnnyshields.
  • Track version as a Ruby file - @johnnyshields.

0.4.0 (2013/06/12)

  • Added Mongoid::History.disable and Mongoid::History.enabled? methods for global tracking disablement - @johnnyshields.
  • Added :changes_method that optionally overrides which method to call to collect changes - @joelnordel.
  • The :destroy action now stores trackers in the format original=value, modified=nil (previously it was the reverse) - @johnnyshields.
  • Support for polymorphic embedded classes - @tstepp.
  • Support for Mongoid field aliases, e.g. field :n, as: :name - @johnnyshields.
  • Support for Mongoid embedded aliases, e.g. embeds_many :comments, store_as: :coms - @johnnyshields.
  • Added #tracked_changes and #tracked_edits methods to Tracker class for nicer change summaries - @johnnyshields and @tstepp.
  • Refactored and exposed #trackable_parent_class in Tracker, which returns the class of the trackable regardless of whether the trackable itself has been destroyed - @johnnyshields.
  • Added class-level #tracked_field? and #tracked_fields methods; refactor logic to determine whether a field is tracked - @johnnyshields.
  • Fixed bug in Trackable#track_update where return condition at beginning of method caused a short-circuit where memoization would not be cleared properly - @johnnyshields.
  • Tests: Added spec for nested embedded documents - @matekb.
  • Tests: Test run time cut in half (~2.5s versus ~5s) by using #let helper and removing class initialization before each test - @johnnyshields.
  • Tests: Remove database_cleaner gem in favor of Mongoid.purge! - @johnnyshields.
  • Tests: Remove dependency on non-committed file mongoid.yml and hardcode collection to mongoid_history_test - @johnnyshields.

0.3.3 (2013/04/01)

  • #42: Fix: corrected creation of association chain when using nested embedded documents - @matekb.
  • #56: Fix: now possible to undo setting (creating) attributes that was previously unset - @matekb.
  • #49: Fix: now correctly undo/redo localized fields - @edejong.

0.3.2 (2013/01/24)

  • #54: Used an index instead of the $elemMatch selector in history_tracks - @vecio.
  • #11: Added :modifier_field_inverse_of on track_history that defines the :inverse_of relationship of the modifier class - @matekb, @dblock.

0.3.1 (2012/11/16)

  • #45: Fix: intermittent hash ordering issue with history_tracks - @getaroom.
  • #50: Fix: tracking of array changes, undo and redo of field changes on non-embedded objects - @dblock.

0.3.0 (2012/08/21)

0.2.4 (2012/08/21)

  • #38: Fix: allow sub-models to be tracked by using collection_name as the scope - @acant.
  • #35: Fix: sweeper references record of change, not the record changed - @dblock.

0.2.3 (2012/04/20)

  • #23: Updated Trackable::association_hash to write through parent - @tcopple.
  • Fix: Trackable::association_hash nil meta value call - @tcopple.
  • #27: Added support for re-creation of destroyed embedded documents - @erlingwl.

0.1.7 (2011/12/09)

  • Fix: tracking false values - @gottfrois.
  • Used a mongoid observer and controller around_filter to pick up modifying user from controller - @bensymonds.
  • More flexible dependency on mongoid - @sarcilav.
  • Fix: tracking broken in a multithreaded environment - @dblock.

0.1.0 (2011/05/13)

  • Added support for destroy - @dblock.
  • Added undo and redo - @aq1018.
  • Added support for temporarily disabling history tracking - @aq1018.
  • Record modifier for undo and redo actions - @aq1018.

0.0.1 (2011/03/04)