eac_tools 0.116.0 → 0.117.1

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 (211) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +47 -29
  3. data/eac_tools.gemspec +3 -3
  4. data/lib/eac_tools/version.rb +1 -1
  5. data/lib/eac_tools.rb +20 -23
  6. data/sub/avm/avm.gemspec +2 -2
  7. data/sub/avm/lib/avm/launcher/context/instance_discovery/source_wrapper.rb +4 -5
  8. data/sub/avm/lib/avm/sources/base/update.rb +41 -13
  9. data/sub/avm/lib/avm/sources/change.rb +22 -0
  10. data/sub/avm/lib/avm/version.rb +1 -1
  11. data/sub/avm/lib/avm.rb +7 -14
  12. data/sub/avm-eac_ruby_base1/.gitignore +2 -0
  13. data/sub/avm-eac_ruby_base1/.gitrepo +7 -0
  14. data/sub/avm-eac_ruby_base1/avm-eac_ruby_base1.gemspec +25 -0
  15. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/gemfile/add_or_replace_gem_line.rb +54 -0
  16. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/gemfile/dependency.rb +17 -0
  17. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/gemfile.rb +32 -0
  18. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/depends_on.rb +22 -0
  19. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/gem_conflict.rb +41 -0
  20. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/in_gemfile.rb +14 -0
  21. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_buffer.rb +73 -0
  22. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb +26 -0
  23. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_parser_base.rb +17 -0
  24. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/ruby_requirement.rb +13 -0
  25. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/version_requirement.rb +23 -0
  26. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser.rb +21 -0
  27. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/file_formats/base/file_resource_name.rb +44 -0
  28. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/file_formats/base.rb +19 -0
  29. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/instances/mixin.rb +24 -0
  30. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher/gem/build.rb +120 -0
  31. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher/gem/specification.rb +61 -0
  32. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base/local_project_mixin.rb +24 -0
  33. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish/internal_check.rb +70 -0
  34. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish/local_gem.rb +31 -0
  35. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish/remote_gem.rb +45 -0
  36. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish.rb +32 -0
  37. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base.rb +32 -0
  38. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/preferred_version_requirements.rb +40 -0
  39. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rspec/setup.rb +13 -0
  40. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rspec/source_generator.rb +20 -0
  41. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubocop/configured.rb +29 -0
  42. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubocop/envvar.rb +15 -0
  43. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubocop/gemfile.rb +39 -0
  44. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubocop.rb +54 -0
  45. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/gem_search_parser.rb +34 -0
  46. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/gemspec/add_or_replace_gem_line.rb +69 -0
  47. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/gemspec/dependency.rb +28 -0
  48. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/gemspec.rb +57 -0
  49. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/providers/base.rb +46 -0
  50. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/providers/nexus.rb +29 -0
  51. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/providers/rubygems_org.rb +37 -0
  52. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/remote.rb +31 -0
  53. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/version_file.rb +43 -0
  54. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/runners/base/lib_rename.rb +74 -0
  55. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/runners/base/rubocop.rb +27 -0
  56. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/runners/base.rb +14 -0
  57. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/runners.rb +8 -0
  58. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/dependencies.rb +59 -0
  59. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/gemfile_lock.rb +23 -0
  60. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/gemspec.rb +81 -0
  61. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/options.rb +32 -0
  62. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/root_module.rb +46 -0
  63. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/version_builder.rb +58 -0
  64. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base.rb +48 -0
  65. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/bundle_command.rb +35 -0
  66. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/bundler.rb +62 -0
  67. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/gem_provider.rb +46 -0
  68. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/rake.rb +39 -0
  69. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/rubocop.rb +23 -0
  70. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/rubocop_command.rb +70 -0
  71. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/rubygems.rb +50 -0
  72. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/update.rb +30 -0
  73. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/version.rb +30 -0
  74. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/version_bump.rb +16 -0
  75. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base.rb +55 -0
  76. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/bundle_update.rb +21 -0
  77. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/gemfile_local/sibling.rb +51 -0
  78. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/gemfile_local.rb +65 -0
  79. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/namespace_replacer.rb +66 -0
  80. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundle.rb +26 -0
  81. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler/gemfile_local.rb +55 -0
  82. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler/gemfile_lock/git.rb +58 -0
  83. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler/gemfile_lock.rb +87 -0
  84. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler/incompatible.rb +73 -0
  85. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler.rb +16 -0
  86. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/base.rb +57 -0
  87. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/minitest.rb +27 -0
  88. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/multiple/decorated_gem.rb +50 -0
  89. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/multiple/result.rb +29 -0
  90. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/multiple.rb +85 -0
  91. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/rspec.rb +23 -0
  92. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/update/changes/bundle_update.rb +28 -0
  93. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/update/changes/update_requirements.rb +55 -0
  94. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/update/sub_update.rb +57 -0
  95. data/sub/{avm-eac_generic_base0/lib/avm/eac_generic_base0 → avm-eac_ruby_base1/lib/avm/eac_ruby_base1}/version.rb +2 -2
  96. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1.rb +10 -0
  97. data/sub/avm-eac_ruby_base1/locale/en.yml +19 -0
  98. data/sub/avm-eac_ruby_base1/locale/pt-BR.yml +19 -0
  99. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec.rb +5 -0
  100. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/1.source.out +192 -0
  101. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/1.target.yaml +300 -0
  102. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/2.source.out +245 -0
  103. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/2.target.yaml +355 -0
  104. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/3.source.out +0 -0
  105. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/3.target.yaml +305 -0
  106. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec.rb +13 -0
  107. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files/Gemfile.source +6 -0
  108. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files/Gemfile.target +3 -0
  109. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files/ruby_code.rb.source +6 -0
  110. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files/ruby_code.rb.target +5 -0
  111. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher/gem/build_spec.rb +43 -0
  112. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher/gem/specification_spec.rb +57 -0
  113. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish_spec.rb +25 -0
  114. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher_stereotypes/base_spec.rb +21 -0
  115. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/preferred_version_requirements_spec.rb +21 -0
  116. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gem_search_parser_spec.rb +5 -0
  117. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gem_search_parser_spec_files/empty.source +1 -0
  118. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gem_search_parser_spec_files/empty.target.yaml +1 -0
  119. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gem_search_parser_spec_files/many_versions.source +1 -0
  120. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gem_search_parser_spec_files/many_versions.target.yaml +123 -0
  121. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gemspec_spec.rb +35 -0
  122. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gemspec_spec_files/changes1.source.yaml +5 -0
  123. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gemspec_spec_files/changes1.target.txt +15 -0
  124. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gemspec_spec_files/the_gem.gemspec +15 -0
  125. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/version_file_spec.rb +13 -0
  126. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/version_file_spec_files/a_version_file.rb +7 -0
  127. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec.rb +33 -0
  128. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec_files/dir1/.avm.yml +4 -0
  129. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec_files/dir1/dir3/Gemfile +5 -0
  130. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec_files/dir1/dir3/Gemfile.lock +27 -0
  131. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec_files/dir2/empty.rb +1 -0
  132. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec_files/dir4/.avm.yml +4 -0
  133. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec_files/dir4/false_command.rb +4 -0
  134. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec.rb +16 -0
  135. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/.rspec +1 -0
  136. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/.rubocop.yml +3 -0
  137. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/Gemfile +8 -0
  138. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/Gemfile.lock +1 -0
  139. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/_gitignore +2 -0
  140. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/dashed-mygem.gemspec +20 -0
  141. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/lib/dashed/mygem/version.rb +7 -0
  142. data/sub/{avm-eac_generic_base0/lib/avm/eac_generic_base0.rb → avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/lib/dashed/mygem.rb} +2 -4
  143. data/sub/{avm-eac_generic_base0 → avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem}/spec/spec_helper.rb +1 -1
  144. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/.rspec +1 -0
  145. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/.rubocop.yml +3 -0
  146. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/Gemfile +8 -0
  147. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/Gemfile.lock +1 -0
  148. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/_gitignore +2 -0
  149. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/lib/mygem/version.rb +5 -0
  150. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/lib/mygem.rb +7 -0
  151. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/mygem.gemspec +20 -0
  152. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/spec/meta/rubocop_spec.rb +3 -0
  153. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/spec/spec_helper.rb +5 -0
  154. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec.rb +28 -0
  155. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/Gemfile +5 -0
  156. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/Gemfile.lock +19 -0
  157. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/Rakefile +14 -0
  158. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/exe/myrunner +5 -0
  159. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/lib/mygem/version.rb +5 -0
  160. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/lib/mygem.rb +7 -0
  161. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/mygem.gemspec +17 -0
  162. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base_spec.rb +13 -0
  163. data/sub/avm-eac_ruby_base1/spec/meta/rubocop_spec.rb +3 -0
  164. data/sub/avm-eac_ruby_base1/spec/spec_helper.rb +5 -0
  165. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/gemspec.template +19 -0
  166. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/root_lib.template +8 -0
  167. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/static/.gitignore +2 -0
  168. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/static/.rspec +1 -0
  169. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/static/.rubocop.yml +3 -0
  170. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/static/Gemfile +8 -0
  171. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/static/spec/meta/rubocop_spec.rb +3 -0
  172. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/static/spec/spec_helper.rb.template +5 -0
  173. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/version.template +5 -0
  174. data/sub/eac_ruby_base1/.gitignore +2 -0
  175. data/sub/eac_ruby_base1/.rspec +1 -0
  176. data/sub/eac_ruby_base1/.rubocop.yml +3 -0
  177. data/sub/eac_ruby_base1/Gemfile +8 -0
  178. data/sub/eac_ruby_base1/eac_ruby_base1.gemspec +21 -0
  179. data/sub/eac_ruby_base1/lib/eac_ruby_base1/root_module_setup/ignore.rb +57 -0
  180. data/sub/eac_ruby_base1/lib/eac_ruby_base1/root_module_setup/patches.rb +19 -0
  181. data/sub/eac_ruby_base1/lib/eac_ruby_base1/root_module_setup/paths.rb +38 -0
  182. data/sub/eac_ruby_base1/lib/eac_ruby_base1/root_module_setup/require_patch.rb +44 -0
  183. data/sub/eac_ruby_base1/lib/eac_ruby_base1/root_module_setup/requires.rb +25 -0
  184. data/sub/eac_ruby_base1/lib/eac_ruby_base1/root_module_setup/zeitwerk.rb +35 -0
  185. data/sub/eac_ruby_base1/lib/eac_ruby_base1/root_module_setup.rb +68 -0
  186. data/sub/eac_ruby_base1/lib/eac_ruby_base1/version.rb +5 -0
  187. data/sub/eac_ruby_base1/lib/eac_ruby_base1.rb +5 -0
  188. data/sub/eac_ruby_base1/spec/lib/eac_ruby_base1/root_module_setup_spec.rb +43 -0
  189. data/sub/eac_ruby_base1/spec/meta/rubocop_spec.rb +3 -0
  190. data/sub/eac_ruby_base1/spec/spec_helper.rb +5 -0
  191. metadata +201 -34
  192. data/sub/avm-eac_generic_base0/.gitignore +0 -2
  193. data/sub/avm-eac_generic_base0/.gitrepo +0 -7
  194. data/sub/avm-eac_generic_base0/avm-eac_generic_base0.gemspec +0 -21
  195. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/file_formats/base/apply.rb +0 -29
  196. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/file_formats/base/file_resource_name_helper.rb +0 -21
  197. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/file_formats/base/match.rb +0 -65
  198. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/file_formats/base.rb +0 -38
  199. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/instances/base.rb +0 -10
  200. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/sources/base.rb +0 -40
  201. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/sources/docker/runner.rb +0 -59
  202. data/sub/avm-eac_generic_base0/locale/en.yml +0 -6
  203. data/sub/avm-eac_generic_base0/locale/pt-BR.yml +0 -6
  204. data/sub/avm-eac_generic_base0/spec/lib/avm/eac_generic_base0/file_formats/base_spec.rb +0 -5
  205. data/sub/avm-eac_generic_base0/spec/lib/avm/eac_generic_base0/file_formats/base_spec_files/plain_text.source +0 -3
  206. data/sub/avm-eac_generic_base0/spec/lib/avm/eac_generic_base0/file_formats/base_spec_files/plain_text.target +0 -3
  207. data/sub/avm-eac_generic_base0/spec/lib/avm/eac_generic_base0/sources/base_spec.rb +0 -5
  208. /data/sub/{avm-eac_generic_base0 → avm-eac_ruby_base1}/.rspec +0 -0
  209. /data/sub/{avm-eac_generic_base0 → avm-eac_ruby_base1}/.rubocop.yml +0 -0
  210. /data/sub/{avm-eac_generic_base0 → avm-eac_ruby_base1}/Gemfile +0 -0
  211. /data/sub/{avm-eac_generic_base0/spec → avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/spec/meta}/rubocop_spec.rb +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 12cba04d2fca4d8decd2065f615918155947c6f0b9d08b52ac3d55d12f189dc2
4
- data.tar.gz: ac8a37832d991d81e8dd685d95fb2ec2a844275ef555c54da5df40c0f43b9739
3
+ metadata.gz: ed17f64b0390b9d8c245956b52c46118f6af9eb3a03230a9dfd83bb7f3d8740e
4
+ data.tar.gz: 50c8ba6842151ffcd3a6d64325aac04fcaf35efa6b9cda2d20f7ee144c9e462a
5
5
  SHA512:
6
- metadata.gz: 39eb9e006d4a8fa38366e5164c4dab73aac8f8345a66aa8f80fdca15ce0f43ac01428ebae510ce6e8132e1875289497d24fc8f84ba29f8c0bfa1058da08825b0
7
- data.tar.gz: 97fa9487da030ebcf7ddc6ec3970c4f7d3c69302309e2c0867951e8f04aa5b0acef5132a2012c60711910b07a33c45e9b102a379a9db10159ab0d00f5b097f93
6
+ metadata.gz: a0829dfb5a330f68c17f681e0aa7186e1aa52887dae57598d4cb88ebb498a9d782e41b46e7ee333a79edfdc6b8f17cf512633f05833d3dd8e6ac89c103878881
7
+ data.tar.gz: e161ff0140a23d28e511575329ea51555ded491c7c39a46f48fd01eb155527dcb47c612d525a4a5677f993174443ff9ec942d9ad9208d41c2b9318ee52343081
data/Gemfile.lock CHANGED
@@ -1,8 +1,8 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- eac_tools (0.116.0)
5
- avm (~> 0.101)
4
+ eac_tools (0.117.1)
5
+ avm (~> 0.102, >= 0.102.1)
6
6
  avm-eac_asciidoctor_base0 (~> 0.27)
7
7
  avm-eac_generic_base0 (~> 0.15, >= 0.15.3)
8
8
  avm-eac_github_base0 (~> 0.4, >= 0.4.1)
@@ -16,41 +16,57 @@ PATH
16
16
  avm-eac_redmine_base0 (~> 0.26)
17
17
  avm-eac_redmine_plugin_base0 (~> 0.5)
18
18
  avm-eac_ruby_base0 (~> 0.2, >= 0.2.1)
19
- avm-eac_ruby_base1 (~> 0.41, >= 0.41.1)
19
+ avm-eac_ruby_base1 (~> 0.42, >= 0.42.1)
20
20
  avm-eac_webapp_base0 (~> 0.22, >= 0.22.2)
21
21
  avm-eac_wordpress_base0 (~> 0.3, >= 0.3.2)
22
22
  avm-git (~> 0.21, >= 0.21.2)
23
23
  avm-tools (~> 0.164)
24
- eac_ruby_utils (~> 0.131)
24
+ eac_ruby_base1 (~> 0.1)
25
25
 
26
26
  PATH
27
- remote: sub/avm-eac_generic_base0
27
+ remote: sub/avm-eac_ruby_base1
28
28
  specs:
29
- avm-eac_generic_base0 (0.15.3)
30
- avm (~> 0.100)
31
- eac_ruby_utils (~> 0.131)
29
+ avm-eac_ruby_base1 (0.42.1)
30
+ aranha-parsers (~> 0.29)
31
+ avm (~> 0.102, >= 0.102.1)
32
+ avm-eac_generic_base0 (~> 0.15, >= 0.15.3)
33
+ eac_envs-http (~> 0.7, >= 0.7.1)
34
+ eac_ruby_base1 (~> 0.1)
32
35
 
33
36
  PATH
34
37
  remote: sub/avm
35
38
  specs:
36
- avm (0.101.0)
39
+ avm (0.102.1)
37
40
  eac_cli (~> 0.47)
38
41
  eac_config (~> 0.15)
39
42
  eac_docker (~> 0.8)
40
43
  eac_fs (~> 0.20, >= 0.20.2)
41
- eac_ruby_utils (~> 0.131)
44
+ eac_ruby_base1 (~> 0.1)
42
45
  eac_templates (~> 0.8, >= 0.8.3)
43
46
  minitar (~> 0.12, >= 0.12.1)
44
47
 
48
+ PATH
49
+ remote: sub/eac_ruby_base1
50
+ specs:
51
+ eac_ruby_base1 (0.1.0)
52
+ eac_ruby_utils (~> 0.131, >= 0.131.1)
53
+
45
54
  GEM
46
55
  remote: https://rubygems.org/
47
56
  specs:
48
- activesupport (6.1.7.10)
49
- concurrent-ruby (~> 1.0, >= 1.0.2)
57
+ activesupport (8.1.3)
58
+ base64
59
+ bigdecimal
60
+ concurrent-ruby (~> 1.0, >= 1.3.1)
61
+ connection_pool (>= 2.2.5)
62
+ drb
50
63
  i18n (>= 1.6, < 2)
64
+ json
65
+ logger (>= 1.4.2)
51
66
  minitest (>= 5.1)
52
- tzinfo (~> 2.0)
53
- zeitwerk (~> 2.3)
67
+ securerandom (>= 0.3)
68
+ tzinfo (~> 2.0, >= 2.0.5)
69
+ uri (>= 0.13.1)
54
70
  addressable (2.9.0)
55
71
  public_suffix (>= 2.0.2, < 8.0)
56
72
  aranha (0.20.0)
@@ -72,6 +88,9 @@ GEM
72
88
  eac_ruby_utils (~> 0.130)
73
89
  os (~> 1.1, >= 1.1.4)
74
90
  rouge (~> 3.30)
91
+ avm-eac_generic_base0 (0.15.3)
92
+ avm (~> 0.100)
93
+ eac_ruby_utils (~> 0.131)
75
94
  avm-eac_github_base0 (0.4.1)
76
95
  avm (~> 0.98, >= 0.98.5)
77
96
  avm-git (~> 0.21, >= 0.21.2)
@@ -116,12 +135,6 @@ GEM
116
135
  avm-eac_ruby_base0 (0.2.1)
117
136
  avm-eac_ruby_base1 (~> 0.41)
118
137
  eac_ruby_utils (~> 0.131)
119
- avm-eac_ruby_base1 (0.41.1)
120
- aranha-parsers (~> 0.27)
121
- avm (~> 0.100)
122
- avm-eac_generic_base0 (~> 0.15, >= 0.15.2)
123
- eac_envs-http (~> 0.7, >= 0.7.1)
124
- eac_ruby_utils (~> 0.131)
125
138
  avm-eac_ubuntu_base0 (0.7.0)
126
139
  avm (~> 0.98, >= 0.98.2)
127
140
  eac_ruby_utils (~> 0.128, >= 0.128.6)
@@ -146,9 +159,12 @@ GEM
146
159
  avm-tools (0.164.0)
147
160
  avm (~> 0.98, >= 0.98.5)
148
161
  eac_ruby_base0 (~> 0.19, >= 0.19.3)
162
+ base64 (0.3.0)
163
+ bigdecimal (4.1.2)
149
164
  clipboard (2.0.0)
150
165
  colorize (0.8.1)
151
166
  concurrent-ruby (1.3.7)
167
+ connection_pool (3.0.2)
152
168
  content-type (0.0.2)
153
169
  parslet (~> 2.0)
154
170
  diff-lcs (1.6.2)
@@ -199,8 +215,8 @@ GEM
199
215
  rubocop-rails (~> 2.34, >= 2.34.3)
200
216
  rubocop-rspec (~> 3.9)
201
217
  super_diff (~> 0.19)
202
- eac_ruby_utils (0.131.0)
203
- activesupport (>= 4, < 7)
218
+ eac_ruby_utils (0.131.1)
219
+ activesupport (>= 6.1.7.10)
204
220
  addressable (~> 2.9)
205
221
  bundler
206
222
  memoized (~> 1.1, >= 1.1.3)
@@ -231,8 +247,8 @@ GEM
231
247
  htmlbeautifier (1.4.3)
232
248
  i18n (1.15.2)
233
249
  concurrent-ruby (~> 1.0)
234
- json (2.20.0)
235
- language_server-protocol (3.17.0.5)
250
+ json (2.21.1)
251
+ language_server-protocol (3.17.0.6)
236
252
  lint_roller (1.1.0)
237
253
  logger (1.7.0)
238
254
  memoized (1.1.3)
@@ -250,7 +266,7 @@ GEM
250
266
  os (1.1.4)
251
267
  parallel (1.28.0)
252
268
  parseconfig (1.1.2)
253
- parser (3.3.11.1)
269
+ parser (3.3.12.0)
254
270
  ast (~> 2.4.1)
255
271
  racc
256
272
  parslet (2.0.0)
@@ -281,7 +297,7 @@ GEM
281
297
  diff-lcs (>= 1.2.0, < 2.0)
282
298
  rspec-support (~> 3.13.0)
283
299
  rspec-support (3.13.7)
284
- rubocop (1.88.0)
300
+ rubocop (1.88.2)
285
301
  json (~> 2.3)
286
302
  language_server-protocol (~> 3.17.0.2)
287
303
  lint_roller (~> 1.1.0)
@@ -292,10 +308,10 @@ GEM
292
308
  rubocop-ast (>= 1.49.0, < 2.0)
293
309
  ruby-progressbar (~> 1.7)
294
310
  unicode-display_width (>= 2.4.0, < 4.0)
295
- rubocop-ast (1.49.1)
311
+ rubocop-ast (1.50.0)
296
312
  parser (>= 3.3.7.2)
297
313
  prism (~> 1.7)
298
- rubocop-rails (2.35.5)
314
+ rubocop-rails (2.36.0)
299
315
  activesupport (>= 4.2.0)
300
316
  lint_roller (~> 1.1)
301
317
  rack (>= 1.1)
@@ -307,6 +323,7 @@ GEM
307
323
  rubocop (~> 1.86, >= 1.86.2)
308
324
  ruby-filemagic (0.7.3)
309
325
  ruby-progressbar (1.13.0)
326
+ securerandom (0.4.1)
310
327
  strings (0.2.1)
311
328
  strings-ansi (~> 0.2)
312
329
  unicode-display_width (>= 1.5, < 3.0)
@@ -337,7 +354,8 @@ PLATFORMS
337
354
 
338
355
  DEPENDENCIES
339
356
  avm!
340
- avm-eac_generic_base0!
357
+ avm-eac_ruby_base1!
358
+ eac_ruby_base1!
341
359
  eac_ruby_gem_support (~> 0.13)
342
360
  eac_tools!
343
361
 
data/eac_tools.gemspec CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |s|
18
18
 
19
19
  s.required_ruby_version = '>= 3.2'
20
20
 
21
- s.add_dependency 'avm', '~> 0.101'
21
+ s.add_dependency 'avm', '~> 0.102', '>= 0.102.1'
22
22
  s.add_dependency 'avm-eac_asciidoctor_base0', '~> 0.27'
23
23
  s.add_dependency 'avm-eac_generic_base0', '~> 0.15', '>= 0.15.3'
24
24
  s.add_dependency 'avm-eac_github_base0', '~> 0.4', '>= 0.4.1'
@@ -32,12 +32,12 @@ Gem::Specification.new do |s|
32
32
  s.add_dependency 'avm-eac_redmine_base0', '~> 0.26'
33
33
  s.add_dependency 'avm-eac_redmine_plugin_base0', '~> 0.5'
34
34
  s.add_dependency 'avm-eac_ruby_base0', '~> 0.2', '>= 0.2.1'
35
- s.add_dependency 'avm-eac_ruby_base1', '~> 0.41', '>= 0.41.1'
35
+ s.add_dependency 'avm-eac_ruby_base1', '~> 0.42', '>= 0.42.1'
36
36
  s.add_dependency 'avm-eac_webapp_base0', '~> 0.22', '>= 0.22.2'
37
37
  s.add_dependency 'avm-eac_wordpress_base0', '~> 0.3', '>= 0.3.2'
38
38
  s.add_dependency 'avm-git', '~> 0.21', '>= 0.21.2'
39
39
  s.add_dependency 'avm-tools', '~> 0.164'
40
- s.add_dependency 'eac_ruby_utils', '~> 0.131'
40
+ s.add_dependency 'eac_ruby_base1', '~> 0.1'
41
41
 
42
42
  s.add_development_dependency 'eac_ruby_gem_support', '~> 0.13'
43
43
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacTools
4
- VERSION = '0.116.0'
4
+ VERSION = '0.117.1'
5
5
  end
data/lib/eac_tools.rb CHANGED
@@ -1,26 +1,23 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'eac_ruby_utils'
4
- EacRubyUtils::RootModuleSetup.perform __FILE__
5
-
6
- require 'avm/eac_asciidoctor_base0'
7
- require 'avm/eac_generic_base0'
8
- require 'avm/eac_github_base0'
9
- require 'avm/eac_gitlab_base0'
10
- require 'avm/eac_latex_base0'
11
- require 'avm/eac_php_base0'
12
- require 'avm/eac_postgresql_base0'
13
- require 'avm/eac_python_base0'
14
- require 'avm/eac_rails_base0'
15
- require 'avm/eac_rails_base1'
16
- require 'avm/eac_redmine_base0'
17
- require 'avm/eac_redmine_plugin_base0'
18
- require 'avm/eac_ruby_base0'
19
- require 'avm/eac_ruby_base1'
20
- require 'avm/eac_webapp_base0'
21
- require 'avm/eac_wordpress_base0'
22
- require 'avm/git'
23
- require 'avm/tools'
24
-
25
- module EacTools
3
+ require 'eac_ruby_base1'
4
+ EacRubyBase1::RootModuleSetup.perform __FILE__ do
5
+ require 'avm/eac_asciidoctor_base0'
6
+ require 'avm/eac_generic_base0'
7
+ require 'avm/eac_github_base0'
8
+ require 'avm/eac_gitlab_base0'
9
+ require 'avm/eac_latex_base0'
10
+ require 'avm/eac_php_base0'
11
+ require 'avm/eac_postgresql_base0'
12
+ require 'avm/eac_python_base0'
13
+ require 'avm/eac_rails_base0'
14
+ require 'avm/eac_rails_base1'
15
+ require 'avm/eac_redmine_base0'
16
+ require 'avm/eac_redmine_plugin_base0'
17
+ require 'avm/eac_ruby_base0'
18
+ require 'avm/eac_ruby_base1'
19
+ require 'avm/eac_webapp_base0'
20
+ require 'avm/eac_wordpress_base0'
21
+ require 'avm/git'
22
+ require 'avm/tools'
26
23
  end
data/sub/avm/avm.gemspec CHANGED
@@ -18,11 +18,11 @@ Gem::Specification.new do |s|
18
18
  s.add_dependency 'eac_config', '~> 0.15'
19
19
  s.add_dependency 'eac_docker', '~> 0.8'
20
20
  s.add_dependency 'eac_fs', '~> 0.20', '>= 0.20.2'
21
- s.add_dependency 'eac_ruby_utils', '~> 0.131'
21
+ s.add_dependency 'eac_ruby_base1', '~> 0.1'
22
22
  s.add_dependency 'eac_templates', '~> 0.8', '>= 0.8.3'
23
23
  s.add_dependency 'minitar', '~> 0.12', '>= 0.12.1'
24
24
 
25
- s.add_development_dependency 'avm-eac_ruby_base1', '~> 0.41', '>= 0.41.1'
25
+ s.add_development_dependency 'avm-eac_ruby_base1', '~> 0.42'
26
26
  s.add_development_dependency 'avm-git', '~> 0.21', '>= 0.21.2'
27
27
  s.add_development_dependency 'eac_ruby_gem_support', '~> 0.13'
28
28
  end
@@ -7,7 +7,7 @@ module Avm
7
7
  class Context
8
8
  class InstanceDiscovery
9
9
  class SourceWrapper
10
- enable_simple_cache
10
+ enable_memoized
11
11
  enable_speaker
12
12
 
13
13
  common_constructor :owner, :logical_path, :parent_project
@@ -24,9 +24,10 @@ module Avm
24
24
  end
25
25
 
26
26
  # @return [Avm::Launcher::Instances::Base, nil]
27
- def self_project
27
+ memoize def self_project
28
28
  return nil unless logical_path.project?
29
29
 
30
+ infov logical_path, logical_path.real
30
31
  ::Avm::Launcher::Instances::Base.instanciate(logical_path,
31
32
  parent_project)
32
33
  end
@@ -49,10 +50,8 @@ module Avm
49
50
  []
50
51
  end
51
52
 
52
- protected
53
-
54
53
  # @return [Avm::Sources::Base]
55
- def warped_source_uncached
54
+ memoize def warped_source
56
55
  ::Avm::Registry.sources.detect(logical_path.warped)
57
56
  end
58
57
  end
@@ -4,32 +4,60 @@ module Avm
4
4
  module Sources
5
5
  class Base
6
6
  module Update
7
+ common_concern do
8
+ enable_speaker
9
+ end
10
+
7
11
  # To override in subclasses.
8
12
  def on_sub_updated
9
13
  # Do nothing
10
14
  end
11
15
 
16
+ # @return [void]
12
17
  def update
13
- update_self
18
+ update_self_before_subs
14
19
  update_subs
20
+ update_self_after_subs
15
21
  end
16
22
 
17
- def update_self
18
- scm.commit_if_change(-> { update_self_commit_message }) do
19
- update_self_content
20
- parent.if_present(&:on_sub_updated)
21
- end
23
+ # @param changes [Enumerable<Avm::Sources::Change>]
24
+ # @return [void]
25
+ def update_self(changes)
26
+ changes.each { |change| update_self_with_change(change) }
22
27
  end
23
28
 
24
- # Update source self content.
25
- #
26
- # To override in subclasses.
27
- def update_self_content
28
- # Do nothing
29
+ # @return [void]
30
+ def update_self_after_subs
31
+ infov __method__, self
32
+ update_self(update_self_changes_after_subs)
33
+ end
34
+
35
+ # @return [void]
36
+ def update_self_before_subs
37
+ infov __method__, self
38
+ update_self(update_self_changes_before_subs)
39
+ end
40
+
41
+ # Changes for update after subs' updating.
42
+ # @return [Enumerable<Avm::Sources::Change>]
43
+ def update_self_changes_after_subs
44
+ []
29
45
  end
30
46
 
31
- def update_self_commit_message
32
- i18n_translate(__method__)
47
+ # Changes for update before subs' updating.
48
+ # @return [Enumerable<Avm::Sources::Change>]
49
+ def update_self_changes_before_subs
50
+ []
51
+ end
52
+
53
+ # @param change [Avm::Sources::Change]
54
+ # @return [void]
55
+ def update_self_with_change(change)
56
+ infov 'Performing change', change
57
+ scm.commit_if_change(-> { change.commit_message }) do
58
+ change.perform
59
+ parent.if_present(&:on_sub_updated)
60
+ end
33
61
  end
34
62
  end
35
63
  end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Sources
5
+ class Change
6
+ acts_as_abstract
7
+ common_constructor :source
8
+
9
+ # Message for the commit.
10
+ # @return [String]
11
+ def commit_message
12
+ i18n_translate(__method__)
13
+ end
14
+
15
+ # Apply the changes to the source.
16
+ # @return [void]
17
+ def perform
18
+ raise_abstract_method __method__
19
+ end
20
+ end
21
+ end
22
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Avm
4
- VERSION = '0.101.0'
4
+ VERSION = '0.102.1'
5
5
  end
data/sub/avm/lib/avm.rb CHANGED
@@ -1,18 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'eac_ruby_utils'
4
- EacRubyUtils::RootModuleSetup.perform __FILE__ do
5
- ignore 'patches/eac_config/entry_path'
3
+ require 'eac_ruby_base1'
4
+ EacRubyBase1::RootModuleSetup.perform __FILE__ do
6
5
  ignore 'rspec/shared_examples/*'
6
+ require 'eac_docker'
7
+ require 'eac_fs'
8
+ require 'eac_cli'
9
+ require 'eac_config'
10
+ require 'rspec'
7
11
  end
8
-
9
- module Avm
10
- end
11
-
12
- require 'eac_docker'
13
- require 'eac_fs'
14
- require 'eac_cli'
15
- require 'eac_config'
16
- require 'rspec'
17
-
18
- require 'avm/patches/eac_config/entry_path'
@@ -0,0 +1,2 @@
1
+ /Gemfile.local
2
+ /Gemfile.lock
@@ -0,0 +1,7 @@
1
+ [subrepo]
2
+ cmdver = 0.4.9
3
+ commit = 3e1b3f87d7d8296504ccf506db546bc52ef492ee
4
+ method = merge
5
+ parent = 8877b6b4c21c1d4e50c213f03816288681485ce5
6
+ branch = master
7
+ remote = https://github.com/esquilo-azul/avm-eac_ruby_base1.git
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ $LOAD_PATH.push File.expand_path('lib', __dir__)
4
+
5
+ require 'avm/eac_ruby_base1/version'
6
+
7
+ Gem::Specification.new do |s|
8
+ s.name = 'avm-eac_ruby_base1'
9
+ s.version = Avm::EacRubyBase1::VERSION
10
+ s.authors = ['Put here the authors']
11
+ s.summary = 'Put here de description.'
12
+
13
+ s.add_dependency 'aranha-parsers', '~> 0.29'
14
+
15
+ s.files = Dir.glob('{lib,locale,template}/**/*', File::FNM_DOTMATCH)
16
+ .reject { |f| ['.', '..'].include?(File.basename(f)) }
17
+ s.required_ruby_version = '>= 3.2'
18
+
19
+ s.add_dependency 'avm', '~> 0.102', '>= 0.102.1'
20
+ s.add_dependency 'avm-eac_generic_base0', '~> 0.15', '>= 0.15.3'
21
+ s.add_dependency 'eac_envs-http', '~> 0.7', '>= 0.7.1'
22
+ s.add_dependency 'eac_ruby_base1', '~> 0.1'
23
+
24
+ s.add_development_dependency 'eac_ruby_gem_support', '~> 0.13'
25
+ end
@@ -0,0 +1,54 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module Bundler
6
+ class Gemfile
7
+ class AddOrReplaceGemLine
8
+ enable_method_class
9
+ common_constructor :sender, :gem_name, :gem_specs
10
+ delegate :lines, to: :sender
11
+
12
+ def existing_gem_line_index
13
+ lines.index { |line| line.start_with?(gem_line_prefix) }
14
+ end
15
+
16
+ def result
17
+ if existing_gem_line_index.present?
18
+ replace_line
19
+ else
20
+ add_line
21
+ end
22
+ end
23
+
24
+ def add_line
25
+ lines.insert(add_line_index, new_gem_line)
26
+ end
27
+
28
+ def add_line_index
29
+ (gems_lines_start_index..(lines.count - 1)).each do |e|
30
+ return e if new_gem_line < lines[e]
31
+ end
32
+ lines.count
33
+ end
34
+
35
+ def gems_lines_start_index
36
+ lines.index { |line| line.start_with?('gem ') } || lines.count
37
+ end
38
+
39
+ def new_gem_line
40
+ ([gem_line_prefix] + gem_specs).join(', ')
41
+ end
42
+
43
+ def gem_line_prefix
44
+ "gem '#{gem_name}'"
45
+ end
46
+
47
+ def replace_line
48
+ lines[existing_gem_line_index] = new_gem_line
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module Bundler
6
+ class Gemfile
7
+ class Dependency
8
+ common_constructor :gemfile, :gem_name
9
+
10
+ def version_specs=(version_specs)
11
+ gemfile.add_or_replace_gem_line(gem_name, version_specs)
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module Bundler
6
+ class Gemfile
7
+ require_sub __FILE__, require_mode: :kernel
8
+
9
+ class << self
10
+ def from_file(path)
11
+ new(path.read.each_line.map(&:rstrip))
12
+ end
13
+ end
14
+
15
+ common_constructor :lines
16
+
17
+ # @return [Avm::EacRubyBase1::Bundler::Gemfile::Dependency]
18
+ def dependency(gem_name)
19
+ ::Avm::EacRubyBase1::Bundler::Gemfile::Dependency.new(self, gem_name)
20
+ end
21
+
22
+ def write(path)
23
+ path.to_pathname.write(to_text)
24
+ end
25
+
26
+ def to_text
27
+ lines.map { |line| "#{line}\n" }.join
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module Bundler
6
+ class IncompatibleParser
7
+ class DependsOn < ::Avm::EacRubyBase1::Bundler::IncompatibleParser::LineParserBase
8
+ LINE_PARSER = /(.+) was resolved to (.+), which depends on/
9
+ .to_parser { |m| new(m[1], m[2]) }
10
+
11
+ common_constructor :gem_name, :version do
12
+ self.version = ::Gem::Version.new(version)
13
+ end
14
+
15
+ def data
16
+ { gem_name: gem_name, version: version }
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module Bundler
6
+ class IncompatibleParser
7
+ class GemConflict < ::Avm::EacRubyBase1::Bundler::IncompatibleParser::LineParserBase
8
+ LINE_PARSER = /Bundler could not find compatible versions for gem "(.+)":/
9
+ .to_parser { |m| new(m[1]) }
10
+
11
+ enable_simple_cache
12
+ common_constructor :gem_name
13
+
14
+ def add_depends_on(depends_on)
15
+ depends_on_stack << depends_on
16
+ end
17
+
18
+ def add_version_requirement(version_requirement)
19
+ version_requirement.stack = depends_on_stack
20
+ versions_requirements << version_requirement
21
+ @depends_on_stack = nil
22
+ end
23
+
24
+ def data
25
+ { gem_name: gem_name, versions_requirements: versions_requirements.map(&:data) }
26
+ end
27
+
28
+ def versions_requirements
29
+ @versions_requirements ||= []
30
+ end
31
+
32
+ private
33
+
34
+ def depends_on_stack
35
+ @depends_on_stack ||= []
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end