avm-tools 0.117.3 → 0.120.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.
Files changed (61) hide show
  1. checksums.yaml +4 -4
  2. data/lib/avm/tools/app_src.rb +1 -5
  3. data/lib/avm/tools/runner/app_src/info.rb +0 -8
  4. data/lib/avm/tools/runner/app_src/subs.rb +71 -0
  5. data/lib/avm/tools/runner/app_src.rb +2 -0
  6. data/lib/avm/tools/version.rb +1 -1
  7. data/sub/avm/lib/avm/registry/base.rb +6 -2
  8. data/sub/avm/lib/avm/registry/with_path.rb +23 -0
  9. data/sub/avm/lib/avm/registry.rb +11 -1
  10. data/sub/avm/lib/avm/scms/base.rb +2 -7
  11. data/sub/avm/lib/avm/scms/null.rb +14 -0
  12. data/sub/avm/lib/avm/sources/base/configuration.rb +24 -7
  13. data/sub/avm/lib/avm/sources/base/locale.rb +26 -0
  14. data/sub/avm/lib/avm/sources/base/subs.rb +55 -0
  15. data/sub/avm/lib/avm/sources/base/subs_paths.rb +32 -0
  16. data/sub/avm/lib/avm/sources/base/testing.rb +6 -0
  17. data/sub/avm/lib/avm/sources/base.rb +11 -7
  18. data/sub/avm/lib/avm/version.rb +1 -1
  19. data/sub/avm-eac_rails_base0/avm-eac_rails_base0.gemspec +1 -1
  20. data/sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/sources/base.rb +27 -0
  21. data/sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/version.rb +1 -1
  22. data/sub/avm-eac_rails_base1/avm-eac_rails_base1.gemspec +1 -0
  23. data/sub/avm-eac_rails_base1/lib/avm/eac_rails_base1/sources/base.rb +27 -0
  24. data/sub/avm-eac_rails_base1/lib/avm/eac_rails_base1/version.rb +1 -1
  25. data/sub/avm-eac_redmine_base0/avm-eac_redmine_base0.gemspec +1 -1
  26. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/base.rb +27 -0
  27. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/version.rb +1 -1
  28. data/sub/avm-eac_redmine_plugin_base0/Gemfile +5 -0
  29. data/sub/avm-eac_redmine_plugin_base0/avm-eac_redmine_plugin_base0.gemspec +19 -0
  30. data/sub/avm-eac_redmine_plugin_base0/lib/avm/eac_redmine_plugin_base0/sources/base.rb +30 -0
  31. data/sub/avm-eac_redmine_plugin_base0/lib/avm/eac_redmine_plugin_base0/version.rb +7 -0
  32. data/sub/avm-eac_redmine_plugin_base0/lib/avm/eac_redmine_plugin_base0.rb +9 -0
  33. data/sub/avm-eac_redmine_plugin_base0/spec/rubocop_spec.rb +3 -0
  34. data/sub/avm-eac_redmine_plugin_base0/spec/spec_helper.rb +4 -0
  35. data/sub/avm-eac_ruby_base1/avm-eac_ruby_base1.gemspec +2 -1
  36. data/{lib/avm/ruby → sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1}/bundler/incompatible_parser/depends_on.rb +3 -3
  37. data/{lib/avm/ruby → sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1}/bundler/incompatible_parser/gem_conflict.rb +11 -6
  38. data/{lib/avm/ruby → sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1}/bundler/incompatible_parser/in_gemfile.rb +3 -3
  39. data/{lib/avm/ruby → sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1}/bundler/incompatible_parser/line_buffer.rb +3 -3
  40. data/{lib/avm/ruby → sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1}/bundler/incompatible_parser/line_factory.rb +4 -4
  41. data/{lib/avm/ruby → sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1}/bundler/incompatible_parser/line_parser_base.rb +1 -1
  42. data/{lib/avm/ruby → sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1}/bundler/incompatible_parser/version_requirement.rb +4 -4
  43. data/{lib/avm/ruby → sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1}/bundler/incompatible_parser.rb +2 -2
  44. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/bundle_command.rb +39 -0
  45. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/bundler.rb +39 -0
  46. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base.rb +7 -2
  47. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler/incompatible.rb +76 -0
  48. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler.rb +19 -0
  49. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners.rb +13 -0
  50. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/version.rb +1 -1
  51. data/sub/avm-eac_ruby_base1/locale/{en.yaml → en.yml} +0 -0
  52. data/sub/avm-eac_ruby_base1/locale/{pt-BR.yaml → pt-BR.yml} +0 -0
  53. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec.rb +7 -0
  54. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/1.source.out +192 -0
  55. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/1.target.yaml +300 -0
  56. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/2.source.out +245 -0
  57. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/2.target.yaml +355 -0
  58. metadata +56 -19
  59. data/lib/avm/tools/runner/app_src/ruby/bundler/incompatible.rb +0 -82
  60. data/sub/avm/lib/avm/sources/configuration/locale.rb +0 -18
  61. data/sub/avm/lib/avm/sources/configuration/tests.rb +0 -29
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4fec1bb05188ea00085f3ca44ed3945e58675f2dddb1593fd857312ce98caa45
4
- data.tar.gz: 695a666752439b000d12d60da7ee84c1b34aba488a650409eedeb2708702a8f1
3
+ metadata.gz: 03fc9a92381ea8132ea31e0f26c18ffca15f64f50ad147e171f8c107449cc6ab
4
+ data.tar.gz: 0b03b5e4b7ab4d014207080d4e07cb4ce8a61945f7c0773147b7226d567bb644
5
5
  SHA512:
6
- metadata.gz: fb85f443966aa7612f54b69f367a0b72df3d9ba4016cb6b4b4ea8e1f927d34c6d3716bcbdfd1f2638faba539b50d7042043d202469ffb604e35f41ea6b8e5906
7
- data.tar.gz: d3629c61d983caee50edfc740da31ff96d031e9632f170ce25be6f73687295baa5c6fe410ffb32260c212290c0716fb0534a1229884be2849bfa3206bc84dac5
6
+ metadata.gz: d02d876cb32ffeba8c56d3ef3d44ee66f55a49fa30a3958555bbfe90539df15ccef6a70ddd039a4c68b72384bed37dfa3e9a102fc4b9d9a74fafc42b4d8d36e3
7
+ data.tar.gz: b7860a33604d1751eb3451dd8a3646e591a93c4d4380994c175242925c1f8a64b6dd860132c3ff9f8ea9876331a88ad397ac0fbc64c37facd0cdff76cbfa4aab
@@ -17,6 +17,7 @@ module Avm
17
17
  source_stereotypes_mixins
18
18
  end
19
19
 
20
+ delegate :configuration, to: :avm_instance
20
21
  delegate :to_s, to: :path
21
22
 
22
23
  def locale
@@ -39,11 +40,6 @@ module Avm
39
40
  ::Avm::Registry.sources.detect(path)
40
41
  end
41
42
 
42
- # @return [Avm::Sources::Configuration]
43
- def configuration_uncached
44
- ::Avm::Sources::Configuration.find_in_path(path)
45
- end
46
-
47
43
  def stereotypes_jobs(job, job_args)
48
44
  job_class_method = "#{job}_class"
49
45
  r = []
@@ -14,7 +14,6 @@ module Avm
14
14
  def run
15
15
  show_instance
16
16
  show_source
17
- show_subs
18
17
  end
19
18
 
20
19
  private
@@ -29,13 +28,6 @@ module Avm
29
28
  infov 'SCM', runner_context.call(:subject).scm
30
29
  end
31
30
 
32
- def show_subs
33
- infov 'Sub applications', instance.avm_instance.subs.count
34
- instance.avm_instance.subs.each do |subapp|
35
- infov ' * ', "#{subapp.relative_path} [#{subapp.class}]"
36
- end
37
- end
38
-
39
31
  def instance
40
32
  runner_context.call(:instance)
41
33
  end
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/tools/core_ext'
4
+
5
+ module Avm
6
+ module Tools
7
+ class Runner
8
+ class AppSrc
9
+ class Subs
10
+ PADDING = ' '
11
+
12
+ runner_with :help, :output do
13
+ desc 'Output source\'s subs.'
14
+ bool_opt '-i', '--info'
15
+ bool_opt '-R', '--recursive'
16
+ bool_opt '-t', '--tree'
17
+ end
18
+
19
+ def run
20
+ start_banner
21
+ run_output
22
+ end
23
+
24
+ def start_banner
25
+ infov 'Include PATH', runner_context.call(:subject).subs_include_path
26
+ infov 'Exclude PATH', runner_context.call(:subject).subs_exclude_path
27
+ infov 'Count', runner_context.call(:subject).subs.count
28
+ end
29
+
30
+ def output_content
31
+ b = []
32
+ runner_context.call(:subject).subs.each do |sub|
33
+ b += sub_output_content_lines(sub, 0)
34
+ end
35
+ b.map { |line| "#{line}\n" }.join
36
+ end
37
+
38
+ def sub_info_label(sub)
39
+ return '' unless parsed.info?
40
+
41
+ ' [' + {
42
+ 'CLASS' => sub.class.name
43
+ }.map { |k, v| "#{k}: #{v}" }.join(', ') + ']'
44
+ end
45
+
46
+ def sub_label(sub, level)
47
+ sub_self_label(sub, level) + sub_info_label(sub)
48
+ end
49
+
50
+ def sub_self_label(sub, level)
51
+ if parsed.tree?
52
+ (PADDING * level) + sub.relative_path.to_s
53
+ else
54
+ sub.path.relative_path_from(runner_context.call(:subject).path).to_s
55
+ end
56
+ end
57
+
58
+ def sub_output_content_lines(sub, level)
59
+ [sub_label(sub, level)] + sub_subs_output_content_lines(sub, level)
60
+ end
61
+
62
+ def sub_subs_output_content_lines(sub, level)
63
+ return [] unless parsed.recursive?
64
+
65
+ sub.subs.flat_map { |sub_sub| sub_output_content_lines(sub_sub, level + 1) }
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
71
+ end
@@ -23,6 +23,8 @@ module Avm
23
23
  instance.avm_instance
24
24
  end
25
25
 
26
+ delegate :extra_available_subcommands, to: :subject
27
+
26
28
  private
27
29
 
28
30
  def instance_uncached
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module Tools
5
- VERSION = '0.117.3'
5
+ VERSION = '0.120.0'
6
6
  end
7
7
  end
@@ -11,8 +11,7 @@ module Avm
11
11
 
12
12
  def detect(*registered_initialize_args)
13
13
  detect_optional(*registered_initialize_args) ||
14
- raise("No registered module valid for #{registered_initialize_args}" \
15
- " (Module suffix: #{module_suffix}, Available: #{registered_modules.join(', ')})")
14
+ raise_not_found(*registered_initialize_args)
16
15
  end
17
16
 
18
17
  def detect_optional(*registered_initialize_args)
@@ -38,6 +37,11 @@ module Avm
38
37
 
39
38
  private
40
39
 
40
+ def raise_not_found(*args)
41
+ raise("No registered module valid for #{args}" \
42
+ " (Module suffix: #{module_suffix}, Available: #{registered_modules.join(', ')})")
43
+ end
44
+
41
45
  def registered_modules_uncached
42
46
  registered_gems.flat_map { |registry| modules_from_registry(registry) }
43
47
  .select { |v| valid_registered_module?(v) }.uniq
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/registry/base'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module Registry
8
+ class WithPath < ::Avm::Registry::Base
9
+ def detect_by_path(path)
10
+ detect_by_path_optional(path) || raise_not_found(path)
11
+ end
12
+
13
+ def detect_by_path_optional(path)
14
+ current_path = path.to_pathname.expand_path
15
+ until current_path.root?
16
+ detect_optional(current_path).if_present { |v| return v }
17
+ current_path = current_path.parent
18
+ end
19
+ nil
20
+ end
21
+ end
22
+ end
23
+ end
@@ -9,6 +9,8 @@ module Avm
9
9
  enable_listable
10
10
  lists.add_symbol :category, :instance_stereotypes, :runners, :scms, :sources
11
11
 
12
+ WITH_PATH = [CATEGORY_SCMS, CATEGORY_SOURCES].freeze
13
+
12
14
  class << self
13
15
  enable_simple_cache
14
16
 
@@ -21,7 +23,15 @@ module Avm
21
23
 
22
24
  ::Avm::Registry.lists.category.each_value do |category|
23
25
  define_method "#{category}_uncached" do
24
- ::Avm::Registry::Base.new(category.to_s.camelize)
26
+ registry_class(category).new(category.to_s.camelize)
27
+ end
28
+ end
29
+
30
+ def registry_class(category)
31
+ if WITH_PATH.include?(category)
32
+ ::Avm::Registry::WithPath
33
+ else
34
+ ::Avm::Registry::Base
25
35
  end
26
36
  end
27
37
  end
@@ -33,13 +33,8 @@ module Avm
33
33
  private
34
34
 
35
35
  # @return [Avm::Scms::Base]
36
- def parent_scm
37
- parent_path = path.parent
38
- until parent_path.root?
39
- ::Avm::Registry.scms.detect_optional(parent_path).if_present { |v| return v }
40
- parent_path = parent_path.parent
41
- end
42
- nil
36
+ def parent_scm_uncached
37
+ ::Avm::Registry.scms.detect_by_path_optional(path.parent)
43
38
  end
44
39
  end
45
40
  end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/scms/base'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module Scms
8
+ class Null < ::Avm::Scms::Base
9
+ def update
10
+ # Do nothing
11
+ end
12
+ end
13
+ end
14
+ end
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'eac_config/yaml_file_node'
3
4
  require 'eac_ruby_utils/core_ext'
4
5
  require 'eac_ruby_utils/yaml'
5
6
  require 'shellwords'
@@ -8,23 +9,39 @@ module Avm
8
9
  module Sources
9
10
  class Base
10
11
  module Configuration
12
+ CONFIGURATION_FILENAMES = %w[.avm.yml .avm.yaml].freeze
13
+
11
14
  # @return [Array<String>, nil]
12
15
  def read_configuration_as_shell_words(key)
13
- configuration[key].if_present do |v|
16
+ configuration.entry(key).value.if_present do |v|
14
17
  v.is_a?(::Enumerable) ? v.map(&:to_s) : ::Shellwords.split(v.to_s)
15
18
  end
16
19
  end
17
20
 
21
+ # Utility to read a configuration as a [EacRubyUtils::Envs::Command].
22
+ # @return [EacRubyUtils::Envs::Command]
23
+ def read_configuration_as_env_command(key)
24
+ read_configuration_as_shell_words(key).if_present do |v|
25
+ env.command(v).chdir(path)
26
+ end
27
+ end
28
+
18
29
  private
19
30
 
20
- # @return [Hash]
31
+ # @return [EacConfig::YamlFileNode]
21
32
  def configuration_uncached
22
- ::Avm::Sources::Configuration::FILENAMES.each do |filename|
23
- file_path = path.join(filename)
24
- return ::EacRubyUtils::Yaml.load_file(file_path).with_indifferent_access if
25
- file_path.exist?
33
+ CONFIGURATION_FILENAMES.each do |filename|
34
+ configuration_with_filename(filename, true)
26
35
  end
27
- {}
36
+ configuration_with_filename(CONFIGURATION_FILENAMES.first, false)
37
+ end
38
+
39
+ # @return [EacConfig::YamlFileNode, nil]
40
+ def configuration_with_filename(filename, needs_exist)
41
+ file_path = path.join(filename)
42
+ return ::EacConfig::YamlFileNode.new(file_path) if !needs_exist || file_path.exist?
43
+
44
+ nil
28
45
  end
29
46
 
30
47
  # @return [Avm::Sources::Configuration]
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+ require 'i18n'
5
+
6
+ module Avm
7
+ module Sources
8
+ class Base
9
+ module Locale
10
+ LOCALE_KEY = 'locale'
11
+
12
+ def locale
13
+ configured_locale || default_locale
14
+ end
15
+
16
+ def configured_locale
17
+ configuration.entry(LOCALE_KEY).value
18
+ end
19
+
20
+ def default_locale
21
+ ::I18n.default_locale
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,55 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/sources/base/subs_paths'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module Sources
8
+ class Base
9
+ module Subs
10
+ CONFIGURATION_SUBS_EXCLUDE_PATHS_KEY = 'subs.exclude_path'
11
+ CONFIGURATION_SUBS_INCLUDE_PATHS_KEY = 'subs.include_path'
12
+ SUBS_EXCLUDE_PATHS_DEFAULT = [].freeze
13
+ SUBS_INCLUDE_PATHS_DEFAULT = ['sub/*'].freeze
14
+
15
+ # @return [Enumerable<Avm::Sources::Base>]
16
+ def subs
17
+ subs_paths_to_search
18
+ .map { |sub_path| ::Avm::Registry.sources.detect_optional(sub_path, parent: self) }
19
+ .reject(&:blank?)
20
+ .sort_by { |sub| [sub.path] }
21
+ end
22
+
23
+ def subs_paths_to_search
24
+ subs_include_paths.flat_map do |subs_include_path|
25
+ ::Pathname.glob(path.join(subs_include_path)).reject do |sub_path|
26
+ subs_exclude_paths.any? do |subs_exclude_path|
27
+ sub_path.fnmatch?(path.join(subs_exclude_path).to_path)
28
+ end
29
+ end
30
+ end
31
+ end
32
+
33
+ %i[include exclude].each do |type|
34
+ %i[path paths configured_paths default_paths].each do |method_suffix|
35
+ obj_method_name = "subs_#{type}_path_obj"
36
+
37
+ define_method "subs_#{type}_#{method_suffix}" do
38
+ send(obj_method_name).send(method_suffix)
39
+ end
40
+
41
+ define_method "#{obj_method_name}_uncached" do
42
+ ::Avm::Sources::Base::SubsPaths.new(
43
+ self,
44
+ self.class.const_get("CONFIGURATION_SUBS_#{type}_PATHS_KEY".upcase),
45
+ self.class.const_get("SUBS_#{type}_PATHS_DEFAULT".upcase)
46
+ )
47
+ end
48
+
49
+ private "#{obj_method_name}_uncached" # rubocop:disable Style/AccessModifierDeclarations
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avm
6
+ module Sources
7
+ class Base
8
+ class SubsPaths
9
+ SUBS_PATH_SEPARATOR = ':'
10
+
11
+ common_constructor :source, :configuration_key, :default_paths
12
+
13
+ # @return [String]
14
+ def path
15
+ paths.join(SUBS_PATH_SEPARATOR)
16
+ end
17
+
18
+ # @return [Array<String>]
19
+ def paths
20
+ configured_paths || default_paths
21
+ end
22
+
23
+ # @return [Array<String>]
24
+ def configured_paths
25
+ source.configuration.entry(configuration_key).value.if_present do |v|
26
+ v.split(SUBS_PATH_SEPARATOR)
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -6,6 +6,12 @@ module Avm
6
6
  module Sources
7
7
  class Base
8
8
  module Testing
9
+ TEST_COMMAND_KEY = 'test.command'
10
+
11
+ def configured_test_command
12
+ read_configuration_as_env_command(TEST_COMMAND_KEY)
13
+ end
14
+
9
15
  # @return [Avm::Sources::Tester]
10
16
  def tester
11
17
  tester_class.new(self)
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'avm/registry'
4
+ require 'avm/scms/null'
4
5
  require 'eac_git'
5
6
  require 'eac_ruby_utils/core_ext'
6
7
 
@@ -20,7 +21,15 @@ module Avm
20
21
 
21
22
  abstract_methods :update, :valid?
22
23
 
23
- delegate :locale, to: :old_configuration
24
+ # @return [EacRubyUtils::Envs::LocalEnv]
25
+ def env
26
+ ::EacRubyUtils::Envs::LocalEnv.new
27
+ end
28
+
29
+ # @return [Hash<String, Class>]
30
+ def extra_available_subcommands
31
+ {}
32
+ end
24
33
 
25
34
  # @return [Pathname]
26
35
  def relative_path
@@ -33,16 +42,11 @@ module Avm
33
42
  "#{self.class}[#{path}]"
34
43
  end
35
44
 
36
- # @return [Enumerable<Avm::Sources::Base>]
37
- def subs
38
- scm.subs.map { |subrepo| ::Avm::Registry.sources.detect(subrepo.path, parent: self) }
39
- end
40
-
41
45
  private
42
46
 
43
47
  # @return [Avm::Scms::Base]
44
48
  def scm_uncached
45
- ::Avm::Registry.scms.detect(path)
49
+ ::Avm::Registry.scms.detect_optional(path) || ::Avm::Scms::Null.new(path)
46
50
  end
47
51
  end
48
52
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Avm
4
- VERSION = '0.19.0'
4
+ VERSION = '0.22.0'
5
5
  end
@@ -12,7 +12,7 @@ Gem::Specification.new do |s|
12
12
 
13
13
  s.files = Dir['{lib,template}/**/*']
14
14
 
15
- s.add_dependency 'avm-eac_rails_base1', '~> 0.2'
15
+ s.add_dependency 'avm-eac_rails_base1', '~> 0.3'
16
16
  s.add_dependency 'eac_ruby_utils', '~> 0.80', '>= 0.80.2'
17
17
 
18
18
  s.add_development_dependency 'eac_ruby_gem_support', '~> 0.4'
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_rails_base1/sources/base'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module EacRailsBase0
8
+ module Sources
9
+ class Base < ::Avm::EacRailsBase1::Sources::Base
10
+ CONFIG_RU_SUBPATH = 'config.ru'
11
+ SUBS_INCLUDE_PATHS_DEFAULT = ['sub/*/*'].freeze
12
+
13
+ def config_ru_path
14
+ path.join(CONFIG_RU_SUBPATH)
15
+ end
16
+
17
+ def subs_include_paths_default
18
+ SUBS_PATHS_DEFAULT
19
+ end
20
+
21
+ def valid?
22
+ super && config_ru_path.exist?
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacRailsBase0
5
- VERSION = '0.3.0'
5
+ VERSION = '0.4.1'
6
6
  end
7
7
  end
@@ -12,6 +12,7 @@ Gem::Specification.new do |s|
12
12
 
13
13
  s.files = Dir['{lib}/**/*']
14
14
 
15
+ s.add_dependency 'avm-eac_ruby_base1', '~> 0.6'
15
16
  s.add_dependency 'avm-eac_webapp_base0', '~> 0.3'
16
17
  s.add_dependency 'eac_ruby_gems_utils', '~> 0.9', '>= 0.9.9'
17
18
  s.add_dependency 'eac_ruby_utils', '~> 0.68'
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_ruby_base1/sources/base'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module EacRailsBase1
8
+ module Sources
9
+ class Base < ::Avm::EacRubyBase1::Sources::Base
10
+ CONFIG_RU_SUBPATH = 'config.ru'
11
+ SUBS_PATHS_DEFAULT = ['sub/*/*'].freeze
12
+
13
+ def config_ru_path
14
+ path.join(CONFIG_RU_SUBPATH)
15
+ end
16
+
17
+ def subs_paths_default
18
+ SUBS_PATHS_DEFAULT
19
+ end
20
+
21
+ def valid?
22
+ super && config_ru_path.exist?
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacRailsBase1
5
- VERSION = '0.2.1'
5
+ VERSION = '0.3.0'
6
6
  end
7
7
  end
@@ -12,7 +12,7 @@ Gem::Specification.new do |s|
12
12
 
13
13
  s.files = Dir['{lib,template}/**/*']
14
14
 
15
- s.add_dependency 'avm-eac_rails_base1', '~> 0.2'
15
+ s.add_dependency 'avm-eac_rails_base1', '~> 0.3'
16
16
  s.add_dependency 'avm-eac_ubuntu_base0', '~> 0.2'
17
17
  s.add_dependency 'curb', '~> 0.9.10'
18
18
  s.add_dependency 'eac_fs', '~> 0.4'
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_rails_base1/sources/base'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module EacRedmineBase0
8
+ module Sources
9
+ class Base < ::Avm::EacRailsBase1::Sources::Base
10
+ REDMINE_LIB_SUBPATH = 'lib/redmine.rb'
11
+ SUBS_INCLUDE_PATHS_DEFAULT = ['plugins/*'].freeze
12
+
13
+ def redmine_lib_path
14
+ path.join(REDMINE_LIB_SUBPATH)
15
+ end
16
+
17
+ def subs_include_paths_default
18
+ SUBS_INCLUDE_PATHS_DEFAULT
19
+ end
20
+
21
+ def valid?
22
+ super && redmine_lib_path.exist?
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacRedmineBase0
5
- VERSION = '0.5.2'
5
+ VERSION = '0.6.1'
6
6
  end
7
7
  end
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ $LOAD_PATH.push File.expand_path('lib', __dir__)
4
+
5
+ require 'avm/eac_redmine_plugin_base0/version'
6
+
7
+ Gem::Specification.new do |s|
8
+ s.name = 'avm-eac_redmine_plugin_base0'
9
+ s.version = Avm::EacRedminePluginBase0::VERSION
10
+ s.authors = ['Eduardo H. Bogoni']
11
+ s.summary = 'E.A.C.\'s AVM base for Redmine plugins.'
12
+
13
+ s.files = Dir['{lib}/**/*']
14
+
15
+ s.add_dependency 'avm-eac_ruby_base1', '~> 0.7'
16
+ s.add_dependency 'eac_ruby_utils', '~> 0.95', '>= 0.95.1'
17
+
18
+ s.add_development_dependency 'eac_ruby_gem_support', '~> 0.5', '>= 0.5.1'
19
+ end