closure_tree 6.5.0 → 7.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (63) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/ci.yml +96 -0
  3. data/.gitignore +2 -0
  4. data/.rspec +1 -1
  5. data/Appraisals +90 -7
  6. data/CHANGELOG.md +94 -42
  7. data/Gemfile +0 -12
  8. data/README.md +66 -23
  9. data/Rakefile +7 -10
  10. data/_config.yml +1 -0
  11. data/bin/appraisal +29 -0
  12. data/bin/rake +29 -0
  13. data/bin/rspec +29 -0
  14. data/closure_tree.gemspec +16 -9
  15. data/lib/closure_tree/finders.rb +32 -9
  16. data/lib/closure_tree/has_closure_tree.rb +4 -0
  17. data/lib/closure_tree/has_closure_tree_root.rb +5 -7
  18. data/lib/closure_tree/hash_tree_support.rb +4 -4
  19. data/lib/closure_tree/hierarchy_maintenance.rb +28 -8
  20. data/lib/closure_tree/model.rb +42 -16
  21. data/lib/closure_tree/numeric_deterministic_ordering.rb +20 -6
  22. data/lib/closure_tree/numeric_order_support.rb +7 -3
  23. data/lib/closure_tree/support.rb +18 -12
  24. data/lib/closure_tree/support_attributes.rb +10 -1
  25. data/lib/closure_tree/support_flags.rb +1 -4
  26. data/lib/closure_tree/version.rb +1 -1
  27. data/lib/generators/closure_tree/migration_generator.rb +8 -0
  28. data/lib/generators/closure_tree/templates/create_hierarchies_table.rb.erb +1 -1
  29. metadata +78 -79
  30. data/.travis.yml +0 -29
  31. data/gemfiles/activerecord_4.2.gemfile +0 -19
  32. data/gemfiles/activerecord_5.0.gemfile +0 -19
  33. data/gemfiles/activerecord_5.0_foreigner.gemfile +0 -20
  34. data/gemfiles/activerecord_edge.gemfile +0 -20
  35. data/img/example.png +0 -0
  36. data/img/preorder.png +0 -0
  37. data/spec/cache_invalidation_spec.rb +0 -39
  38. data/spec/cuisine_type_spec.rb +0 -38
  39. data/spec/db/database.yml +0 -21
  40. data/spec/db/models.rb +0 -128
  41. data/spec/db/schema.rb +0 -166
  42. data/spec/fixtures/tags.yml +0 -98
  43. data/spec/generators/migration_generator_spec.rb +0 -48
  44. data/spec/has_closure_tree_root_spec.rb +0 -154
  45. data/spec/hierarchy_maintenance_spec.rb +0 -16
  46. data/spec/label_spec.rb +0 -554
  47. data/spec/matcher_spec.rb +0 -34
  48. data/spec/metal_spec.rb +0 -55
  49. data/spec/model_spec.rb +0 -9
  50. data/spec/namespace_type_spec.rb +0 -13
  51. data/spec/parallel_spec.rb +0 -159
  52. data/spec/spec_helper.rb +0 -24
  53. data/spec/support/database.rb +0 -52
  54. data/spec/support/database_cleaner.rb +0 -14
  55. data/spec/support/exceed_query_limit.rb +0 -18
  56. data/spec/support/hash_monkey_patch.rb +0 -13
  57. data/spec/support/query_counter.rb +0 -18
  58. data/spec/support/sqlite3_with_advisory_lock.rb +0 -10
  59. data/spec/support_spec.rb +0 -14
  60. data/spec/tag_examples.rb +0 -665
  61. data/spec/tag_spec.rb +0 -6
  62. data/spec/user_spec.rb +0 -174
  63. data/spec/uuid_tag_spec.rb +0 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 8612efc584f34d7e880cfe02d66791eba5cdc639
4
- data.tar.gz: feb72d046d18b9c097002ac65af76343f616fcbd
2
+ SHA256:
3
+ metadata.gz: 7034c0f3149bb3fabe92f4d03f118e4704b80a5ccbfa371e50f1a0f7f624c534
4
+ data.tar.gz: 9a9faf0245f8252442c3c2e80a73eeccdf1e94d748dcb8a2ace96ebf131984c1
5
5
  SHA512:
6
- metadata.gz: 65e6a3c45fadbfc87546db2e1b8417207f19d12c26f0683bd621fb6e5b6714c66dd95f17e7a4b36895589404479c45b0a2fe6fb40a9811160381a105ff02995a
7
- data.tar.gz: da5d009c2bfd51f56911c0838ed5ca8d0662e53c34630e75bd1b390b530993a25c7ff76d16e2650dea474b655c780204f9f6dcb0c9f96eda8adc3dd68adcc148
6
+ metadata.gz: 13ee25bbdd76b240ebc74a2f3b6b5846c09a302f60ec2d48dff0d0d8a825f015a66bed08e1eec2bdfad80d437e139337e9e9bbdbb0831ac3b0a4bd5e0493e7e8
7
+ data.tar.gz: 97f0e9bbde7fb694bf52833cfd9c469b5f22944752b5f33586486c2edd10958ac422dc957a847d3ba63153de85b63e9e84494b0529cb855590a72610726d5c2f
@@ -0,0 +1,96 @@
1
+ ---
2
+ name: CI
3
+
4
+ on:
5
+ - push
6
+ - pull_request
7
+
8
+ jobs:
9
+ rspec:
10
+ runs-on: ubuntu-20.04
11
+
12
+ services:
13
+ postgres:
14
+ image: 'postgres:13'
15
+ ports: ['5432:5432']
16
+ env:
17
+ POSTGRES_PASSWORD: postgres
18
+ POSTGRES_DB: closure_tree
19
+ options: >-
20
+ --health-cmd pg_isready
21
+ --health-interval 10s
22
+ --health-timeout 5s
23
+ --health-retries 5
24
+
25
+ strategy:
26
+ fail-fast: false
27
+ matrix:
28
+ ruby:
29
+ - '3.0'
30
+ - '2.7'
31
+ - '2.6'
32
+ - '2.5'
33
+ rails:
34
+ - activerecord_6.1
35
+ - activerecord_6.0
36
+ - activerecord_5.2
37
+ - activerecord_5.1
38
+ - activerecord_5.0
39
+ - activerecord_4.2
40
+ - activerecord_edge
41
+ adapter:
42
+ - sqlite3
43
+ - mysql2
44
+ - postgresql
45
+ exclude:
46
+ - ruby: '2.7'
47
+ rails: activerecord_4.2
48
+ - ruby: '3.0'
49
+ rails: activerecord_4.2
50
+ - ruby: '3.0'
51
+ rails: activerecord_5.0
52
+ - ruby: '3.0'
53
+ rails: activerecord_5.1
54
+ - ruby: '3.0'
55
+ rails: activerecord_5.2
56
+ - ruby: '2.5'
57
+ rails: activerecord_edge
58
+
59
+ steps:
60
+ - name: Checkout
61
+ uses: actions/checkout@v2
62
+
63
+ - name: Setup Ruby
64
+ uses: ruby/setup-ruby@v1
65
+ with:
66
+ ruby-version: ${{ matrix.ruby }}
67
+
68
+ - name: Set DB Adapter
69
+ env:
70
+ RAILS_VERSION: ${{ matrix.rails }}
71
+ DB_ADAPTER: ${{ matrix.adapter }}
72
+
73
+ # See: https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-README.md#mysql
74
+ run: |
75
+ if [ "${DB_ADAPTER}" = "mysql2" ]; then
76
+ sudo systemctl start mysql.service
77
+ mysql -u root -proot -e 'create database closure_tree;'
78
+ fi
79
+
80
+ - name: Bundle
81
+ env:
82
+ RAILS_VERSION: ${{ matrix.rails }}
83
+ DB_ADAPTER: ${{ matrix.adapter }}
84
+ BUNDLE_GEMFILE: gemfiles/${{ matrix.rails }}.gemfile
85
+ run: |
86
+ gem install bundler
87
+ bundle config path vendor/bundle
88
+ bundle install --jobs 4 --retry 3
89
+
90
+ - name: RSpec
91
+ env:
92
+ RAILS_VERSION: ${{ matrix.rails }}
93
+ DB_ADAPTER: ${{ matrix.adapter }}
94
+ BUNDLE_GEMFILE: gemfiles/${{ matrix.rails }}.gemfile
95
+ WITH_ADVISORY_LOCK_PREFIX: ${{ github.run_id }}
96
+ run: bin/rake --trace spec:all
data/.gitignore CHANGED
@@ -13,3 +13,5 @@ tmp/
13
13
  *.lock
14
14
  tmp/
15
15
  .ruby-*
16
+ *.iml
17
+ coverage/
data/.rspec CHANGED
@@ -1 +1 @@
1
- --format documentation --color --order random
1
+ --color
data/Appraisals CHANGED
@@ -1,22 +1,105 @@
1
1
 
2
2
  appraise 'activerecord-4.2' do
3
3
  gem 'activerecord', '~> 4.2.0'
4
+ platforms :ruby do
5
+ gem 'mysql2', "< 0.5"
6
+ gem 'pg', "~> 0.21"
7
+ gem 'sqlite3', '~> 1.3.13'
8
+ end
4
9
 
5
- platforms :ruby, :rbx do
6
- gem 'mysql2', '~> 0.3.20'
10
+ platforms :jruby do
11
+ gem 'activerecord-jdbcmysql-adapter'
12
+ gem 'activerecord-jdbcpostgresql-adapter'
13
+ gem 'activerecord-jdbcsqlite3-adapter'
7
14
  end
8
15
  end
9
16
 
10
- appraise 'activerecord-5.0-foreigner' do
17
+ appraise 'activerecord-5.0' do
11
18
  gem 'activerecord', '~> 5.0.0'
12
- gem 'foreigner'
19
+ platforms :ruby do
20
+ gem 'mysql2'
21
+ gem 'pg'
22
+ gem 'sqlite3', '~> 1.3.13'
23
+ end
24
+
25
+ platforms :jruby do
26
+ gem 'activerecord-jdbcmysql-adapter'
27
+ gem 'activerecord-jdbcpostgresql-adapter'
28
+ gem 'activerecord-jdbcsqlite3-adapter'
29
+ end
13
30
  end
14
31
 
15
- appraise 'activerecord-5.0' do
16
- gem 'activerecord', '~> 5.0.0'
32
+ appraise 'activerecord-5.1' do
33
+ gem 'activerecord', '~> 5.1.0'
34
+ platforms :ruby do
35
+ gem 'mysql2'
36
+ gem 'pg'
37
+ gem 'sqlite3', '~> 1.3.13'
38
+ end
39
+
40
+ platforms :jruby do
41
+ gem 'activerecord-jdbcmysql-adapter'
42
+ gem 'activerecord-jdbcpostgresql-adapter'
43
+ gem 'activerecord-jdbcsqlite3-adapter'
44
+ end
45
+ end
46
+
47
+ appraise 'activerecord-5.2' do
48
+ gem 'activerecord', '~> 5.2.0'
49
+ platforms :ruby do
50
+ gem 'mysql2'
51
+ gem 'pg'
52
+ gem 'sqlite3'
53
+ end
54
+
55
+ platforms :jruby do
56
+ gem 'activerecord-jdbcmysql-adapter'
57
+ gem 'activerecord-jdbcpostgresql-adapter'
58
+ gem 'activerecord-jdbcsqlite3-adapter'
59
+ end
60
+ end
61
+
62
+ appraise 'activerecord-6.0' do
63
+ gem 'activerecord', '~> 6.0.0'
64
+ platforms :ruby do
65
+ gem 'mysql2'
66
+ gem 'pg'
67
+ gem 'sqlite3'
68
+ end
69
+
70
+ platforms :jruby do
71
+ gem 'activerecord-jdbcmysql-adapter'
72
+ gem 'activerecord-jdbcpostgresql-adapter'
73
+ gem 'activerecord-jdbcsqlite3-adapter'
74
+ end
75
+ end
76
+
77
+ appraise 'activerecord-6.1' do
78
+ gem 'activerecord', '~> 6.1.0'
79
+ platforms :ruby do
80
+ gem 'mysql2'
81
+ gem 'pg'
82
+ gem 'sqlite3'
83
+ end
84
+
85
+ platforms :jruby do
86
+ gem 'activerecord-jdbcmysql-adapter'
87
+ gem 'activerecord-jdbcpostgresql-adapter'
88
+ gem 'activerecord-jdbcsqlite3-adapter'
89
+ end
17
90
  end
18
91
 
19
92
  appraise 'activerecord-edge' do
20
93
  gem 'activerecord', github: 'rails/rails'
21
- gem 'arel', github: 'rails/arel'
94
+ platforms :ruby do
95
+ gem 'mysql2'
96
+ gem 'pg'
97
+ gem 'sqlite3'
98
+ end
99
+
100
+ platforms :jruby do
101
+ gem 'activerecord-jdbcmysql-adapter'
102
+ gem 'activerecord-jdbcpostgresql-adapter'
103
+ gem 'activerecord-jdbcsqlite3-adapter'
104
+ end
22
105
  end
data/CHANGELOG.md CHANGED
@@ -1,27 +1,79 @@
1
1
  # Changelog
2
2
 
3
- ### 6.5.0
4
3
 
5
- * Merged [PR 258](https://github.com/mceachen/closure_tree/pull/258) which improves hierarchy maintenance with large trees.
6
- Thanks, [Nikolay Bekirov](https://github.com/nbekirov)!
4
+ ### 7.3.0
5
+ - Ruby 3.0 support
6
+
7
+ ### 7.2.0
8
+ - Ruby 2.7 support
9
+ - Ordering raw SQL argument wrapped with Arel.sql
10
+
11
+ ### 7.1.0
12
+ Closure Tree is now tested against Rails 6.0
13
+ - Directly require core_ext for String#strip_heredoc[PR 350](https://github.com/ClosureTree/closure_tree/pull/350)
14
+ - Call Module#module_parent instead of deprecated #parent[PR 354](https://github.com/ClosureTree/closure_tree/pull/354)
15
+
16
+ ### 7.0.0
17
+ Closure Tree is now tested against Rails 5.2
18
+
19
+ - Postpone configuration (database introspection)[PR 264](https://github.com/ClosureTree/closure_tree/pull/264)
20
+ - Fix "tree.find_by_path([])" [PR 288](https://github.com/ClosureTree/closure_tree/pull/288)
21
+ - Fixed generator specs and added migration version [PR 292](https://github.com/ClosureTree/closure_tree/pull/292)
22
+ - Eliminate deprecation warnings in ActiveRecord 5.2 [PR 296](https://github.com/ClosureTree/closure_tree/pull/296)
23
+ - When using 'oracle_enhanced', remove 'AS' on the table_name alias. [PR 298](https://github.com/ClosureTree/closure_tree/pull/298)
24
+ - README update [PR 301](https://github.com/ClosureTree/closure_tree/pull/301)
25
+ - Add `with_descendant` finder [PR 302](https://github.com/ClosureTree/closure_tree/pull/302)
26
+ - Fix pg version for rails prior 5.1 [PR 303](https://github.com/ClosureTree/closure_tree/pull/303)
27
+ - Test on Rails 5.2 & fix mysql for older Rails [PR 304](https://github.com/ClosureTree/closure_tree/pull/304)
28
+ - Test with ActiveRecord 5.2.0 [PR 307](https://github.com/ClosureTree/closure_tree/pull/307)
29
+ - README update [PR 310](https://github.com/ClosureTree/closure_tree/pull/310)
30
+ - FactoryBot linter failing for a model that uses closure_tree [PR 311](https://github.com/ClosureTree/closure_tree/pull/311)
31
+ - Added dont_order_roots option [PR 312](https://github.com/ClosureTree/closure_tree/pull/312)
32
+ - Added instance methods to determine the relationship between 2 nodes [PR 314](https://github.com/ClosureTree/closure_tree/pull/314)
33
+ - Add an instance method to check the relationship between 2 nodes: #family_of? [PR 319](https://github.com/ClosureTree/closure_tree/pull/319)
34
+ - Remove options restrictions on has_closure_tree_root [PR 321](https://github.com/ClosureTree/closure_tree/pull/321)
35
+ - Fix uninitialized variable warnings [PR 323](https://github.com/ClosureTree/closure_tree/pull/323)
36
+
37
+ ### 6.6.0
38
+
39
+ Closure Tree is now tested against Rails 5.1, and just passed 50 contributors and
40
+ 1000 stars on github! 🎉!
41
+
42
+ Note that Closure Tree has moved to a new "Closure Tree" github organization.
43
+ **Future gem releases will be done by other contributors.**
44
+
45
+ * ActiveSupport 5.1 deprecation warnings were addressed in [PR
46
+ 262](https://github.com/ClosureTree/closure_tree/pull/262). Thanks, [Charles
47
+ Pence](https://github.com/cpence)!
48
+ * ActiveSupport 5.1 test failures were fixed in
49
+ [PR 280](https://github.com/ClosureTree/closure_tree/pull/280).
50
+ Thanks, [Bobby Uhlenbrock](https://github.com/uhlenbrock)!
51
+ * A database connection was leaked at startup, fixed in [PR
52
+ 263](https://github.com/ClosureTree/closure_tree/pull/263). Thanks, [Andrey
53
+ Novikov](https://github.com/Envek)!
54
+
55
+ ### 6.5.0
7
56
 
57
+ * Merged [PR 258](https://github.com/ClosureTree/closure_tree/pull/258) which
58
+ improves hierarchy maintenance with large trees. Thanks, [Nikolay
59
+ Bekirov](https://github.com/nbekirov)!
8
60
  ### 6.4.0
9
61
 
10
- * Merged [PR 236](https://github.com/mceachen/closure_tree/pull/236) which adds documentation for `has_closure_tree_root`.
62
+ * Merged [PR 236](https://github.com/ClosureTree/closure_tree/pull/236) which adds documentation for `has_closure_tree_root`.
11
63
  * Added ruby 2.4 and dropped Rails 4.1 from the build matrix.
12
64
 
13
65
  ### 6.3.0
14
66
 
15
- * `prepend_child` [handles invalid children properly now](https://github.com/mceachen/closure_tree/issues/249).
67
+ * `prepend_child` [handles invalid children properly now](https://github.com/ClosureTree/closure_tree/issues/249).
16
68
  Thanks [Amit Saxena](https://github.com/amitsaxena)!
17
69
  * Dropped official support for jruby and ruby 2.0 (no code was changed)
18
70
 
19
71
  ### 6.2.0
20
72
 
21
- * Fix for [MySQL lock lengths](https://github.com/mceachen/closure_tree/issues/231).
73
+ * Fix for [MySQL lock lengths](https://github.com/ClosureTree/closure_tree/issues/231).
22
74
  Thanks to [Liam](https://github.com/hut8)!
23
- * [Tom Smyth](https://github.com/hooverlunch) added [eager tree loading](https://github.com/mceachen/closure_tree/pull/232)
24
- * Merged [PR 200](https://github.com/mceachen/closure_tree/pull/200) which may or may not add support to SQLServer 2008 (but this is not a supported RDBMS).
75
+ * [Tom Smyth](https://github.com/hooverlunch) added [eager tree loading](https://github.com/ClosureTree/closure_tree/pull/232)
76
+ * Merged [PR 200](https://github.com/ClosureTree/closure_tree/pull/200) which may or may not add support to SQLServer 2008 (but this is not a supported RDBMS).
25
77
 
26
78
  ### 6.1.0
27
79
 
@@ -45,7 +97,7 @@
45
97
  * Dropped support for versions of Rails 3.2 and 4.0 (which are no longer supported).
46
98
  * Dropped support for Ruby 1.9 and JRuby 1.9 (which are no longer supported).
47
99
  * Added support for `.hash_tree` from `.parent` and `.children`.
48
- Addresses [PR146](https://github.com/mceachen/closure_tree/pull/146).
100
+ Addresses [PR146](https://github.com/ClosureTree/closure_tree/pull/146).
49
101
  Thanks for reporting this and the breaking test, [Mike](https://github.com/mkralla11)!
50
102
 
51
103
  ### 5.2.0
@@ -56,7 +108,7 @@
56
108
  * [Ryan Selk](https://github.com/rselk) made several enhancements to the migration generation (thanks!).
57
109
  * [ruok5](https://github.com/ruok5) updated the README to clarify a heirarchy maintenance usecase. Thanks!
58
110
  * Made migrations error with a helpful message if the target didn't have the `has_closure_tree` or
59
- `acts_as_tree` annotation. This addresses [issue 131](https://github.com/mceachen/closure_tree/issues/131).
111
+ `acts_as_tree` annotation. This addresses [issue 131](https://github.com/ClosureTree/closure_tree/issues/131).
60
112
 
61
113
  ### 5.1.1
62
114
 
@@ -67,7 +119,7 @@
67
119
 
68
120
  * [Abdelkader Boudih](https://github.com/seuros) added a database generator
69
121
  for the hierarchies table. Thanks!
70
- * [Jason Weathered](https://github.com/jasoncodes) fixed [issue #117](https://github.com/mceachen/closure_tree/pull/117)
122
+ * [Jason Weathered](https://github.com/jasoncodes) fixed [issue #117](https://github.com/ClosureTree/closure_tree/pull/117)
71
123
  with the preordered traversal code that assumed the primary key column was called `id`. Thanks!
72
124
 
73
125
  ### 5.0.0
@@ -91,13 +143,13 @@
91
143
 
92
144
  ### 4.6.2
93
145
 
94
- * Pulled in [106](https://github.com/mceachen/closure_tree/pull/106) which fixed a bug introduced
146
+ * Pulled in [106](https://github.com/ClosureTree/closure_tree/pull/106) which fixed a bug introduced
95
147
  in 4.6.0 which broke if the numeric ordering column wasn't named 'sort_order'. Tests have been
96
148
  added. Thanks for the fix, [Fission Xuiptz](https://github.com/fissionxuiptz)!
97
149
 
98
150
  ### 4.6.1
99
151
 
100
- * Address [issue 60](https://github.com/mceachen/closure_tree/issues/60) (use `.empty?` rather
152
+ * Address [issue 60](https://github.com/ClosureTree/closure_tree/issues/60) (use `.empty?` rather
101
153
  than `.nil?`—thanks for the suggestion, [Leonel Galán](https://github.com/leonelgalan),
102
154
  [Doug Mayer](https://github.com/doxavore) and [Samnang Chhun](https://github.com/samnang)!
103
155
 
@@ -124,7 +176,7 @@
124
176
 
125
177
  ### 4.4.0
126
178
 
127
- * Added ```.self_and_descendant_ids``` and ```.self_and_ancestors_ids``` from [PR92](https://github.com/mceachen/closure_tree/pull/92).
179
+ * Added ```.self_and_descendant_ids``` and ```.self_and_ancestors_ids``` from [PR92](https://github.com/ClosureTree/closure_tree/pull/92).
128
180
  Thanks, [Kir Shatrov](https://github.com/kirs)!
129
181
 
130
182
  * Dropped support for Rails 3.0.
@@ -139,7 +191,7 @@
139
191
  ### 4.2.9
140
192
 
141
193
  * Support for Heroku's cray assets:precompile hack for Rails 4.
142
- Addresses [issue 78](https://github.com/mceachen/closure_tree/issues/78).
194
+ Addresses [issue 78](https://github.com/ClosureTree/closure_tree/issues/78).
143
195
  Thanks for the assist, [Alex Bowman](https://github.com/axlekb).
144
196
 
145
197
  ### 4.2.8
@@ -149,7 +201,7 @@
149
201
  ### 4.2.7
150
202
 
151
203
  * ```self_and_ancestors``` and ```ancestry_hierarchy``` are reloaded
152
- when nodes are reparented. Addresses [issue 68](https://github.com/mceachen/closure_tree/issues/68).
204
+ when nodes are reparented. Addresses [issue 68](https://github.com/ClosureTree/closure_tree/issues/68).
153
205
  Thanks for the assist, [Ivan Stana](https://github.com/istana).
154
206
 
155
207
  ### 4.2.6
@@ -169,12 +221,12 @@
169
221
  ### 4.2.4
170
222
 
171
223
  * Support for ```root?```, ```child?```, and proper parent-child associations
172
- when both the parent and the child are not persisted. Addresses [issue 64](https://github.com/mceachen/closure_tree/issues/64).
224
+ when both the parent and the child are not persisted. Addresses [issue 64](https://github.com/ClosureTree/closure_tree/issues/64).
173
225
  Thanks for the help, [Gabriel Mazetto](https://github.com/brodock)!
174
226
 
175
227
  ### 4.2.3
176
228
 
177
- * Fixed ```attr_accessible?``` error introduced in 4.2.2 ([issue 66](https://github.com/mceachen/closure_tree/issues/66)).
229
+ * Fixed ```attr_accessible?``` error introduced in 4.2.2 ([issue 66](https://github.com/ClosureTree/closure_tree/issues/66)).
178
230
  * Switched to use new WithAdvisoryLock::DatabaseAdapterSupport (in v0.0.9) to add Postgis support
179
231
 
180
232
  ### 4.2.2
@@ -204,11 +256,11 @@
204
256
 
205
257
  * Numeric, deterministically ordered siblings will always be [0..#{self_and_siblings.count}]
206
258
  (previously, the sort order might use negative values, which broke the preordering).
207
- Resolves [issue 49](https://github.com/mceachen/closure_tree/issues/49). Thanks for the help,
259
+ Resolves [issue 49](https://github.com/ClosureTree/closure_tree/issues/49). Thanks for the help,
208
260
  [Leonel Galan](https://github.com/leonelgalan), [Juan Hoyos](https://github.com/elhoyos), and
209
261
  [Michael Elfassy](https://github.com/elfassy)!
210
262
 
211
- * The ```order``` option can be a symbol now. Resolves [issue 46](https://github.com/mceachen/closure_tree/issues/46).
263
+ * The ```order``` option can be a symbol now. Resolves [issue 46](https://github.com/ClosureTree/closure_tree/issues/46).
212
264
 
213
265
  ### 4.0.0
214
266
 
@@ -223,22 +275,22 @@
223
275
  ### 3.10.2
224
276
 
225
277
  * Prevent faulty SQL statement when ```#siblings``` is called on an unsaved records.
226
- Resolves [issue 52](https://github.com/mceachen/closure_tree/pull/52). Perfect pull
278
+ Resolves [issue 52](https://github.com/ClosureTree/closure_tree/pull/52). Perfect pull
227
279
  request by [Gary Greyling](https://github.com/garygreyling).
228
280
 
229
281
  * The ```.roots``` class method now correctly respects the ```:order``` option.
230
- Resolves [issue 53](https://github.com/mceachen/closure_tree/issues/53).
282
+ Resolves [issue 53](https://github.com/ClosureTree/closure_tree/issues/53).
231
283
  Thanks for finding this, [Brendon Muir](https://github.com/brendon)!
232
284
 
233
285
  ### 3.10.1
234
286
 
235
287
  * Multipart constant names like "Admin::PageHierarchy" are now supported.
236
- Resolves [issue 47](https://github.com/mceachen/closure_tree/issues/47).
288
+ Resolves [issue 47](https://github.com/ClosureTree/closure_tree/issues/47).
237
289
  Thanks for the perfect pull request, [Simon Menke](https://github.com/fd)!
238
290
 
239
291
  * Committing transactions involving large numbers of hierarchy model classes was very slow due
240
292
  to hash collisions in the hierarchy class. A better hash implementation addressed
241
- [issue 48](https://github.com/mceachen/closure_tree/issues/48).
293
+ [issue 48](https://github.com/ClosureTree/closure_tree/issues/48).
242
294
  Thanks, [Joel Turkel](https://github.com/jturkel)!
243
295
 
244
296
  ### 3.10.0
@@ -267,19 +319,19 @@ All three of these improvements were suggested by Andrew Bromwich. Thanks!
267
319
  ### 3.8.0
268
320
 
269
321
  * Support for preordered descendants. This requires a numeric sort order column.
270
- Resolves [feature request 38](https://github.com/mceachen/closure_tree/issues/38).
322
+ Resolves [feature request 38](https://github.com/ClosureTree/closure_tree/issues/38).
271
323
  * Moved modules from ```acts_as_tree``` into separate files
272
324
 
273
325
  ### 3.7.3
274
326
 
275
327
  Due to MySQL's inability to lock rows properly, I've switched to advisory_locks for
276
328
  all write paths. This will prevent deadlocks, addressing
277
- [issue 41](https://github.com/mceachen/closure_tree/issues/41).
329
+ [issue 41](https://github.com/ClosureTree/closure_tree/issues/41).
278
330
 
279
331
  ### 3.7.2
280
332
 
281
333
  * Support for UUID primary keys. Addresses
282
- [issue 40](https://github.com/mceachen/closure_tree/issues/40). Thanks for the pull request,
334
+ [issue 40](https://github.com/ClosureTree/closure_tree/issues/40). Thanks for the pull request,
283
335
  [Julien](https://github.com/calexicoz)!
284
336
 
285
337
  ### 3.7.1
@@ -290,7 +342,7 @@ all write paths. This will prevent deadlocks, addressing
290
342
  ### 3.7.0
291
343
 
292
344
  **Thread safety!**
293
- * [Advisory locks](https://github.com/mceachen/with_advisory_lock) were
345
+ * [Advisory locks](https://github.com/ClosureTree/with_advisory_lock) were
294
346
  integrated with the class-level ```find_or_create_by_path``` and ```rebuild!```.
295
347
  * Pessimistic locking is used by the instance-level ```find_or_create_by_path```.
296
348
 
@@ -303,7 +355,7 @@ wasting time on the ruby side.
303
355
  ### 3.6.7
304
356
 
305
357
  * Added workaround for ActiveRecord::Observer usage pre-db-creation. Addresses
306
- [issue 32](https://github.com/mceachen/closure_tree/issues/32).
358
+ [issue 32](https://github.com/ClosureTree/closure_tree/issues/32).
307
359
  Thanks, [Don Morrison](https://github.com/elskwid)!
308
360
 
309
361
  ### 3.6.6
@@ -314,28 +366,28 @@ Thanks, [James Miller](https://github.com/bensie)!
314
366
  ### 3.6.5
315
367
 
316
368
  * Use ```quote_table_name``` instead of ```quote_column_name```. Addresses
317
- [issue 29](https://github.com/mceachen/closure_tree/issues/29). Thanks,
369
+ [issue 29](https://github.com/ClosureTree/closure_tree/issues/29). Thanks,
318
370
  [Marcello Barnaba](https://github.com/vjt)!
319
371
 
320
372
  ### 3.6.4
321
373
 
322
374
  * Use ```.pluck``` when available for ```.ids_from```. Addresses
323
- [issue 26](https://github.com/mceachen/closure_tree/issues/26). Thanks,
375
+ [issue 26](https://github.com/ClosureTree/closure_tree/issues/26). Thanks,
324
376
  [Chris Sturgill](https://github.com/sturgill)!
325
377
 
326
378
  ### 3.6.3
327
379
 
328
- * Fixed [issue 24](https://github.com/mceachen/closure_tree/issues/24), which optimized ```#hash_tree```
380
+ * Fixed [issue 24](https://github.com/ClosureTree/closure_tree/issues/24), which optimized ```#hash_tree```
329
381
  for roots. Thanks, [Saverio Trioni](https://github.com/rewritten)!
330
382
 
331
383
  ### 3.6.2
332
384
 
333
- * Fixed [issue 23](https://github.com/mceachen/closure_tree/issues/23), which added support for ```#siblings```
385
+ * Fixed [issue 23](https://github.com/ClosureTree/closure_tree/issues/23), which added support for ```#siblings```
334
386
  when sort_order wasn't specified. Thanks, [Gary Greyling](https://github.com/garygreyling)!
335
387
 
336
388
  ### 3.6.1
337
389
 
338
- * Fixed [issue 20](https://github.com/mceachen/closure_tree/issues/20), which affected
390
+ * Fixed [issue 20](https://github.com/ClosureTree/closure_tree/issues/20), which affected
339
391
  deterministic ordering when siblings where different STI classes. Thanks, [edwinramirez](https://github.com/edwinramirez)!
340
392
 
341
393
  ### 3.6.0
@@ -345,16 +397,16 @@ Added support for:
345
397
  * ActiveRecord::Base.table_name_prefix
346
398
  * ActiveRecord::Base.table_name_suffix
347
399
 
348
- This addresses [issue 21](https://github.com/mceachen/closure_tree/issues/21). Thanks, [Judd Blair](https://github.com/juddblair)!
400
+ This addresses [issue 21](https://github.com/ClosureTree/closure_tree/issues/21). Thanks, [Judd Blair](https://github.com/juddblair)!
349
401
 
350
402
  ### 3.5.2
351
403
 
352
404
  * Added ```find_all_by_generation```
353
- for [feature request 17](https://github.com/mceachen/closure_tree/issues/17).
405
+ for [feature request 17](https://github.com/ClosureTree/closure_tree/issues/17).
354
406
 
355
407
  ### 3.4.2
356
408
 
357
- * Fixed [issue 18](https://github.com/mceachen/closure_tree/issues/18), which affected
409
+ * Fixed [issue 18](https://github.com/ClosureTree/closure_tree/issues/18), which affected
358
410
  append_node/prepend_node ordering when the first node didn't have an explicit order_by value
359
411
 
360
412
  ### 3.4.1
@@ -363,7 +415,7 @@ This addresses [issue 21](https://github.com/mceachen/closure_tree/issues/21). T
363
415
 
364
416
  ### 3.4.0
365
417
 
366
- Fixed [issue 15](https://github.com/mceachen/closure_tree/issues/15):
418
+ Fixed [issue 15](https://github.com/ClosureTree/closure_tree/issues/15):
367
419
  * "parent" is now attr_accessible, which adds support for constructor-provided parents.
368
420
  * updated readme accordingly
369
421
 
@@ -373,7 +425,7 @@ Fixed [issue 15](https://github.com/mceachen/closure_tree/issues/15):
373
425
 
374
426
  ### 3.3.1
375
427
 
376
- * Added support for partially-unsaved hierarchies [issue 13](https://github.com/mceachen/closure_tree/issues/13):
428
+ * Added support for partially-unsaved hierarchies [issue 13](https://github.com/ClosureTree/closure_tree/issues/13):
377
429
  ```
378
430
  a = Tag.new(name: "a")
379
431
  b = Tag.new(name: "b")
@@ -388,7 +440,7 @@ a.save
388
440
  ### 3.2.1
389
441
 
390
442
  * Added ```ancestor_ids```, ```descendant_ids```, and ```sibling_ids```
391
- * Added example spec to solve [issue 9](https://github.com/mceachen/closure_tree/issues/9)
443
+ * Added example spec to solve [issue 9](https://github.com/ClosureTree/closure_tree/issues/9)
392
444
 
393
445
  ### 3.2.0
394
446
 
@@ -400,7 +452,7 @@ a.save
400
452
 
401
453
  ### 3.0.4
402
454
 
403
- * Merged [pull request](https://github.com/mceachen/closure_tree/pull/8) to fix ```.siblings``` and ```.self_and_siblings```
455
+ * Merged [pull request](https://github.com/ClosureTree/closure_tree/pull/8) to fix ```.siblings``` and ```.self_and_siblings```
404
456
  (Thanks, [eljojo](https://github.com/eljojo)!)
405
457
 
406
458
  ### 3.0.3
@@ -415,7 +467,7 @@ a.save
415
467
 
416
468
  ### 3.0.1
417
469
 
418
- * Support 3.2.0's fickle deprecation of InstanceMethods (Thanks, [jheiss](https://github.com/mceachen/closure_tree/pull/5))!
470
+ * Support 3.2.0's fickle deprecation of InstanceMethods (Thanks, [jheiss](https://github.com/ClosureTree/closure_tree/pull/5))!
419
471
 
420
472
  ### 3.0.0
421
473