All Versions
Latest Version
Avg Release Cycle
177 days
Latest Release

Changelog History
Page 5

  • v3.10.1 Changes

    • ๐Ÿ‘ Multipart constant names like "Admin::PageHierarchy" are now supported. Resolves issue 47. Thanks for the perfect pull request, Simon Menke!

    • Committing transactions involving large numbers of hierarchy model classes was very slow due to hash collisions in the hierarchy class. A better hash implementation addressed issue 48. Thanks, Joel Turkel!

  • v3.10.0 Changes

    • Added #roots_and_descendants_preordered. Thanks for the suggestion, Leonel Galan!
  • v3.9.0 Changes

    • โž• Added .child_ids.
    • Removed dependent => destroy on the descendant_hierarchy and ancestor_hierarchy collections (they were a mistake).
    • ๐Ÿ“š Clarified documentation for creation and child associations. Because Tag.create!(:parent => ...) requires a .reload, I removed it as an example.

    All three of these improvements were suggested by Andrew Bromwich. Thanks!

  • v3.8.2 Changes

    • find_by_path uses 1 SELECT now. BOOM.
  • v3.8.1 Changes

    • Double-check locking for find_or_create_by_path
  • v3.8.0 Changes

    • ๐Ÿ‘Œ Support for preordered descendants. This requires a numeric sort order column. Resolves feature request 38.
    • Moved modules from acts_as_tree into separate files
  • v3.7.3 Changes

    ๐Ÿ”’ Due to MySQL's inability to lock rows properly, I've switched to advisory_locks for all write paths. This will prevent deadlocks, addressing issue 41.

  • v3.7.2 Changes

    • ๐Ÿ‘Œ Support for UUID primary keys. Addresses issue 40. Thanks for the pull request, Julien!
  • v3.7.1 Changes

    • ๐Ÿšš Moved requires into ActiveSupport.on_load
    • Added require 'with_advisory_lock'
  • v3.7.0 Changes

    Thread safety!

    • Advisory locks were integrated with the class-level find_or_create_by_path and rebuild!.
    • Pessimistic locking is used by the instance-level find_or_create_by_path.