ancestry 3.2.0 → 3.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +277 -0
- data/lib/ancestry/locales/en.yml +16 -0
- data/lib/ancestry/materialized_path_pg.rb +23 -0
- data/lib/ancestry/version.rb +1 -1
- metadata +6 -5
- data/ancestry.gemspec +0 -51
- data/init.rb +0 -1
- data/install.rb +0 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 2f1ae94346d7ad0aa07830437239dc7f13dda73408c61a118e60f53ef21e6282
|
|
4
|
+
data.tar.gz: 1eb3e39a50b257dddc13559d52b03955c8174682f990a723614ca9e2e3dc6945
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 87a3c689530416fd20fa4064bb7c610e8e9e3b013324776e5a7c96ad7cb0a8f1a136dfbe71ada9e53b5116ef41602dab7d2d7664e2fc047e8a31f7a6598e2238
|
|
7
|
+
data.tar.gz: f420ad732aca06c42116a97db60898db8712163aae660d13b8f0d32b806eaa6e81edac4ba2eb167986456995859cfd52da829abbbdf7d3377177b9f9049b73d5
|
data/CHANGELOG.md
ADDED
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
# Ancestry Changelog
|
|
2
|
+
|
|
3
|
+
Doing our best at supporting [SemVer](http://semver.org/) with
|
|
4
|
+
a nice looking [Changelog](http://keepachangelog.com).
|
|
5
|
+
|
|
6
|
+
## Version [HEAD] <small>now</small>
|
|
7
|
+
|
|
8
|
+
* dropped support for rails 4.2 and 5.0
|
|
9
|
+
|
|
10
|
+
## Versions [3.2.1] <small>2020-09-23</small>
|
|
11
|
+
|
|
12
|
+
* fixed gemspec to include locales and pg (thx @HectorMF)
|
|
13
|
+
|
|
14
|
+
## Versions [3.2.0] <small>2020-09-23</small>
|
|
15
|
+
|
|
16
|
+
* introduce i18n
|
|
17
|
+
* pg sql optimization for ancestry changes (thx @suonlight and @geis)
|
|
18
|
+
* pg sql optimization for sorting (thx @brendon and @d-m-u)
|
|
19
|
+
* fix to humanise model name (thx @mkllnk)
|
|
20
|
+
* able to convert to ancestry from a parent_id column with a different name
|
|
21
|
+
* documentation fixes for better diagrams and grammar (thx @dtamais, @d-m-u, and @CamilleDrapier)
|
|
22
|
+
|
|
23
|
+
## Versions [3.1.0] <small>2020-08-03</small>
|
|
24
|
+
|
|
25
|
+
* `:primary_key_format` method lets you change syntax. good for uuids.
|
|
26
|
+
* changed code from being `ancestry` string to `ancestry_ids` focused. May break monkey patches.
|
|
27
|
+
* Moved many methods from `has_ancestry` and `InstanceMethods` to `MaterializedPath`. May break monkey patches.
|
|
28
|
+
* Removed tests for `mysql` driver. Starting with rails 4.1, it supports `mysql2` driver.
|
|
29
|
+
* Better documentation for relationships (thnx @dtamai and @d-m-u)
|
|
30
|
+
* Fix creating children in `after_*` callbacks (thx @jstirk)
|
|
31
|
+
|
|
32
|
+
## Version [3.0.7] <small>2018-11-06</small>
|
|
33
|
+
|
|
34
|
+
* Fixed rails 5.1 change detection (thx @jrafanie)
|
|
35
|
+
* Introduce counter cache (thx @hw676018683)
|
|
36
|
+
|
|
37
|
+
## Version [3.0.6] <small>2018-11-06</small>
|
|
38
|
+
|
|
39
|
+
* Fixed rails 4.1 version check (thx @myxoh)
|
|
40
|
+
|
|
41
|
+
## Version [3.0.5] <small>2018-11-06</small>
|
|
42
|
+
|
|
43
|
+
## Changed
|
|
44
|
+
|
|
45
|
+
* Added indirect children support (thx @tilo)
|
|
46
|
+
* Fixed test sorting for pg on mac osx
|
|
47
|
+
|
|
48
|
+
## Fixes
|
|
49
|
+
|
|
50
|
+
* Reduced memory footprint of parsing ancestry column (thx @NickLaMuro)
|
|
51
|
+
|
|
52
|
+
## Version [3.0.4] <small>2018-10-27</small>
|
|
53
|
+
|
|
54
|
+
## Fixes
|
|
55
|
+
|
|
56
|
+
* Properly detects non-integer columns (thx @adam101)
|
|
57
|
+
* Arrange no longer drops nodes due to missing parents (thx @trafium)
|
|
58
|
+
|
|
59
|
+
## Version [3.0.3] <small>2018-10-23</small>
|
|
60
|
+
|
|
61
|
+
This branch (3.x) should still be compatible with rails 3 and 4.
|
|
62
|
+
Rails 5.1 and 5.2 support were introduced in this version, but ongoing support
|
|
63
|
+
has been moved to ancestry 4.0
|
|
64
|
+
|
|
65
|
+
## Fixes
|
|
66
|
+
|
|
67
|
+
* Reduce object allocation (thx @NickLaMuro)
|
|
68
|
+
* Rails 5.1 fixes (thx @ctrombley)
|
|
69
|
+
* Avoid redundant query to DB in subtree_of scope (thx @Slike9)
|
|
70
|
+
* Syntax tweaks (thx @ekohl, @richardonrails)
|
|
71
|
+
* Fixed reverse ordering
|
|
72
|
+
* Dropped builds for ruby 1.9.3, 2.0, 2.1, and 2.2
|
|
73
|
+
* Dropped builds for Rails 3.x and 4.x (will use Active Record `or` syntax)
|
|
74
|
+
|
|
75
|
+
## Version [3.0.2] <small>2018-04-24</small>
|
|
76
|
+
|
|
77
|
+
## Fixes
|
|
78
|
+
|
|
79
|
+
* fixed `order_by_ancestry` bug
|
|
80
|
+
* fixed order tests for postgres on mac (it uses a different collation)
|
|
81
|
+
* fixed documentation (thx @besquared, @danfrenette, @eiwi1101, @isimluk, @mabusaad, @tilsammans)
|
|
82
|
+
* added missing `Ancestry::version`
|
|
83
|
+
* added Rails 5.2 support (thx @jjuliano)
|
|
84
|
+
|
|
85
|
+
## Version [3.0.1] <small>2017-07-05</small>
|
|
86
|
+
|
|
87
|
+
## Fixes
|
|
88
|
+
|
|
89
|
+
* added gem metadata
|
|
90
|
+
* fixed keep a changelog link (thx @mattbrictson)
|
|
91
|
+
* added alias has_parent?
|
|
92
|
+
* fixed bug where unscoping too much (thx @brendon)
|
|
93
|
+
* fixed tests on mysql 5.7 and rails 3.2
|
|
94
|
+
* Dropped 3.1 scope changes
|
|
95
|
+
|
|
96
|
+
## Version [3.0.0] <small>2017-05-18</small>
|
|
97
|
+
|
|
98
|
+
## Changed
|
|
99
|
+
|
|
100
|
+
* Dropping Rails 3.0, and 3.1. Added Rails 5.1 support (thx @ledermann)
|
|
101
|
+
* Dropping Rails 4.0, 4.1 for build reasons. Since 4.2 is supported, all 4.x should still work.
|
|
102
|
+
|
|
103
|
+
## Fixes
|
|
104
|
+
|
|
105
|
+
* Performance: Use `pluck` vs `map` for ids (thx @njakobsen and @culturecode)
|
|
106
|
+
* Fixed acts_as_tree compatibility (thx @crazymykl)
|
|
107
|
+
* Fixed loading ActiveRails prematurely (thx @vovimayhem)
|
|
108
|
+
* Fixes exist (thx @ledermann)
|
|
109
|
+
* Properly touches parents when different class for STI (thx @samtgarson)
|
|
110
|
+
* Fixed issues with parent_id (only present on master) (thx @domcleal)
|
|
111
|
+
|
|
112
|
+
## Version [2.2.2] <small>2016-11-01</small>
|
|
113
|
+
|
|
114
|
+
### Changed
|
|
115
|
+
|
|
116
|
+
* Use `COALESCE` only for sorting versions greater than 5.0
|
|
117
|
+
* Fixed bug with explicit order clauses (introduced in 2.2.0)
|
|
118
|
+
* No longer load schema on `has_ancestry` load (thx @ledermann)
|
|
119
|
+
|
|
120
|
+
## Version [2.2.1] <small>2016-10-25</small>
|
|
121
|
+
|
|
122
|
+
Sorry for blip, local master got out of sync with upstream master.
|
|
123
|
+
Missed 2 commits (which are feature adds)
|
|
124
|
+
|
|
125
|
+
### Added
|
|
126
|
+
* Use like (vs ilike) for rails 5.0 (performance enhancement)
|
|
127
|
+
* Use `COALESCE` for sorting on pg, mysql, and sqlite vs `CASE`
|
|
128
|
+
|
|
129
|
+
## Version [2.2.0] <small>2016-10-25</small>
|
|
130
|
+
|
|
131
|
+
### Added
|
|
132
|
+
* Predicates for scopes: e.g.: `ancestor_of?`, `parent_of?` (thx @neglectedvalue)
|
|
133
|
+
* Scope `path_of`
|
|
134
|
+
|
|
135
|
+
### Changed
|
|
136
|
+
* `arrange` now accepts blocks (thx @mastfish)
|
|
137
|
+
* Performance tuning `arrange_node` (thx @fryguy)
|
|
138
|
+
* In orphan strategy, set `ancestry` to `nil` for no parents (thx @haslinger)
|
|
139
|
+
* Only updates `updated_at` when a record is changed (thx @brocktimus)
|
|
140
|
+
* No longer casts text primary key as an integer
|
|
141
|
+
* Upgrading tests for ruby versions (thx @brocktimus, @fryguy, @yui-knk)
|
|
142
|
+
* Fix non-default ancestry not getting used properly (thx @javiyu)
|
|
143
|
+
|
|
144
|
+
## Version [2.1.0] <small>2014-04-16</small>
|
|
145
|
+
* Added arrange_serializable (thx @krishandley, @chicagogrrl)
|
|
146
|
+
* Add the :touch to update ancestors on save (thx @adammck)
|
|
147
|
+
* Change conditions into arel (thx @mlitwiniuk)
|
|
148
|
+
* Added children? & siblings? alias (thx @bigtunacan)
|
|
149
|
+
* closure_tree compatibility (thx @gzigzigzeo)
|
|
150
|
+
* Performance tweak (thx @mjc)
|
|
151
|
+
* Improvements to organization (thx @xsuchy, @ryakh)
|
|
152
|
+
|
|
153
|
+
## Version [2.0.0] <small>2013-05-17</small>
|
|
154
|
+
* Removed rails 2 compatibility
|
|
155
|
+
* Added table name to condition constructing methods (thx @aflatter)
|
|
156
|
+
* Fix depth_cache not being updated when moving up to ancestors (thx @scottatron)
|
|
157
|
+
* add alias :root? to existing is_root? (thx @divineforest)
|
|
158
|
+
* Add block to sort_by_ancestry (thx @Iliya)
|
|
159
|
+
* Add attribute query method for parent_id (thx @sj26)
|
|
160
|
+
* Fixed and tested for rails 4 (thx @adammck, @Nihad, @Systho, @Philippe, e.a.)
|
|
161
|
+
* Fixed overwriting ActiveRecord::Base.base_class (thx @Rozhnov)
|
|
162
|
+
* New adopt strategy (thx unknown)
|
|
163
|
+
* Many more improvements
|
|
164
|
+
|
|
165
|
+
## Version [1.3.0] <small>2012-05-04</small>
|
|
166
|
+
* Ancestry now ignores default scopes when moving or destroying nodes, ensuring tree consistency
|
|
167
|
+
* Changed ActiveRecord dependency to 2.3.14
|
|
168
|
+
|
|
169
|
+
## Version [1.2.5] <small>2012-03-15</small>
|
|
170
|
+
* Fixed warnings: "parenthesize argument(s) for future version"
|
|
171
|
+
* Fixed a bug in the restore_ancestry_integrity! method (thx Arthur Holstvoogd)
|
|
172
|
+
|
|
173
|
+
## Version [1.2.4] <small>2011-04-22</small>
|
|
174
|
+
* Prepended table names to column names in queries (thx @raelik)
|
|
175
|
+
* Better check to see if acts_as_tree can be overloaded (thx @jims)
|
|
176
|
+
* Performance inprovements (thx @kueda)
|
|
177
|
+
|
|
178
|
+
## Version [1.2.3] <small>2010-10-28</small>
|
|
179
|
+
* Fixed error with determining ActiveRecord version
|
|
180
|
+
* Added option to specify :primary_key_format (thx @rolftimmermans)
|
|
181
|
+
|
|
182
|
+
## Version [1.2.2] <small>2010-10-24</small>
|
|
183
|
+
* Fixed all deprecation warnings for rails 3.0.X
|
|
184
|
+
* Added `:report` option to `check_ancestry_integrity!`
|
|
185
|
+
* Changed ActiveRecord dependency to 2.2.2
|
|
186
|
+
* Tested and fixed for ruby 1.8.7 and 1.9.2
|
|
187
|
+
* Changed usage of `update_attributes` to `update_attribute` to allow ancestry column protection
|
|
188
|
+
|
|
189
|
+
## Version [1.2.0] <small>2009-11-07</small>
|
|
190
|
+
* Removed some duplication in has_ancestry
|
|
191
|
+
* Cleaned up plugin pattern according to http://yehudakatz.com/2009/11/12/better-ruby-idioms/
|
|
192
|
+
* Moved parts of ancestry into seperate files
|
|
193
|
+
* Made it possible to pass options into the arrange method
|
|
194
|
+
* Renamed acts_as_tree to has_ancestry
|
|
195
|
+
* Aliased has_ancestry as acts_as_tree if acts_as_tree is available
|
|
196
|
+
* Added subtree_of scope
|
|
197
|
+
* Updated ordered_by_ancestry scope to support Microsoft SQL Server
|
|
198
|
+
* Added empty hash as parameter to exists? calls for older ActiveRecord versions
|
|
199
|
+
|
|
200
|
+
## Version [1.1.4] <small>2009-11-07</small>
|
|
201
|
+
* Thanks to a patch from tom taylor, Ancestry now works with different primary keys
|
|
202
|
+
|
|
203
|
+
## Version [1.1.3] <small>2009-11-01</small>
|
|
204
|
+
* Fixed a pretty bad bug where several operations took far too many queries
|
|
205
|
+
|
|
206
|
+
## Version [1.1.2] <small>2009-10-29</small>
|
|
207
|
+
* Added validation for depth cache column
|
|
208
|
+
* Added STI support (reported broken)
|
|
209
|
+
|
|
210
|
+
## Version [1.1.1] <small>2009-10-28</small>
|
|
211
|
+
* Fixed some parentheses warnings that where reported
|
|
212
|
+
* Fixed a reported issue with arrangement
|
|
213
|
+
* Fixed issues with ancestors and path order on postgres
|
|
214
|
+
* Added ordered_by_ancestry scope (needed to fix issues)
|
|
215
|
+
|
|
216
|
+
## Version [1.1.0] <small>2009-10-22</small>
|
|
217
|
+
* Depth caching (and cache rebuilding)
|
|
218
|
+
* Depth method for nodes
|
|
219
|
+
* Named scopes for selecting by depth
|
|
220
|
+
* Relative depth options for tree navigation methods:
|
|
221
|
+
* ancestors
|
|
222
|
+
* path
|
|
223
|
+
* descendants
|
|
224
|
+
* descendant_ids
|
|
225
|
+
* subtree
|
|
226
|
+
* subtree_ids
|
|
227
|
+
* Updated README
|
|
228
|
+
* Easy migration from existing plugins/gems
|
|
229
|
+
* acts_as_tree checks unknown options
|
|
230
|
+
* acts_as_tree checks that options are hash
|
|
231
|
+
* Added a bang (!) to the integrity functions
|
|
232
|
+
* Since these functions should only be used from ./script/console and not
|
|
233
|
+
from your application, this change is not considered as breaking backwards
|
|
234
|
+
compatibility and the major version wasn't bumped.
|
|
235
|
+
* Updated install script to point to documentation
|
|
236
|
+
* Removed rails specific init
|
|
237
|
+
* Removed uninstall script
|
|
238
|
+
|
|
239
|
+
## Version 1.0.0 <small>2009-10-16</small>
|
|
240
|
+
* Initial version
|
|
241
|
+
* Tree building
|
|
242
|
+
* Tree navigation
|
|
243
|
+
* Integrity checking / restoration
|
|
244
|
+
* Arrangement
|
|
245
|
+
* Orphan strategies
|
|
246
|
+
* Subtree movement
|
|
247
|
+
* Named scopes
|
|
248
|
+
* Validations
|
|
249
|
+
|
|
250
|
+
|
|
251
|
+
[HEAD]: https://github.com/stefankroes/ancestry/compare/v3.2.0...HEAD
|
|
252
|
+
[3.1.0]: https://github.com/stefankroes/ancestry/compare/v3.1.0...v3.2.0
|
|
253
|
+
[3.1.0]: https://github.com/stefankroes/ancestry/compare/v3.0.7...v3.1.0
|
|
254
|
+
[3.0.7]: https://github.com/stefankroes/ancestry/compare/v3.0.6...v3.0.7
|
|
255
|
+
[3.0.6]: https://github.com/stefankroes/ancestry/compare/v3.0.5...v3.0.6
|
|
256
|
+
[3.0.5]: https://github.com/stefankroes/ancestry/compare/v3.0.4...v3.0.5
|
|
257
|
+
[3.0.4]: https://github.com/stefankroes/ancestry/compare/v3.0.3...v3.0.4
|
|
258
|
+
[3.0.3]: https://github.com/stefankroes/ancestry/compare/v3.0.2...v3.0.3
|
|
259
|
+
[3.0.2]: https://github.com/stefankroes/ancestry/compare/v3.0.1...v3.0.2
|
|
260
|
+
[3.0.1]: https://github.com/stefankroes/ancestry/compare/v3.0.0...v3.0.1
|
|
261
|
+
[3.0.0]: https://github.com/stefankroes/ancestry/compare/v2.2.2...v3.0.0
|
|
262
|
+
[2.2.2]: https://github.com/stefankroes/ancestry/compare/v2.2.1...v2.2.2
|
|
263
|
+
[2.2.1]: https://github.com/stefankroes/ancestry/compare/v2.2.0...v2.2.1
|
|
264
|
+
[2.2.0]: https://github.com/stefankroes/ancestry/compare/v2.1.0...v2.2.0
|
|
265
|
+
[2.1.0]: https://github.com/stefankroes/ancestry/compare/v2.0.0...v2.1.0
|
|
266
|
+
[2.0.0]: https://github.com/stefankroes/ancestry/compare/v1.3.0...v2.0.0
|
|
267
|
+
[1.3.0]: https://github.com/stefankroes/ancestry/compare/v1.2.5...v1.3.0
|
|
268
|
+
[1.2.5]: https://github.com/stefankroes/ancestry/compare/v1.2.4...v1.2.5
|
|
269
|
+
[1.2.4]: https://github.com/stefankroes/ancestry/compare/v1.2.3...v1.2.4
|
|
270
|
+
[1.2.3]: https://github.com/stefankroes/ancestry/compare/v1.2.2...v1.2.3
|
|
271
|
+
[1.2.2]: https://github.com/stefankroes/ancestry/compare/v1.2.0...v1.2.2
|
|
272
|
+
[1.2.0]: https://github.com/stefankroes/ancestry/compare/v1.1.4...v1.2.0
|
|
273
|
+
[1.1.4]: https://github.com/stefankroes/ancestry/compare/v1.1.3...v1.1.4
|
|
274
|
+
[1.1.3]: https://github.com/stefankroes/ancestry/compare/v1.1.2...v1.1.3
|
|
275
|
+
[1.1.2]: https://github.com/stefankroes/ancestry/compare/v1.1.1...v1.1.2
|
|
276
|
+
[1.1.1]: https://github.com/stefankroes/ancestry/compare/v1.1.0...v1.1.1
|
|
277
|
+
[1.1.0]: https://github.com/stefankroes/ancestry/compare/v1.0.0...v1.1.0
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
en:
|
|
2
|
+
ancestry:
|
|
3
|
+
unknown_depth_option: "Unknown depth option: %{scope_name}."
|
|
4
|
+
invalid_orphan_strategy: "Invalid orphan strategy, valid ones are :rootify, :adopt, :restrict and :destroy."
|
|
5
|
+
invalid_ancestry_column: "Invalid format for ancestry column of node %{node_id}: %{ancestry_column}."
|
|
6
|
+
reference_nonexistent_node: "Reference to nonexistent node in node %{node_id}: %{ancestor_id}."
|
|
7
|
+
conflicting_parent_id: "Conflicting parent id found in node %{node_id}: %{parent_id} for node %{node_id} while expecting %{expected}"
|
|
8
|
+
cannot_rebuild_depth_cache: "Cannot rebuild depth cache for model without depth caching."
|
|
9
|
+
|
|
10
|
+
option_must_be_hash: "Options for has_ancestry must be in a hash."
|
|
11
|
+
unknown_option: "Unknown option for has_ancestry: %{key} => %{value}."
|
|
12
|
+
named_scope_depth_cache: "Named scope '%{scope_name}' is only available when depth caching is enabled."
|
|
13
|
+
|
|
14
|
+
exclude_self: "%{class_name} cannot be a descendant of itself."
|
|
15
|
+
cannot_delete_descendants: "Cannot delete record because it has descendants."
|
|
16
|
+
no_child_for_new_record: "No child ancestry for new record. Save record before performing tree operations."
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
module Ancestry
|
|
2
|
+
module MaterializedPathPg
|
|
3
|
+
# Update descendants with new ancestry (before save)
|
|
4
|
+
def update_descendants_with_new_ancestry
|
|
5
|
+
# If enabled and node is existing and ancestry was updated and the new ancestry is sane ...
|
|
6
|
+
if !ancestry_callbacks_disabled? && !new_record? && ancestry_changed? && sane_ancestry?
|
|
7
|
+
ancestry_column = ancestry_base_class.ancestry_column
|
|
8
|
+
old_ancestry = path_ids_in_database.join(Ancestry::MaterializedPath::ANCESTRY_DELIMITER)
|
|
9
|
+
new_ancestry = path_ids.join(Ancestry::MaterializedPath::ANCESTRY_DELIMITER)
|
|
10
|
+
update_clause = [
|
|
11
|
+
"#{ancestry_column} = regexp_replace(#{ancestry_column}, '^#{old_ancestry}', '#{new_ancestry}')"
|
|
12
|
+
]
|
|
13
|
+
|
|
14
|
+
if ancestry_base_class.respond_to?(:depth_cache_column) && respond_to?(ancestry_base_class.depth_cache_column)
|
|
15
|
+
depth_cache_column = ancestry_base_class.depth_cache_column.to_s
|
|
16
|
+
update_clause << "#{depth_cache_column} = length(regexp_replace(regexp_replace(ancestry, '^#{old_ancestry}', '#{new_ancestry}'), '\\d', '', 'g')) + 1"
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
unscoped_descendants.update_all update_clause.join(', ')
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
data/lib/ancestry/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: ancestry
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.2.
|
|
4
|
+
version: 3.2.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Stefan Kroes
|
|
@@ -94,17 +94,17 @@ executables: []
|
|
|
94
94
|
extensions: []
|
|
95
95
|
extra_rdoc_files: []
|
|
96
96
|
files:
|
|
97
|
+
- CHANGELOG.md
|
|
97
98
|
- MIT-LICENSE
|
|
98
99
|
- README.md
|
|
99
|
-
- ancestry.gemspec
|
|
100
|
-
- init.rb
|
|
101
|
-
- install.rb
|
|
102
100
|
- lib/ancestry.rb
|
|
103
101
|
- lib/ancestry/class_methods.rb
|
|
104
102
|
- lib/ancestry/exceptions.rb
|
|
105
103
|
- lib/ancestry/has_ancestry.rb
|
|
106
104
|
- lib/ancestry/instance_methods.rb
|
|
105
|
+
- lib/ancestry/locales/en.yml
|
|
107
106
|
- lib/ancestry/materialized_path.rb
|
|
107
|
+
- lib/ancestry/materialized_path_pg.rb
|
|
108
108
|
- lib/ancestry/version.rb
|
|
109
109
|
homepage: https://github.com/stefankroes/ancestry
|
|
110
110
|
licenses:
|
|
@@ -114,7 +114,8 @@ metadata:
|
|
|
114
114
|
changelog_uri: https://github.com/stefankroes/ancestry/blob/master/CHANGELOG.md
|
|
115
115
|
source_code_uri: https://github.com/stefankroes/ancestry/
|
|
116
116
|
bug_tracker_uri: https://github.com/stefankroes/ancestry/issues
|
|
117
|
-
post_install_message:
|
|
117
|
+
post_install_message: Thank you for installing Ancestry. You can visit http://github.com/stefankroes/ancestry
|
|
118
|
+
to read the documentation.
|
|
118
119
|
rdoc_options: []
|
|
119
120
|
require_paths:
|
|
120
121
|
- lib
|
data/ancestry.gemspec
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
lib = File.expand_path('../lib/', __FILE__)
|
|
2
|
-
$:.unshift lib unless $:.include?(lib)
|
|
3
|
-
require 'ancestry/version'
|
|
4
|
-
|
|
5
|
-
Gem::Specification.new do |s|
|
|
6
|
-
s.name = 'ancestry'
|
|
7
|
-
s.summary = 'Organize ActiveRecord model into a tree structure'
|
|
8
|
-
s.description = <<-EOF
|
|
9
|
-
Ancestry allows the records of a ActiveRecord model to be organized in a tree
|
|
10
|
-
structure, using the materialized path pattern. It exposes the standard
|
|
11
|
-
relations (ancestors, parent, root, children, siblings, descendants)
|
|
12
|
-
and allows them to be fetched in a single query. Additional features include
|
|
13
|
-
named scopes, integrity checking, integrity restoration, arrangement
|
|
14
|
-
of (sub)tree into hashes and different strategies for dealing with orphaned
|
|
15
|
-
records.
|
|
16
|
-
EOF
|
|
17
|
-
s.metadata = {
|
|
18
|
-
"homepage_uri" => "https://github.com/stefankroes/ancestry",
|
|
19
|
-
"changelog_uri" => "https://github.com/stefankroes/ancestry/blob/master/CHANGELOG.md",
|
|
20
|
-
"source_code_uri" => "https://github.com/stefankroes/ancestry/",
|
|
21
|
-
"bug_tracker_uri" => "https://github.com/stefankroes/ancestry/issues",
|
|
22
|
-
}
|
|
23
|
-
s.version = Ancestry::VERSION
|
|
24
|
-
|
|
25
|
-
s.authors = ['Stefan Kroes', 'Keenan Brock']
|
|
26
|
-
s.email = 'keenan@thebrocks.net'
|
|
27
|
-
s.homepage = 'https://github.com/stefankroes/ancestry'
|
|
28
|
-
s.license = 'MIT'
|
|
29
|
-
|
|
30
|
-
s.files = [
|
|
31
|
-
'ancestry.gemspec',
|
|
32
|
-
'init.rb',
|
|
33
|
-
'install.rb',
|
|
34
|
-
'lib/ancestry.rb',
|
|
35
|
-
'lib/ancestry/has_ancestry.rb',
|
|
36
|
-
'lib/ancestry/exceptions.rb',
|
|
37
|
-
'lib/ancestry/class_methods.rb',
|
|
38
|
-
'lib/ancestry/instance_methods.rb',
|
|
39
|
-
'lib/ancestry/materialized_path.rb',
|
|
40
|
-
'lib/ancestry/version.rb',
|
|
41
|
-
'MIT-LICENSE',
|
|
42
|
-
'README.md'
|
|
43
|
-
]
|
|
44
|
-
|
|
45
|
-
s.required_ruby_version = '>= 2.0.0'
|
|
46
|
-
s.add_runtime_dependency 'activerecord', '>= 4.2.0'
|
|
47
|
-
s.add_development_dependency 'appraisal'
|
|
48
|
-
s.add_development_dependency 'minitest'
|
|
49
|
-
s.add_development_dependency 'rake', '~> 13.0'
|
|
50
|
-
s.add_development_dependency 'yard'
|
|
51
|
-
end
|
data/init.rb
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
require 'ancestry'
|
data/install.rb
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
puts "Thank you for installing Ancestry. You can visit http://github.com/stefankroes/ancestry to read the documentation."
|