eac_ruby_utils 0.130.0 → 0.131.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e547c654300e986b5a13c5767955bb65606d3e38ec88dae0f3d8ba829be30ba5
4
- data.tar.gz: 98a638177070500a6e1662b5f851e3d4711ee2b05dcbf9600294672af30729aa
3
+ metadata.gz: 776fa14e41fc339b941d625a5682c4bdfb27c083c89bc90e352df41ee2a2feb3
4
+ data.tar.gz: 743e85524e9b40053731cf40821364f0d20154d77c9071f8dc121901b6154289
5
5
  SHA512:
6
- metadata.gz: 0c3b92abdb8cfb849a04868c8571c9eb363c97481f0ad17ba4ef5cdb82d4509a448744883acbf1535b119a2902f0f8d26d607a31a5753c8679984c14713b0a4b
7
- data.tar.gz: d891b7749543dcfc829b541cc401fdcd05f923f6ae4626023a28247bbf64fcdc08814793cade4c06ca9ec5b251e9f6c9e32b90fd00d83903ed2a455e9f469bf6
6
+ metadata.gz: 857a5d927090f9584ce323027ca9636d0402212dbca08894f9394b0fdb1a87c707cdeeaaf586ca50e84fd27377e65a68b1155b3adebb539bb6f628dd4aea1a25
7
+ data.tar.gz: 110900052a9d9223028760c42359e1270fc28d8bd1da2fc553283f5678a4254ed26194f5d874deb6a828ddd5a4154607ff7c86a0e3209cc3957f82e1917cb4a0
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'active_support/concern'
4
- require 'eac_ruby_utils/simple_cache'
4
+ require 'memoized'
5
5
  require 'eac_ruby_utils/patches/object/if_present'
6
6
 
7
7
  module EacRubyUtils
8
8
  class CommonConcern
9
9
  class ClassSetup
10
- include ::EacRubyUtils::SimpleCache
10
+ include ::Memoized
11
11
 
12
12
  attr_reader :a_class, :module_setup, :include_method
13
13
 
@@ -37,13 +37,13 @@ module EacRubyUtils
37
37
  end
38
38
  end
39
39
 
40
- def class_methods_module_uncached
40
+ memoize def class_methods_module
41
41
  module_setup.a_module.const_get(CLASS_METHODS_MODULE_NAME)
42
42
  rescue NameError
43
43
  nil
44
44
  end
45
45
 
46
- def instance_methods_module_uncached
46
+ memoize def instance_methods_module
47
47
  module_setup.a_module.const_get(INSTANCE_METHODS_MODULE_NAME)
48
48
  rescue NameError
49
49
  nil
@@ -2,13 +2,13 @@
2
2
 
3
3
  require 'active_support/concern'
4
4
  require 'eac_ruby_utils/common_concern/class_setup'
5
- require 'eac_ruby_utils/simple_cache'
5
+ require 'memoized'
6
6
  require 'eac_ruby_utils/patches/object/if_present'
7
7
 
8
8
  module EacRubyUtils
9
9
  class CommonConcern
10
10
  class ModuleSetup
11
- include ::EacRubyUtils::SimpleCache
11
+ include ::Memoized
12
12
 
13
13
  attr_reader :a_module, :common_concern
14
14
 
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'eac_ruby_utils/listable'
4
- require 'eac_ruby_utils/simple_cache'
4
+ require 'memoized'
5
5
 
6
6
  module EacRubyUtils
7
7
  module Envs
8
8
  class Executable
9
9
  include ::EacRubyUtils::Listable
10
- include ::EacRubyUtils::SimpleCache
10
+ include ::Memoized
11
11
 
12
12
  lists.add_symbol :option, :check_args, :exec_args, :auto_validate
13
13
 
@@ -80,7 +80,7 @@ module EacRubyUtils
80
80
 
81
81
  attr_writer :options
82
82
 
83
- def exist_uncached
83
+ memoize def exist
84
84
  env.command(*executable_args, *check_args).execute!
85
85
  true
86
86
  rescue Errno::ENOENT
@@ -1,27 +1,26 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'eac_ruby_utils/recursive_builder'
4
+ require 'memoized'
4
5
 
5
6
  module EacRubyUtils
6
7
  class GemsRegistry
7
8
  class Gem
8
9
  module Dependencies
10
+ include ::Memoized
11
+
9
12
  def depend_on(gem) # rubocop:disable Naming/PredicateMethod
10
13
  dependencies.lazy.map(&:name).include?(gem.gemspec.name)
11
14
  end
12
15
 
13
- def dependencies
14
- @dependencies ||= dependencies_uncached # dependencies_uncached
15
- end
16
-
17
- private
18
-
19
- def dependencies_uncached
16
+ memoize def dependencies
20
17
  ::EacRubyUtils::RecursiveBuilder
21
18
  .new(gemspec) { |item| gem_item_dependencies(item) }
22
19
  .result
23
20
  end
24
21
 
22
+ private
23
+
25
24
  # @return [Array<Gem::Dependency>]
26
25
  def gem_item_dependencies(item)
27
26
  ::Gem::Specification.find_by_name(item.name).dependencies.select(&:runtime?)
@@ -2,7 +2,7 @@
2
2
 
3
3
  require 'active_support/core_ext/string/inflections'
4
4
  require 'eac_ruby_utils/recursive_builder'
5
- require 'eac_ruby_utils/simple_cache'
5
+ require 'memoized'
6
6
 
7
7
  module EacRubyUtils
8
8
  class GemsRegistry
@@ -3,7 +3,7 @@
3
3
  require 'active_support/core_ext/string/inflections'
4
4
  require 'eac_ruby_utils/gems_registry/gem/dependencies'
5
5
  require 'eac_ruby_utils/gems_registry/gem/paths_to_require'
6
- require 'eac_ruby_utils/simple_cache'
6
+ require 'memoized'
7
7
 
8
8
  module EacRubyUtils
9
9
  class GemsRegistry
@@ -11,7 +11,7 @@ module EacRubyUtils
11
11
  include ::Comparable
12
12
  include ::EacRubyUtils::GemsRegistry::Gem::Dependencies
13
13
  include ::EacRubyUtils::GemsRegistry::Gem::PathsToRequire
14
- include ::EacRubyUtils::SimpleCache
14
+ include ::Memoized
15
15
 
16
16
  attr_reader :registry, :gemspec
17
17
 
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/patches/module/patch_self'
4
+ require 'memoized'
5
+
6
+ class Module
7
+ def enable_memoized
8
+ patch_self(::Memoized)
9
+ end
10
+ end
@@ -1,10 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'eac_ruby_utils/simple_cache'
3
+ require 'memoized'
4
4
 
5
5
  module EacRubyUtils
6
6
  class RecursiveBuilder
7
- include ::EacRubyUtils::SimpleCache
7
+ include ::Memoized
8
8
 
9
9
  attr_reader :root, :neighbors_block
10
10
 
@@ -13,11 +13,7 @@ module EacRubyUtils
13
13
  @neighbors_block = neighbors_block
14
14
  end
15
15
 
16
- private
17
-
18
- attr_reader :added, :to_check
19
-
20
- def result_uncached
16
+ memoize def result
21
17
  @added = []
22
18
  @to_check = []
23
19
  item_try_add_to_check(root)
@@ -27,6 +23,10 @@ module EacRubyUtils
27
23
  added
28
24
  end
29
25
 
26
+ private
27
+
28
+ attr_reader :added, :to_check
29
+
30
30
  def item_try_add_to_check(item)
31
31
  to_check << item unless item_added?(item)
32
32
  end
@@ -2,14 +2,15 @@
2
2
 
3
3
  require 'eac_ruby_utils/patches/module/acts_as_instance_method'
4
4
  require 'eac_ruby_utils/patches/object/to_pathname'
5
- require 'eac_ruby_utils/patches/module/simple_cache'
6
5
  require 'eac_ruby_utils/patches/pathname/basename_sub'
6
+ require 'memoized'
7
7
 
8
8
  module EacRubyUtils
9
9
  class RootModuleSetup
10
10
  class Ignore
11
+ include ::Memoized
12
+
11
13
  acts_as_instance_method
12
- enable_simple_cache
13
14
  common_constructor :setup, :path do
14
15
  self.path = path.to_pathname
15
16
  end
@@ -25,7 +26,7 @@ module EacRubyUtils
25
26
  protected
26
27
 
27
28
  # @return [Pathname]
28
- def absolute_path_uncached
29
+ memoize def absolute_path
29
30
  path.expand_path(root_module_directory)
30
31
  end
31
32
 
@@ -43,7 +44,7 @@ module EacRubyUtils
43
44
  end
44
45
 
45
46
  # @return [Pathname]
46
- def target_paths_uncached
47
+ memoize def target_paths
47
48
  return [absolute_path] if %w[* ?].any? { |e| absolute_path.to_path.include?(e) }
48
49
 
49
50
  r = []
@@ -2,14 +2,14 @@
2
2
 
3
3
  require 'active_support/core_ext/string/inflections'
4
4
  require 'eac_ruby_utils/listable'
5
- require 'eac_ruby_utils/simple_cache'
5
+ require 'memoized'
6
6
  require 'eac_ruby_utils/struct'
7
7
 
8
8
  module EacRubyUtils
9
9
  module SettingsProvider
10
10
  class SettingValue
11
11
  include ::EacRubyUtils::Listable
12
- include ::EacRubyUtils::SimpleCache
12
+ include ::Memoized
13
13
 
14
14
  attr_reader :source, :key, :options
15
15
 
@@ -63,7 +63,7 @@ module EacRubyUtils
63
63
 
64
64
  private
65
65
 
66
- def parsed_options_uncached
66
+ memoize def parsed_options
67
67
  r = self.class.lists.option.hash_keys_validate!(options.symbolize_keys)
68
68
  r[:required] = true unless r.key?(OPTION_REQUIRED)
69
69
  r[:order] = source.setting_search_order if r[OPTION_ORDER].nil?
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacRubyUtils
4
- VERSION = '0.130.0'
4
+ VERSION = '0.131.0'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eac_ruby_utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.130.0
4
+ version: 0.131.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esquilo Azul Company
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-02-16 00:00:00.000000000 Z
11
+ date: 2026-04-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -36,20 +36,14 @@ dependencies:
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '2.8'
40
- - - ">="
41
- - !ruby/object:Gem::Version
42
- version: 2.8.8
39
+ version: '2.9'
43
40
  type: :runtime
44
41
  prerelease: false
45
42
  version_requirements: !ruby/object:Gem::Requirement
46
43
  requirements:
47
44
  - - "~>"
48
45
  - !ruby/object:Gem::Version
49
- version: '2.8'
50
- - - ">="
51
- - !ruby/object:Gem::Version
52
- version: 2.8.8
46
+ version: '2.9'
53
47
  - !ruby/object:Gem::Dependency
54
48
  name: bundler
55
49
  requirement: !ruby/object:Gem::Requirement
@@ -64,6 +58,26 @@ dependencies:
64
58
  - - ">="
65
59
  - !ruby/object:Gem::Version
66
60
  version: '0'
61
+ - !ruby/object:Gem::Dependency
62
+ name: memoized
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '1.1'
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ version: 1.1.3
71
+ type: :runtime
72
+ prerelease: false
73
+ version_requirements: !ruby/object:Gem::Requirement
74
+ requirements:
75
+ - - "~>"
76
+ - !ruby/object:Gem::Version
77
+ version: '1.1'
78
+ - - ">="
79
+ - !ruby/object:Gem::Version
80
+ version: 1.1.3
67
81
  - !ruby/object:Gem::Dependency
68
82
  name: net-ssh
69
83
  requirement: !ruby/object:Gem::Requirement
@@ -87,7 +101,7 @@ dependencies:
87
101
  version: '2.7'
88
102
  - - ">="
89
103
  - !ruby/object:Gem::Version
90
- version: 2.7.4
104
+ version: 2.7.5
91
105
  type: :runtime
92
106
  prerelease: false
93
107
  version_requirements: !ruby/object:Gem::Requirement
@@ -97,7 +111,7 @@ dependencies:
97
111
  version: '2.7'
98
112
  - - ">="
99
113
  - !ruby/object:Gem::Version
100
- version: 2.7.4
114
+ version: 2.7.5
101
115
  - !ruby/object:Gem::Dependency
102
116
  name: avm-eac_ubuntu_base0
103
117
  requirement: !ruby/object:Gem::Requirement
@@ -121,7 +135,7 @@ dependencies:
121
135
  version: '0.12'
122
136
  - - ">="
123
137
  - !ruby/object:Gem::Version
124
- version: 0.12.1
138
+ version: 0.12.2
125
139
  type: :development
126
140
  prerelease: false
127
141
  version_requirements: !ruby/object:Gem::Requirement
@@ -131,7 +145,7 @@ dependencies:
131
145
  version: '0.12'
132
146
  - - ">="
133
147
  - !ruby/object:Gem::Version
134
- version: 0.12.1
148
+ version: 0.12.2
135
149
  description:
136
150
  email:
137
151
  executables: []
@@ -267,6 +281,7 @@ files:
267
281
  - lib/eac_ruby_utils/patches/module/common_concern.rb
268
282
  - lib/eac_ruby_utils/patches/module/compare_by.rb
269
283
  - lib/eac_ruby_utils/patches/module/context.rb
284
+ - lib/eac_ruby_utils/patches/module/enable_memoized.rb
270
285
  - lib/eac_ruby_utils/patches/module/i18n_translate.rb
271
286
  - lib/eac_ruby_utils/patches/module/immutable.rb
272
287
  - lib/eac_ruby_utils/patches/module/listable.rb