Skip to content

Latest commit

 

History

History
211 lines (171 loc) · 8.48 KB

CHANGELOG.md

File metadata and controls

211 lines (171 loc) · 8.48 KB

Ancestry Changelog

Doing our best at supporting SemVer with a nice looking Changelog.

Version 4.0.0 TBD

Changed (proposed)

  • Dropping Rails 3.x and 4.x (will use Active Record or syntax)
  • Dropping builds for ruby 1.9.3, 2.0, 2.1, and 2.2
  • Dropping *_conditions methods. (will use Active Record or syntax)
  • Do not automatically call custom ancestry order clauses for scopes.

Version 3.0.2 2018-04-24

Fixes

  • fixed order_by_ancestry bug
  • fixed order tests for postgres on mac (it uses a different collation)
  • fixed documentation (thx @besquared, @danfrenette, @eiwi1101, @isimluk, @mabusaad, @tilsammans)
  • added missing Ancestry::version
  • added Rails 5.2 support (thx @jjuliano)

Version 3.0.1 2017-07-05

Fixes

  • added gem metadata
  • fixed keep a changelog link (thx @mattbrictson)
  • added alias has_parent?
  • fixed bug where unscoping too much (thx @brendon)
  • fixed tests on mysql 5.7 and rails 3.2
  • Dropped 3.1 scope changes

Version 3.0.0 2017-05-18

Changed

  • Dropping Rails 3.0, and 3.1. Added Rails 5.1 support (thx @ledermann)
  • Dropping Rails 4.0, 4.1 for build reasons. Since 4.2 is supported, all 4.x should still work.

Fixes

  • Performance: Use pluck vs map for ids (thx @njakobsen and @culturecode)
  • Fixed acts_as_tree compatibility (thx @crazymykl)
  • Fixed loading ActiveRails prematurely (thx @vovimayhem)
  • Fixes exist (thx @ledermann)
  • Properly touches parents when different class for STI (thx @samtgarson)
  • Fixed issues with parent_id (only present on master) (thx @domcleal)

Version 2.2.2 2016-11-01

Changed

  • Use COALESCE only for sorting versions greater than 5.0
  • Fixed bug with explicit order clauses (introduced in 2.2.0)
  • No longer load schema on has_ancestry load (thx @ledermann)

Version 2.2.1 2016-10-25

Sorry for blip, local master got out of sync with upstream master. Missed 2 commits (which are feature adds)

Added

  • Use like (vs ilike) for rails 5.0 (performance enhancement)
  • Use COALESCE for sorting on pg, mysql, and sqlite vs CASE

Version 2.2.0 2016-10-25

Added

  • Predicates for scopes: e.g.: ancestor_of?, parent_of? (thx @neglectedvalue)
  • Scope path_of

Changed

  • arrange now accepts blocks (thx @mastfish)
  • Performance tuning arrange_node (thx @fryguy)
  • In orphan strategy, set ancestry to nil for no parents (thx @haslinger)
  • Only updates updated_at when a record is changed (thx @brocktimus)
  • No longer casts text primary key as an integer
  • Upgrading tests for ruby versions (thx @brocktimus, @fryguy, @yui-knk)
  • Fix non-default ancestry not getting used properly (thx @javiyu)

Version 2.1.0 2014-04-16

  • Added arrange_serializable (thx @krishandley, @chicagogrrl)
  • Add the :touch to update ancestors on save (thx @adammck)
  • Change conditions into arel (thx @mlitwiniuk)
  • Added children? & siblings? alias (thx @bigtunacan)
  • closure_tree compatibility (thx @gzigzigzeo)
  • Performance tweak (thx @mjc)
  • Improvements to organization (thx @xsuchy, @ryakh)

Version 2.0.0 2013-05-17

  • Removed rails 2 compatibility
  • Added table name to condition constructing methods (thx @aflatter)
  • Fix depth_cache not being updated when moving up to ancestors (thx @scottatron)
  • add alias :root? to existing is_root? (thx @divineforest)
  • Add block to sort_by_ancestry (thx @Iliya)
  • Add attribute query method for parent_id (thx @sj26)
  • Fixed and tested for rails 4 (thx @adammck, @Nihad, @Systho, @Philippe, e.a.)
  • Fixed overwriting ActiveRecord::Base.base_class (thx @Rozhnov)
  • New adopt strategy (thx unknown)
  • Many more improvements

Version 1.3.0 2012-05-04

  • Ancestry now ignores default scopes when moving or destroying nodes, ensuring tree consistency
  • Changed ActiveRecord dependency to 2.3.14

Version 1.2.5 2012-03-15

  • Fixed warnings: "parenthesize argument(s) for future version"
  • Fixed a bug in the restore_ancestry_integrity! method (thx Arthur Holstvoogd)

Version 1.2.4 2011-04-22

  • Prepended table names to column names in queries (thx @raelik)
  • Better check to see if acts_as_tree can be overloaded (thx @jims)
  • Performance inprovements (thx @kueda)

Version 1.2.3 2010-10-28

  • Fixed error with determining ActiveRecord version
  • Added option to specify :primary_key_format (thx @rolftimmermans)

Version 1.2.2 2010-10-24

  • Fixed all deprecation warnings for rails 3.0.X
  • Added :report option to check_ancestry_integrity!
  • Changed ActiveRecord dependency to 2.2.2
  • Tested and fixed for ruby 1.8.7 and 1.9.2
  • Changed usage of update_attributes to update_attribute to allow ancestry column protection

Version 1.2.0 2009-11-07

  • Removed some duplication in has_ancestry
  • Cleaned up plugin pattern according to http://yehudakatz.com/2009/11/12/better-ruby-idioms/
  • Moved parts of ancestry into seperate files
  • Made it possible to pass options into the arrange method
  • Renamed acts_as_tree to has_ancestry
  • Aliased has_ancestry as acts_as_tree if acts_as_tree is available
  • Added subtree_of scope
  • Updated ordered_by_ancestry scope to support Microsoft SQL Server
  • Added empty hash as parameter to exists? calls for older ActiveRecord versions

Version 1.1.4 2009-11-07

  • Thanks to a patch from tom taylor, Ancestry now works with different primary keys

Version 1.1.3 2009-11-01

  • Fixed a pretty bad bug where several operations took far too many queries

Version 1.1.2 2009-10-29

  • Added validation for depth cache column
  • Added STI support (reported broken)

Version 1.1.1 2009-10-28

  • Fixed some parentheses warnings that where reported
  • Fixed a reported issue with arrangement
  • Fixed issues with ancestors and path order on postgres
  • Added ordered_by_ancestry scope (needed to fix issues)

Version 1.1.0 2009-10-22

  • Depth caching (and cache rebuilding)
  • Depth method for nodes
  • Named scopes for selecting by depth
  • Relative depth options for tree navigation methods:
    • ancestors
    • path
    • descendants
    • descendant_ids
    • subtree
    • subtree_ids
  • Updated README
  • Easy migration from existing plugins/gems
  • acts_as_tree checks unknown options
  • acts_as_tree checks that options are hash
  • Added a bang (!) to the integrity functions
    • Since these functions should only be used from ./script/console and not from your application, this change is not considered as breaking backwards compatibility and the major version wasn't bumped.
  • Updated install script to point to documentation
  • Removed rails specific init
  • Removed uninstall script

Version 1.0.0 2009-10-16

  • Initial version
  • Tree building
  • Tree navigation
  • Integrity checking / restoration
  • Arrangement
  • Orphan strategies
  • Subtree movement
  • Named scopes
  • Validations