eac_tools 0.112.0 → 0.113.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 (313) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +64 -74
  3. data/eac_tools.gemspec +6 -6
  4. data/lib/eac_tools/version.rb +1 -1
  5. data/sub/avm/avm.gemspec +4 -3
  6. data/sub/avm/lib/avm/rspec/shared_examples/avm_source_generated.rb +4 -0
  7. data/sub/avm/lib/avm/version.rb +1 -1
  8. data/sub/avm-eac_ruby_base0/avm-eac_ruby_base0.gemspec +21 -0
  9. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/rspec/setup.rb +13 -0
  10. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/rspec/source_generator.rb +31 -0
  11. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/source_generators/base/application.rb +33 -0
  12. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/source_generators/base/executable.rb +29 -0
  13. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/source_generators/base/runner.rb +33 -0
  14. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/source_generators/base.rb +49 -0
  15. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/sources/base/executable.rb +59 -0
  16. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/sources/base.rb +16 -0
  17. data/sub/{avm-eac_webapp_base0/lib/avm/eac_webapp_base0 → avm-eac_ruby_base0/lib/avm/eac_ruby_base0}/version.rb +2 -2
  18. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0.rb +11 -0
  19. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec.rb +42 -0
  20. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/Gemfile.lock +108 -0
  21. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/_gitignore +2 -0
  22. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/dashed-mygem.gemspec +24 -0
  23. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/exe/dashed-mygem +6 -0
  24. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/lib/dashed/mygem/runner.rb +17 -0
  25. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/lib/dashed/mygem/self.rb +13 -0
  26. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/lib/dashed/mygem/version.rb +7 -0
  27. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/lib/dashed/mygem.rb +11 -0
  28. data/sub/{avm-tools/lib/avm/tools/core_ext.rb → avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/lib/dashed.rb} +3 -0
  29. data/sub/{avm-tools → avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem}/spec/spec_helper.rb +1 -3
  30. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/Gemfile +8 -0
  31. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/Gemfile.lock +108 -0
  32. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/_gitignore +2 -0
  33. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/exe/mygem_underscore +6 -0
  34. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/lib/mygem_underscore/runner.rb +15 -0
  35. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/lib/mygem_underscore/self.rb +11 -0
  36. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/lib/mygem_underscore/version.rb +5 -0
  37. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/lib/mygem_underscore.rb +9 -0
  38. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/mygem_underscore.gemspec +24 -0
  39. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/spec/spec_helper.rb +5 -0
  40. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/sources/base_spec.rb +13 -0
  41. data/sub/avm-eac_ruby_base0/spec/meta/rubocop_spec.rb +3 -0
  42. data/sub/{avm-eac_webapp_base0 → avm-eac_ruby_base0}/spec/spec_helper.rb +1 -1
  43. data/sub/avm-eac_ruby_base0/template/avm/eac_ruby_base0/source_generators/base/application.template +11 -0
  44. data/sub/avm-eac_ruby_base0/template/avm/eac_ruby_base0/source_generators/base/executable.template +6 -0
  45. data/sub/avm-eac_ruby_base0/template/avm/eac_ruby_base0/source_generators/base/runner.template +15 -0
  46. data/sub/avm-eac_ruby_base1/Gemfile +8 -0
  47. data/sub/{avm-eac_webapp_base0/avm-eac_webapp_base0.gemspec → avm-eac_ruby_base1/avm-eac_ruby_base1.gemspec} +9 -8
  48. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/gemfile/add_or_replace_gem_line.rb +54 -0
  49. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/gemfile/dependency.rb +17 -0
  50. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/gemfile.rb +32 -0
  51. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/depends_on.rb +22 -0
  52. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/gem_conflict.rb +41 -0
  53. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/in_gemfile.rb +14 -0
  54. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_buffer.rb +73 -0
  55. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb +26 -0
  56. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_parser_base.rb +17 -0
  57. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/ruby_requirement.rb +13 -0
  58. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/version_requirement.rb +23 -0
  59. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser.rb +21 -0
  60. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/file_formats/base/file_resource_name.rb +44 -0
  61. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/file_formats/base.rb +19 -0
  62. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/instances/mixin.rb +24 -0
  63. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher/gem/build.rb +120 -0
  64. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher/gem/specification.rb +61 -0
  65. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base/local_project_mixin.rb +24 -0
  66. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish/internal_check.rb +70 -0
  67. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish/local_gem.rb +31 -0
  68. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish/remote_gem.rb +45 -0
  69. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish.rb +32 -0
  70. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base.rb +32 -0
  71. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/preferred_version_requirements.rb +40 -0
  72. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rspec/setup.rb +13 -0
  73. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rspec/source_generator.rb +20 -0
  74. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubocop/configured.rb +29 -0
  75. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubocop/envvar.rb +15 -0
  76. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubocop/gemfile.rb +39 -0
  77. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubocop.rb +54 -0
  78. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/gem_search_parser.rb +34 -0
  79. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/gemspec/add_or_replace_gem_line.rb +69 -0
  80. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/gemspec/dependency.rb +23 -0
  81. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/gemspec.rb +57 -0
  82. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/providers/base.rb +46 -0
  83. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/providers/nexus.rb +29 -0
  84. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/providers/rubygems_org.rb +37 -0
  85. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/remote.rb +31 -0
  86. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/version_file.rb +43 -0
  87. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/runners/base/lib_rename.rb +74 -0
  88. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/runners/base/rubocop.rb +27 -0
  89. data/sub/{avm-tools/lib/avm/tools/runner/applications.rb → avm-eac_ruby_base1/lib/avm/eac_ruby_base1/runners/base.rb} +4 -3
  90. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/runners.rb +8 -0
  91. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/dependencies.rb +59 -0
  92. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/gemfile_lock.rb +23 -0
  93. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/gemspec.rb +81 -0
  94. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/options.rb +32 -0
  95. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/root_module.rb +46 -0
  96. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/version_builder.rb +58 -0
  97. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base.rb +48 -0
  98. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/bundle_command.rb +35 -0
  99. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/bundler.rb +62 -0
  100. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/gem_provider.rb +46 -0
  101. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/rake.rb +39 -0
  102. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/rubocop.rb +23 -0
  103. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/rubocop_command.rb +70 -0
  104. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/rubygems.rb +50 -0
  105. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/update.rb +29 -0
  106. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/version.rb +30 -0
  107. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/version_bump.rb +16 -0
  108. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base.rb +55 -0
  109. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/bundle_update.rb +21 -0
  110. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/gemfile_local/sibling.rb +51 -0
  111. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/gemfile_local.rb +65 -0
  112. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/namespace_replacer.rb +66 -0
  113. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundle.rb +26 -0
  114. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler/gemfile_local.rb +55 -0
  115. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler/gemfile_lock/git.rb +58 -0
  116. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler/gemfile_lock.rb +87 -0
  117. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler/incompatible.rb +73 -0
  118. data/sub/{avm-tools/lib/avm/tools/runner/source/issue.rb → avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler.rb} +5 -5
  119. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/update_dependencies_requirements.rb +64 -0
  120. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/base.rb +57 -0
  121. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/minitest.rb +27 -0
  122. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/multiple/decorated_gem.rb +50 -0
  123. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/multiple/result.rb +29 -0
  124. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/multiple.rb +85 -0
  125. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/rspec.rb +23 -0
  126. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/update/sub_update.rb +57 -0
  127. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/update_dependency_requirements.rb +61 -0
  128. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/version.rb +7 -0
  129. data/sub/{avm-eac_webapp_base0/lib/avm/eac_webapp_base0.rb → avm-eac_ruby_base1/lib/avm/eac_ruby_base1.rb} +4 -3
  130. data/sub/avm-eac_ruby_base1/locale/en.yml +16 -0
  131. data/sub/avm-eac_ruby_base1/locale/pt-BR.yml +16 -0
  132. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec.rb +5 -0
  133. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/1.source.out +192 -0
  134. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/1.target.yaml +300 -0
  135. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/2.source.out +245 -0
  136. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/2.target.yaml +355 -0
  137. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/3.source.out +0 -0
  138. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/3.target.yaml +305 -0
  139. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec.rb +13 -0
  140. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files/Gemfile.source +6 -0
  141. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files/Gemfile.target +3 -0
  142. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files/ruby_code.rb.source +6 -0
  143. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files/ruby_code.rb.target +5 -0
  144. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher/gem/build_spec.rb +43 -0
  145. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher/gem/specification_spec.rb +57 -0
  146. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish_spec.rb +25 -0
  147. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher_stereotypes/base_spec.rb +21 -0
  148. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/preferred_version_requirements_spec.rb +21 -0
  149. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gem_search_parser_spec.rb +5 -0
  150. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gem_search_parser_spec_files/empty.source +1 -0
  151. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gem_search_parser_spec_files/empty.target.yaml +1 -0
  152. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gem_search_parser_spec_files/many_versions.source +1 -0
  153. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gem_search_parser_spec_files/many_versions.target.yaml +123 -0
  154. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gemspec_spec.rb +35 -0
  155. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gemspec_spec_files/changes1.source.yaml +5 -0
  156. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gemspec_spec_files/changes1.target.txt +15 -0
  157. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/gemspec_spec_files/the_gem.gemspec +15 -0
  158. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/version_file_spec.rb +13 -0
  159. data/sub/{avm-tools/lib/avm/tools/version.rb → avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/version_file_spec_files/a_version_file.rb} +1 -1
  160. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec.rb +33 -0
  161. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec_files/dir1/dir3/Gemfile +5 -0
  162. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec_files/dir1/dir3/Gemfile.lock +27 -0
  163. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec_files/dir2/empty.rb +1 -0
  164. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec_files/dir4/false_command.rb +4 -0
  165. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec.rb +16 -0
  166. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/Gemfile +8 -0
  167. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/Gemfile.lock +1 -0
  168. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/_gitignore +2 -0
  169. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/dashed-mygem.gemspec +20 -0
  170. 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
  171. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/lib/dashed/mygem.rb +9 -0
  172. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/spec/meta/rubocop_spec.rb +3 -0
  173. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/spec/spec_helper.rb +5 -0
  174. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/Gemfile +8 -0
  175. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/Gemfile.lock +1 -0
  176. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/_gitignore +2 -0
  177. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/lib/mygem/version.rb +5 -0
  178. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/lib/mygem.rb +7 -0
  179. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/mygem.gemspec +20 -0
  180. 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
  181. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/spec/spec_helper.rb +5 -0
  182. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec.rb +28 -0
  183. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/Gemfile +5 -0
  184. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/Gemfile.lock +19 -0
  185. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/Rakefile +14 -0
  186. data/sub/{avm-tools/exe/avm → avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/exe/myrunner} +1 -2
  187. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/lib/mygem/version.rb +5 -0
  188. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/lib/mygem.rb +7 -0
  189. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/mygem.gemspec +17 -0
  190. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base_spec.rb +13 -0
  191. data/sub/avm-eac_ruby_base1/spec/meta/rubocop_spec.rb +3 -0
  192. data/sub/avm-eac_ruby_base1/spec/spec_helper.rb +5 -0
  193. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/gemspec.template +19 -0
  194. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/root_lib.template +8 -0
  195. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/static/Gemfile +8 -0
  196. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/static/spec/meta/rubocop_spec.rb +3 -0
  197. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/static/spec/spec_helper.rb.template +5 -0
  198. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/version.template +5 -0
  199. metadata +213 -148
  200. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/executables.rb +0 -23
  201. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/css/file_apply.rb +0 -44
  202. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/css.rb +0 -17
  203. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/html.rb +0 -42
  204. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/javascript.rb +0 -19
  205. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/json.rb +0 -23
  206. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/provider.rb +0 -17
  207. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/xml.rb +0 -23
  208. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/apache_base.rb +0 -28
  209. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/apache_host.rb +0 -72
  210. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/apache_path.rb +0 -37
  211. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/base/apache.rb +0 -42
  212. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/base/deploy.rb +0 -24
  213. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/base/deploy_info.rb +0 -27
  214. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/base/install.rb +0 -24
  215. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/base.rb +0 -37
  216. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy/appended_directories.rb +0 -25
  217. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy/build.rb +0 -45
  218. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy/info.rb +0 -44
  219. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy/scm.rb +0 -88
  220. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy/setup_files_unit.rb +0 -53
  221. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy/write_on_target.rb +0 -18
  222. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy.rb +0 -70
  223. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy_info.rb +0 -35
  224. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/processes/web_server.rb +0 -34
  225. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/apache_host.rb +0 -34
  226. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/apache_path.rb +0 -38
  227. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/deploy.rb +0 -47
  228. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/deploy_info.rb +0 -24
  229. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/sources/base.rb +0 -13
  230. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/css_spec.rb +0 -7
  231. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/css_spec_files/css1.source.css +0 -11
  232. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/css_spec_files/css1.target.css +0 -11
  233. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/html_spec.rb +0 -7
  234. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/html_spec_files/html_code.html.erb.source +0 -8
  235. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/html_spec_files/html_code.html.erb.target +0 -8
  236. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/html_spec_files/html_code.html.source +0 -5
  237. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/html_spec_files/html_code.html.target +0 -5
  238. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/javascript_spec.rb +0 -7
  239. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/javascript_spec_files/javascript_code1.js.source +0 -29
  240. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/javascript_spec_files/javascript_code1.js.target +0 -21
  241. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/json_spec.rb +0 -7
  242. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/json_spec_files/json_code.json.source +0 -8
  243. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/json_spec_files/json_code.json.target +0 -7
  244. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/xml_spec.rb +0 -7
  245. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/xml_spec_files/xml_code.xml.source +0 -11
  246. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/file_formats/xml_spec_files/xml_code.xml.target +0 -9
  247. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/instances/base_spec.rb +0 -11
  248. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/sources/base_spec.rb +0 -7
  249. data/sub/avm-eac_webapp_base0/template/avm/eac_webapp_base0/instances/apache_host/no_ssl.conf +0 -11
  250. data/sub/avm-eac_webapp_base0/template/avm/eac_webapp_base0/instances/apache_path/default.conf +0 -7
  251. data/sub/avm-tools/README.textile +0 -28
  252. data/sub/avm-tools/avm-tools.gemspec +0 -24
  253. data/sub/avm-tools/lib/avm/tools/rspec/helpers/runner.rb +0 -19
  254. data/sub/avm-tools/lib/avm/tools/rspec/setup.rb +0 -21
  255. data/sub/avm-tools/lib/avm/tools/runner/application/info.rb +0 -34
  256. data/sub/avm-tools/lib/avm/tools/runner/application.rb +0 -21
  257. data/sub/avm-tools/lib/avm/tools/runner/application_stereotypes/list.rb +0 -29
  258. data/sub/avm-tools/lib/avm/tools/runner/application_stereotypes.rb +0 -13
  259. data/sub/avm-tools/lib/avm/tools/runner/applications/list.rb +0 -29
  260. data/sub/avm-tools/lib/avm/tools/runner/config/load_path.rb +0 -48
  261. data/sub/avm-tools/lib/avm/tools/runner/config.rb +0 -14
  262. data/sub/avm-tools/lib/avm/tools/runner/files/format.rb +0 -46
  263. data/sub/avm-tools/lib/avm/tools/runner/files/rotate.rb +0 -28
  264. data/sub/avm-tools/lib/avm/tools/runner/files.rb +0 -14
  265. data/sub/avm-tools/lib/avm/tools/runner/instance/data/clear.rb +0 -15
  266. data/sub/avm-tools/lib/avm/tools/runner/instance/data/dump.rb +0 -17
  267. data/sub/avm-tools/lib/avm/tools/runner/instance/data/load.rb +0 -22
  268. data/sub/avm-tools/lib/avm/tools/runner/instance/data/unit/clear.rb +0 -17
  269. data/sub/avm-tools/lib/avm/tools/runner/instance/data/unit/dump.rb +0 -17
  270. data/sub/avm-tools/lib/avm/tools/runner/instance/data/unit/load.rb +0 -22
  271. data/sub/avm-tools/lib/avm/tools/runner/instance/data/unit.rb +0 -40
  272. data/sub/avm-tools/lib/avm/tools/runner/instance/data.rb +0 -23
  273. data/sub/avm-tools/lib/avm/tools/runner/instance/entry.rb +0 -41
  274. data/sub/avm-tools/lib/avm/tools/runner/instance/info.rb +0 -35
  275. data/sub/avm-tools/lib/avm/tools/runner/instance/system.rb +0 -63
  276. data/sub/avm-tools/lib/avm/tools/runner/instance.rb +0 -10
  277. data/sub/avm-tools/lib/avm/tools/runner/launcher/instances.rb +0 -34
  278. data/sub/avm-tools/lib/avm/tools/runner/launcher/projects.rb +0 -37
  279. data/sub/avm-tools/lib/avm/tools/runner/launcher/publish.rb +0 -51
  280. data/sub/avm-tools/lib/avm/tools/runner/launcher.rb +0 -14
  281. data/sub/avm-tools/lib/avm/tools/runner/launcher_stereotypes/list.rb +0 -38
  282. data/sub/avm-tools/lib/avm/tools/runner/launcher_stereotypes.rb +0 -13
  283. data/sub/avm-tools/lib/avm/tools/runner/self/docker.rb +0 -12
  284. data/sub/avm-tools/lib/avm/tools/runner/self/registry.rb +0 -22
  285. data/sub/avm-tools/lib/avm/tools/runner/self.rb +0 -18
  286. data/sub/avm-tools/lib/avm/tools/runner/source/auto_commit.rb +0 -67
  287. data/sub/avm-tools/lib/avm/tools/runner/source/info.rb +0 -54
  288. data/sub/avm-tools/lib/avm/tools/runner/source/issue/complete.rb +0 -85
  289. data/sub/avm-tools/lib/avm/tools/runner/source/issue/deliver.rb +0 -32
  290. data/sub/avm-tools/lib/avm/tools/runner/source/sub/remove.rb +0 -20
  291. data/sub/avm-tools/lib/avm/tools/runner/source/sub.rb +0 -25
  292. data/sub/avm-tools/lib/avm/tools/runner/source/subs.rb +0 -70
  293. data/sub/avm-tools/lib/avm/tools/runner/source/test.rb +0 -90
  294. data/sub/avm-tools/lib/avm/tools/runner/source/update.rb +0 -20
  295. data/sub/avm-tools/lib/avm/tools/runner/source/version_bump.rb +0 -78
  296. data/sub/avm-tools/lib/avm/tools/runner/source.rb +0 -13
  297. data/sub/avm-tools/lib/avm/tools/runner/source_generate.rb +0 -10
  298. data/sub/avm-tools/lib/avm/tools/runner.rb +0 -19
  299. data/sub/avm-tools/lib/avm/tools/runner_with/include_exclude.rb +0 -20
  300. data/sub/avm-tools/lib/avm/tools/runner_with/instance_data_clear.rb +0 -19
  301. data/sub/avm-tools/lib/avm/tools/runner_with/instance_data_dump.rb +0 -55
  302. data/sub/avm-tools/lib/avm/tools/runner_with/instance_data_load.rb +0 -64
  303. data/sub/avm-tools/lib/avm/tools/runner_with/instance_data_performer.rb +0 -37
  304. data/sub/avm-tools/lib/avm/tools/self.rb +0 -17
  305. data/sub/avm-tools/lib/avm/tools.rb +0 -16
  306. data/sub/avm-tools/spec/lib/avm/tools/runner/files/rotate_spec.rb +0 -71
  307. data/sub/avm-tools/spec/lib/avm/tools/runner/launcher_stereotypes/list_spec.rb +0 -15
  308. data/sub/avm-tools/spec/lib/avm/tools/runner/source/issue/complete_spec.rb +0 -47
  309. data/sub/avm-tools/spec/lib/avm/tools/runner_spec.rb +0 -12
  310. /data/sub/{avm-eac_webapp_base0 → avm-eac_ruby_base0}/Gemfile +0 -0
  311. /data/sub/{avm-tools → avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem}/Gemfile +0 -0
  312. /data/sub/{avm-eac_webapp_base0 → avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem}/spec/meta/rubocop_spec.rb +0 -0
  313. /data/sub/{avm-tools → avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore}/spec/meta/rubocop_spec.rb +0 -0
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module Rubygems
6
+ class VersionFile
7
+ common_constructor :path
8
+
9
+ VERSION_LINE_PATTERN = /\A(\s*)VERSION\s*=\s*['"]([^'"]+)['"](\s*)\z/.freeze
10
+
11
+ def value
12
+ return nil unless path.file?
13
+
14
+ path.read.each_line.lazy.map { |line| line_value(line) }.find { |v| v }
15
+ end
16
+
17
+ def value=(new_value)
18
+ path.write(new_value_content(new_value))
19
+ end
20
+
21
+ private
22
+
23
+ # @return Version found in line, nil otherwise.
24
+ def line_value(line)
25
+ VERSION_LINE_PATTERN.if_match(line.rstrip, false) { |m| ::Gem::Version.new(m[2]) }
26
+ end
27
+
28
+ def new_value_content(new_value)
29
+ path.read.each_line
30
+ .map { |line| new_value_line(line, new_value) }
31
+ .join
32
+ end
33
+
34
+ def new_value_line(line, new_value)
35
+ m = VERSION_LINE_PATTERN.match(line)
36
+ return line unless m
37
+
38
+ "#{m[1]}VERSION = '#{new_value}'#{m[3]}"
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,74 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module Runners
6
+ class Base
7
+ class LibRename
8
+ runner_with :help, :file_replacer do
9
+ desc 'Rename Ruby modules classes Ruby.'
10
+ arg_opt '-f', '--from', 'Rename "from".'
11
+ arg_opt '-t', '--to', 'Rename "to".'
12
+ end
13
+
14
+ def run
15
+ start_banner
16
+ validate
17
+ replacements_banner
18
+ run_filesystem_traverser
19
+ success 'Done!'
20
+ end
21
+
22
+ def validate
23
+ %w[from to].each do |opt|
24
+ fatal_error "No \"#{opt}\" option" if send(opt).blank?
25
+ end
26
+ end
27
+
28
+ def start_banner
29
+ infov 'From', from
30
+ infov 'To', to
31
+ end
32
+
33
+ private
34
+
35
+ def namespace_replacer_uncached
36
+ ::Avm::EacRubyBase1::Sources::NamespaceReplacer.new(from, to)
37
+ end
38
+
39
+ def text_replacer
40
+ @text_replacer ||= super.gsub(from, to).gsub(from_path, to_path)
41
+ .gsub(namespace_replacer.from_result, namespace_replacer.to_result)
42
+ end
43
+
44
+ def replace_file?(file)
45
+ file.extname == '.rb'
46
+ end
47
+
48
+ def replacements_banner
49
+ infov 'Replacements', text_replacer.replacements.count
50
+ text_replacer.replacements.each do |rep|
51
+ infov ' * ', rep
52
+ end
53
+ end
54
+
55
+ def from
56
+ parsed.from.to_s
57
+ end
58
+
59
+ def to
60
+ parsed.to.to_s
61
+ end
62
+
63
+ def from_path
64
+ from.underscore
65
+ end
66
+
67
+ def to_path
68
+ to.underscore
69
+ end
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module Runners
6
+ class Base
7
+ class Rubocop
8
+ runner_with :help do
9
+ desc 'Runs Rubocop (https://rubygems.org/gems/rubocop).'
10
+ arg_opt '-C', 'Caminho para executar o Rubocop [default: .].'
11
+ pos_arg :rubocop_args, repeat: true, optional: true
12
+ end
13
+
14
+ def run
15
+ ::Avm::EacRubyBase1::Rubocop.new(path, parsed.rubocop_args).run
16
+ end
17
+
18
+ private
19
+
20
+ def path
21
+ ::Pathname.new(parsed.c || '.').expand_path
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -1,10 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Avm
4
- module Tools
5
- class Runner
6
- class Applications
4
+ module EacRubyBase1
5
+ module Runners
6
+ class Base < ::Avm::Runners::Base
7
7
  runner_with :help, :subcommands do
8
+ desc 'Ruby utilities for AVM.'
8
9
  subcommands
9
10
  end
10
11
  end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module Runners
6
+ end
7
+ end
8
+ end
@@ -0,0 +1,59 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module SourceGenerators
6
+ class Base < ::Avm::SourceGenerators::Base
7
+ module Dependencies
8
+ common_concern
9
+
10
+ COMMON_DEPENDENCY_GEMS = %w[eac_ruby_utils].freeze
11
+ DEVELOPMENT_DEPENDENCY_GEMS = %w[eac_ruby_gem_support].freeze
12
+
13
+ module ClassMethods
14
+ # @return [Array<String>]
15
+ def common_dependency_gems
16
+ COMMON_DEPENDENCY_GEMS
17
+ end
18
+
19
+ # @return [Array<String>]
20
+ def development_dependency_gems
21
+ DEVELOPMENT_DEPENDENCY_GEMS
22
+ end
23
+ end
24
+
25
+ # @return [String]
26
+ def common_dependencies
27
+ dependencies_section(:common_dependency_gems, '')
28
+ end
29
+
30
+ def dependency_version(gem_name)
31
+ ::Avm::EacRubyBase1::SourceGenerators::Base::VersionBuilder.new(gem_name, options).to_s
32
+ end
33
+
34
+ # @return [String]
35
+ def development_dependencies
36
+ dependencies_section(:development_dependency_gems, 'development_')
37
+ end
38
+
39
+ protected
40
+
41
+ # @param gem_name [String]
42
+ # @param prefix [String]
43
+ # @return [String]
44
+ def dependency_line(gem_name, prefix)
45
+ "#{IDENT}s.add_#{prefix}dependency '#{gem_name}', #{dependency_version(gem_name)}\n"
46
+ end
47
+
48
+ # @param setting_key [Symbol]
49
+ # @param prefix [String]
50
+ # @return [String]
51
+ def dependencies_section(gems_method, prefix)
52
+ self.class.send(gems_method).sort.map { |gem_name| dependency_line(gem_name, prefix) }
53
+ .join.rstrip
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module SourceGenerators
6
+ class Base < ::Avm::SourceGenerators::Base
7
+ module GemfileLock
8
+ def generate_gemfile_lock
9
+ return unless generate_gemfile_lock?
10
+
11
+ self_gem.bundle('install').chdir_root.execute!
12
+ end
13
+
14
+ # @return [Boolean]
15
+ def generate_gemfile_lock?
16
+ options[::Avm::EacRubyBase1::SourceGenerators::Base::Options::GEMFILE_LOCK_OPTION]
17
+ .to_bool
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,81 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module SourceGenerators
6
+ class Base < ::Avm::SourceGenerators::Base
7
+ module Gemspec
8
+ GEMSPEC_TAB = ' '
9
+ GEMSPEC_NEWLINE_TAB = "\n#{GEMSPEC_TAB * 6}"
10
+
11
+ # @return [String]
12
+ def gemspec_extra
13
+ gemspec_extra_lines.map { |line| "\n#{IDENT}#{line}" }.join
14
+ end
15
+
16
+ # @return [Array<String>]
17
+ def gemspec_extra_lines
18
+ []
19
+ end
20
+
21
+ # @return [String]
22
+ def gemspec_files_value
23
+ (
24
+ gemspec_files_directory_paths_to_string_array +
25
+ gemspec_files_file_paths_to_string_array
26
+ ).join(" +#{GEMSPEC_NEWLINE_TAB}")
27
+ end
28
+
29
+ # @return [Array<String>]
30
+ def gemspec_files_directory_paths
31
+ GEMSPEC_FILES_DIRECTORY_PATHS
32
+ end
33
+
34
+ # @return [Array<String>]
35
+ def gemspec_files_file_paths
36
+ GEMSPEC_FILES_FILE_PATHS
37
+ end
38
+
39
+ # @return [Avm::VersionNumber]
40
+ def minimum_ruby_version
41
+ ::Avm::VersionNumber.new(
42
+ ::Avm::EacRubyBase1::Instances::Mixin.default_ruby_version.segments[0..1]
43
+ )
44
+ end
45
+
46
+ # @return [String]
47
+ def require_ruby_version
48
+ ">= #{minimum_ruby_version}"
49
+ end
50
+
51
+ protected
52
+
53
+ # @return [Enumerable<String>]
54
+ def gemspec_files_directory_paths_to_string_array
55
+ gemspec_files_directory_paths.then do |v|
56
+ next [] unless v.any?
57
+
58
+ ["Dir.glob('{#{v.sort.join(',')}}/**/*', File::FNM_DOTMATCH)" \
59
+ "#{GEMSPEC_NEWLINE_TAB}#{GEMSPEC_TAB}" \
60
+ ".reject { |f| ['.', '..'].include?(File.basename(f)) }"]
61
+ end
62
+ end
63
+
64
+ # @return [Enumerable<String>]
65
+ def gemspec_files_file_paths_to_string_array
66
+ gemspec_files_file_paths.then do |y|
67
+ next [] unless y.any?
68
+
69
+ r = y.sort.map { |e| "'#{e}'" }.join(', ')
70
+ ["[#{r}]"]
71
+ end
72
+ end
73
+
74
+ def generate_gemspec
75
+ template_apply('gemspec', "#{name}.gemspec")
76
+ end
77
+ end
78
+ end
79
+ end
80
+ end
81
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module SourceGenerators
6
+ class Base < ::Avm::SourceGenerators::Base
7
+ module Options
8
+ common_concern
9
+
10
+ GEMFILE_LOCK_OPTION = :'gemfile-lock'
11
+
12
+ OPTIONS = {
13
+ GEMFILE_LOCK_OPTION => 'Run "bundle install" at the end'
14
+ }.freeze
15
+
16
+ module ClassMethods
17
+ def option_list
18
+ OPTIONS.merge(dependency_version_options).inject(super) { |a, e| a.option(*e) }
19
+ end
20
+
21
+ # @return [Hash<Symbol, String>]
22
+ def dependency_version_options
23
+ (common_dependency_gems + development_dependency_gems).sort.to_h do |gem_name|
24
+ ["#{gem_name}_version".dasherize.to_sym, "Version for \"#{gem_name}\" gem."]
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module SourceGenerators
6
+ class Base < ::Avm::SourceGenerators::Base
7
+ module RootModule
8
+ def root_module
9
+ lib_path.camelize
10
+ end
11
+
12
+ # @return [String]
13
+ def root_module_after_close
14
+ s = root_module_requires.map { |e| "require '#{e}'\n" }.join
15
+ s.present? ? "\n#{s}" : ''
16
+ end
17
+
18
+ def root_module_close
19
+ root_module_components.count.times.map do |index|
20
+ "#{IDENT * index}end"
21
+ end.reverse.join("\n")
22
+ end
23
+
24
+ def root_module_inner_identation
25
+ IDENT * root_module_components.count
26
+ end
27
+
28
+ def root_module_open
29
+ root_module_components.each_with_index.map do |component, index|
30
+ "#{IDENT * index}module #{component}"
31
+ end.join("\n")
32
+ end
33
+
34
+ def root_module_components
35
+ root_module.split('::')
36
+ end
37
+
38
+ # @return [Enumerable<String>]
39
+ def root_module_requires
40
+ []
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,58 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module SourceGenerators
6
+ class Base < ::Avm::SourceGenerators::Base
7
+ class VersionBuilder
8
+ enable_simple_cache
9
+ common_constructor :gem_name, :options
10
+
11
+ def to_s
12
+ r = "'~> #{two_segments}'"
13
+ r += ", '>= #{three_segments}'" if segments.count >= 3 && segments[2].positive?
14
+ r
15
+ end
16
+
17
+ # @return [Gem::Version]
18
+ def version
19
+ options_version || loaded_version || maximum_version
20
+ end
21
+
22
+ def two_segments
23
+ segments.first(2).join('.')
24
+ end
25
+
26
+ def three_segments
27
+ segments.first(3).join('.')
28
+ end
29
+
30
+ private
31
+
32
+ # @return [Gem::Version]
33
+ def maximum_version
34
+ r = ::Avm::EacRubyBase1::Rubygems::Remote.new(gem_name).maximum_number
35
+ return ::Gem::Version.new(r) if r.present?
36
+
37
+ raise "None version found for gem \"#{gem_name}\""
38
+ end
39
+
40
+ def segments_uncached
41
+ version.release.to_s.split('.').map(&:to_i)
42
+ end
43
+
44
+ # @return [Gem::Version, nil]
45
+ def loaded_version
46
+ ::Gem.loaded_specs[gem_name].if_present(&:version)
47
+ end
48
+
49
+ def options_version
50
+ options["#{gem_name}_version".dasherize.to_sym].if_present do |v|
51
+ ::Gem::Version.new(v)
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module SourceGenerators
6
+ class Base < ::Avm::SourceGenerators::Base
7
+ GEMSPEC_FILES_DIRECTORY_PATHS = %w[lib].freeze
8
+ GEMSPEC_FILES_FILE_PATHS = [].freeze
9
+ IDENT = ' '
10
+ JOBS = %w[gemspec root_lib version_lib gemfile_lock].freeze
11
+ TEMPLATE_VARIABLES = %w[lib_path name root_module].freeze
12
+
13
+ enable_speaker
14
+ enable_simple_cache
15
+ require_sub __FILE__, include_modules: true
16
+
17
+ def lib_path
18
+ name.split('-').join('/')
19
+ end
20
+
21
+ protected
22
+
23
+ def generate_root_lib
24
+ template_apply('root_lib', "lib/#{lib_path}.rb")
25
+ end
26
+
27
+ def generate_version_lib
28
+ template_apply('version', "lib/#{lib_path}/version.rb")
29
+ end
30
+
31
+ # @return [EacTemplates::Modules::Base]
32
+ def root_template
33
+ template.child('static')
34
+ end
35
+
36
+ def self_gem_uncached
37
+ ::Avm::EacRubyBase1::Sources::Base.new(target_path)
38
+ end
39
+
40
+ def template_apply(from, to)
41
+ target = target_path.join(to)
42
+ target.dirname.mkpath
43
+ template.child(from).apply_to_file(self, target.to_path)
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module Sources
6
+ class Base < ::Avm::EacGenericBase0::Sources::Base
7
+ class BundleCommand < ::EacRubyUtils::Ruby::Command
8
+ GEMFILE_PATH_ENVVAR = 'BUNDLE_GEMFILE'
9
+
10
+ attr_reader :source
11
+
12
+ def initialize(source, command_args, extra_options = {})
13
+ @source = source
14
+ super(command_args, extra_options.merge(host_env: source.env))
15
+ end
16
+
17
+ # Changes current directory to the source's directory.
18
+ def chdir_root
19
+ chdir(source.path)
20
+ end
21
+
22
+ def envvar_gemfile
23
+ envvar(GEMFILE_PATH_ENVVAR, source.gemfile_path.to_path)
24
+ end
25
+
26
+ protected
27
+
28
+ def duplicate(command, extra_options)
29
+ self.class.new(source, command, extra_options)
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,62 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module Sources
6
+ class Base < ::Avm::EacGenericBase0::Sources::Base
7
+ module Bundler
8
+ CONFIGURED_GEMFILE_PATH_ENTRY_KEY = 'ruby.gemfile_path'
9
+ DEFAULT_GEMFILE_PATH = 'Gemfile'
10
+ GEMFILE_SOURCE_PARSER = /^\s*source\s+['"]([^'"]+)['"]$/.to_parser do |m|
11
+ ::Addressable::URI.parse(m[1])
12
+ end
13
+
14
+ # @return [Avm::EacRubyBase1::Sources::Base::BundleCommand]
15
+ def bundle(*args)
16
+ ::Avm::EacRubyBase1::Sources::Base::BundleCommand.new(self, %w[bundle] + args)
17
+ .envvar_gemfile
18
+ end
19
+
20
+ # @return [Avm::EacRubyBase1::Sources::BundleUpdate]
21
+ def bundle_update
22
+ ::Avm::EacRubyBase1::Sources::BundleUpdate.new(self)
23
+ end
24
+
25
+ # @return [String]
26
+ def configured_gemfile_path
27
+ configuration_entry(CONFIGURED_GEMFILE_PATH_ENTRY_KEY).value
28
+ end
29
+
30
+ # @return [String]
31
+ def default_gemfile_path
32
+ DEFAULT_GEMFILE_PATH
33
+ end
34
+
35
+ # @return [Bundler::LockfileParser]
36
+ def gemfile_lock_content
37
+ ::Bundler::LockfileParser.new(::Bundler.read_file(gemfile_lock_path))
38
+ end
39
+
40
+ def gemfile_lock_gem_version(gem_name)
41
+ gemfile_lock_content.specs.find { |gem| gem.name == gem_name }.if_present(&:version)
42
+ end
43
+
44
+ # @return [Pathname]
45
+ def gemfile_lock_path
46
+ gemfile_path.basename_sub { |b| "#{b}.lock" }
47
+ end
48
+
49
+ # @return [Pathname]
50
+ def gemfile_path
51
+ path.join(configured_gemfile_path || default_gemfile_path)
52
+ end
53
+
54
+ # @return [Addressable::URI]
55
+ def gemfile_source
56
+ GEMFILE_SOURCE_PARSER.parse!(gemfile_path.read)
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module Sources
6
+ class Base < ::Avm::EacGenericBase0::Sources::Base
7
+ module GemProvider
8
+ DEFAULT_GEM_PROVIDER_TYPE = 'rubygems_org'
9
+ GEM_PROVIDER_CONFIG_ROOT_KEY = 'ruby.gem_provider'
10
+ GEM_PROVIDER_CONFIG_TYPE_SUBKEY = 'type'
11
+ GEM_PROVIDER_CONFIG_URL_SUBKEY = 'url'
12
+
13
+ # @return [Avm::EacRubyBase1::Rubygems::Providers::Base]
14
+ def default_gem_provider
15
+ ::Avm::EacRubyBase1::Rubygems::Providers::RubygemsOrg.new
16
+ end
17
+
18
+ # @param subkey [String]
19
+ # @return [String]
20
+ def gem_provider_key(subkey)
21
+ key = [GEM_PROVIDER_CONFIG_ROOT_KEY, subkey].join('.')
22
+ r = nil
23
+ [application, configuration].each do |provider|
24
+ value = provider.entry(key).value
25
+ if value.present?
26
+ r = value
27
+ break
28
+ end
29
+ end
30
+ r
31
+ end
32
+
33
+ def gem_provider
34
+ ::Avm::EacRubyBase1::Rubygems::Providers.const_get(
35
+ (gem_provider_key(GEM_PROVIDER_CONFIG_TYPE_SUBKEY) || DEFAULT_GEM_PROVIDER_TYPE).to_s
36
+ .camelize
37
+ ).new(
38
+ gem_provider_key(GEM_PROVIDER_CONFIG_URL_SUBKEY) ||
39
+ ::Avm::EacRubyBase1::Rubygems::Providers::RubygemsOrg::DEFAULT_ROOT_HTTP_URL
40
+ )
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end