rubytree 2.0.3 → 2.1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0e70523e3c29d12f86dc761dc345b0b44f453c4e768bddcb3cbcc2c224e9bf93
4
- data.tar.gz: 821e22d3ed2e0486c2ca5dbd9a15d9cf670771dddda5ecb1aaed547e1f663e61
3
+ metadata.gz: 8718114c71cea254b3c2a5a05c9d543e303fdc9ebebdc5a2a82f442389f71c4a
4
+ data.tar.gz: 3056e228bd10659486e4d3d41d5704bb08f4172c764adfaf7fb5e87db573973a
5
5
  SHA512:
6
- metadata.gz: 660e223253d4bd8b05ae998c19d11ae22f72affc3f6b31199150722a5062468ffdeb9e817ec10f87e2be8f7da28284c30b7322a9ee6615fcec2ca56dcf52b1a5
7
- data.tar.gz: 720fca8bf8ecb015ee6da0723bb1b159a88de19cc07aed83eba4baa665b23317383ec46a9f38a17fed0fa2c9672f836b3f56a7837d7f6f0efeb88d74a8945a66
6
+ metadata.gz: 76b2a2e9aea0042ad632081d32279c5da9eee6734b6bb0f2963689d0ef9ccde74ae6b4ac0ade8c3347a310988e86ff36456a02cf28d2babd2282123f3ea21cbe
7
+ data.tar.gz: 93eafb68eb8d943a7b0a7c7b34ef105aea8999696aeb77975017739f10576689c4905a871c46ed9f95110958e8a757ff62cdfc3d353ef56498f3749ccac44bba
data/API-CHANGES.md CHANGED
@@ -7,6 +7,12 @@ _Note_: API changes are expected to reduce significantly after the `1.x`
7
7
  release. In most cases, an alternative will be provided to ensure relatively
8
8
  smooth transition to the new APIs.
9
9
 
10
+ ## Release 2.1.0 Changes
11
+
12
+ * Minimum Ruby version has been bumped to 2.7 and above
13
+
14
+ * Updated all upstream dependencies to their latest stable versions
15
+
10
16
  ## Release 2.0.0 Changes
11
17
 
12
18
  * The _minimum_ required Ruby version is now `2.6` (or higher).
data/Gemfile.lock CHANGED
@@ -1,92 +1,97 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rubytree (2.0.3)
5
- json (~> 2.0, > 2.3.1)
4
+ rubytree (2.1.1)
5
+ json (~> 2.0, > 2.9)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
10
  ast (2.4.2)
11
- diff-lcs (1.5.0)
12
- docile (1.4.0)
13
- json (2.6.2)
14
- parallel (1.22.1)
15
- parser (3.1.2.0)
11
+ date (3.4.1)
12
+ diff-lcs (1.5.1)
13
+ docile (1.4.1)
14
+ json (2.9.1)
15
+ language_server-protocol (3.17.0.3)
16
+ parallel (1.26.3)
17
+ parser (3.3.6.0)
16
18
  ast (~> 2.4.1)
17
- power_assert (2.0.1)
18
- psych (4.0.4)
19
+ racc
20
+ power_assert (2.0.4)
21
+ psych (5.2.2)
22
+ date
19
23
  stringio
24
+ racc (1.8.1)
20
25
  rainbow (3.1.1)
21
- rake (13.0.6)
22
- rdoc (6.4.0)
26
+ rake (13.2.1)
27
+ rdoc (6.10.0)
23
28
  psych (>= 4.0.0)
24
- regexp_parser (2.5.0)
25
- rexml (3.2.5)
26
- rspec (3.11.0)
27
- rspec-core (~> 3.11.0)
28
- rspec-expectations (~> 3.11.0)
29
- rspec-mocks (~> 3.11.0)
30
- rspec-core (3.11.0)
31
- rspec-support (~> 3.11.0)
32
- rspec-expectations (3.11.0)
29
+ regexp_parser (2.9.3)
30
+ rspec (3.13.0)
31
+ rspec-core (~> 3.13.0)
32
+ rspec-expectations (~> 3.13.0)
33
+ rspec-mocks (~> 3.13.0)
34
+ rspec-core (3.13.2)
35
+ rspec-support (~> 3.13.0)
36
+ rspec-expectations (3.13.3)
33
37
  diff-lcs (>= 1.2.0, < 2.0)
34
- rspec-support (~> 3.11.0)
35
- rspec-mocks (3.11.1)
38
+ rspec-support (~> 3.13.0)
39
+ rspec-mocks (3.13.2)
36
40
  diff-lcs (>= 1.2.0, < 2.0)
37
- rspec-support (~> 3.11.0)
38
- rspec-support (3.11.0)
41
+ rspec-support (~> 3.13.0)
42
+ rspec-support (3.13.2)
39
43
  rtags (0.97)
40
44
  rtagstask (0.0.4)
41
45
  rtags (> 0.0.0)
42
- rubocop (1.30.1)
46
+ rubocop (1.69.2)
47
+ json (~> 2.3)
48
+ language_server-protocol (>= 3.17.0)
43
49
  parallel (~> 1.10)
44
- parser (>= 3.1.0.0)
50
+ parser (>= 3.3.0.2)
45
51
  rainbow (>= 2.2.2, < 4.0)
46
- regexp_parser (>= 1.8, < 3.0)
47
- rexml (>= 3.2.5, < 4.0)
48
- rubocop-ast (>= 1.18.0, < 2.0)
52
+ regexp_parser (>= 2.9.3, < 3.0)
53
+ rubocop-ast (>= 1.36.2, < 2.0)
49
54
  ruby-progressbar (~> 1.7)
50
- unicode-display_width (>= 1.4.0, < 3.0)
51
- rubocop-ast (1.18.0)
52
- parser (>= 3.1.1.0)
55
+ unicode-display_width (>= 2.4.0, < 4.0)
56
+ rubocop-ast (1.37.0)
57
+ parser (>= 3.3.1.0)
53
58
  rubocop-rake (0.6.0)
54
59
  rubocop (~> 1.0)
55
- rubocop-rspec (2.11.1)
56
- rubocop (~> 1.19)
57
- ruby-progressbar (1.11.0)
58
- simplecov (0.21.2)
60
+ rubocop-rspec (3.3.0)
61
+ rubocop (~> 1.61)
62
+ ruby-progressbar (1.13.0)
63
+ simplecov (0.22.0)
59
64
  docile (~> 1.1)
60
65
  simplecov-html (~> 0.11)
61
66
  simplecov_json_formatter (~> 0.1)
62
- simplecov-html (0.12.3)
67
+ simplecov-html (0.13.1)
63
68
  simplecov-lcov (0.8.0)
64
69
  simplecov_json_formatter (0.1.4)
65
- stringio (3.0.2)
66
- test-unit (3.5.3)
70
+ stringio (3.1.2)
71
+ test-unit (3.6.7)
67
72
  power_assert
68
- unicode-display_width (2.1.0)
69
- webrick (1.7.0)
70
- yard (0.9.28)
71
- webrick (~> 1.7.0)
73
+ unicode-display_width (3.1.2)
74
+ unicode-emoji (~> 4.0, >= 4.0.4)
75
+ unicode-emoji (4.0.4)
76
+ yard (0.9.37)
72
77
 
73
78
  PLATFORMS
74
79
  ruby
75
80
 
76
81
  DEPENDENCIES
77
82
  bundler (~> 2.3)
78
- rake (~> 13.0)
79
- rdoc (~> 6.0)
80
- rspec (~> 3.0, > 3.10)
83
+ rake (~> 13.2)
84
+ rdoc (~> 6.10)
85
+ rspec (~> 3.0, >= 3.13)
81
86
  rtagstask (~> 0.0.4)
82
- rubocop (~> 1.0)
83
- rubocop-rake (~> 0.0)
84
- rubocop-rspec (~> 2.0)
87
+ rubocop (~> 1.69)
88
+ rubocop-rake (~> 0.6)
89
+ rubocop-rspec (~> 3.3)
85
90
  rubytree!
86
- simplecov (~> 0.21)
91
+ simplecov (~> 0.22)
87
92
  simplecov-lcov (~> 0.8)
88
- test-unit (~> 3.0)
89
- yard (~> 0.0, >= 0.9.20)
93
+ test-unit (~> 3.6)
94
+ yard (~> 0.0, >= 0.9.37)
90
95
 
91
96
  BUNDLED WITH
92
97
  2.3.4
data/History.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # History of Changes
2
2
 
3
+ ### 2.1.1 / 2024-12-19
4
+
5
+ * 2.1.1 is a minor update that updates all dependencies and updates the guard
6
+ clause for creating a tree from a hash.
7
+
8
+ ### 2.1.0 / 2024-08-12
9
+
10
+ * Minimum Ruby version has been bumped to 2.7. This is needed to use the
11
+ upstream gems, many of which no longer support 2.6.
12
+
13
+ * Updated all dependencies to their latest stable versions.
14
+
3
15
  ### 2.0.0 / 2022-06-21
4
16
 
5
17
  * A major release with significant modernization to the code base and removal of
data/README.md CHANGED
@@ -118,7 +118,7 @@ This example can also be found at
118
118
 
119
119
  ## REQUIREMENTS: ##
120
120
 
121
- * [Ruby][] 2.6.x and above.
121
+ * [Ruby][] 2.7.x and above.
122
122
 
123
123
 
124
124
  * Run-time Dependencies:
@@ -231,6 +231,9 @@ A big thanks to the following contributors for helping improve **RubyTree**:
231
231
  specialized tree nodes (sub-classes of `Tree::TreeNode`).
232
232
  13. [Jakub Pavlik](https://github.com/igneus) for fixing the creation of
233
233
  detached copies of unclonable objects such as `:symbol`, `true|false`, etc.
234
+ 14. [bghalami-rc](https://github.com/bghalami-rc) for updating the guard clause
235
+ in the `from_hash` method.
236
+
234
237
 
235
238
  ## LICENSE: ##
236
239
 
@@ -106,7 +106,8 @@ module Tree
106
106
 
107
107
  root, children = hash.first
108
108
 
109
- raise ArgumentError, 'Invalid child. Must be nil or hash.' unless [Hash, NilClass].include?(children.class)
109
+ raise ArgumentError, 'Invalid child. Must be nil or hash.'\
110
+ unless [Hash, NilClass].any? { |c| children.is_a? c }
110
111
 
111
112
  node = new(*root)
112
113
  node.add_from_hash(children) unless children.nil?
data/lib/tree/version.rb CHANGED
@@ -4,7 +4,7 @@
4
4
  #
5
5
  # Author:: Anupam Sengupta (anupamsg@gmail.com)
6
6
  #
7
- # Copyright (c) 2012-2023 Anupam Sengupta. All rights reserved.
7
+ # Copyright (c) 2012-2024 Anupam Sengupta. All rights reserved.
8
8
  #
9
9
  # Redistribution and use in source and binary forms, with or without
10
10
  # modification, are permitted provided that the following conditions are met:
@@ -35,5 +35,5 @@
35
35
 
36
36
  module Tree
37
37
  # Rubytree Package Version
38
- VERSION = '2.0.3'
38
+ VERSION = '2.1.1'
39
39
  end
data/rubytree.gemspec CHANGED
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # Author:: Anupam Sengupta (anupamsg@gmail.com)
5
5
  #
6
- # Copyright (c) 2012-2023 Anupam Sengupta. All rights reserved.
6
+ # Copyright (c) 2012-2024 Anupam Sengupta. All rights reserved.
7
7
  #
8
8
  # frozen_string_literal: true
9
9
 
@@ -19,7 +19,7 @@ Gem::Specification.new do |s|
19
19
  s.email = 'anupamsg@gmail.com'
20
20
  s.homepage = 'http://rubytree.anupamsg.me'
21
21
 
22
- s.required_ruby_version = '>=2.6'
22
+ s.required_ruby_version = '>=2.7'
23
23
 
24
24
  s.summary = 'A generic tree data structure for Ruby.'
25
25
 
@@ -63,27 +63,33 @@ Gem::Specification.new do |s|
63
63
  '--main', 'README.md',
64
64
  '--quiet']
65
65
 
66
- s.add_runtime_dependency 'json', '~> 2.0', '> 2.3.1'
66
+ s.add_runtime_dependency 'json', '~> 2.0', '> 2.9'
67
67
 
68
68
  # NOTE: Rake is added as a development and test dependency in the Gemfile.
69
69
  s.add_development_dependency 'bundler', '~> 2.3'
70
- s.add_development_dependency 'rake', '~> 13.0'
71
- s.add_development_dependency 'rdoc', '~> 6.0'
72
- s.add_development_dependency 'rspec', '~> 3.0', '> 3.10'
70
+ s.add_development_dependency 'rake', '~> 13.2'
71
+ s.add_development_dependency 'rdoc', '~> 6.10'
72
+ s.add_development_dependency 'rspec', '~> 3.0', '>= 3.13'
73
73
  s.add_development_dependency 'rtagstask', '~> 0.0.4'
74
- s.add_development_dependency 'rubocop', '~> 1.0'
75
- s.add_development_dependency 'rubocop-rake', '~> 0.0'
76
- s.add_development_dependency 'rubocop-rspec', '~> 2.0'
77
- s.add_development_dependency 'simplecov', '~> 0.21'
74
+ s.add_development_dependency 'rubocop', '~> 1.69'
75
+ s.add_development_dependency 'rubocop-rake', '~> 0.6'
76
+ s.add_development_dependency 'rubocop-rspec', '~> 3.3'
77
+ s.add_development_dependency 'simplecov', '~> 0.22'
78
78
  s.add_development_dependency 'simplecov-lcov', '~> 0.8'
79
- s.add_development_dependency 'test-unit', '~> 3.0'
80
- s.add_development_dependency 'yard', '~> 0.0', '>= 0.9.20'
79
+ s.add_development_dependency 'test-unit', '~> 3.6'
80
+ s.add_development_dependency 'yard', '~> 0.0', '>= 0.9.37'
81
81
 
82
82
  s.post_install_message = <<-END_MESSAGE
83
83
  ========================================================================
84
84
  Thank you for installing RubyTree.
85
85
 
86
86
  Note::
87
+ - 2.1.1 is a minor update that updates all dependencies and
88
+ Updates the guard clause for creating a tree from a hash.
89
+
90
+ - 2.1.0 is a minor update that brings all libraries to their
91
+ latest stable versions. This version no longer supports
92
+ Ruby 2.6 (minimum requirement is now >= 2.7).
87
93
 
88
94
  - 2.0.0 is a major release with BREAKING API changes.
89
95
  See `API-CHANGES.md` for details.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubytree
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.3
4
+ version: 2.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Anupam Sengupta
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-12-27 00:00:00.000000000 Z
11
+ date: 2024-12-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '2.0'
20
20
  - - ">"
21
21
  - !ruby/object:Gem::Version
22
- version: 2.3.1
22
+ version: '2.9'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '2.0'
30
30
  - - ">"
31
31
  - !ruby/object:Gem::Version
32
- version: 2.3.1
32
+ version: '2.9'
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: bundler
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -50,28 +50,28 @@ dependencies:
50
50
  requirements:
51
51
  - - "~>"
52
52
  - !ruby/object:Gem::Version
53
- version: '13.0'
53
+ version: '13.2'
54
54
  type: :development
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
57
57
  requirements:
58
58
  - - "~>"
59
59
  - !ruby/object:Gem::Version
60
- version: '13.0'
60
+ version: '13.2'
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: rdoc
63
63
  requirement: !ruby/object:Gem::Requirement
64
64
  requirements:
65
65
  - - "~>"
66
66
  - !ruby/object:Gem::Version
67
- version: '6.0'
67
+ version: '6.10'
68
68
  type: :development
69
69
  prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
- version: '6.0'
74
+ version: '6.10'
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: rspec
77
77
  requirement: !ruby/object:Gem::Requirement
@@ -79,9 +79,9 @@ dependencies:
79
79
  - - "~>"
80
80
  - !ruby/object:Gem::Version
81
81
  version: '3.0'
82
- - - ">"
82
+ - - ">="
83
83
  - !ruby/object:Gem::Version
84
- version: '3.10'
84
+ version: '3.13'
85
85
  type: :development
86
86
  prerelease: false
87
87
  version_requirements: !ruby/object:Gem::Requirement
@@ -89,9 +89,9 @@ dependencies:
89
89
  - - "~>"
90
90
  - !ruby/object:Gem::Version
91
91
  version: '3.0'
92
- - - ">"
92
+ - - ">="
93
93
  - !ruby/object:Gem::Version
94
- version: '3.10'
94
+ version: '3.13'
95
95
  - !ruby/object:Gem::Dependency
96
96
  name: rtagstask
97
97
  requirement: !ruby/object:Gem::Requirement
@@ -112,56 +112,56 @@ dependencies:
112
112
  requirements:
113
113
  - - "~>"
114
114
  - !ruby/object:Gem::Version
115
- version: '1.0'
115
+ version: '1.69'
116
116
  type: :development
117
117
  prerelease: false
118
118
  version_requirements: !ruby/object:Gem::Requirement
119
119
  requirements:
120
120
  - - "~>"
121
121
  - !ruby/object:Gem::Version
122
- version: '1.0'
122
+ version: '1.69'
123
123
  - !ruby/object:Gem::Dependency
124
124
  name: rubocop-rake
125
125
  requirement: !ruby/object:Gem::Requirement
126
126
  requirements:
127
127
  - - "~>"
128
128
  - !ruby/object:Gem::Version
129
- version: '0.0'
129
+ version: '0.6'
130
130
  type: :development
131
131
  prerelease: false
132
132
  version_requirements: !ruby/object:Gem::Requirement
133
133
  requirements:
134
134
  - - "~>"
135
135
  - !ruby/object:Gem::Version
136
- version: '0.0'
136
+ version: '0.6'
137
137
  - !ruby/object:Gem::Dependency
138
138
  name: rubocop-rspec
139
139
  requirement: !ruby/object:Gem::Requirement
140
140
  requirements:
141
141
  - - "~>"
142
142
  - !ruby/object:Gem::Version
143
- version: '2.0'
143
+ version: '3.3'
144
144
  type: :development
145
145
  prerelease: false
146
146
  version_requirements: !ruby/object:Gem::Requirement
147
147
  requirements:
148
148
  - - "~>"
149
149
  - !ruby/object:Gem::Version
150
- version: '2.0'
150
+ version: '3.3'
151
151
  - !ruby/object:Gem::Dependency
152
152
  name: simplecov
153
153
  requirement: !ruby/object:Gem::Requirement
154
154
  requirements:
155
155
  - - "~>"
156
156
  - !ruby/object:Gem::Version
157
- version: '0.21'
157
+ version: '0.22'
158
158
  type: :development
159
159
  prerelease: false
160
160
  version_requirements: !ruby/object:Gem::Requirement
161
161
  requirements:
162
162
  - - "~>"
163
163
  - !ruby/object:Gem::Version
164
- version: '0.21'
164
+ version: '0.22'
165
165
  - !ruby/object:Gem::Dependency
166
166
  name: simplecov-lcov
167
167
  requirement: !ruby/object:Gem::Requirement
@@ -182,14 +182,14 @@ dependencies:
182
182
  requirements:
183
183
  - - "~>"
184
184
  - !ruby/object:Gem::Version
185
- version: '3.0'
185
+ version: '3.6'
186
186
  type: :development
187
187
  prerelease: false
188
188
  version_requirements: !ruby/object:Gem::Requirement
189
189
  requirements:
190
190
  - - "~>"
191
191
  - !ruby/object:Gem::Version
192
- version: '3.0'
192
+ version: '3.6'
193
193
  - !ruby/object:Gem::Dependency
194
194
  name: yard
195
195
  requirement: !ruby/object:Gem::Requirement
@@ -199,7 +199,7 @@ dependencies:
199
199
  version: '0.0'
200
200
  - - ">="
201
201
  - !ruby/object:Gem::Version
202
- version: 0.9.20
202
+ version: 0.9.37
203
203
  type: :development
204
204
  prerelease: false
205
205
  version_requirements: !ruby/object:Gem::Requirement
@@ -209,7 +209,7 @@ dependencies:
209
209
  version: '0.0'
210
210
  - - ">="
211
211
  - !ruby/object:Gem::Version
212
- version: 0.9.20
212
+ version: 0.9.37
213
213
  description: |2
214
214
 
215
215
  RubyTree is a Ruby implementation of the generic tree data structure. It
@@ -277,6 +277,12 @@ post_install_message: |2
277
277
  Thank you for installing RubyTree.
278
278
 
279
279
  Note::
280
+ - 2.1.1 is a minor update that updates all dependencies and
281
+ Updates the guard clause for creating a tree from a hash.
282
+
283
+ - 2.1.0 is a minor update that brings all libraries to their
284
+ latest stable versions. This version no longer supports
285
+ Ruby 2.6 (minimum requirement is now >= 2.7).
280
286
 
281
287
  - 2.0.0 is a major release with BREAKING API changes.
282
288
  See `API-CHANGES.md` for details.
@@ -298,7 +304,7 @@ post_install_message: |2
298
304
  ========================================================================
299
305
  rdoc_options:
300
306
  - "--title"
301
- - 'Rubytree Documentation: rubytree-2.0.3'
307
+ - 'Rubytree Documentation: rubytree-2.1.1'
302
308
  - "--main"
303
309
  - README.md
304
310
  - "--quiet"
@@ -308,7 +314,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
308
314
  requirements:
309
315
  - - ">="
310
316
  - !ruby/object:Gem::Version
311
- version: '2.6'
317
+ version: '2.7'
312
318
  required_rubygems_version: !ruby/object:Gem::Requirement
313
319
  requirements:
314
320
  - - ">="