LittleWeasel 5.0.10 → 5.0.12

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: ed8ab6b42033fadcc7cc14fe6cf270831cc07a4d619d3c726ba2a37220e68f91
4
- data.tar.gz: 560d08ec9a9221fece78a957b7b8abe42d8d0c1fdbee87547eb9b85788850968
3
+ metadata.gz: 2034052068593004272cf97e5a406667f60fe8143ef9da403af1eb6d50e5355a
4
+ data.tar.gz: 63928332b55aff9066cbb018c1e5f03e2acb07e4863f999607053296a70ec23a
5
5
  SHA512:
6
- metadata.gz: fca98f865141c33efe43435cff387263c506db30c33992c335542afa11a0d599d8f2594135c7b543f33dcfff94b08b0d6f9c87689f2b8738aa0493d92e1529c8
7
- data.tar.gz: ae65613cffe2b137cef35ff857ccacbe4cfe6c2013ac3eb275ad1e8eba4197b2e7d9458c9c524dd072a4e906b174237d1e28c8e6d26a3e7bc44263f43324bb7d
6
+ metadata.gz: 584a88f0d1f5990e8fb51603d3e5e34bce73397992ec55fa314de719c8d2492ad6dbfa9cfe6d4a4bdefd60508a3c1104e170f980ee6e4a6b982097a2d22649d8
7
+ data.tar.gz: ba901420cc3f817b8ce7d2d5e04516b730f7119387ac5b64091fd235ecb4d6288c4b097f03dcc5c240f7e886d61bff65977c0b2a340f48013bedede2b7968ddd
data/.rubocop.yml CHANGED
@@ -3,6 +3,7 @@ require:
3
3
  - rubocop-rspec
4
4
 
5
5
  AllCops:
6
+ SuggestExtensions: false
6
7
  TargetRubyVersion: 3.0.1
7
8
  NewCops: enable
8
9
  Exclude:
data/CHANGELOG.md CHANGED
@@ -1,3 +1,14 @@
1
+ ### 5.0.12 2024-08-03
2
+
3
+ * Changes
4
+ * Update gems.
5
+ * Update rexml gem to patch CVE.
6
+
7
+ ### 5.0.11 2024-02-18
8
+
9
+ * Changes
10
+ * Update gems.
11
+
1
12
  ### 5.0.10 2024-01-07
2
13
 
3
14
  * Changes
data/Gemfile CHANGED
@@ -5,18 +5,28 @@ source 'https://rubygems.org'
5
5
  # Specify your gem's dependencies in LittleWeasel.gemspec
6
6
  gemspec
7
7
 
8
- gem 'benchmark-ips', '>= 2.3', '< 3.0'
8
+ group :development, :test do
9
+ gem 'factory_bot', '>= 6.3', '< 7.0'
10
+ gem 'pry-byebug', '>= 3.9', '< 4.0'
11
+ gem 'reek', '>= 6.0', '< 7.0'
12
+ gem 'rspec', '>= 3.12', '< 4.0'
13
+ gem 'rubocop', '>= 1.56', '< 2.0'
14
+ gem 'rubocop-performance', '>= 1.19', '< 2.0'
15
+ gem 'rubocop-rspec', '>= 2.23', '< 3.0'
16
+ gem 'simplecov', '>= 0.22.0', '< 1.0'
17
+ end
18
+
19
+ group :benchmarking do
20
+ gem 'benchmark-ips', '>= 2.3', '< 3.0'
21
+ end
22
+
23
+ group :documentation do
24
+ # Needed for yard
25
+ gem 'webrick', '>= 1.7', '< 2.0'
26
+ gem 'yard', '>= 0.9.26', '< 1.0'
27
+ end
28
+
29
+ # Global gems, commonly used in development but not necessarily tied to a specific task
9
30
  gem 'bundler', '~> 2.5', '>= 2.5.3'
10
- gem 'factory_bot', '>= 6.3', '< 7.0'
11
- gem 'pry-byebug', '>= 3.9', '< 4.0'
12
31
  gem 'rake', '>= 13.0', '< 14'
13
32
  gem 'redcarpet', '>= 3.5', '< 4.0'
14
- gem 'reek', '>= 6.0', '< 7.0'
15
- gem 'rspec', '>= 3.12', '< 4.0'
16
- gem 'rubocop', '>= 1.56', '< 2.0'
17
- gem 'rubocop-performance', '>= 1.19', '< 2.0'
18
- gem 'rubocop-rspec', '>= 2.23', '< 3.0'
19
- gem 'simplecov', '>= 0.22.0', '< 1.0'
20
- # Needed for yard
21
- gem 'webrick', '>= 1.7', '< 2.0'
22
- gem 'yard', '>= 0.9.26', '< 1.0'
data/Gemfile.lock CHANGED
@@ -1,13 +1,13 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- LittleWeasel (5.0.10)
4
+ LittleWeasel (5.0.12)
5
5
  activesupport (>= 7.0.8, < 8.0)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- activesupport (7.1.2)
10
+ activesupport (7.1.3.4)
11
11
  base64
12
12
  bigdecimal
13
13
  concurrent-ruby (~> 1.0, >= 1.0.2)
@@ -20,28 +20,27 @@ GEM
20
20
  ast (2.4.2)
21
21
  base64 (0.2.0)
22
22
  benchmark-ips (2.13.0)
23
- bigdecimal (3.1.5)
23
+ bigdecimal (3.1.8)
24
24
  byebug (11.1.3)
25
25
  coderay (1.1.3)
26
- concurrent-ruby (1.2.2)
26
+ concurrent-ruby (1.3.3)
27
27
  connection_pool (2.4.1)
28
- diff-lcs (1.5.0)
29
- docile (1.4.0)
30
- drb (2.2.0)
31
- ruby2_keywords
32
- dry-configurable (1.1.0)
28
+ diff-lcs (1.5.1)
29
+ docile (1.4.1)
30
+ drb (2.2.1)
31
+ dry-configurable (1.2.0)
33
32
  dry-core (~> 1.0, < 2)
34
33
  zeitwerk (~> 2.6)
35
34
  dry-core (1.0.1)
36
35
  concurrent-ruby (~> 1.0)
37
36
  zeitwerk (~> 2.6)
38
- dry-inflector (1.0.0)
37
+ dry-inflector (1.1.0)
39
38
  dry-initializer (3.1.1)
40
39
  dry-logic (1.5.0)
41
40
  concurrent-ruby (~> 1.0)
42
41
  dry-core (~> 1.0, < 2)
43
42
  zeitwerk (~> 2.6)
44
- dry-schema (1.13.3)
43
+ dry-schema (1.13.4)
45
44
  concurrent-ruby (~> 1.0)
46
45
  dry-configurable (~> 1.0, >= 1.0.1)
47
46
  dry-core (~> 1.0, < 2)
@@ -56,17 +55,17 @@ GEM
56
55
  dry-inflector (~> 1.0)
57
56
  dry-logic (~> 1.4)
58
57
  zeitwerk (~> 2.6)
59
- factory_bot (6.4.5)
58
+ factory_bot (6.4.6)
60
59
  activesupport (>= 5.0.0)
61
- i18n (1.14.1)
60
+ i18n (1.14.5)
62
61
  concurrent-ruby (~> 1.0)
63
- json (2.7.1)
62
+ json (2.7.2)
64
63
  language_server-protocol (3.17.0.3)
65
- method_source (1.0.0)
66
- minitest (5.20.0)
64
+ method_source (1.1.0)
65
+ minitest (5.24.1)
67
66
  mutex_m (0.2.0)
68
- parallel (1.24.0)
69
- parser (3.2.2.4)
67
+ parallel (1.25.1)
68
+ parser (3.3.4.0)
70
69
  ast (~> 2.4.1)
71
70
  racc
72
71
  pry (0.14.2)
@@ -75,68 +74,72 @@ GEM
75
74
  pry-byebug (3.10.1)
76
75
  byebug (~> 11.0)
77
76
  pry (>= 0.13, < 0.15)
78
- racc (1.7.3)
77
+ racc (1.8.1)
79
78
  rainbow (3.1.1)
80
- rake (13.1.0)
79
+ rake (13.2.1)
81
80
  redcarpet (3.6.0)
82
- reek (6.2.0)
81
+ reek (6.3.0)
83
82
  dry-schema (~> 1.13.0)
84
- parser (~> 3.2.0)
83
+ parser (~> 3.3.0)
85
84
  rainbow (>= 2.0, < 4.0)
86
85
  rexml (~> 3.1)
87
- regexp_parser (2.8.3)
88
- rexml (3.2.6)
89
- rspec (3.12.0)
90
- rspec-core (~> 3.12.0)
91
- rspec-expectations (~> 3.12.0)
92
- rspec-mocks (~> 3.12.0)
93
- rspec-core (3.12.2)
94
- rspec-support (~> 3.12.0)
95
- rspec-expectations (3.12.3)
86
+ regexp_parser (2.9.2)
87
+ rexml (3.3.4)
88
+ strscan
89
+ rspec (3.13.0)
90
+ rspec-core (~> 3.13.0)
91
+ rspec-expectations (~> 3.13.0)
92
+ rspec-mocks (~> 3.13.0)
93
+ rspec-core (3.13.0)
94
+ rspec-support (~> 3.13.0)
95
+ rspec-expectations (3.13.1)
96
96
  diff-lcs (>= 1.2.0, < 2.0)
97
- rspec-support (~> 3.12.0)
98
- rspec-mocks (3.12.6)
97
+ rspec-support (~> 3.13.0)
98
+ rspec-mocks (3.13.1)
99
99
  diff-lcs (>= 1.2.0, < 2.0)
100
- rspec-support (~> 3.12.0)
101
- rspec-support (3.12.1)
102
- rubocop (1.59.0)
100
+ rspec-support (~> 3.13.0)
101
+ rspec-support (3.13.1)
102
+ rubocop (1.65.1)
103
103
  json (~> 2.3)
104
104
  language_server-protocol (>= 3.17.0)
105
105
  parallel (~> 1.10)
106
- parser (>= 3.2.2.4)
106
+ parser (>= 3.3.0.2)
107
107
  rainbow (>= 2.2.2, < 4.0)
108
- regexp_parser (>= 1.8, < 3.0)
108
+ regexp_parser (>= 2.4, < 3.0)
109
109
  rexml (>= 3.2.5, < 4.0)
110
- rubocop-ast (>= 1.30.0, < 2.0)
110
+ rubocop-ast (>= 1.31.1, < 2.0)
111
111
  ruby-progressbar (~> 1.7)
112
112
  unicode-display_width (>= 2.4.0, < 3.0)
113
- rubocop-ast (1.30.0)
114
- parser (>= 3.2.1.0)
115
- rubocop-capybara (2.20.0)
113
+ rubocop-ast (1.31.3)
114
+ parser (>= 3.3.1.0)
115
+ rubocop-capybara (2.21.0)
116
116
  rubocop (~> 1.41)
117
- rubocop-factory_bot (2.25.0)
118
- rubocop (~> 1.33)
119
- rubocop-performance (1.20.1)
117
+ rubocop-factory_bot (2.26.1)
118
+ rubocop (~> 1.61)
119
+ rubocop-performance (1.21.1)
120
120
  rubocop (>= 1.48.1, < 2.0)
121
- rubocop-ast (>= 1.30.0, < 2.0)
122
- rubocop-rspec (2.26.1)
121
+ rubocop-ast (>= 1.31.1, < 2.0)
122
+ rubocop-rspec (2.31.0)
123
123
  rubocop (~> 1.40)
124
124
  rubocop-capybara (~> 2.17)
125
125
  rubocop-factory_bot (~> 2.22)
126
+ rubocop-rspec_rails (~> 2.28)
127
+ rubocop-rspec_rails (2.29.1)
128
+ rubocop (~> 1.61)
126
129
  ruby-progressbar (1.13.0)
127
- ruby2_keywords (0.0.5)
128
130
  simplecov (0.22.0)
129
131
  docile (~> 1.1)
130
132
  simplecov-html (~> 0.11)
131
133
  simplecov_json_formatter (~> 0.1)
132
134
  simplecov-html (0.12.3)
133
135
  simplecov_json_formatter (0.1.4)
136
+ strscan (3.1.0)
134
137
  tzinfo (2.0.6)
135
138
  concurrent-ruby (~> 1.0)
136
139
  unicode-display_width (2.5.0)
137
140
  webrick (1.8.1)
138
- yard (0.9.34)
139
- zeitwerk (2.6.12)
141
+ yard (0.9.36)
142
+ zeitwerk (2.6.17)
140
143
 
141
144
  PLATFORMS
142
145
  ruby
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  [![Ruby](https://github.com/gangelo/LittleWeasel/actions/workflows/ruby.yml/badge.svg)](https://github.com/gangelo/LittleWeasel/actions/workflows/ruby.yml)
2
- [![GitHub version](http://badge.fury.io/gh/gangelo%2FLittleWeasel.svg?version=1)](https://badge.fury.io/gh/gangelo%2FLittleWeasel)
3
- [![Gem Version](https://badge.fury.io/rb/LittleWeasel.svg?version=1)](https://badge.fury.io/rb/LittleWeasel)
2
+ [![GitHub version](http://badge.fury.io/gh/gangelo%2FLittleWeasel.svg?version=3)](https://badge.fury.io/gh/gangelo%2FLittleWeasel)
3
+ [![Gem Version](https://badge.fury.io/rb/LittleWeasel.svg?version=3)](https://badge.fury.io/rb/LittleWeasel)
4
4
  [![](http://ruby-gem-downloads-badge.herokuapp.com/LittleWeasel?type=total)](http://www.rubydoc.info/gems/LittleWeasel/)
5
5
  [![Documentation](http://img.shields.io/badge/docs-rdoc.info-blue.svg)](http://www.rubydoc.info/gems/LittleWeasel/)
6
6
  [![Report Issues](https://img.shields.io/badge/report-issues-red.svg)](https://github.com/gangelo/LittleWeasel/issues)
data/Rakefile CHANGED
@@ -1,10 +1,11 @@
1
- # frozen_string_literal: true
1
+ # frozen_string_literal: false
2
2
 
3
3
  require 'active_support/core_ext/object/try.rb'
4
4
  require 'active_support/inflector'
5
5
  require 'benchmark/ips'
6
6
  require 'bundler/gem_tasks'
7
7
  require 'pry'
8
+ require 'rubocop/rake_task'
8
9
 
9
10
  require_relative 'lib/LittleWeasel'
10
11
  require_relative 'spec/support/file_helpers'
@@ -30,7 +31,7 @@ end
30
31
  # Tasks related to the #word_results API
31
32
 
32
33
  namespace 'word_results' do
33
- # Creates a dictionary from a file on disk
34
+ desc 'Creates a dictionary from a file on disk - perform basic word search results operations'
34
35
  task :basic do
35
36
  LittleWeasel.configure do |config|
36
37
  # TODO: Configure as needed here.
@@ -67,7 +68,7 @@ namespace 'word_results' do
67
68
  end
68
69
  end
69
70
 
70
- # Creates a dictionary of names from memory
71
+ desc 'Creates a dictionary from memory - perform basic word search results operations'
71
72
  task :from_memory do
72
73
  LittleWeasel.configure do |config|
73
74
  # TODO: Configure as needed here.
@@ -101,7 +102,7 @@ namespace 'word_results' do
101
102
  end
102
103
  end
103
104
 
104
- # Shows application of word filters and word preprocessors.
105
+ desc 'Creates a dictionary from memory - perform advanced word search results operations using word filters and preprocessors'
105
106
  task :advanced do
106
107
  LittleWeasel.configure do |config|
107
108
  # TODO: Configure as needed here.
@@ -175,6 +176,7 @@ namespace 'word_results' do
175
176
  end
176
177
  end
177
178
 
179
+ desc 'Creates a dictionary from memory - perform advanced word search results operations using word filters and preprocessors'
178
180
  task :word_filters do
179
181
  LittleWeasel.configure do |config|
180
182
  # TODO: Configure as needed here.
@@ -217,6 +219,7 @@ end
217
219
  # Tasks related to the #block_results API
218
220
 
219
221
  namespace 'block_results' do
222
+ desc 'Perform basic #block_results API operations'
220
223
  task :basic do
221
224
  LittleWeasel.configure do |config|
222
225
  # TODO: Configure as needed here.
@@ -253,32 +256,17 @@ namespace 'block_results' do
253
256
  end
254
257
 
255
258
  namespace :bm do
259
+ desc 'Performs benchmarking on Hash lookups performance.'
256
260
  task :hash do
257
261
  STRING_LOCALE = { 'en-US' => 'en-us' }
258
- SYMBOL_LOCALE = { 'en-US' => :enUS }
262
+ SYMBOL_LOCALE = { enUS: 'en-US' }
259
263
 
260
- puts 'String variable vs. normal String.'
264
+ puts "Benchmark Hash lookups using different Hash key data types."
261
265
  Benchmark.ips do |x|
262
- string_variable = 'string_variable'
266
+ string_variable = 'en-US'
267
+ x.report('hard-coded string') { STRING_LOCALE['en-US'] }
268
+ x.report('hard-coded frozen string') { STRING_LOCALE['en-US'.freeze] }
263
269
  x.report('string variable') { STRING_LOCALE[string_variable] }
264
- x.report('normal') { STRING_LOCALE['en-US'] }
265
- end
266
-
267
- puts 'String#freeze vs. normal String.'
268
- Benchmark.ips do |x|
269
- x.report('freeze') { STRING_LOCALE['en-US'.freeze] }
270
- x.report('normal') { STRING_LOCALE['en-US'] }
271
- end
272
-
273
- puts 'String vs Symbol'
274
- Benchmark.ips do |x|
275
- x.report('string') { STRING_LOCALE['en-US'] }
276
- x.report('symbol') { SYMBOL_LOCALE[:enUS] }
277
- end
278
-
279
- puts 'String#freeze vs. Symbol'
280
- Benchmark.ips do |x|
281
- x.report('string') { STRING_LOCALE['en-US'.freeze] }
282
270
  x.report('symbol') { SYMBOL_LOCALE[:enUS] }
283
271
  end
284
272
  rescue StandardError => e
@@ -288,6 +276,7 @@ namespace :bm do
288
276
  end
289
277
  end
290
278
 
279
+ desc 'Performs benchmarking on the DictionaryKey class.'
291
280
  task :dictionary_key do
292
281
  puts 'DictionaryKey test'
293
282
  Benchmark.ips do |x|
@@ -303,4 +292,9 @@ namespace :bm do
303
292
  end
304
293
  end
305
294
 
306
- task default: :spec
295
+
296
+ desc 'Run LittleWeasel benchmark tests.'
297
+ task benchmarking: %w[bm:hash bm:dictionary_key]
298
+
299
+ RuboCop::RakeTask.new
300
+ task default: %i[spec rubocop]
@@ -21,7 +21,7 @@ module LittleWeasel
21
21
 
22
22
  attr_reader :dictionary_metadata_object, :dictionary_words
23
23
 
24
- def initialize(dictionary_key:, dictionary_words:, dictionary_cache:,
24
+ def initialize(dictionary_key:, dictionary_words:, dictionary_cache:, # rubocop:disable Metrics/ParameterLists
25
25
  dictionary_metadata:, word_filters: nil, word_preprocessors: nil)
26
26
  validate_dictionary_key dictionary_key: dictionary_key
27
27
  self.dictionary_key = dictionary_key
@@ -2,5 +2,5 @@
2
2
 
3
3
  # The version of this gem
4
4
  module LittleWeasel
5
- VERSION = '5.0.10'
5
+ VERSION = '5.0.12'
6
6
  end
data/lib/LittleWeasel.rb CHANGED
@@ -1,72 +1,11 @@
1
+ # rubocop:disable Naming/FileName
1
2
  # frozen_string_literal: true
2
3
 
3
4
  require 'active_support/core_ext/object/blank'
4
5
 
5
- require_relative 'LittleWeasel/block_results'
6
- require_relative 'LittleWeasel/configure'
7
- require_relative 'LittleWeasel/dictionary'
8
- require_relative 'LittleWeasel/dictionary_key'
9
- require_relative 'LittleWeasel/dictionary_manager'
10
- require_relative 'LittleWeasel/errors/dictionary_file_already_loaded_error'
11
- require_relative 'LittleWeasel/errors/dictionary_file_empty_error'
12
- require_relative 'LittleWeasel/errors/dictionary_file_not_found_error'
13
- require_relative 'LittleWeasel/errors/dictionary_file_too_large_error'
14
- require_relative 'LittleWeasel/errors/language_required_error'
15
- require_relative 'LittleWeasel/errors/must_override_error'
16
- require_relative 'LittleWeasel/filters/en_us/currency_filter'
17
- require_relative 'LittleWeasel/filters/en_us/numeric_filter'
18
- require_relative 'LittleWeasel/filters/en_us/single_character_word_filter'
19
- require_relative 'LittleWeasel/filters/word_filter'
20
- require_relative 'LittleWeasel/filters/word_filter_managable'
21
- require_relative 'LittleWeasel/filters/word_filter_validatable'
22
- require_relative 'LittleWeasel/filters/word_filterable'
23
- require_relative 'LittleWeasel/filters/word_filters_validatable'
24
- require_relative 'LittleWeasel/metadata/dictionary_metadata'
25
- require_relative 'LittleWeasel/metadata/invalid_words_metadata'
26
- require_relative 'LittleWeasel/metadata/invalid_words_service_results'
27
- require_relative 'LittleWeasel/metadata/metadata_observable_validatable'
28
- require_relative 'LittleWeasel/metadata/metadata_observerable'
29
- require_relative 'LittleWeasel/metadata/metadatable'
30
- require_relative 'LittleWeasel/modules/class_name_to_symbol'
31
- require_relative 'LittleWeasel/modules/configurable'
32
- require_relative 'LittleWeasel/modules/deep_dup'
33
- require_relative 'LittleWeasel/modules/dictionary_cache_keys'
34
- require_relative 'LittleWeasel/modules/dictionary_cache_servicable'
35
- require_relative 'LittleWeasel/modules/dictionary_cache_validatable'
36
- require_relative 'LittleWeasel/modules/dictionary_creator_servicable'
37
- require_relative 'LittleWeasel/modules/dictionary_file_loader'
38
- require_relative 'LittleWeasel/modules/dictionary_key_validatable'
39
- require_relative 'LittleWeasel/modules/dictionary_keyable'
40
- require_relative 'LittleWeasel/modules/dictionary_metadata_servicable'
41
- require_relative 'LittleWeasel/modules/dictionary_metadata_validatable'
42
- require_relative 'LittleWeasel/modules/dictionary_source_validatable'
43
- require_relative 'LittleWeasel/modules/dictionary_sourceable'
44
- require_relative 'LittleWeasel/modules/dictionary_validatable'
45
- require_relative 'LittleWeasel/modules/language'
46
- require_relative 'LittleWeasel/modules/language_validatable'
47
- require_relative 'LittleWeasel/modules/locale'
48
- require_relative 'LittleWeasel/modules/order_validatable'
49
- require_relative 'LittleWeasel/modules/orderable'
50
- require_relative 'LittleWeasel/modules/region'
51
- require_relative 'LittleWeasel/modules/region_validatable'
52
- require_relative 'LittleWeasel/modules/tag_validatable'
53
- require_relative 'LittleWeasel/modules/taggable'
54
- require_relative 'LittleWeasel/modules/word_results_validatable'
55
- require_relative 'LittleWeasel/preprocessors/en_us/capitalize_preprocessor'
56
- require_relative 'LittleWeasel/preprocessors/preprocessed_word'
57
- require_relative 'LittleWeasel/preprocessors/preprocessed_word_validatable'
58
- require_relative 'LittleWeasel/preprocessors/preprocessed_words'
59
- require_relative 'LittleWeasel/preprocessors/preprocessed_words_validatable'
60
- require_relative 'LittleWeasel/preprocessors/word_preprocessable'
61
- require_relative 'LittleWeasel/preprocessors/word_preprocessor'
62
- require_relative 'LittleWeasel/preprocessors/word_preprocessor_managable'
63
- require_relative 'LittleWeasel/preprocessors/word_preprocessor_validatable'
64
- require_relative 'LittleWeasel/preprocessors/word_preprocessors_validatable'
65
- require_relative 'LittleWeasel/services/dictionary_cache_service'
66
- require_relative 'LittleWeasel/services/dictionary_creator_service'
67
- require_relative 'LittleWeasel/services/dictionary_file_loader_service'
68
- require_relative 'LittleWeasel/services/dictionary_killer_service'
69
- require_relative 'LittleWeasel/services/dictionary_metadata_service'
70
- require_relative 'LittleWeasel/services/invalid_words_service'
71
- require_relative 'LittleWeasel/version'
72
- require_relative 'LittleWeasel/word_results'
6
+ Dir.glob(File.join(__dir__, 'LittleWeasel', '**', '*.rb')).each do |file|
7
+ # Require the file relative to this file's directory
8
+ require_relative file.sub(File.join(__dir__, '/'), '')
9
+ end
10
+
11
+ # rubocop:enable Naming/FileName
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: LittleWeasel
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.10
4
+ version: 5.0.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gene M. Angelo, Jr.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-01-07 00:00:00.000000000 Z
11
+ date: 2024-08-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport