rubytree 1.0.2 → 2.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/API-CHANGES.md +153 -0
- data/Gemfile +2 -6
- data/Gemfile.lock +48 -53
- data/History.md +410 -0
- data/LICENSE.md +1 -1
- data/README.md +34 -36
- data/Rakefile +41 -32
- data/TAGS +46267 -0
- data/TODO.org +19 -15
- data/examples/example_basic.rb +14 -7
- data/lib/rubytree.rb +2 -3
- data/lib/tree/binarytree.rb +13 -12
- data/lib/tree/tree_deps.rb +2 -5
- data/lib/tree/utils/hash_converter.rb +129 -121
- data/lib/tree/utils/json_converter.rb +80 -77
- data/lib/tree/utils/metrics_methods.rb +14 -47
- data/lib/tree/utils/path_methods.rb +11 -11
- data/lib/tree/utils/tree_merge_handler.rb +80 -80
- data/lib/tree/utils/utils.rb +9 -7
- data/lib/tree/version.rb +3 -4
- data/lib/tree.rb +80 -82
- data/rubytree.gemspec +64 -47
- data/spec/spec_helper.rb +34 -2
- data/spec/tree_spec.rb +129 -28
- data/test/run_test.rb +20 -8
- data/test/test_binarytree.rb +25 -45
- data/test/test_rubytree_require.rb +2 -1
- data/test/test_subclassed_node.rb +2 -20
- data/test/test_thread_and_fiber.rb +4 -4
- data/test/test_tree.rb +126 -199
- metadata +134 -82
- data/API-CHANGES.rdoc +0 -99
- data/History.rdoc +0 -303
- data/lib/tree/utils/camel_case_method_handler.rb +0 -77
- data/setup.rb +0 -1565
data/Rakefile
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
#
|
3
3
|
# Rakefile - This file is part of the RubyTree package.
|
4
4
|
#
|
5
|
-
# Copyright (c) 2006-
|
5
|
+
# Copyright (c) 2006-2022 Anupam Sengupta
|
6
6
|
#
|
7
7
|
# All rights reserved.
|
8
8
|
#
|
@@ -31,9 +31,13 @@
|
|
31
31
|
# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
32
32
|
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
33
33
|
#
|
34
|
+
#
|
35
|
+
# frozen_string_literal: true
|
34
36
|
|
35
37
|
require 'rubygems'
|
36
|
-
|
38
|
+
|
39
|
+
# @todo: Check if Bundler needs to be `require`d.
|
40
|
+
GEM_SPEC = Bundler.load_gemspec(File.join(__dir__, 'rubytree.gemspec'))
|
37
41
|
|
38
42
|
PKG_NAME = GEM_SPEC.name
|
39
43
|
PKG_VER = GEM_SPEC.version
|
@@ -55,6 +59,7 @@ task :version do
|
|
55
59
|
end
|
56
60
|
|
57
61
|
require 'rake/clean'
|
62
|
+
desc 'Remove all generated files.'
|
58
63
|
task clean: 'gem:clobber_package'
|
59
64
|
CLEAN.include('coverage')
|
60
65
|
task clobber: [:clean, 'doc:clobber_rdoc', 'doc:clobber_yard']
|
@@ -70,8 +75,8 @@ namespace :doc do # ................................ Documentation
|
|
70
75
|
require 'rdoc/task'
|
71
76
|
Rake::RDocTask.new do |rdoc|
|
72
77
|
rdoc.rdoc_dir = 'rdoc'
|
73
|
-
rdoc.title = "#{PKG_NAME}-#{PKG_VER}"
|
74
|
-
rdoc.main = 'README.
|
78
|
+
rdoc.title = "RubyTree Documenation: #{PKG_NAME}-#{PKG_VER}"
|
79
|
+
rdoc.main = 'README.md'
|
75
80
|
rdoc.rdoc_files.include(GEM_SPEC.extra_rdoc_files)
|
76
81
|
rdoc.rdoc_files.include('./lib/**/*.rb')
|
77
82
|
end
|
@@ -95,10 +100,14 @@ namespace :doc do # ................................ Documentation
|
|
95
100
|
end
|
96
101
|
end
|
97
102
|
|
98
|
-
desc 'Run the
|
99
|
-
task test:
|
103
|
+
desc 'Run the unit tests'
|
104
|
+
task test: %w[test:unit]
|
105
|
+
|
106
|
+
# ................................ Test related
|
107
|
+
namespace :test do
|
108
|
+
desc 'Run all the tests'
|
109
|
+
task all: %w[test:unit test:spec test:examples]
|
100
110
|
|
101
|
-
namespace :test do # ................................ Test related
|
102
111
|
require 'rake/testtask'
|
103
112
|
Rake::TestTask.new(:unit) do |test|
|
104
113
|
test.libs << 'lib' << 'test'
|
@@ -106,6 +115,18 @@ namespace :test do # ................................ Test related
|
|
106
115
|
test.verbose = false
|
107
116
|
end
|
108
117
|
|
118
|
+
# ................................ rspec tests
|
119
|
+
begin
|
120
|
+
require 'rspec/core/rake_task'
|
121
|
+
|
122
|
+
RSpec::Core::RakeTask.new(:spec) do |t|
|
123
|
+
t.fail_on_error = false
|
124
|
+
t.rspec_opts = ['--color', '--format doc']
|
125
|
+
end
|
126
|
+
rescue LoadError
|
127
|
+
# Cannot load rspec.
|
128
|
+
end
|
129
|
+
|
109
130
|
desc 'Run the examples'
|
110
131
|
Rake::TestTask.new(:examples) do |example|
|
111
132
|
example.libs << 'lib' << 'examples'
|
@@ -118,32 +139,10 @@ namespace :test do # ................................ Test related
|
|
118
139
|
task :coverage do
|
119
140
|
ruby 'test/run_test.rb'
|
120
141
|
end
|
121
|
-
|
122
|
-
begin
|
123
|
-
require 'rcov/rcovtask'
|
124
|
-
Rcov::RcovTask.new(:rcov) do |t|
|
125
|
-
t.libs << 'test'
|
126
|
-
t.test_files = FileList['test/**/test_*.rb']
|
127
|
-
t.verbose = true
|
128
|
-
t.rcov_opts << '--exclude /gems/,/Library/,/usr/,spec,lib/tasks'
|
129
|
-
end
|
130
|
-
rescue LoadError
|
131
|
-
# Oh well. Can't have everything.
|
132
|
-
end
|
133
142
|
end
|
134
143
|
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
RSpec::Core::RakeTask.new(:spec) do |t|
|
139
|
-
t.fail_on_error = false
|
140
|
-
t.rspec_opts = ['--color', '--format doc']
|
141
|
-
end
|
142
|
-
rescue LoadError
|
143
|
-
# Cannot load rspec.
|
144
|
-
end
|
145
|
-
|
146
|
-
namespace :tag do # ................................ Emacs Tags
|
144
|
+
# ................................ Emacs Tags
|
145
|
+
namespace :tag do
|
147
146
|
require 'rtagstask'
|
148
147
|
RTagsTask.new(:tags) do |rd|
|
149
148
|
rd.vi = false
|
@@ -153,7 +152,8 @@ rescue LoadError
|
|
153
152
|
# Oh well. Can't have everything.
|
154
153
|
end
|
155
154
|
|
156
|
-
|
155
|
+
# ................................ Gem related
|
156
|
+
namespace :gem do
|
157
157
|
require 'rubygems/package_task'
|
158
158
|
Gem::PackageTask.new(GEM_SPEC) do |pkg|
|
159
159
|
pkg.need_zip = true
|
@@ -165,3 +165,12 @@ namespace :gem do # ................................ Gem related
|
|
165
165
|
sh "gem push pkg/#{GEM_NAME}"
|
166
166
|
end
|
167
167
|
end
|
168
|
+
|
169
|
+
# ................................ Ruby linting
|
170
|
+
require 'rubocop/rake_task'
|
171
|
+
|
172
|
+
RuboCop::RakeTask.new(:rubocop) do |t|
|
173
|
+
t.options = ['--display-cop-names']
|
174
|
+
t.requires << 'rubocop-rake'
|
175
|
+
t.requires << 'rubocop-rspec'
|
176
|
+
end
|