rubytree 2.0.0 → 2.0.2

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: 32db11d4bf364a3abad82c8b165293c44ac979a3ba4c5c80e73470558e1cd450
4
- data.tar.gz: 298a2b4c37fec0b18f48267607f712debe73271e440ad77dc73bbb3ae43b24df
3
+ metadata.gz: 0f639a13afc57ffbe28198cec86928d2dc123fb5c4ecc0ed048d17a3c45d6192
4
+ data.tar.gz: 3fe121a4a22b4e924db7c85819361bedf582f07569bd0380b76c84b94b24acba
5
5
  SHA512:
6
- metadata.gz: 9ed55c0a1915ff0d31405d32ec652351b061415c4b696bb044d4e9bf6f0dbaaa406df3d29a7b4236c46bb86467091454e6cccf75e9be5a6ace0651fdbf12610e
7
- data.tar.gz: 8b215004ac680ca53db74700f1de3c5e08d6c383cbe2b1548281966a4b4a7113c21cd6c4f49b991e4e55fac5da1e0635672c2055bf8ddafa2d8cf50731fbdcc8
6
+ metadata.gz: 228560789b89fe1aeaace489ef73cde05f1bfa33021bbc6bbbe89eaab33590193bdbffb90c1d7bab2f1c8d50f58f05414775be399fb54fd39bc3da0f57a7d4d8
7
+ data.tar.gz: 132a627d6d8be134c73ab8b63cce4431d161333212121c3e033b0226bfacc3bb3ae7ae5790d268616f7d14c4a76c6dc7e0d18481c0f6999b5b01de6e8cd9029f
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rubytree (2.0.0)
4
+ rubytree (2.0.2)
5
5
  json (~> 2.0, > 2.3.1)
6
6
 
7
7
  GEM
@@ -9,6 +9,7 @@ GEM
9
9
  specs:
10
10
  ast (2.4.2)
11
11
  diff-lcs (1.5.0)
12
+ docile (1.4.0)
12
13
  json (2.6.2)
13
14
  parallel (1.22.1)
14
15
  parser (3.1.2.0)
@@ -54,6 +55,13 @@ GEM
54
55
  rubocop-rspec (2.11.1)
55
56
  rubocop (~> 1.19)
56
57
  ruby-progressbar (1.11.0)
58
+ simplecov (0.21.2)
59
+ docile (~> 1.1)
60
+ simplecov-html (~> 0.11)
61
+ simplecov_json_formatter (~> 0.1)
62
+ simplecov-html (0.12.3)
63
+ simplecov-lcov (0.8.0)
64
+ simplecov_json_formatter (0.1.4)
57
65
  stringio (3.0.2)
58
66
  test-unit (3.5.3)
59
67
  power_assert
@@ -75,6 +83,8 @@ DEPENDENCIES
75
83
  rubocop-rake (~> 0.0)
76
84
  rubocop-rspec (~> 2.0)
77
85
  rubytree!
86
+ simplecov (~> 0.21)
87
+ simplecov-lcov (~> 0.8)
78
88
  test-unit (~> 3.0)
79
89
  yard (~> 0.0, >= 0.9.20)
80
90
 
data/LICENSE.md CHANGED
@@ -1,36 +1,27 @@
1
- [RubyTree][] is licensed under the [BSD][] license.
1
+ [RubyTree][] is licensed under the [BSD-2-clause][] license.
2
2
 
3
- Copyright (c) 2006-2022 Anupam Sengupta (<anupamsg@gmail.com>).
3
+ Copyright (c) 2006-2023 Anupam Sengupta (<anupamsg@gmail.com>).
4
4
 
5
- All rights reserved.
5
+ Redistribution and use in source and binary forms, with or without modification,
6
+ are permitted provided that the following conditions are met:
6
7
 
7
- Redistribution and use in source and binary forms, with or without
8
- modification, are permitted provided that the following conditions are met:
8
+ 1. Redistributions of source code must retain the above copyright notice, this
9
+ list of conditions and the following disclaimer.
9
10
 
10
- - Redistributions of source code must retain the above copyright notice, this
11
- list of conditions and the following disclaimer.
11
+ 2. Redistributions in binary form must reproduce the above copyright notice,
12
+ this list of conditions and the following disclaimer in the documentation
13
+ and/or other materials provided with the distribution.
12
14
 
13
- - Redistributions in binary form must reproduce the above copyright notice,
14
- this list of conditions and the following disclaimer in the documentation
15
- and/or other materials provided with the distribution.
15
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND
16
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
17
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
18
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
19
+ ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
20
+ (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
21
+ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
22
+ ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
24
+ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
16
25
 
17
- - Neither the name of the organization nor the names of its contributors may be
18
- used to endorse or promote products derived from this software without
19
- specific prior written permission.
20
-
21
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24
- A PARTICULAR PURPOSE ARE DISCLAIMED.
25
-
26
- IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
27
- ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28
- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
29
- GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
30
- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
31
- IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
32
- OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
33
- ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34
-
35
- [BSD]: http://opensource.org/licenses/bsd-license.php "BSD License"
36
- [RubyTree]: http://rubytree.anupamsg.me/ "RubyTree Home Page"
26
+ [BSD-2-clause]: https://opensource.org/license/bsd-2-clause/ "BSD License"
27
+ [RubyTree]: http://rubytree.anupamsg.me/ "RubyTree Home Page"
data/README.md CHANGED
@@ -1,9 +1,17 @@
1
1
  # **RubyTree** #
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/rubytree.png)](http://badge.fury.io/rb/rubytree)
4
+ ![Build State](https://github.com/evolve75/rubytree/actions/workflows/ruby.yml/badge.svg)
4
5
  [![Code Climate](https://codeclimate.com/github/evolve75/RubyTree.png)](https://codeclimate.com/github/evolve75/RubyTree)
5
6
  [![Coverage Status](https://coveralls.io/repos/evolve75/RubyTree/badge.png)](https://coveralls.io/r/evolve75/RubyTree)
6
7
 
8
+ __ _ _
9
+ /__\_ _| |__ _ _| |_ _ __ ___ ___
10
+ / \// | | | '_ \| | | | __| '__/ _ \/ _ \
11
+ / _ \ |_| | |_) | |_| | |_| | | __/ __/
12
+ \/ \_/\__,_|_.__/ \__, |\__|_| \___|\___|
13
+ |___/
14
+
7
15
  ## DESCRIPTION: ##
8
16
 
9
17
  **RubyTree** is a pure Ruby implementation of the generic
@@ -202,8 +210,7 @@ downloaded and installed automatically by [Bundler][].
202
210
 
203
211
  A big thanks to the following contributors for helping improve **RubyTree**:
204
212
 
205
- 1. [Dirk Breuer](http://github.com/railsbros-dirk) for contributing the JSON
206
- conversion code.
213
+ 1. Dirk Breuer for contributing the JSON conversion code.
207
214
  2. Vincenzo Farruggia for contributing the (sub)tree cloning code.
208
215
  3. [Eric Cline](https://github.com/escline) for the Rails JSON encoding fix.
209
216
  4. [Darren Oakley](https://github.com/dazoakley) for the tree merge methods.
@@ -230,19 +237,13 @@ A big thanks to the following contributors for helping improve **RubyTree**:
230
237
  **RubyTree** is licensed under the terms of the [BSD][] license. See
231
238
  [LICENSE.md](./LICENSE.md) for details.
232
239
 
233
- __ _ _
234
- /__\_ _| |__ _ _| |_ _ __ ___ ___
235
- / \// | | | '_ \| | | | __| '__/ _ \/ _ \
236
- / _ \ |_| | |_) | |_| | |_| | | __/ __/
237
- \/ \_/\__,_|_.__/ \__, |\__|_| \___|\___|
238
- |___/
239
240
 
240
241
  [BSD]: http://opensource.org/licenses/bsd-license.php "BSD License"
241
242
  [Binary tree]: http://en.wikipedia.org/wiki/Binary_tree "Binary Tree Data Structure"
242
243
  [Bundler]: http://bundler.io "Bundler"
243
- [Comparable]: http://ruby-doc.org/core-2.4.2/Comparable.html "Comparable mix-in"
244
- [Enumerable]: http://ruby-doc.org/core-2.4.2/Enumerable.html "Enumerable mix-in"
245
- [JSON]: http://flori.github.com/json "JSON"
244
+ [Comparable]: http://ruby-doc.org/core/Comparable.html "Comparable mix-in"
245
+ [Enumerable]: http://ruby-doc.org/core/Enumerable.html "Enumerable mix-in"
246
+ [JSON]: https://rubygems.org/gems/json "JSON"
246
247
  [Rake]: https://rubygems.org/gems/rake "Rake"
247
248
  [Ruby]: http://www.ruby-lang.org "Ruby Programming Language"
248
249
  [SCM]: http://en.wikipedia.org/wiki/Source_Code_Management "Source Code Management"
@@ -250,7 +251,7 @@ A big thanks to the following contributors for helping improve **RubyTree**:
250
251
  [breadth-first]: http://en.wikipedia.org/wiki/Breadth-first_search "Breadth-first (level-first) Traversal"
251
252
  [git]: http://git-scm.com "Git SCM"
252
253
  [in-order]: http://en.wikipedia.org/wiki/Tree_traversal#In-order "In-order (symmetric) Traversal"
253
- [marshaling]: http://ruby-doc.org/core-2.4.2/Marshal.html "Marshaling in Ruby"
254
+ [marshaling]: http://ruby-doc.org/core/Marshal.html "Marshaling in Ruby"
254
255
  [post-order]: http://en.wikipedia.org/wiki/Tree_traversal#Post-order "Post-ordered Traversal"
255
256
  [pre-order]: http://en.wikipedia.org/wiki/Tree_traversal#Pre-order "Pre-ordered Traversal"
256
257
  [rt@github]: http://github.com/evolve75/RubyTree "RubyTree Project Page on Github"
@@ -260,6 +261,6 @@ A big thanks to the following contributors for helping improve **RubyTree**:
260
261
  [rt_site]: http://rubytree.anupamsg.me "RubyTree Site"
261
262
  [tree_data_structure]: http://en.wikipedia.org/wiki/Tree_data_structure "Tree Data Structure"
262
263
  [RSpec]: https://relishapp.com/rspec/
263
- [Rubocop]: https://rubocop.org
264
+ [Rubocop]: https://rubocop.org/
264
265
 
265
266
  [TreeNode]: rdoc-ref:Tree::TreeNode
data/Rakefile CHANGED
@@ -139,18 +139,6 @@ namespace :test do
139
139
  task :coverage do
140
140
  ruby 'test/run_test.rb'
141
141
  end
142
-
143
- begin
144
- require 'rcov/rcovtask'
145
- Rcov::RcovTask.new(:rcov) do |t|
146
- t.libs << 'test'
147
- t.test_files = FileList['test/**/test_*.rb']
148
- t.verbose = true
149
- t.rcov_opts << '--exclude /gems/,/Library/,/usr/,spec,lib/tasks'
150
- end
151
- rescue LoadError
152
- # Oh well. Can't have everything.
153
- end
154
142
  end
155
143
 
156
144
  # ................................ Emacs Tags
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-2022 Anupam Sengupta. All rights reserved.
7
+ # Copyright (c) 2012-2023 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.0'
38
+ VERSION = '2.0.2'
39
39
  end
data/rubytree.gemspec CHANGED
@@ -3,16 +3,16 @@
3
3
  #
4
4
  # Author:: Anupam Sengupta (anupamsg@gmail.com)
5
5
  #
6
- # Copyright (c) 2012-2022 Anupam Sengupta. All rights reserved.
6
+ # Copyright (c) 2012-2023 Anupam Sengupta. All rights reserved.
7
7
  #
8
8
  # frozen_string_literal: true
9
9
 
10
- require './lib/tree/version'
10
+ require File.join(__dir__, '/lib/tree/version')
11
11
 
12
12
  Gem::Specification.new do |s|
13
13
  s.name = 'rubytree'
14
14
  s.version = Tree::VERSION
15
- s.license = 'BSD-3-Clause-Clear'
15
+ s.license = 'BSD-2-Clause'
16
16
  # NOTE: s.date should NOT be assigned. It is automatically set to pkg date.
17
17
  s.platform = Gem::Platform::RUBY
18
18
  s.author = 'Anupam Sengupta'
@@ -24,29 +24,23 @@ Gem::Specification.new do |s|
24
24
  s.summary = 'A generic tree data structure for Ruby.'
25
25
 
26
26
  s.description = <<-END_DESC
27
- RubyTree is a pure Ruby implementation of the generic tree data
28
- structure. It provides a node-based model to store named nodes in the tree,
29
- and provides simple APIs to access, modify and traverse the structure.
30
27
 
31
- The implementation is node-centric, where individual nodes in the tree are
32
- the primary structural elements. All common tree-traversal methods
33
- (pre-order, post-order, and breadth-first) are supported.
28
+ RubyTree is a Ruby implementation of the generic tree data structure. It
29
+ provides simple APIs to store named nodes, and to access, modify, and
30
+ traverse the tree.
34
31
 
35
- The library mixes in the Enumerable and Comparable modules to allow access
36
- to the tree as a standard collection (iteration, comparison, etc.).
32
+ The data model is node-centric, where nodes in the tree are the primary
33
+ structural elements. It supports all common tree-traversal methods (pre-order,
34
+ post-order, and breadth first).
37
35
 
38
- A Binary tree is also provided, which provides the in-order traversal in
39
- addition to the other methods.
36
+ RubyTree mixes in the Enumerable and Comparable modules and behaves like a
37
+ standard Ruby collection (iteration, comparison, etc.).
40
38
 
41
- RubyTree supports importing from, and exporting to JSON, and also supports
42
- the Ruby's standard object marshaling.
43
-
44
- This is a BSD licensed open source project, and is hosted at
45
- <https://github.com/evolve75/RubyTree>, and is available as a standard gem
46
- from <https://rubygems.org/gems/rubytree>.
47
-
48
- The home page for RubyTree is at <http://rubytree.anupamsg.me>.
39
+ RubyTree also includes a binary tree implementation, which provides in-order
40
+ node traversal besides the other methods.
49
41
 
42
+ RubyTree can import from and export to JSON, and supports Ruby’s object
43
+ marshaling.
50
44
  END_DESC
51
45
 
52
46
  s.metadata = {
@@ -64,8 +58,6 @@ Gem::Specification.new do |s|
64
58
 
65
59
  s.require_paths = ['lib']
66
60
 
67
- s.test_files = Dir.glob('test/**/test_*.rb')
68
-
69
61
  s.extra_rdoc_files = %w[README.md LICENSE.md API-CHANGES.md History.md]
70
62
  s.rdoc_options = ['--title', "Rubytree Documentation: #{s.name}-#{s.version}",
71
63
  '--main', 'README.md',
@@ -82,6 +74,8 @@ Gem::Specification.new do |s|
82
74
  s.add_development_dependency 'rubocop', '~> 1.0'
83
75
  s.add_development_dependency 'rubocop-rake', '~> 0.0'
84
76
  s.add_development_dependency 'rubocop-rspec', '~> 2.0'
77
+ s.add_development_dependency 'simplecov', '~> 0.21'
78
+ s.add_development_dependency 'simplecov-lcov', '~> 0.8'
85
79
  s.add_development_dependency 'test-unit', '~> 3.0'
86
80
  s.add_development_dependency 'yard', '~> 0.0', '>= 0.9.20'
87
81
 
data/spec/spec_helper.rb CHANGED
@@ -3,10 +3,40 @@
3
3
  # spec_helper.rb
4
4
  #
5
5
  # Author: Anupam Sengupta
6
- # Time-stamp: <2022-06-19 22:38:14 anupam>
6
+ # Time-stamp: <2022-06-22 13:54:00 anupam>
7
7
  #
8
8
  # Copyright (C) 2015, 2022 Anupam Sengupta <anupamsg@gmail.com>
9
9
  #
10
10
  # frozen_string_literal: true
11
11
 
12
12
  require 'tree'
13
+
14
+ if ENV['COVERAGE']
15
+ begin
16
+ require 'simplecov'
17
+ require 'simplecov-lcov'
18
+
19
+ base_dir = File.expand_path(File.join(File.dirname(__FILE__), '..'))
20
+
21
+ SimpleCov::Formatter::LcovFormatter.config do |cfg|
22
+ cfg.report_with_single_file = true
23
+ cfg.lcov_file_name = 'lcov.info'
24
+ cfg.single_report_path = "#{base_dir}/coverage/lcov.info"
25
+ end
26
+
27
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter.new(
28
+ [
29
+ SimpleCov::Formatter::HTMLFormatter,
30
+ SimpleCov::Formatter::LcovFormatter
31
+ ]
32
+ )
33
+
34
+ SimpleCov.start do
35
+ add_filter '/test'
36
+ add_filter '/spec'
37
+ enable_coverage :branch
38
+ end
39
+ rescue LoadError => e
40
+ puts "Could not load simplecov; continuing without code coverage #{e.cause}"
41
+ end
42
+ end
data/spec/tree_spec.rb CHANGED
@@ -3,7 +3,7 @@
3
3
  # tree_spec.rb
4
4
  #
5
5
  # Author: Anupam Sengupta
6
- # Time-stamp: <2022-06-20 22:16:11 anupam>
6
+ # Time-stamp: <2022-06-22 13:52:50 anupam>
7
7
  # Copyright (C) 2015-2022 Anupam Sengupta <anupamsg@gmail.com>
8
8
  #
9
9
  # frozen_string_literal: true
data/test/run_test.rb CHANGED
@@ -3,7 +3,7 @@
3
3
  # run_test.rb:: Run all the tests from the Ruby command line.
4
4
  #
5
5
  # Author: Anupam Sengupta
6
- # Time-stamp: <2022-06-19 22:44:56 anupam>
6
+ # Time-stamp: <2022-06-22 13:54:25 anupam>
7
7
  # Copyright (C) 2014, 2022 Anupam Sengupta <anupamsg@gmail.com>
8
8
  #
9
9
  # Redistribution and use in source and binary forms, with or without modification,
@@ -42,14 +42,25 @@ $LOAD_PATH.unshift(lib_dir)
42
42
  if ENV['COVERAGE']
43
43
  begin
44
44
  require 'simplecov'
45
- require 'coveralls'
45
+ require 'simplecov-lcov'
46
46
 
47
- SimpleCov.formatter = Coveralls::SimpleCov::Formatter
47
+ SimpleCov::Formatter::LcovFormatter.config do |cfg|
48
+ cfg.report_with_single_file = true
49
+ cfg.lcov_file_name = 'lcov.info'
50
+ cfg.single_report_path = "#{base_dir}/coverage/lcov.info"
51
+ end
52
+
53
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter.new(
54
+ [
55
+ SimpleCov::Formatter::HTMLFormatter,
56
+ SimpleCov::Formatter::LcovFormatter
57
+ ]
58
+ )
48
59
 
49
60
  SimpleCov.start do
50
- add_filter '/test/'
51
- add_group 'Core Classes', '/lib/.*tree.rb'
52
- add_group 'Internal Utilities', '/lib/tree/utils/.*.rb'
61
+ add_filter '/test'
62
+ add_filter '/spec'
63
+ enable_coverage :branch
53
64
  end
54
65
  rescue LoadError => e
55
66
  puts "Could not load simplecov; continuing without code coverage #{e.cause}"
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.0
4
+ version: 2.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Anupam Sengupta
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-06-21 00:00:00.000000000 Z
11
+ date: 2023-06-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -148,6 +148,34 @@ dependencies:
148
148
  - - "~>"
149
149
  - !ruby/object:Gem::Version
150
150
  version: '2.0'
151
+ - !ruby/object:Gem::Dependency
152
+ name: simplecov
153
+ requirement: !ruby/object:Gem::Requirement
154
+ requirements:
155
+ - - "~>"
156
+ - !ruby/object:Gem::Version
157
+ version: '0.21'
158
+ type: :development
159
+ prerelease: false
160
+ version_requirements: !ruby/object:Gem::Requirement
161
+ requirements:
162
+ - - "~>"
163
+ - !ruby/object:Gem::Version
164
+ version: '0.21'
165
+ - !ruby/object:Gem::Dependency
166
+ name: simplecov-lcov
167
+ requirement: !ruby/object:Gem::Requirement
168
+ requirements:
169
+ - - "~>"
170
+ - !ruby/object:Gem::Version
171
+ version: '0.8'
172
+ type: :development
173
+ prerelease: false
174
+ version_requirements: !ruby/object:Gem::Requirement
175
+ requirements:
176
+ - - "~>"
177
+ - !ruby/object:Gem::Version
178
+ version: '0.8'
151
179
  - !ruby/object:Gem::Dependency
152
180
  name: test-unit
153
181
  requirement: !ruby/object:Gem::Requirement
@@ -182,30 +210,24 @@ dependencies:
182
210
  - - ">="
183
211
  - !ruby/object:Gem::Version
184
212
  version: 0.9.20
185
- description: |2+
186
- RubyTree is a pure Ruby implementation of the generic tree data
187
- structure. It provides a node-based model to store named nodes in the tree,
188
- and provides simple APIs to access, modify and traverse the structure.
213
+ description: |2
189
214
 
190
- The implementation is node-centric, where individual nodes in the tree are
191
- the primary structural elements. All common tree-traversal methods
192
- (pre-order, post-order, and breadth-first) are supported.
215
+ RubyTree is a Ruby implementation of the generic tree data structure. It
216
+ provides simple APIs to store named nodes, and to access, modify, and
217
+ traverse the tree.
193
218
 
194
- The library mixes in the Enumerable and Comparable modules to allow access
195
- to the tree as a standard collection (iteration, comparison, etc.).
219
+ The data model is node-centric, where nodes in the tree are the primary
220
+ structural elements. It supports all common tree-traversal methods (pre-order,
221
+ post-order, and breadth first).
196
222
 
197
- A Binary tree is also provided, which provides the in-order traversal in
198
- addition to the other methods.
223
+ RubyTree mixes in the Enumerable and Comparable modules and behaves like a
224
+ standard Ruby collection (iteration, comparison, etc.).
199
225
 
200
- RubyTree supports importing from, and exporting to JSON, and also supports
201
- the Ruby's standard object marshaling.
202
-
203
- This is a BSD licensed open source project, and is hosted at
204
- <https://github.com/evolve75/RubyTree>, and is available as a standard gem
205
- from <https://rubygems.org/gems/rubytree>.
206
-
207
- The home page for RubyTree is at <http://rubytree.anupamsg.me>.
226
+ RubyTree also includes a binary tree implementation, which provides in-order
227
+ node traversal besides the other methods.
208
228
 
229
+ RubyTree can import from and export to JSON, and supports Ruby’s object
230
+ marshaling.
209
231
  email: anupamsg@gmail.com
210
232
  executables: []
211
233
  extensions: []
@@ -247,7 +269,7 @@ files:
247
269
  - test/test_tree.rb
248
270
  homepage: http://rubytree.anupamsg.me
249
271
  licenses:
250
- - BSD-3-Clause-Clear
272
+ - BSD-2-Clause
251
273
  metadata:
252
274
  rubygems_mfa_required: 'true'
253
275
  post_install_message: |2
@@ -276,7 +298,7 @@ post_install_message: |2
276
298
  ========================================================================
277
299
  rdoc_options:
278
300
  - "--title"
279
- - 'Rubytree Documentation: rubytree-2.0.0'
301
+ - 'Rubytree Documentation: rubytree-2.0.2'
280
302
  - "--main"
281
303
  - README.md
282
304
  - "--quiet"
@@ -297,9 +319,4 @@ rubygems_version: 3.1.4
297
319
  signing_key:
298
320
  specification_version: 4
299
321
  summary: A generic tree data structure for Ruby.
300
- test_files:
301
- - test/test_binarytree.rb
302
- - test/test_subclassed_node.rb
303
- - test/test_tree.rb
304
- - test/test_thread_and_fiber.rb
305
- - test/test_rubytree_require.rb
322
+ test_files: []