awesome_nested_set 3.1.3 → 3.2.0
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 +5 -5
- data/CHANGELOG +14 -1
- data/README.md +2 -1
- data/lib/awesome_nested_set/awesome_nested_set.rb +4 -4
- data/lib/awesome_nested_set/columns.rb +2 -2
- data/lib/awesome_nested_set/model.rb +2 -2
- data/lib/awesome_nested_set/model/prunable.rb +1 -1
- data/lib/awesome_nested_set/model/rebuildable.rb +5 -1
- data/lib/awesome_nested_set/model/validatable.rb +1 -1
- data/lib/awesome_nested_set/version.rb +3 -1
- metadata +35 -36
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: c3ecf7f786a6b917601a6818b9ea57db89a2ed41f74e5053455ce1cb7f121229
|
4
|
+
data.tar.gz: 31ffd151ff36b304e8c89cdcb129bc52a63b8a500577adf775df4eb11ef216f5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b64fdc6283aa35df65896df891124c89d305eb38e47f02fe151ff698dc4653570497839464205c74300ec05821107b5c2a6f04c48c5cb103b4df598609d8b606
|
7
|
+
data.tar.gz: 1f26c9f63c803266dbd07016a4bee0c3034af2b236b84a889dd9ee361e7f3bc3531dae49b7d474177e0fcc2cb782292d735625440d613b0f435506914a5ec227
|
data/CHANGELOG
CHANGED
@@ -1,11 +1,22 @@
|
|
1
|
+
3.2.0
|
2
|
+
* Add support for Rails 6.0 [Stefan Andersen](https://github.com/stfnndrsn) and [Damian Legawiec](https://github.com/damianlegawiec) and [Jonathan Tapia](https://github.com/jtapia) and [Alex](https://github.com/a-ta-ta)
|
3
|
+
* [Compare to 3.1.4](https://github.com/collectiveidea/awesome_nested_set/compare/v3.1.4...v3.2.0)
|
4
|
+
|
5
|
+
3.1.4
|
6
|
+
* Add support for Rails 5.2 [John Hawthorn](https://github.com/jhawthorn) and [marocchino](https://github.com/marocchino)
|
7
|
+
* [Compare to 3.1.3](https://github.com/collectiveidea/awesome_nested_set/compare/v3.1.3...v3.1.4)
|
8
|
+
|
1
9
|
3.1.3
|
2
|
-
* Add Rails 5.1
|
10
|
+
* Add support for Rails 5.1 [John Hawthorn](https://github.com/jhawthorn)
|
11
|
+
* [Compare to 3.1.2](https://github.com/collectiveidea/awesome_nested_set/compare/v3.1.2...v3.1.3)
|
3
12
|
|
4
13
|
3.1.2
|
5
14
|
* Make belongs_to relation optional again [Jan Matusz](https://marahin.pl/)
|
15
|
+
* [Compare to 3.0.0](https://github.com/collectiveidea/awesome_nested_set/compare/v3.1.1...v3.1.2)
|
6
16
|
|
7
17
|
3.1.1
|
8
18
|
* Fix a reloading bug when using default scope [Krzysztof Rybka](https://github.com/krzysiek1507)
|
19
|
+
* [Compare to 3.1.0](https://github.com/collectiveidea/awesome_nested_set/compare/v3.1.0...v3.1.1)
|
9
20
|
|
10
21
|
3.1.0
|
11
22
|
* Ensure that nested_set queries respect the model's default_scope. [oesgalha](https://github.com/oesgalha)
|
@@ -13,10 +24,12 @@
|
|
13
24
|
* Drop support for ruby 1.9.3 [Krzysztof Rybka](https://github.com/krzysiek1507)
|
14
25
|
* Fix .all_roots_valid? method when model is ordered by default [Adam Hodowany](https://github.com/hodak)
|
15
26
|
* Reuse the current model's connection when available [Tim Bugai] [#322](https://github.com/collectiveidea/awesome_nested_set/pull/322)
|
27
|
+
* [Compare to 3.0.3](https://github.com/collectiveidea/awesome_nested_set/compare/v3.0.3...v3.1.0)
|
16
28
|
|
17
29
|
3.0.3
|
18
30
|
* Add :nullify option to :dependent functionality to orphan children rather
|
19
31
|
than destroy them.
|
32
|
+
* [Compare to 3.0.2](https://github.com/collectiveidea/awesome_nested_set/compare/v3.0.2...v3.0.3)
|
20
33
|
|
21
34
|
3.0.2
|
22
35
|
* Fix `dependent: :restrict_with_exception` not allowing a delete to occur. [Brendan Kilfoil]
|
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# Awesome Nested Set
|
2
2
|
|
3
|
-
[](https://travis-ci.org/collectiveidea/awesome_nested_set) [](https://codeclimate.com/github/collectiveidea/awesome_nested_set) [](https://travis-ci.org/collectiveidea/awesome_nested_set) [](https://codeclimate.com/github/collectiveidea/awesome_nested_set) [](https://hakiri.io/github/collectiveidea/awesome_nested_set/master)
|
4
4
|
|
5
5
|
|
6
6
|
Awesome Nested Set is an implementation of the nested set pattern for ActiveRecord models.
|
@@ -178,6 +178,7 @@ class AddNestedToCategories < ActiveRecord::Migration
|
|
178
178
|
add_column :categories, :children_count, :integer
|
179
179
|
|
180
180
|
# This is necessary to update :lft and :rgt columns
|
181
|
+
Category.reset_column_information
|
181
182
|
Category.rebuild!
|
182
183
|
end
|
183
184
|
|
@@ -5,7 +5,7 @@ module CollectiveIdea #:nodoc:
|
|
5
5
|
module Acts #:nodoc:
|
6
6
|
module NestedSet #:nodoc:
|
7
7
|
|
8
|
-
# This
|
8
|
+
# This provides Nested Set functionality. Nested Set is a smart way to implement
|
9
9
|
# an _ordered_ tree, with the added feature that you can select the children and all of their
|
10
10
|
# descendants with a single query. The drawback is that insertion or move need some complex
|
11
11
|
# sql queries. But everything is done here by this module!
|
@@ -15,8 +15,8 @@ module CollectiveIdea #:nodoc:
|
|
15
15
|
#
|
16
16
|
# == API
|
17
17
|
#
|
18
|
-
# Methods names are aligned with acts_as_tree as much as possible to make
|
19
|
-
#
|
18
|
+
# Methods names are aligned with acts_as_tree as much as possible to make transition from one
|
19
|
+
# to another easier.
|
20
20
|
#
|
21
21
|
# item.children.create(:name => "child1")
|
22
22
|
#
|
@@ -87,7 +87,7 @@ module CollectiveIdea #:nodoc:
|
|
87
87
|
) if acts_as_nested_set_options[ar_callback]
|
88
88
|
end
|
89
89
|
|
90
|
-
has_many :children, -> { order(
|
90
|
+
has_many :children, -> { order(order_column_name => :asc) },
|
91
91
|
has_many_children_options
|
92
92
|
end
|
93
93
|
|
@@ -23,7 +23,7 @@ module CollectiveIdea #:nodoc:
|
|
23
23
|
acts_as_nested_set_options[:primary_column]
|
24
24
|
end
|
25
25
|
|
26
|
-
def
|
26
|
+
def order_column_name
|
27
27
|
acts_as_nested_set_options[:order_column] || left_column_name
|
28
28
|
end
|
29
29
|
|
@@ -60,7 +60,7 @@ module CollectiveIdea #:nodoc:
|
|
60
60
|
end
|
61
61
|
|
62
62
|
def quoted_order_column_name
|
63
|
-
model_connection.quote_column_name(
|
63
|
+
model_connection.quote_column_name(order_column_name)
|
64
64
|
end
|
65
65
|
|
66
66
|
def quoted_primary_key_column_full_name
|
@@ -79,7 +79,7 @@ module CollectiveIdea #:nodoc:
|
|
79
79
|
end
|
80
80
|
|
81
81
|
def nested_set_scope(options = {})
|
82
|
-
options = {:order =>
|
82
|
+
options = {:order => { order_column_name => :asc }}.merge(options)
|
83
83
|
|
84
84
|
where(options[:conditions]).order(options.delete(:order))
|
85
85
|
end
|
@@ -183,7 +183,7 @@ module CollectiveIdea #:nodoc:
|
|
183
183
|
|
184
184
|
def right_most_node
|
185
185
|
@right_most_node ||= nested_set_scope_without_default_scope(
|
186
|
-
:order =>
|
186
|
+
:order => {right_column_name => :desc}
|
187
187
|
).first
|
188
188
|
end
|
189
189
|
|
@@ -32,7 +32,11 @@ module CollectiveIdea
|
|
32
32
|
end
|
33
33
|
|
34
34
|
def order_for_rebuild
|
35
|
-
|
35
|
+
{
|
36
|
+
left_column_name => :asc,
|
37
|
+
right_column_name => :asc,
|
38
|
+
primary_key => :asc
|
39
|
+
}
|
36
40
|
end
|
37
41
|
end
|
38
42
|
|
@@ -20,7 +20,7 @@ module CollectiveIdea
|
|
20
20
|
select("#{scope_string}#{column}, COUNT(#{column}) as _count").
|
21
21
|
group("#{scope_string}#{column}", quoted_primary_key_column_full_name).
|
22
22
|
having("COUNT(#{column}) > 1").
|
23
|
-
order(
|
23
|
+
order(primary_column_name => :asc).
|
24
24
|
first.nil?
|
25
25
|
end
|
26
26
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: awesome_nested_set
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brandon Keepers
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2019-08-21 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: activerecord
|
@@ -21,7 +21,7 @@ dependencies:
|
|
21
21
|
version: 4.0.0
|
22
22
|
- - "<"
|
23
23
|
- !ruby/object:Gem::Version
|
24
|
-
version: '
|
24
|
+
version: '7.0'
|
25
25
|
type: :runtime
|
26
26
|
prerelease: false
|
27
27
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -31,7 +31,7 @@ dependencies:
|
|
31
31
|
version: 4.0.0
|
32
32
|
- - "<"
|
33
33
|
- !ruby/object:Gem::Version
|
34
|
-
version: '
|
34
|
+
version: '7.0'
|
35
35
|
- !ruby/object:Gem::Dependency
|
36
36
|
name: appraisal
|
37
37
|
requirement: !ruby/object:Gem::Requirement
|
@@ -47,21 +47,27 @@ dependencies:
|
|
47
47
|
- !ruby/object:Gem::Version
|
48
48
|
version: '0'
|
49
49
|
- !ruby/object:Gem::Dependency
|
50
|
-
name:
|
50
|
+
name: combustion
|
51
51
|
requirement: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
53
|
- - ">="
|
54
54
|
- !ruby/object:Gem::Version
|
55
|
-
version:
|
55
|
+
version: 0.5.2
|
56
|
+
- - "<"
|
57
|
+
- !ruby/object:Gem::Version
|
58
|
+
version: 0.5.5
|
56
59
|
type: :development
|
57
60
|
prerelease: false
|
58
61
|
version_requirements: !ruby/object:Gem::Requirement
|
59
62
|
requirements:
|
60
63
|
- - ">="
|
61
64
|
- !ruby/object:Gem::Version
|
62
|
-
version:
|
65
|
+
version: 0.5.2
|
66
|
+
- - "<"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 0.5.5
|
63
69
|
- !ruby/object:Gem::Dependency
|
64
|
-
name:
|
70
|
+
name: database_cleaner
|
65
71
|
requirement: !ruby/object:Gem::Requirement
|
66
72
|
requirements:
|
67
73
|
- - ">="
|
@@ -75,67 +81,61 @@ dependencies:
|
|
75
81
|
- !ruby/object:Gem::Version
|
76
82
|
version: '0'
|
77
83
|
- !ruby/object:Gem::Dependency
|
78
|
-
name:
|
84
|
+
name: pry
|
79
85
|
requirement: !ruby/object:Gem::Requirement
|
80
86
|
requirements:
|
81
|
-
- - "
|
87
|
+
- - ">="
|
82
88
|
- !ruby/object:Gem::Version
|
83
|
-
version:
|
89
|
+
version: '0'
|
84
90
|
type: :development
|
85
91
|
prerelease: false
|
86
92
|
version_requirements: !ruby/object:Gem::Requirement
|
87
93
|
requirements:
|
88
|
-
- - "
|
94
|
+
- - ">="
|
89
95
|
- !ruby/object:Gem::Version
|
90
|
-
version:
|
96
|
+
version: '0'
|
91
97
|
- !ruby/object:Gem::Dependency
|
92
|
-
name:
|
98
|
+
name: pry-nav
|
93
99
|
requirement: !ruby/object:Gem::Requirement
|
94
100
|
requirements:
|
95
|
-
- - "
|
101
|
+
- - ">="
|
96
102
|
- !ruby/object:Gem::Version
|
97
|
-
version: '
|
103
|
+
version: '0'
|
98
104
|
type: :development
|
99
105
|
prerelease: false
|
100
106
|
version_requirements: !ruby/object:Gem::Requirement
|
101
107
|
requirements:
|
102
|
-
- - "
|
108
|
+
- - ">="
|
103
109
|
- !ruby/object:Gem::Version
|
104
|
-
version: '
|
110
|
+
version: '0'
|
105
111
|
- !ruby/object:Gem::Dependency
|
106
|
-
name:
|
112
|
+
name: rake
|
107
113
|
requirement: !ruby/object:Gem::Requirement
|
108
114
|
requirements:
|
109
|
-
- - "
|
110
|
-
- !ruby/object:Gem::Version
|
111
|
-
version: 0.5.2
|
112
|
-
- - "<"
|
115
|
+
- - "~>"
|
113
116
|
- !ruby/object:Gem::Version
|
114
|
-
version:
|
117
|
+
version: '10'
|
115
118
|
type: :development
|
116
119
|
prerelease: false
|
117
120
|
version_requirements: !ruby/object:Gem::Requirement
|
118
121
|
requirements:
|
119
|
-
- - "
|
120
|
-
- !ruby/object:Gem::Version
|
121
|
-
version: 0.5.2
|
122
|
-
- - "<"
|
122
|
+
- - "~>"
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version:
|
124
|
+
version: '10'
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
|
-
name:
|
126
|
+
name: rspec-rails
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
|
-
- - "
|
129
|
+
- - "~>"
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version:
|
131
|
+
version: 3.8.0
|
132
132
|
type: :development
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
|
-
- - "
|
136
|
+
- - "~>"
|
137
137
|
- !ruby/object:Gem::Version
|
138
|
-
version:
|
138
|
+
version: 3.8.0
|
139
139
|
description: An awesome nested set implementation for Active Record
|
140
140
|
email: info@collectiveidea.com
|
141
141
|
executables: []
|
@@ -185,8 +185,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
185
185
|
- !ruby/object:Gem::Version
|
186
186
|
version: '0'
|
187
187
|
requirements: []
|
188
|
-
|
189
|
-
rubygems_version: 2.6.6
|
188
|
+
rubygems_version: 3.0.3
|
190
189
|
signing_key:
|
191
190
|
specification_version: 4
|
192
191
|
summary: An awesome nested set implementation for Active Record
|