mirror of
				https://github.com/paper-trail-gem/paper_trail.git
				synced 2022-11-09 11:33:19 -05:00 
			
		
		
		
	Refer changelog readers to master branch
This commit is contained in:
		
							parent
							
								
									971c2c8269
								
							
						
					
					
						commit
						99bf789ec2
					
				
					 1 changed files with 2 additions and 863 deletions
				
			
		
							
								
								
									
										865
									
								
								CHANGELOG.md
									
										
									
									
									
								
							
							
						
						
									
										865
									
								
								CHANGELOG.md
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -1,866 +1,5 @@
 | 
			
		|||
# Changelog
 | 
			
		||||
 | 
			
		||||
This project follows [semver 2.0.0](http://semver.org/spec/v2.0.0.html) and the
 | 
			
		||||
recommendations of [keepachangelog.com](http://keepachangelog.com/).
 | 
			
		||||
See https://github.com/airblade/paper_trail/blob/master/CHANGELOG.md
 | 
			
		||||
 | 
			
		||||
## Unreleased
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
## 8.1.2 (2017-12-22)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#1028](https://github.com/airblade/paper_trail/pull/1028) Reifying
 | 
			
		||||
  associations will now use `base_class` name instead of class name
 | 
			
		||||
  to reify STI models corrrectly.
 | 
			
		||||
 | 
			
		||||
## 8.1.1 (2017-12-10)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#1018](https://github.com/airblade/paper_trail/pull/1018)
 | 
			
		||||
  Serializing postgres arrays
 | 
			
		||||
 | 
			
		||||
## 8.1.0 (2017-11-30)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- [#997](https://github.com/airblade/paper_trail/pull/997)
 | 
			
		||||
  Deprecate `where_object_changes` when reading YAML from a text column
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#1009](https://github.com/airblade/paper_trail/pull/1009)
 | 
			
		||||
  End generated `config/initializers/paper_trail.rb` with newline.
 | 
			
		||||
 | 
			
		||||
## 8.0.1 (2017-10-25)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#1003](https://github.com/airblade/paper_trail/pull/1003) - Warn when PT
 | 
			
		||||
  cannot be loaded because rails is not loaded yet.
 | 
			
		||||
 | 
			
		||||
## 8.0.0 (2017-10-04)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- Drop support for rails 4.0 and 4.1, whose EoL was
 | 
			
		||||
  [2016-06-30](http://weblog.rubyonrails.org/2016/6/30/Rails-5-0-final/)
 | 
			
		||||
- Drop support for ruby 2.1, whose EoL was [2017-04-01](http://bit.ly/2ppWDYa)
 | 
			
		||||
- [#803](https://github.com/airblade/paper_trail/issues/803) -
 | 
			
		||||
  where_object_changes no longer supports reading json from a text column
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#996](https://github.com/airblade/paper_trail/pull/996) - Incorrect
 | 
			
		||||
  item_type in association reification query
 | 
			
		||||
 | 
			
		||||
## 7.1.3 (2017-09-19)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#988](https://github.com/airblade/paper_trail/pull/988) - Fix ActiveRecord
 | 
			
		||||
  version check in `VersionConcern` for Rails 4.0
 | 
			
		||||
 | 
			
		||||
## 7.1.2 (2017-08-30)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#985](https://github.com/airblade/paper_trail/pull/985) - Fix RecordInvalid
 | 
			
		||||
  error on nil item association when belongs_to_required_by_default is enabled.
 | 
			
		||||
## 7.1.1 (2017-08-18)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- Stop including unnecessary files in released gem. Reduces .gem file size
 | 
			
		||||
  from 100K to 30K.
 | 
			
		||||
- [#984](https://github.com/airblade/paper_trail/pull/984) - Fix NameError
 | 
			
		||||
  suspected to be caused by autoload race condition.
 | 
			
		||||
 | 
			
		||||
## 7.1.0 (2017-07-09)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- [#803](https://github.com/airblade/paper_trail/issues/803)
 | 
			
		||||
  Deprecate `where_object_changes` when reading json from a text column
 | 
			
		||||
- [#976](https://github.com/airblade/paper_trail/pull/976)
 | 
			
		||||
  `PaperTrail.whodunnit` accepts a `Proc`
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
## 7.0.3 (2017-06-01)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#959](https://github.com/airblade/paper_trail/pull/959) -
 | 
			
		||||
  Add migration version (eg. `[5.1]`) to all migration generators.
 | 
			
		||||
 | 
			
		||||
## 7.0.2 (2017-04-26)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- [#932](https://github.com/airblade/paper_trail/pull/932) -
 | 
			
		||||
  `PaperTrail.whodunnit` now accepts a block.
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#956](https://github.com/airblade/paper_trail/pull/956) -
 | 
			
		||||
  Fix ActiveRecord >= 5.1 version check
 | 
			
		||||
 | 
			
		||||
## 7.0.1 (2017-04-10)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- Generate cleaner migrations for databases other than MySQL
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#949](https://github.com/airblade/paper_trail/issues/949) - Inherit from the
 | 
			
		||||
  new versioned migration class, e.g. `ActiveRecord::Migration[5.1]`
 | 
			
		||||
 | 
			
		||||
## 7.0.0 (2017-04-01)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- Drop support for ruby 1.9.3, whose EOL was 2015-02-23
 | 
			
		||||
- Drop support for ruby 2.0.0, whose EOL was 2016-02-24
 | 
			
		||||
- Remove deprecated config methods:
 | 
			
		||||
  - PaperTrail.serialized_attributes?
 | 
			
		||||
  - PaperTrail.config.serialized_attributes
 | 
			
		||||
  - PaperTrail.config.serialized_attributes=
 | 
			
		||||
- Sinatra integration moved to
 | 
			
		||||
  [paper_trail-sinatra](https://github.com/jaredbeck/paper_trail-sinatra) gem
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- `PaperTrail.gem_version` returns a `Gem::Version`, nice for comparisons.
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#925](https://github.com/airblade/paper_trail/pull/925) - Update RSpec
 | 
			
		||||
  matchers to work with custom version association names
 | 
			
		||||
- [#929](https://github.com/airblade/paper_trail/pull/929) -
 | 
			
		||||
  Fix error calling private method in rails 4.0
 | 
			
		||||
- [#938](https://github.com/airblade/paper_trail/pull/938) - Fix bug where
 | 
			
		||||
  non-standard foreign key names broke belongs_to associations
 | 
			
		||||
- [#940](https://github.com/airblade/paper_trail/pull/940) - When destroying
 | 
			
		||||
  versions to stay under version_limit, don't rely on the database to
 | 
			
		||||
  implicitly return the versions in the right order
 | 
			
		||||
 | 
			
		||||
## 6.0.2 (2016-12-13)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- `88e513f` - Surprise argument modification bug in `where_object_changes`
 | 
			
		||||
- `c7efd62` - Column type-detection bug in `where_object_changes`
 | 
			
		||||
- [#905](https://github.com/airblade/paper_trail/pull/905) - Only invoke
 | 
			
		||||
  `logger.warn` if `logger` instance exists
 | 
			
		||||
 | 
			
		||||
### Code Quality
 | 
			
		||||
 | 
			
		||||
- Improve Metrics/AbcSize from 30 to 22
 | 
			
		||||
- Improve Metrics/PerceivedComplexity from 10 to 9
 | 
			
		||||
 | 
			
		||||
## 6.0.1 (2016-12-04)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- Remove rails 3 features that are no longer supported, most notably,
 | 
			
		||||
  `protected_attributes`.
 | 
			
		||||
 | 
			
		||||
## 6.0.0 (2016-12-03)
 | 
			
		||||
 | 
			
		||||
Now with rails 5.1 support, and less model pollution! About 40 methods that were
 | 
			
		||||
polluting your models' namespaces have been removed, reducing the chances of a
 | 
			
		||||
name conflict with your methods.
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- [#898](https://github.com/airblade/paper_trail/pull/898) - Dropped support
 | 
			
		||||
  for rails 3
 | 
			
		||||
- [#864](https://github.com/airblade/paper_trail/pull/864) - The model methods
 | 
			
		||||
  deprecated in 5.2.0 have been removed. Use `paper_trail.x` instead of `x`.
 | 
			
		||||
- [#861](https://github.com/airblade/paper_trail/pull/861) - `timestamp_field=`
 | 
			
		||||
  removed without replacement. It is no longer configurable. The
 | 
			
		||||
  timestamp field in the `versions` table must now be named `created_at`.
 | 
			
		||||
 | 
			
		||||
### Deprecated
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- [#900](https://github.com/airblade/paper_trail/pull/900/files) -
 | 
			
		||||
  Support for rails 5.1
 | 
			
		||||
- [#881](https://github.com/airblade/paper_trail/pull/881) - Add RSpec matcher
 | 
			
		||||
  `have_a_version_with_changes` for easier testing.
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
## 5.2.3 (2016-11-29)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Deprecated
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#889](https://github.com/airblade/paper_trail/pull/889) -
 | 
			
		||||
  Fix warning message in instances when a version can't be persisted due to validation errors.
 | 
			
		||||
- [#868](https://github.com/airblade/paper_trail/pull/868)
 | 
			
		||||
  Fix usage of find_by_id when primary key is not id, affecting reifying certain records.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
## 5.2.2 (2016-09-08)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Deprecated
 | 
			
		||||
 | 
			
		||||
- [#863](https://github.com/airblade/paper_trail/pull/863) -
 | 
			
		||||
  PaperTrail.timestamp_field= deprecated without replacement.
 | 
			
		||||
  See [#861](https://github.com/airblade/paper_trail/pull/861) for discussion.
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
## 5.2.1 (2016-09-02)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Deprecated
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#857](https://github.com/airblade/paper_trail/pull/857) -
 | 
			
		||||
  Fix deserialization of enums written by PT 4.
 | 
			
		||||
- [#798](https://github.com/airblade/paper_trail/issues/798) -
 | 
			
		||||
  Fix a rare bug with serialization of enums in rails 4.2 only when
 | 
			
		||||
  using `touch_with_version`.
 | 
			
		||||
 | 
			
		||||
## 5.2.0 (2016-06-27)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Deprecated
 | 
			
		||||
 | 
			
		||||
- [#719](https://github.com/airblade/paper_trail/pull/719) -
 | 
			
		||||
  The majority of model methods. Use paper_trail.x instead of x. Why? Your
 | 
			
		||||
  models are a crowded namespace, and we want to get out of your way!
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
## 5.1.1 (2016-05-31)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#813](https://github.com/airblade/paper_trail/pull/813) -
 | 
			
		||||
  Warning for paper_trail_on_destroy(:after) for pre-releases of AR 5
 | 
			
		||||
- [#651](https://github.com/airblade/paper_trail/issues/651) -
 | 
			
		||||
  Bug with installing PT on MySQL <= 5.6
 | 
			
		||||
 | 
			
		||||
## 5.1.0 (2016-05-20)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- [#809](https://github.com/airblade/paper_trail/pull/809) -
 | 
			
		||||
  Print warning if version cannot be saved.
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#812](https://github.com/airblade/paper_trail/pull/812) -
 | 
			
		||||
  Issue with saving HABTM associated objects using accepts_nested_attributes_for
 | 
			
		||||
- [#811](https://github.com/airblade/paper_trail/pull/811) -
 | 
			
		||||
  Avoid unnecessary query in #record_destroy
 | 
			
		||||
- Improvements to documentation
 | 
			
		||||
 | 
			
		||||
## 5.0.1 (2016-05-04)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#791](https://github.com/airblade/paper_trail/issues/791) -
 | 
			
		||||
  A rare issue in applications that override `warn`.
 | 
			
		||||
- [#789](https://github.com/airblade/paper_trail/issues/789) -
 | 
			
		||||
  A potentially common issue, in applications with initializers that use
 | 
			
		||||
  versioned models.
 | 
			
		||||
 | 
			
		||||
## 5.0.0 (2016-05-02)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- [#758](https://github.com/airblade/paper_trail/pull/758) -
 | 
			
		||||
  `PaperTrail.config.track_associations` getter method removed,
 | 
			
		||||
  use `track_associations?` instead.
 | 
			
		||||
- [#740](https://github.com/airblade/paper_trail/issues/740) -
 | 
			
		||||
  `PaperTrail.config.track_associations?` now defaults to false
 | 
			
		||||
- [#723](https://github.com/airblade/paper_trail/pull/723) -
 | 
			
		||||
  `PaperTrail.enabled=` now affects all threads
 | 
			
		||||
- [#556](https://github.com/airblade/paper_trail/pull/556) /
 | 
			
		||||
  [#301](https://github.com/airblade/paper_trail/issues/301) -
 | 
			
		||||
  If you are tracking who is responsible for changes with `whodunnit`, be aware
 | 
			
		||||
  that PaperTrail no longer adds the `set_paper_trail_whodunnit` before_action
 | 
			
		||||
  for you. Please add this before_action to your ApplicationController to
 | 
			
		||||
  continue recording whodunnit. See the readme for an example.
 | 
			
		||||
- [#683](https://github.com/airblade/paper_trail/pull/683) /
 | 
			
		||||
  [#682](https://github.com/airblade/paper_trail/issues/682) -
 | 
			
		||||
  Destroy callback default changed to :before to accommodate ActiveRecord 5
 | 
			
		||||
  option `belongs_to_required_by_default` and new Rails 5 default.
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- [#771](https://github.com/airblade/paper_trail/pull/771) -
 | 
			
		||||
  Added support for has_and_belongs_to_many associations
 | 
			
		||||
- [#741](https://github.com/airblade/paper_trail/issues/741) /
 | 
			
		||||
  [#681](https://github.com/airblade/paper_trail/pull/681)
 | 
			
		||||
  MySQL unicode support in migration generator
 | 
			
		||||
- [#689](https://github.com/airblade/paper_trail/pull/689) -
 | 
			
		||||
  Rails 5 compatibility
 | 
			
		||||
- Added a rails config option: `config.paper_trail.enabled`
 | 
			
		||||
- [#503](https://github.com/airblade/paper_trail/pull/730) -
 | 
			
		||||
  Support for reifying belongs_to associations.
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#777](https://github.com/airblade/paper_trail/issues/777) -
 | 
			
		||||
  Support HMT associations with `:source` option.
 | 
			
		||||
- [#738](https://github.com/airblade/paper_trail/issues/738) -
 | 
			
		||||
  Rare bug where a non-versioned STI parent caused `changeset` to
 | 
			
		||||
  return an empty hash.
 | 
			
		||||
- [#731](https://github.com/airblade/paper_trail/pull/731) -
 | 
			
		||||
  Map enums to database values before storing in `object_changes` column.
 | 
			
		||||
- [#715](https://github.com/airblade/paper_trail/issues/715) -
 | 
			
		||||
  Optimize post-rollback association reset.
 | 
			
		||||
- [#701](https://github.com/airblade/paper_trail/pull/701) /
 | 
			
		||||
  [#699](https://github.com/airblade/paper_trail/issues/699) -
 | 
			
		||||
  Cleaning old versions explicitly preserves the most recent
 | 
			
		||||
  versions instead of relying on database result ordering.
 | 
			
		||||
- [#635](https://github.com/airblade/paper_trail/issues/635) -
 | 
			
		||||
  A bug where it was not possible to disable PT when using a multi-threaded
 | 
			
		||||
  webserver.
 | 
			
		||||
- [#584](https://github.com/airblade/paper_trail/issues/584) -
 | 
			
		||||
  Fixed deprecation warning for Active Record after_callback / after_commit
 | 
			
		||||
 | 
			
		||||
## 4.2.0 (2016-05-31)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- [#808](https://github.com/airblade/paper_trail/pull/808) -
 | 
			
		||||
  Warn when destroy callback is set to :after with ActiveRecord 5
 | 
			
		||||
  option `belongs_to_required_by_default` set to `true`.
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
## 4.1.0 (2016-01-30)
 | 
			
		||||
 | 
			
		||||
### Known Issues
 | 
			
		||||
 | 
			
		||||
- Version changesets now store ENUM values incorrectly (as nulls). Previously the values were stored as strings. This only affects Rails 4, not Rails 5. See [#926](https://github.com/airblade/paper_trail/pull/926)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- A way to control the order of AR callbacks.
 | 
			
		||||
  [#614](https://github.com/airblade/paper_trail/pull/614)
 | 
			
		||||
- Added `unversioned_attributes` option to `reify`.
 | 
			
		||||
  [#579](https://github.com/airblade/paper_trail/pull/579)
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
## 4.0.2 (2016-01-19)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#696](https://github.com/airblade/paper_trail/issues/696) /
 | 
			
		||||
  [#697](https://github.com/airblade/paper_trail/pull/697)
 | 
			
		||||
  Bind JSON query parameters in `where_object` and `where_object_changes`.
 | 
			
		||||
 | 
			
		||||
## 4.0.1 (2015-12-14)
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- None
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#636](https://github.com/airblade/paper_trail/issues/636) -
 | 
			
		||||
  Should compile assets without a db connection
 | 
			
		||||
- [#589](https://github.com/airblade/paper_trail/pull/589) /
 | 
			
		||||
  [#588](https://github.com/airblade/paper_trail/issues/588) -
 | 
			
		||||
  Fixes timestamp for "create" versions
 | 
			
		||||
 | 
			
		||||
## 4.0.0 (2015-07-30)
 | 
			
		||||
 | 
			
		||||
This major release adds JSON column support in PostgreSQL, limited support for
 | 
			
		||||
versioning associations, various new configuration options, and a year's worth
 | 
			
		||||
of bug fixes. Thanks to everyone who helped test the two betas and two release
 | 
			
		||||
candidates.
 | 
			
		||||
 | 
			
		||||
### Breaking Changes
 | 
			
		||||
 | 
			
		||||
- Using a Rails initializer to reopen PaperTrail::Version or otherwise extend
 | 
			
		||||
  PaperTrail is no longer recommended. An alternative is described in the
 | 
			
		||||
  readme. See https://github.com/airblade/paper_trail/pull/557 and
 | 
			
		||||
  https://github.com/airblade/paper_trail/pull/492.
 | 
			
		||||
- If you depend on the `RSpec` or `Cucumber` helpers, you must
 | 
			
		||||
  [require them in your test helper](https://github.com/airblade/paper_trail#testing).
 | 
			
		||||
- [#566](https://github.com/airblade/paper_trail/pull/566) - Removed deprecated
 | 
			
		||||
  methods `paper_trail_on` and `paper_trail_off`. Use `paper_trail_on!` and
 | 
			
		||||
  `paper_trail_off!` instead.
 | 
			
		||||
- [#458](https://github.com/airblade/paper_trail/pull/458) - Version metadata
 | 
			
		||||
  (the `:meta` option) from AR attributes for `create` events will now save the
 | 
			
		||||
  current value instead of `nil`.
 | 
			
		||||
- [#391](https://github.com/airblade/paper_trail/issues/391) - `object_changes`
 | 
			
		||||
  value should dump to `YAML` as a normal `Hash` instead of an
 | 
			
		||||
  `ActiveSupport::HashWithIndifferentAccess`.
 | 
			
		||||
- [#375](https://github.com/airblade/paper_trail/pull/375) /
 | 
			
		||||
  [#374](https://github.com/airblade/paper_trail/issues/374) /
 | 
			
		||||
  [#354](https://github.com/airblade/paper_trail/issues/354) /
 | 
			
		||||
  [#131](https://github.com/airblade/paper_trail/issues/131) -
 | 
			
		||||
  Versions are now saved with an `after_` callback, instead of a `before_`
 | 
			
		||||
  callback. This ensures that the timestamp field for a version matches the
 | 
			
		||||
  corresponding timestamp in the model.
 | 
			
		||||
- `3da1f104` - `PaperTrail.config` and `PaperTrail.configure` are now
 | 
			
		||||
  identical: both return the `PaperTrail::Config` instance and also
 | 
			
		||||
  yield it if a block is provided.
 | 
			
		||||
 | 
			
		||||
### Added
 | 
			
		||||
 | 
			
		||||
- [#525](https://github.com/airblade/paper_trail/issues/525) /
 | 
			
		||||
  [#512](https://github.com/airblade/paper_trail/pull/512) -
 | 
			
		||||
  Support for virtual accessors and redefined setter and getter methods.
 | 
			
		||||
- [#518](https://github.com/airblade/paper_trail/pull/518) - Support for
 | 
			
		||||
  querying against PostgreSQL's
 | 
			
		||||
  [`JSON` and `JSONB` column types](http://www.postgresql.org/docs/9.4/static/datatype-json.html)
 | 
			
		||||
  via `PaperTrail::VersionConcern#where_object` and
 | 
			
		||||
  `PaperTrail::VersionConcern#where_object_changes`
 | 
			
		||||
- [#507](https://github.com/airblade/paper_trail/pull/507) -
 | 
			
		||||
  New option: `:save_changes` controls whether or not to save changes to the
 | 
			
		||||
  `object_changes` column (if it exists).
 | 
			
		||||
- [#500](https://github.com/airblade/paper_trail/pull/500) - Support for
 | 
			
		||||
  passing an empty array to the `on` option (`on: []`) to disable all
 | 
			
		||||
  automatic versioning.
 | 
			
		||||
- [#494](https://github.com/airblade/paper_trail/issues/494) - The install
 | 
			
		||||
  generator will warn the user if the migration they are attempting to
 | 
			
		||||
  generate already exists.
 | 
			
		||||
- [#484](https://github.com/airblade/paper_trail/pull/484) - Support for
 | 
			
		||||
  [PostgreSQL's `JSONB` Type](http://www.postgresql.org/docs/9.4/static/datatype-json.html)
 | 
			
		||||
  for storing `object` and `object_changes`.
 | 
			
		||||
- [#439](https://github.com/airblade/paper_trail/pull/439) /
 | 
			
		||||
  [#12](https://github.com/airblade/paper_trail/issues/12) -
 | 
			
		||||
  Support for versioning associations (has many, has one, etc.) one level deep.
 | 
			
		||||
- [#420](https://github.com/airblade/paper_trail/issues/420) - Add
 | 
			
		||||
  `VersionConcern#where_object_changes` instance method; acts as a helper for
 | 
			
		||||
  querying against the `object_changes` column in versions table.
 | 
			
		||||
- [#416](https://github.com/airblade/paper_trail/issues/416) - Added a
 | 
			
		||||
  `config` option for enabling/disabling utilization of
 | 
			
		||||
  `serialized_attributes` for `ActiveRecord`, necessary because
 | 
			
		||||
  `serialized_attributes` has been deprecated in `ActiveRecord` version `4.2`
 | 
			
		||||
  and will be removed in version `5.0`
 | 
			
		||||
- [#399](https://github.com/airblade/paper_trail/pull/399) - Add `:dup`
 | 
			
		||||
  argument for options hash to `reify` which forces a new model instance.
 | 
			
		||||
- [#394](https://github.com/airblade/paper_trail/pull/394) - Add RSpec matcher
 | 
			
		||||
  `have_a_version_with` for easier testing.
 | 
			
		||||
- [#347](https://github.com/airblade/paper_trail/pull/347) - Autoload
 | 
			
		||||
  `ActiveRecord` models in via a `Rails::Engine` when the gem is used with
 | 
			
		||||
  `Rails`.
 | 
			
		||||
 | 
			
		||||
### Fixed
 | 
			
		||||
 | 
			
		||||
- [#563](https://github.com/airblade/paper_trail/pull/563) - Fixed a bug in
 | 
			
		||||
  `touch_with_version` so that it will still create a version even when the
 | 
			
		||||
  `on` option is, e.g. `[:create]`.
 | 
			
		||||
- [#541](https://github.com/airblade/paper_trail/pull/541) -
 | 
			
		||||
  `PaperTrail.config.enabled` should be Thread Safe
 | 
			
		||||
- [#451](https://github.com/airblade/paper_trail/issues/451) - Fix `reify`
 | 
			
		||||
  method in context of model where the base class has a default scope, and the
 | 
			
		||||
  live instance is not scoped within that default scope.
 | 
			
		||||
- [#440](https://github.com/airblade/paper_trail/pull/440) - `versions`
 | 
			
		||||
  association should clear/reload after a transaction rollback.
 | 
			
		||||
- [#438](https://github.com/airblade/paper_trail/issues/438) -
 | 
			
		||||
  `ModelKlass.paper_trail_enabled_for_model?` should return `false` if
 | 
			
		||||
  `has_paper_trail` has not been declared on the class.
 | 
			
		||||
- [#404](https://github.com/airblade/paper_trail/issues/404) /
 | 
			
		||||
  [#428](https://github.com/airblade/paper_trail/issues/428) -
 | 
			
		||||
  `model_instance.dup` does not need to be invoked when examining what the
 | 
			
		||||
  instance looked like before changes were persisted, which avoids issues if a
 | 
			
		||||
  3rd party has overriden the `dup` behavior. Also fixes errors occuring when
 | 
			
		||||
  a user attempts to update the inheritance column on an STI model instance in
 | 
			
		||||
  `ActiveRecord` 4.1.x
 | 
			
		||||
- [#427](https://github.com/airblade/paper_trail/pull/427) - Fix `reify`
 | 
			
		||||
  method in context of model where a column has been removed.
 | 
			
		||||
- [#414](https://github.com/airblade/paper_trail/issues/414) - Fix
 | 
			
		||||
  functionality `ignore` argument to `has_paper_trail` in `ActiveRecord` 4.
 | 
			
		||||
- [#413](https://github.com/airblade/paper_trail/issues/413) - Utilize
 | 
			
		||||
  [RequestStore](https://github.com/steveklabnik/request_store) to ensure that
 | 
			
		||||
  the `PaperTrail.whodunnit` is set in a thread safe manner within Rails and
 | 
			
		||||
  Sinatra.
 | 
			
		||||
- [#381](https://github.com/airblade/paper_trail/issues/381) - Fix `irb`
 | 
			
		||||
  warning: `can't alias context from irb_context`. `Rspec` and `Cucumber`
 | 
			
		||||
  helpers should not be loaded by default, regardless of whether those
 | 
			
		||||
  libraries are loaded.
 | 
			
		||||
- [#248](https://github.com/airblade/paper_trail/issues/248) - In MySQL, to
 | 
			
		||||
  prevent truncation, generated migrations now use `longtext` instead of `text`.
 | 
			
		||||
- Methods handling serialized attributes should fallback to the currently set
 | 
			
		||||
  Serializer instead of always falling back to `PaperTrail::Serializers::YAML`.
 | 
			
		||||
 | 
			
		||||
### Deprecated
 | 
			
		||||
 | 
			
		||||
- [#479](https://github.com/airblade/paper_trail/issues/479) - Deprecated
 | 
			
		||||
  `originator` method, use `paper_trail_originator`.
 | 
			
		||||
 | 
			
		||||
## 3.0.9
 | 
			
		||||
 | 
			
		||||
  - [#479](https://github.com/airblade/paper_trail/issues/479) - Deprecated
 | 
			
		||||
    `originator` method in favor of `paper_trail_originator` Deprecation warning
 | 
			
		||||
    informs users that the `originator` of the methods will be removed in
 | 
			
		||||
    version `4.0`. (Backported from v4)
 | 
			
		||||
  - Updated deprecation warnings for `Model.paper_trail_on` and
 | 
			
		||||
    `Model.paper_trail_off` to have display correct version number the methods
 | 
			
		||||
    will be removed (`4.0`)
 | 
			
		||||
 | 
			
		||||
## 3.0.8
 | 
			
		||||
 | 
			
		||||
  - [#525](https://github.com/airblade/paper_trail/issues/525) / [#512](https://github.com/airblade/paper_trail/pull/512) -
 | 
			
		||||
    Support for virtual accessors and redefined setter and getter methods.
 | 
			
		||||
 | 
			
		||||
## 3.0.7
 | 
			
		||||
 | 
			
		||||
  - [#404](https://github.com/airblade/paper_trail/issues/404) / [#428](https://github.com/airblade/paper_trail/issues/428) -
 | 
			
		||||
    Fix errors occuring when a user attempts to update the inheritance column on an STI model instance in `ActiveRecord` 4.1.x
 | 
			
		||||
 | 
			
		||||
## 3.0.6
 | 
			
		||||
 | 
			
		||||
  - [#414](https://github.com/airblade/paper_trail/issues/414) - Backport fix for `ignore` argument to `has_paper_trail` in
 | 
			
		||||
    `ActiveRecord` 4.
 | 
			
		||||
 | 
			
		||||
## 3.0.5
 | 
			
		||||
 | 
			
		||||
  - [#401](https://github.com/airblade/paper_trail/issues/401) / [#406](https://github.com/airblade/paper_trail/issues/406) -
 | 
			
		||||
    `PaperTrail::Version` class is not loaded via a `Rails::Engine`, even when the gem is used within Rails. This feature has
 | 
			
		||||
    will be re-introduced in version `4.0`.
 | 
			
		||||
  - [#398](https://github.com/airblade/paper_trail/pull/398) - Only require the `RSpec` helper if `RSpec::Core` is required.
 | 
			
		||||
 | 
			
		||||
## 3.0.3
 | 
			
		||||
*This version was yanked from RubyGems and has been replaced by version `3.0.5`, which is almost identical, but does not eager load
 | 
			
		||||
in the `PaperTrail::Version` class through a `Rails::Engine` when the gem is used on Rails since it was causing issues for some users.*
 | 
			
		||||
 | 
			
		||||
  - [#386](https://github.com/airblade/paper_trail/issues/386) - Fix eager loading of `versions` association with custom class name
 | 
			
		||||
    in `ActiveRecord` 4.1.
 | 
			
		||||
  - [#384](https://github.com/airblade/paper_trail/issues/384) - Fix `VersionConcern#originator` instance method.
 | 
			
		||||
  - [#383](https://github.com/airblade/paper_trail/pull/383) - Make gem compatible with `ActiveRecord::Enum` (available in `ActiveRecord` 4.1+).
 | 
			
		||||
  - [#380](https://github.com/airblade/paper_trail/pull/380) / [#377](https://github.com/airblade/paper_trail/issues/377) -
 | 
			
		||||
    Add `VersionConcern#where_object` instance method; acts as a helper for querying against the `object` column in versions table.
 | 
			
		||||
  - [#373](https://github.com/airblade/paper_trail/pull/373) - Fix default sort order for the `versions` association in `ActiveRecord` 4.1.
 | 
			
		||||
  - [#372](https://github.com/airblade/paper_trail/pull/372) - Use [Arel](https://github.com/rails/arel) for SQL construction.
 | 
			
		||||
  - [#365](https://github.com/airblade/paper_trail/issues/365) - `VersionConcern#version_at` should return `nil` when receiving a timestamp
 | 
			
		||||
    that occured after the object was destroyed.
 | 
			
		||||
  - Expand `PaperTrail::VERSION` into a module, mimicking the form used by Rails to give it some additional modularity & versatility.
 | 
			
		||||
  - Fixed `VersionConcern#index` instance method so that it conforms to using the primary key for ordering when possible.
 | 
			
		||||
 | 
			
		||||
## 3.0.2
 | 
			
		||||
 | 
			
		||||
  - [#357](https://github.com/airblade/paper_trail/issues/357) - If a `Version` instance is reified and then persisted at that state,
 | 
			
		||||
    it's timestamp attributes for update should still get `touch`ed.
 | 
			
		||||
  - [#351](https://github.com/airblade/paper_trail/pull/351) / [#352](https://github.com/airblade/paper_trail/pull/352) -
 | 
			
		||||
    `PaperTrail::Rails::Controller` should hook into all controller types, and should not get loaded unless `ActionController` is.
 | 
			
		||||
  - [#346](https://github.com/airblade/paper_trail/pull/346) - `user_for_paper_trail` method should accommodate different types
 | 
			
		||||
    for return values from `current_user` method.
 | 
			
		||||
  - [#344](https://github.com/airblade/paper_trail/pull/344) - Gem is now tested against `MySQL` and `PostgreSQL` in addition to `SQLite`.
 | 
			
		||||
  - [#317](https://github.com/airblade/paper_trail/issues/317) / [#314](https://github.com/airblade/paper_trail/issues/314) -
 | 
			
		||||
    `versions` should default to ordering via the primary key if it is an integer to avoid timestamp comparison issues.
 | 
			
		||||
  - `PaperTrail::Cleaner.clean_versions!` should group versions by `PaperTrail.timestamp_field` when deciding which ones to
 | 
			
		||||
    keep / destroy, instead of always grouping by the `created_at` field.
 | 
			
		||||
  - If a `Version` instance is reified and then persisted at that state, it's source version
 | 
			
		||||
    (`model_instance#version_association_name`, usually `model_instance#version`) will get cleared since persisting it causes it to
 | 
			
		||||
    become the live instance.
 | 
			
		||||
  - If `destroy` actions are tracked for a versioned model, invoking `destroy` on the model will cause the corresponding version that
 | 
			
		||||
    gets generated to be assigned as the source version (`model_instance#version_association_name`, usually `model_instance#version`).
 | 
			
		||||
 | 
			
		||||
## 3.0.1
 | 
			
		||||
 | 
			
		||||
  - [#340](https://github.com/airblade/paper_trail/issues/340) - Prevent potential error encountered when using the `InstallGenerator`
 | 
			
		||||
    with Rails `4.1.0.rc1`.
 | 
			
		||||
  - [#334](https://github.com/airblade/paper_trail/pull/334) - Add small-scope `whodunnit` method to `PaperTrail::Model::InstanceMethods`.
 | 
			
		||||
  - [#329](https://github.com/airblade/paper_trail/issues/329) - Add `touch_with_version` method to `PaperTrail::Model::InstanceMethods`,
 | 
			
		||||
    to allow for generating a version while `touch`ing a model.
 | 
			
		||||
  - [#328](https://github.com/airblade/paper_trail/pull/328) / [#326](https://github.com/airblade/paper_trail/issues/326) /
 | 
			
		||||
    [#307](https://github.com/airblade/paper_trail/issues/307) - `Model.paper_trail_enabled_for_model?` and
 | 
			
		||||
    `model_instance.without_versioning` is now thread-safe.
 | 
			
		||||
  - [#316](https://github.com/airblade/paper_trail/issues/316) - `user_for_paper_trail` should default to `current_user.try(:id)`
 | 
			
		||||
    instead of `current_user` (if `current_user` is defined).
 | 
			
		||||
  - [#313](https://github.com/airblade/paper_trail/pull/313) - Make the `Rails::Controller` helper compatible with
 | 
			
		||||
    `ActionController::API` for compatibility with the [`rails-api`](https://github.com/rails-api/rails-api) gem.
 | 
			
		||||
  - [#312](https://github.com/airblade/paper_trail/issues/312) - Fix RSpec `with_versioning` class level helper method.
 | 
			
		||||
  - `model_instance.without_versioning` now yields the `model_instance`, enabling syntax like this:
 | 
			
		||||
    `model_instance.without_versioning { |obj| obj.update_attributes(:name => 'value') }`.
 | 
			
		||||
  - Deprecated `Model.paper_trail_on` and `Model.paper_trail_off` in favor of bang versions of the methods.
 | 
			
		||||
    Deprecation warning informs users that the non-bang versions of the methods will be removed in version `4.0`
 | 
			
		||||
 | 
			
		||||
## 3.0.0
 | 
			
		||||
 | 
			
		||||
  - [#305](https://github.com/airblade/paper_trail/pull/305) - `PaperTrail::VERSION` should be loaded at runtime.
 | 
			
		||||
  - [#295](https://github.com/airblade/paper_trail/issues/295) - Explicitly specify table name for version class when
 | 
			
		||||
    querying attributes. Prevents `AmbiguousColumn` errors on certain `JOIN` statements.
 | 
			
		||||
  - [#289](https://github.com/airblade/paper_trail/pull/289) - Use `ActiveSupport::Concern` for implementation of base functionality on
 | 
			
		||||
    `PaperTrail::Version` class. Increases flexibility and makes it easier to use custom version classes with multiple `ActiveRecord` connections.
 | 
			
		||||
  - [#288](https://github.com/airblade/paper_trail/issues/288) - Change all scope declarations to class methods on the `PaperTrail::Version`
 | 
			
		||||
    class. Fixes usability when `PaperTrail::Version.abstract_class? == true`.
 | 
			
		||||
  - [#287](https://github.com/airblade/paper_trail/issues/287) - Support for
 | 
			
		||||
    [PostgreSQL's JSON Type](http://www.postgresql.org/docs/9.2/static/datatype-json.html) for storing `object` and `object_changes`.
 | 
			
		||||
  - [#281](https://github.com/airblade/paper_trail/issues/281) - `Rails::Controller` helper will return `false` for the
 | 
			
		||||
    `paper_trail_enabled_for_controller` method if `PaperTrail.enabled? == false`.
 | 
			
		||||
  - [#280](https://github.com/airblade/paper_trail/pull/280) - Don't track virtual timestamp attributes.
 | 
			
		||||
  - [#278](https://github.com/airblade/paper_trail/issues/278) / [#272](https://github.com/airblade/paper_trail/issues/272) -
 | 
			
		||||
    Make RSpec and Cucumber helpers usable with [Spork](https://github.com/sporkrb/spork) and [Zeus](https://github.com/burke/zeus).
 | 
			
		||||
  - [#273](https://github.com/airblade/paper_trail/pull/273) - Make the `only` and `ignore` options accept `Hash` arguments;
 | 
			
		||||
    allows for conditional tracking.
 | 
			
		||||
  - [#264](https://github.com/airblade/paper_trail/pull/264) - Allow unwrapped symbol to be passed in to the `on` option.
 | 
			
		||||
  - [#224](https://github.com/airblade/paper_trail/issues/224)/[#236](https://github.com/airblade/paper_trail/pull/236) -
 | 
			
		||||
    Fixed compatibility with [ActsAsTaggableOn](https://github.com/mbleigh/acts-as-taggable-on).
 | 
			
		||||
  - [#235](https://github.com/airblade/paper_trail/pull/235) - Dropped unnecessary secondary sort on `versions` association.
 | 
			
		||||
  - [#216](https://github.com/airblade/paper_trail/pull/216) - Added helper & extension for [RSpec](https://github.com/rspec/rspec),
 | 
			
		||||
    and helper for [Cucumber](http://cukes.info).
 | 
			
		||||
  - [#212](https://github.com/airblade/paper_trail/pull/212) - Added `PaperTrail::Cleaner` module, useful for discarding draft versions.
 | 
			
		||||
  - [#207](https://github.com/airblade/paper_trail/issues/207) - Versions for `'create'` events are now created with `create!` instead of
 | 
			
		||||
    `create` so that an exception gets raised if it is appropriate to do so.
 | 
			
		||||
  - [#199](https://github.com/airblade/paper_trail/pull/199) - Rails 4 compatibility.
 | 
			
		||||
  - [#165](https://github.com/airblade/paper_trail/pull/165) - Namespaced the `Version` class under the `PaperTrail` module.
 | 
			
		||||
  - [#119](https://github.com/airblade/paper_trail/issues/119) - Support for [Sinatra](http://www.sinatrarb.com/); decoupled gem from `Rails`.
 | 
			
		||||
  - Renamed the default serializers from `PaperTrail::Serializers::Yaml` and `PaperTrail::Serializers::Json` to the capitalized forms,
 | 
			
		||||
    `PaperTrail::Serializers::YAML` and `PaperTrail::Serializers::JSON`.
 | 
			
		||||
  - Removed deprecated `set_whodunnit` method from Rails Controller scope.
 | 
			
		||||
 | 
			
		||||
## 2.7.2
 | 
			
		||||
 | 
			
		||||
  - [#228](https://github.com/airblade/paper_trail/issues/228) - Refactored default `user_for_paper_trail` method implementation
 | 
			
		||||
    so that `current_user` only gets invoked if it is defined.
 | 
			
		||||
  - [#219](https://github.com/airblade/paper_trail/pull/219) - Fixed issue where attributes stored with `nil` value might not get
 | 
			
		||||
    reified properly depending on the way the serializer worked.
 | 
			
		||||
  - [#213](https://github.com/airblade/paper_trail/issues/213) - Added a `version_limit` option to the `PaperTrail::Config` options
 | 
			
		||||
    that can be used to restrict the number of versions PaperTrail will store per object instance.
 | 
			
		||||
  - [#187](https://github.com/airblade/paper_trail/pull/187) - Confirmed JRuby support.
 | 
			
		||||
  - [#174](https://github.com/airblade/paper_trail/pull/174) - The `event` field on the versions table can now be customized.
 | 
			
		||||
 | 
			
		||||
## 2.7.1
 | 
			
		||||
 | 
			
		||||
  - [#206](https://github.com/airblade/paper_trail/issues/206) - Fixed Ruby 1.8.7 compatibility for tracking `object_changes`.
 | 
			
		||||
  - [#200](https://github.com/airblade/paper_trail/issues/200) - Fixed `next_version` method so that it returns the live model
 | 
			
		||||
    when called on latest reified version of a model prior to the live model.
 | 
			
		||||
  - [#197](https://github.com/airblade/paper_trail/issues/197) - PaperTrail now falls back on using YAML for serialization of
 | 
			
		||||
    serialized model attributes for storage in the `object` and `object_changes` columns in the `Version` table. This fixes
 | 
			
		||||
    compatibility for `Rails 3.0.x` for projects that employ the `serialize` declaration on a model.
 | 
			
		||||
  - [#194](https://github.com/airblade/paper_trail/issues/194) - A JSON serializer is now included in the gem.
 | 
			
		||||
  - [#192](https://github.com/airblade/paper_trail/pull/192) - `object_changes` should store serialized representation of serialized
 | 
			
		||||
    attributes for `create` actions (in addition to `update` actions, which had already been patched by
 | 
			
		||||
    [#180](https://github.com/airblade/paper_trail/pull/180)).
 | 
			
		||||
  - [#190](https://github.com/airblade/paper_trail/pull/190) - Fixed compatibility with
 | 
			
		||||
    [SerializedAttributes](https://github.com/technoweenie/serialized_attributes) gem.
 | 
			
		||||
  - [#189](https://github.com/airblade/paper_trail/pull/189) - Provided support for a `configure` block initializer.
 | 
			
		||||
  - Added `setter` method for the `serializer` config option.
 | 
			
		||||
 | 
			
		||||
## 2.7.0
 | 
			
		||||
 | 
			
		||||
  - [#183](https://github.com/airblade/paper_trail/pull/183) - Fully qualify the `Version` class to help prevent
 | 
			
		||||
    namespace resolution errors within other gems / plugins.
 | 
			
		||||
  - [#180](https://github.com/airblade/paper_trail/pull/180) - Store serialized representation of serialized attributes
 | 
			
		||||
    on the `object` and `object_changes` columns in the `Version` table.
 | 
			
		||||
  - [#164](https://github.com/airblade/paper_trail/pull/164) - Allow usage of custom serializer for storage of object attributes.
 | 
			
		||||
 | 
			
		||||
## 2.6.4
 | 
			
		||||
 | 
			
		||||
  - [#181](https://github.com/airblade/paper_trail/issues/181)/[#182](https://github.com/airblade/paper_trail/pull/182) -
 | 
			
		||||
    Controller metadata methods should only be evaluated when `paper_trail_enabled_for_controller == true`.
 | 
			
		||||
  - [#177](https://github.com/airblade/paper_trail/issues/177)/[#178](https://github.com/airblade/paper_trail/pull/178) -
 | 
			
		||||
    Factored out `version_key` into it's own method to prevent `ConnectionNotEstablished` error from getting thrown in
 | 
			
		||||
    instances where `has_paper_trail` is declared on class prior to ActiveRecord establishing a connection.
 | 
			
		||||
  - [#176](https://github.com/airblade/paper_trail/pull/176) - Force metadata calls for attributes to use current value
 | 
			
		||||
    if attribute value is changing.
 | 
			
		||||
  - [#173](https://github.com/airblade/paper_trail/pull/173) - Update link to [diff-lcs](https://github.com/halostatue/diff-lcs).
 | 
			
		||||
  - [#172](https://github.com/airblade/paper_trail/pull/172) - Save `object_changes` on creation.
 | 
			
		||||
  - [#168](https://github.com/airblade/paper_trail/pull/168) - Respect conditional `:if` or `:unless` arguments to the
 | 
			
		||||
    `has_paper_trail` method for `destroy` events.
 | 
			
		||||
  - [#167](https://github.com/airblade/paper_trail/pull/167) - Fix `originator` method so that it works with subclasses and STI.
 | 
			
		||||
  - [#160](https://github.com/airblade/paper_trail/pull/160) - Fixed failing tests and resolved out of date dependency issues.
 | 
			
		||||
  - [#157](https://github.com/airblade/paper_trail/pull/157) - Refactored `class_attribute` names on the `ClassMethods` module
 | 
			
		||||
    for names that are not obviously pertaining to PaperTrail to prevent method name collision.
 | 
			
		||||
To avoid confusion, we only maintain the changelog on the master branch.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue