eac_tools 0.91.1 → 0.92.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 (387) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +40 -40
  3. data/lib/eac_tools/version.rb +1 -1
  4. data/sub/avm/avm.gemspec +28 -0
  5. data/sub/avm/lib/avm/application_scms/base.rb +39 -0
  6. data/sub/avm/lib/avm/application_scms.rb +9 -0
  7. data/sub/avm/lib/avm/application_stereotypes/base.rb +31 -0
  8. data/sub/avm/lib/avm/application_stereotypes.rb +9 -0
  9. data/sub/avm/lib/avm/applications/base/auto_local_source_path.rb +24 -0
  10. data/sub/avm/lib/avm/applications/base/local_instance.rb +31 -0
  11. data/sub/avm/lib/avm/applications/base/local_source.rb +35 -0
  12. data/sub/avm/lib/avm/applications/base/naming.rb +28 -0
  13. data/sub/avm/lib/avm/applications/base/organization.rb +29 -0
  14. data/sub/avm/lib/avm/applications/base/publishing.rb +43 -0
  15. data/sub/avm/lib/avm/applications/base/scm.rb +27 -0
  16. data/sub/avm/lib/avm/applications/base/stereotype.rb +31 -0
  17. data/sub/avm/lib/avm/applications/base.rb +37 -0
  18. data/sub/{avm-eac_ruby_base1/lib/avm/eac_ruby_base1.rb → avm/lib/avm/applications.rb} +1 -1
  19. data/sub/avm/lib/avm/data/callbacks.rb +37 -0
  20. data/sub/avm/lib/avm/data/clearer.rb +20 -0
  21. data/sub/avm/lib/avm/data/dumper.rb +142 -0
  22. data/sub/avm/lib/avm/data/loader.rb +28 -0
  23. data/sub/avm/lib/avm/data/package/base_performer.rb +38 -0
  24. data/sub/avm/lib/avm/data/package/build_directory.rb +28 -0
  25. data/sub/avm/lib/avm/data/package/clear.rb +22 -0
  26. data/sub/avm/lib/avm/data/package/dump.rb +45 -0
  27. data/sub/avm/lib/avm/data/package/load.rb +36 -0
  28. data/sub/avm/lib/avm/data/package.rb +67 -0
  29. data/sub/avm/lib/avm/data/performer.rb +49 -0
  30. data/sub/avm/lib/avm/data/rotate.rb +107 -0
  31. data/sub/avm/lib/avm/data/unit.rb +49 -0
  32. data/sub/avm/lib/avm/data/unit_with_commands.rb +52 -0
  33. data/sub/avm/lib/avm/docker/container.rb +50 -0
  34. data/sub/avm/lib/avm/docker/image.rb +76 -0
  35. data/sub/avm/lib/avm/docker/runner.rb +132 -0
  36. data/sub/{avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/lib/dashed/mygem.rb → avm/lib/avm/docker.rb} +2 -2
  37. data/sub/avm/lib/avm/entries/auto_values/entry.rb +39 -0
  38. data/sub/avm/lib/avm/entries/auto_values/uri_entry.rb +24 -0
  39. data/sub/{avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rspec.rb → avm/lib/avm/entries/auto_values.rb} +2 -2
  40. data/sub/avm/lib/avm/entries/base/inherited_entry_value.rb +46 -0
  41. data/sub/avm/lib/avm/entries/base/uri_component_entry_value/default_value.rb +28 -0
  42. data/sub/avm/lib/avm/entries/base/uri_component_entry_value/inherited_value.rb +39 -0
  43. data/sub/avm/lib/avm/entries/base/uri_component_entry_value/url_entry_value.rb +31 -0
  44. data/sub/avm/lib/avm/entries/base/uri_component_entry_value.rb +44 -0
  45. data/sub/avm/lib/avm/entries/base/uri_components_entries_values/component_factory.rb +42 -0
  46. data/sub/avm/lib/avm/entries/base/uri_components_entries_values/generic_component.rb +63 -0
  47. data/sub/avm/lib/avm/entries/base/uri_components_entries_values/path_component.rb +19 -0
  48. data/sub/avm/lib/avm/entries/base/uri_components_entries_values/url_component.rb +28 -0
  49. data/sub/avm/lib/avm/entries/base/uri_components_entries_values.rb +25 -0
  50. data/sub/avm/lib/avm/entries/base.rb +57 -0
  51. data/sub/avm/lib/avm/entries/entry/no_context_entry.rb +23 -0
  52. data/sub/avm/lib/avm/entries/entry.rb +75 -0
  53. data/sub/avm/lib/avm/entries/jobs/base.rb +62 -0
  54. data/sub/avm/lib/avm/entries/jobs/variables_source/read_entry.rb +50 -0
  55. data/sub/avm/lib/avm/entries/jobs/variables_source.rb +15 -0
  56. data/sub/avm/lib/avm/entries/jobs/with_variables_source.rb +15 -0
  57. data/sub/{avm-eac_ruby_base1/lib/avm/eac_ruby_base1/runners.rb → avm/lib/avm/entries/jobs.rb} +2 -2
  58. data/sub/avm/lib/avm/entries/keys_constants_set.rb +43 -0
  59. data/sub/avm/lib/avm/entries/uri_builder.rb +91 -0
  60. data/sub/avm/lib/avm/entries.rb +9 -0
  61. data/sub/avm/lib/avm/executables.rb +24 -0
  62. data/sub/avm/lib/avm/file_formats/base.rb +35 -0
  63. data/sub/avm/lib/avm/file_formats/file_result.rb +13 -0
  64. data/sub/avm/lib/avm/file_formats/search_formatter.rb +87 -0
  65. data/sub/avm/lib/avm/file_formats/unknown.rb +18 -0
  66. data/sub/avm/lib/avm/file_formats/utf8_assert.rb +72 -0
  67. data/sub/avm/lib/avm/file_formats.rb +9 -0
  68. data/sub/avm/lib/avm/instances/base/auto_values/data.rb +30 -0
  69. data/sub/avm/lib/avm/instances/base/auto_values/database.rb +62 -0
  70. data/sub/avm/lib/avm/instances/base/auto_values/mailer.rb +35 -0
  71. data/sub/avm/lib/avm/instances/base/auto_values/source.rb +18 -0
  72. data/sub/avm/lib/avm/instances/base/auto_values.rb +14 -0
  73. data/sub/avm/lib/avm/instances/base/dockerizable.rb +45 -0
  74. data/sub/avm/lib/avm/instances/base/entry_keys.rb +27 -0
  75. data/sub/avm/lib/avm/instances/base/install.rb +31 -0
  76. data/sub/avm/lib/avm/instances/base/processes.rb +27 -0
  77. data/sub/avm/lib/avm/instances/base/production.rb +34 -0
  78. data/sub/avm/lib/avm/instances/base/subcommand_parent.rb +25 -0
  79. data/sub/avm/lib/avm/instances/base/web.rb +16 -0
  80. data/sub/avm/lib/avm/instances/base.rb +77 -0
  81. data/sub/avm/lib/avm/instances/data/files_unit.rb +59 -0
  82. data/sub/avm/lib/avm/instances/data/loading_denied_error.rb +10 -0
  83. data/sub/avm/lib/avm/instances/data/package.rb +27 -0
  84. data/sub/avm/lib/avm/instances/data/unit.rb +40 -0
  85. data/sub/{avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources.rb → avm/lib/avm/instances/data.rb} +2 -2
  86. data/sub/avm/lib/avm/instances/docker_image.rb +15 -0
  87. data/sub/avm/lib/avm/instances/entry_keys.rb +43 -0
  88. data/sub/avm/lib/avm/instances/ids.rb +30 -0
  89. data/sub/avm/lib/avm/instances/process.rb +31 -0
  90. data/sub/avm/lib/avm/instances/runner.rb +37 -0
  91. data/sub/avm/lib/avm/instances.rb +9 -0
  92. data/sub/avm/lib/avm/launcher/context/instance_collector.rb +46 -0
  93. data/sub/avm/lib/avm/launcher/context/instance_discovery/root_instance_paths.rb +53 -0
  94. data/sub/avm/lib/avm/launcher/context/instance_discovery.rb +75 -0
  95. data/sub/avm/lib/avm/launcher/context/instance_manager/cached_instance.rb +37 -0
  96. data/sub/avm/lib/avm/launcher/context/instance_manager/cached_instances.rb +35 -0
  97. data/sub/avm/lib/avm/launcher/context/instance_manager.rb +77 -0
  98. data/sub/avm/lib/avm/launcher/context/settings.rb +53 -0
  99. data/sub/avm/lib/avm/launcher/context.rb +100 -0
  100. data/sub/avm/lib/avm/launcher/errors/base.rb +10 -0
  101. data/sub/avm/lib/avm/launcher/errors/non_project.rb +15 -0
  102. data/sub/{avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler.rb → avm/lib/avm/launcher/errors.rb} +2 -2
  103. data/sub/avm/lib/avm/launcher/instances/base/cache.rb +43 -0
  104. data/sub/avm/lib/avm/launcher/instances/base/publishing.rb +53 -0
  105. data/sub/avm/lib/avm/launcher/instances/base.rb +78 -0
  106. data/sub/avm/lib/avm/launcher/instances/error.rb +10 -0
  107. data/sub/avm/lib/avm/launcher/instances/runner_helper.rb +47 -0
  108. data/sub/avm/lib/avm/launcher/instances/settings.rb +26 -0
  109. data/sub/{avm-eac_ruby_base1/lib/avm/eac_ruby_base1 → avm/lib/avm/launcher}/instances.rb +1 -1
  110. data/sub/avm/lib/avm/launcher/paths/logical.rb +80 -0
  111. data/sub/avm/lib/avm/launcher/paths/real.rb +44 -0
  112. data/sub/avm/lib/avm/launcher/paths.rb +11 -0
  113. data/sub/avm/lib/avm/launcher/project.rb +17 -0
  114. data/sub/avm/lib/avm/launcher/publish/base.rb +47 -0
  115. data/sub/avm/lib/avm/launcher/publish/check_result.rb +65 -0
  116. data/sub/avm/lib/avm/launcher/publish.rb +11 -0
  117. data/sub/avm/lib/avm/launcher/stereotype.rb +63 -0
  118. data/sub/avm/lib/avm/launcher.rb +9 -0
  119. data/sub/avm/lib/avm/launcher_stereotypes.rb +9 -0
  120. data/sub/avm/lib/avm/patches/eac_config/entry_path.rb +46 -0
  121. data/sub/avm/lib/avm/path_string.rb +27 -0
  122. data/sub/avm/lib/avm/registry/application_scms.rb +15 -0
  123. data/sub/avm/lib/avm/registry/application_stereotypes/build_available.rb +49 -0
  124. data/sub/avm/lib/avm/registry/application_stereotypes/stereotype_builder.rb +33 -0
  125. data/sub/avm/lib/avm/registry/application_stereotypes.rb +52 -0
  126. data/sub/avm/lib/avm/registry/applications.rb +38 -0
  127. data/sub/avm/lib/avm/registry/config_objects.rb +18 -0
  128. data/sub/avm/lib/avm/registry/file_formats.rb +20 -0
  129. data/sub/avm/lib/avm/registry/from_gems.rb +80 -0
  130. data/sub/avm/lib/avm/registry/instances.rb +16 -0
  131. data/sub/avm/lib/avm/registry/launcher_stereotypes.rb +11 -0
  132. data/sub/avm/lib/avm/registry/runners.rb +10 -0
  133. data/sub/avm/lib/avm/registry/scms.rb +10 -0
  134. data/sub/avm/lib/avm/registry/source_generators.rb +17 -0
  135. data/sub/avm/lib/avm/registry/sources.rb +40 -0
  136. data/sub/avm/lib/avm/registry/with_path/cache.rb +31 -0
  137. data/sub/avm/lib/avm/registry/with_path.rb +49 -0
  138. data/sub/avm/lib/avm/registry.rb +35 -0
  139. data/sub/avm/lib/avm/result.rb +82 -0
  140. data/sub/avm/lib/avm/rspec/setup/launcher.rb +20 -0
  141. data/sub/avm/lib/avm/rspec/setup/source_generator.rb +22 -0
  142. data/sub/avm/lib/avm/rspec/setup.rb +36 -0
  143. data/sub/avm/lib/avm/rspec/shared_examples/avm_file_format_file_resource_name.rb +15 -0
  144. data/sub/avm/lib/avm/rspec/shared_examples/avm_file_formats_with_fixtures.rb +31 -0
  145. data/sub/avm/lib/avm/rspec/shared_examples/avm_source_generated.rb +26 -0
  146. data/sub/avm/lib/avm/rspec/shared_examples/entries_values.rb +21 -0
  147. data/sub/avm/lib/avm/rspec/shared_examples/in_avm_registry.rb +11 -0
  148. data/sub/avm/lib/avm/rspec/shared_examples/not_in_avm_registry.rb +14 -0
  149. data/sub/avm/lib/avm/rspec/shared_examples/with_config.rb +11 -0
  150. data/sub/avm/lib/avm/rspec.rb +9 -0
  151. data/sub/avm/lib/avm/runners/base.rb +27 -0
  152. data/sub/avm/lib/avm/scms/auto_commit/file_resource_name.rb +39 -0
  153. data/sub/avm/lib/avm/scms/auto_commit/for_file.rb +82 -0
  154. data/sub/avm/lib/avm/scms/auto_commit/rules/base.rb +40 -0
  155. data/sub/avm/lib/avm/scms/auto_commit/rules/last.rb +19 -0
  156. data/sub/avm/lib/avm/scms/auto_commit/rules/manual.rb +40 -0
  157. data/sub/avm/lib/avm/scms/auto_commit/rules/new.rb +24 -0
  158. data/sub/avm/lib/avm/scms/auto_commit/rules/nth.rb +31 -0
  159. data/sub/avm/lib/avm/scms/auto_commit/rules/unique.rb +21 -0
  160. data/sub/avm/lib/avm/scms/auto_commit/rules.rb +36 -0
  161. data/sub/avm/lib/avm/scms/auto_commit.rb +11 -0
  162. data/sub/avm/lib/avm/scms/base/branches.rb +22 -0
  163. data/sub/avm/lib/avm/scms/base/commits.rb +34 -0
  164. data/sub/avm/lib/avm/scms/base/milestones.rb +21 -0
  165. data/sub/avm/lib/avm/scms/base/remotes.rb +22 -0
  166. data/sub/avm/lib/avm/scms/base.rb +61 -0
  167. data/sub/avm/lib/avm/scms/branch.rb +26 -0
  168. data/sub/avm/lib/avm/scms/changed_file.rb +26 -0
  169. data/sub/avm/lib/avm/scms/commit.rb +66 -0
  170. data/sub/avm/lib/avm/scms/commit_info.rb +39 -0
  171. data/sub/avm/lib/avm/scms/inflector.rb +22 -0
  172. data/sub/avm/lib/avm/scms/interval.rb +18 -0
  173. data/sub/avm/lib/avm/scms/null/commit.rb +15 -0
  174. data/sub/avm/lib/avm/scms/null.rb +21 -0
  175. data/sub/avm/lib/avm/scms/remote.rb +11 -0
  176. data/sub/avm/lib/avm/scms.rb +9 -0
  177. data/sub/avm/lib/avm/self/docker_image.rb +14 -0
  178. data/sub/avm/lib/avm/self/instance/entry_keys.rb +12 -0
  179. data/sub/avm/lib/avm/self/instance.rb +31 -0
  180. data/sub/avm/lib/avm/source_generators/base.rb +75 -0
  181. data/sub/avm/lib/avm/source_generators/option.rb +11 -0
  182. data/sub/avm/lib/avm/source_generators/option_list.rb +32 -0
  183. data/sub/avm/lib/avm/source_generators/runner.rb +58 -0
  184. data/sub/avm/lib/avm/source_generators.rb +9 -0
  185. data/sub/avm/lib/avm/sources/auto_commit/for_file.rb +31 -0
  186. data/sub/avm/lib/avm/sources/auto_commit.rb +11 -0
  187. data/sub/avm/lib/avm/sources/base/application.rb +36 -0
  188. data/sub/avm/lib/avm/sources/base/configuration.rb +92 -0
  189. data/sub/avm/lib/avm/sources/base/instance.rb +16 -0
  190. data/sub/avm/lib/avm/sources/base/locale.rb +33 -0
  191. data/sub/avm/lib/avm/sources/base/organizational.rb +32 -0
  192. data/sub/avm/lib/avm/sources/base/parent.rb +28 -0
  193. data/sub/avm/lib/avm/sources/base/stereotype.rb +18 -0
  194. data/sub/avm/lib/avm/sources/base/sub/remove.rb +38 -0
  195. data/sub/avm/lib/avm/sources/base/sub.rb +26 -0
  196. data/sub/avm/lib/avm/sources/base/subs.rb +67 -0
  197. data/sub/avm/lib/avm/sources/base/subs_paths.rb +32 -0
  198. data/sub/avm/lib/avm/sources/base/testing.rb +70 -0
  199. data/sub/avm/lib/avm/sources/base/update.rb +39 -0
  200. data/sub/avm/lib/avm/sources/base/update_sub.rb +57 -0
  201. data/sub/avm/lib/avm/sources/base/update_subs.rb +19 -0
  202. data/sub/avm/lib/avm/sources/base/version_bump.rb +29 -0
  203. data/sub/avm/lib/avm/sources/base.rb +61 -0
  204. data/sub/avm/lib/avm/sources/configuration/rubocop.rb +26 -0
  205. data/sub/avm/lib/avm/sources/configuration.rb +59 -0
  206. data/sub/avm/lib/avm/sources/issues/deliver.rb +52 -0
  207. data/sub/avm/lib/avm/sources/issues.rb +11 -0
  208. data/sub/avm/lib/avm/sources/runner.rb +40 -0
  209. data/sub/avm/lib/avm/sources/tests/builder.rb +96 -0
  210. data/sub/avm/lib/avm/sources/tests/performer.rb +35 -0
  211. data/sub/avm/lib/avm/sources/tests/result.rb +15 -0
  212. data/sub/avm/lib/avm/sources/tests/single.rb +75 -0
  213. data/sub/avm/lib/avm/sources/tests.rb +11 -0
  214. data/sub/avm/lib/avm/sources/update_error.rb +8 -0
  215. data/sub/avm/lib/avm/sources.rb +9 -0
  216. data/sub/avm/lib/avm/sync.rb +92 -0
  217. data/sub/{avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/lib/mygem → avm/lib/avm}/version.rb +2 -2
  218. data/sub/avm/lib/avm/version_number.rb +45 -0
  219. data/sub/avm/lib/avm/with/application_stereotype.rb +33 -0
  220. data/sub/avm/lib/avm/with/extra_subcommands.rb +44 -0
  221. data/sub/{avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/lib/mygem.rb → avm/lib/avm.rb} +1 -1
  222. data/sub/avm/locale/en.yml +6 -0
  223. data/sub/avm/locale/pt-BR.yml +6 -0
  224. data/sub/avm/spec/dummy/avm-tools_stub/avm-tools.gemspec +29 -0
  225. data/sub/{avm-eac_ruby_base1/lib/avm/eac_ruby_base1 → avm/spec/dummy/avm-tools_stub/lib/avm/tools}/version.rb +2 -2
  226. data/sub/{avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/version_file_spec_files/a_version_file.rb → avm/spec/dummy/avm-tools_stub/lib/avm/tools.rb} +0 -1
  227. data/sub/avm/spec/dummy/ruby_gem_stub/lib/ruby_gem_stub/version.rb +5 -0
  228. data/sub/avm/spec/dummy/ruby_gem_stub/lib/ruby_gem_stub.rb +3 -0
  229. data/sub/avm/spec/dummy/ruby_gem_stub/ruby_gem_stub.gemspec +16 -0
  230. data/sub/avm/spec/lib/avm/applications/base/entries_spec.rb +31 -0
  231. data/sub/avm/spec/lib/avm/applications/base/entries_spec_files/config.yml +12 -0
  232. data/sub/avm/spec/lib/avm/applications/base_spec.rb +23 -0
  233. data/sub/avm/spec/lib/avm/applications/base_spec_fixture.yml +3 -0
  234. data/sub/avm/spec/lib/avm/file_formats/base_spec.rb +11 -0
  235. data/sub/avm/spec/lib/avm/instances/base_spec.rb +107 -0
  236. data/sub/avm/spec/lib/avm/instances/base_spec_files/config.yml +50 -0
  237. data/sub/avm/spec/lib/avm/launcher/context_spec.rb +139 -0
  238. data/sub/avm/spec/lib/avm/launcher/context_spec.yml +5 -0
  239. data/sub/avm/spec/lib/avm/launcher/context_spec_files/config.yml +9 -0
  240. data/sub/avm/spec/lib/avm/launcher/instances/base_spec.rb +42 -0
  241. data/sub/avm/spec/lib/avm/launcher/instances/base_spec_files/config.yml +5 -0
  242. data/sub/avm/spec/lib/avm/launcher/instances/base_spec_files/settings.yaml +5 -0
  243. data/sub/avm/spec/lib/avm/patches/eac_config/entry_path_spec.rb +28 -0
  244. data/sub/avm/spec/lib/avm/scms/auto_commit/file_resource_name_spec.rb +21 -0
  245. data/sub/avm/spec/lib/avm/scms/base_spec.rb +7 -0
  246. data/sub/avm/spec/lib/avm/sources/base_spec.rb +7 -0
  247. data/sub/avm/spec/lib/avm/sources/runner_spec.rb +9 -0
  248. data/sub/avm/spec/spec_helper/launcher_context/settings.yml +6 -0
  249. data/sub/avm/spec/spec_helper/launcher_context.rb +75 -0
  250. data/sub/{avm-eac_ruby_base1 → avm}/spec/spec_helper.rb +1 -0
  251. data/sub/avm/template/avm/self/docker_image/Dockerfile +17 -0
  252. data/sub/avm/template/avm/self/docker_image/entrypoint.sh +12 -0
  253. metadata +255 -150
  254. data/sub/avm-eac_ruby_base1/avm-eac_ruby_base1.gemspec +0 -22
  255. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/gemfile/add_or_replace_gem_line.rb +0 -56
  256. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/gemfile/dependency.rb +0 -19
  257. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/gemfile.rb +0 -34
  258. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/depends_on.rb +0 -25
  259. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/gem_conflict.rb +0 -44
  260. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/in_gemfile.rb +0 -17
  261. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_buffer.rb +0 -77
  262. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb +0 -33
  263. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_parser_base.rb +0 -19
  264. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/ruby_requirement.rb +0 -16
  265. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/version_requirement.rb +0 -26
  266. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser.rb +0 -25
  267. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/file_formats/base/file_resource_name.rb +0 -47
  268. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/file_formats/base.rb +0 -22
  269. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/file_formats.rb +0 -11
  270. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/instances/mixin.rb +0 -19
  271. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher/gem/build.rb +0 -126
  272. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher/gem/specification.rb +0 -63
  273. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher/gem.rb +0 -13
  274. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher.rb +0 -11
  275. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base/local_project_mixin.rb +0 -28
  276. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish.rb +0 -130
  277. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base.rb +0 -37
  278. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes.rb +0 -11
  279. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/preferred_version_requirements.rb +0 -43
  280. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rspec/setup.rb +0 -16
  281. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rspec/source_generator.rb +0 -22
  282. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubocop/configured.rb +0 -31
  283. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubocop/envvar.rb +0 -17
  284. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubocop/gemfile.rb +0 -42
  285. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubocop.rb +0 -55
  286. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/gemspec/add_or_replace_gem_line.rb +0 -62
  287. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/gemspec/dependency.rb +0 -19
  288. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/gemspec.rb +0 -42
  289. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/remote.rb +0 -36
  290. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/version_file.rb +0 -45
  291. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems.rb +0 -11
  292. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/runners/base/lib_rename.rb +0 -77
  293. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/runners/base/rubocop.rb +0 -30
  294. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/runners/base.rb +0 -18
  295. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/dependencies.rb +0 -63
  296. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/gemfile_lock.rb +0 -27
  297. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/options.rb +0 -35
  298. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base/version_builder.rb +0 -62
  299. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators/base.rb +0 -112
  300. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/source_generators.rb +0 -11
  301. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/bundle_command.rb +0 -39
  302. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/bundler.rb +0 -68
  303. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/rake.rb +0 -42
  304. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/rubocop.rb +0 -28
  305. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/rubocop_command.rb +0 -73
  306. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/rubygems.rb +0 -43
  307. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/update.rb +0 -25
  308. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/version.rb +0 -31
  309. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/version_bump.rb +0 -19
  310. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base.rb +0 -61
  311. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/bundle_update.rb +0 -23
  312. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/gemfile_local/sibling.rb +0 -53
  313. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/gemfile_local.rb +0 -69
  314. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/namespace_replacer.rb +0 -55
  315. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundle.rb +0 -29
  316. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler/gemfile_local.rb +0 -58
  317. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler/gemfile_lock/git.rb +0 -60
  318. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler/gemfile_lock.rb +0 -89
  319. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler/incompatible.rb +0 -76
  320. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/bundler.rb +0 -19
  321. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners/update_dependencies_requirements.rb +0 -68
  322. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/runners.rb +0 -13
  323. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/base.rb +0 -59
  324. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/minitest.rb +0 -29
  325. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/multiple/decorated_gem.rb +0 -52
  326. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/multiple/result.rb +0 -29
  327. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/multiple.rb +0 -90
  328. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests/rspec.rb +0 -25
  329. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/tests.rb +0 -13
  330. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/update/sub_update.rb +0 -59
  331. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/update_dependency_requirements.rb +0 -64
  332. data/sub/avm-eac_ruby_base1/locale/en.yml +0 -9
  333. data/sub/avm-eac_ruby_base1/locale/pt-BR.yml +0 -9
  334. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec.rb +0 -7
  335. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/1.source.out +0 -192
  336. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/1.target.yaml +0 -300
  337. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/2.source.out +0 -245
  338. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/2.target.yaml +0 -355
  339. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/3.source.out +0 -0
  340. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/3.target.yaml +0 -305
  341. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec.rb +0 -15
  342. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files/Gemfile.source +0 -6
  343. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files/Gemfile.target +0 -3
  344. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files/ruby_code.rb.source +0 -6
  345. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/file_formats/base_spec_files/ruby_code.rb.target +0 -5
  346. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher/gem/build_spec.rb +0 -46
  347. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher/gem/specification_spec.rb +0 -49
  348. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish_spec.rb +0 -29
  349. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher_stereotypes/base_spec.rb +0 -23
  350. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/preferred_version_requirements_spec.rb +0 -23
  351. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/rubygems/version_file_spec.rb +0 -14
  352. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec.rb +0 -36
  353. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec_files/dir1/dir3/Gemfile +0 -5
  354. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec_files/dir1/dir3/Gemfile.lock +0 -27
  355. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec_files/dir2/empty.rb +0 -1
  356. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/runners/base/rubocop_spec_files/dir4/false_command.rb +0 -4
  357. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec.rb +0 -19
  358. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/Gemfile +0 -8
  359. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/Gemfile.lock +0 -1
  360. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/_gitignore +0 -2
  361. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/dashed-mygem.gemspec +0 -19
  362. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/lib/dashed/mygem/version.rb +0 -7
  363. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/spec/spec_helper.rb +0 -4
  364. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/Gemfile +0 -8
  365. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/Gemfile.lock +0 -1
  366. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/_gitignore +0 -2
  367. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/mygem.gemspec +0 -19
  368. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/spec/rubocop_spec.rb +0 -3
  369. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/spec/spec_helper.rb +0 -4
  370. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec.rb +0 -30
  371. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/Gemfile +0 -5
  372. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/Gemfile.lock +0 -19
  373. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/Rakefile +0 -14
  374. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/exe/myrunner +0 -5
  375. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/lib/mygem/version.rb +0 -5
  376. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/lib/mygem.rb +0 -5
  377. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base/bundler_spec_files/mygem/mygem.gemspec +0 -17
  378. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base_spec.rb +0 -16
  379. data/sub/avm-eac_ruby_base1/spec/rubocop_spec.rb +0 -3
  380. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/gemspec.template +0 -19
  381. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/root_lib.template +0 -7
  382. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/static/Gemfile +0 -8
  383. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/static/spec/rubocop_spec.rb +0 -3
  384. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/static/spec/spec_helper.rb +0 -4
  385. data/sub/avm-eac_ruby_base1/template/avm/eac_ruby_base1/source_generators/base/version.template +0 -5
  386. /data/sub/{avm-eac_ruby_base1 → avm}/Gemfile +0 -0
  387. /data/sub/{avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem → avm}/spec/rubocop_spec.rb +0 -0
@@ -1,45 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
-
5
- module Avm
6
- module EacRubyBase1
7
- module Rubygems
8
- class VersionFile
9
- common_constructor :path
10
-
11
- VERSION_LINE_PATTERN = /\A(\s*)VERSION\s*=\s*[\'\"]([^\'\"]+)[\'\"](\s*)\z/.freeze
12
-
13
- def value
14
- return nil unless path.file?
15
-
16
- path.read.each_line.lazy.map { |line| line_value(line) }.find { |v| v }
17
- end
18
-
19
- def value=(new_value)
20
- path.write(new_value_content(new_value))
21
- end
22
-
23
- private
24
-
25
- # @return Version found in line, nil otherwise.
26
- def line_value(line)
27
- VERSION_LINE_PATTERN.if_match(line.rstrip, false) { |m| ::Gem::Version.new(m[2]) }
28
- end
29
-
30
- def new_value_content(new_value)
31
- path.read.each_line
32
- .map { |line| new_value_line(line, new_value) }
33
- .join
34
- end
35
-
36
- def new_value_line(line, new_value)
37
- m = VERSION_LINE_PATTERN.match(line)
38
- return line unless m
39
-
40
- "#{m[1]}VERSION = '#{new_value}'#{m[3]}"
41
- end
42
- end
43
- end
44
- end
45
- end
@@ -1,11 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
-
5
- module Avm
6
- module EacRubyBase1
7
- module Rubygems
8
- require_sub __FILE__
9
- end
10
- end
11
- end
@@ -1,77 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_cli/core_ext'
4
- require 'avm/eac_ruby_base1/sources/namespace_replacer'
5
-
6
- module Avm
7
- module EacRubyBase1
8
- module Runners
9
- class Base
10
- class LibRename
11
- runner_with :help, :file_replacer do
12
- desc 'Rename Ruby modules classes Ruby.'
13
- arg_opt '-f', '--from', 'Rename "from".'
14
- arg_opt '-t', '--to', 'Rename "to".'
15
- end
16
-
17
- def run
18
- start_banner
19
- validate
20
- replacements_banner
21
- run_filesystem_traverser
22
- success 'Done!'
23
- end
24
-
25
- def validate
26
- %w[from to].each do |opt|
27
- fatal_error "No \"#{opt}\" option" if send(opt).blank?
28
- end
29
- end
30
-
31
- def start_banner
32
- infov 'From', from
33
- infov 'To', to
34
- end
35
-
36
- private
37
-
38
- def namespace_replacer_uncached
39
- ::Avm::EacRubyBase1::Sources::NamespaceReplacer.new(from, to)
40
- end
41
-
42
- def text_replacer
43
- @text_replacer ||= super.gsub(from, to).gsub(from_path, to_path)
44
- .gsub(namespace_replacer.from_result, namespace_replacer.to_result)
45
- end
46
-
47
- def replace_file?(file)
48
- file.extname == '.rb'
49
- end
50
-
51
- def replacements_banner
52
- infov 'Replacements', text_replacer.replacements.count
53
- text_replacer.replacements.each do |rep|
54
- infov ' * ', rep
55
- end
56
- end
57
-
58
- def from
59
- parsed.from.to_s
60
- end
61
-
62
- def to
63
- parsed.to.to_s
64
- end
65
-
66
- def from_path
67
- from.underscore
68
- end
69
-
70
- def to_path
71
- to.underscore
72
- end
73
- end
74
- end
75
- end
76
- end
77
- end
@@ -1,30 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/eac_ruby_base1/rubocop'
4
- require 'eac_cli/core_ext'
5
-
6
- module Avm
7
- module EacRubyBase1
8
- module Runners
9
- class Base
10
- class Rubocop
11
- runner_with :help do
12
- desc 'Runs Rubocop (https://rubygems.org/gems/rubocop).'
13
- arg_opt '-C', 'Caminho para executar o Rubocop [default: .].'
14
- pos_arg :rubocop_args, repeat: true, optional: true
15
- end
16
-
17
- def run
18
- ::Avm::EacRubyBase1::Rubocop.new(path, parsed.rubocop_args).run
19
- end
20
-
21
- private
22
-
23
- def path
24
- ::Pathname.new(parsed.c || '.').expand_path
25
- end
26
- end
27
- end
28
- end
29
- end
30
- end
@@ -1,18 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/runners/base'
4
-
5
- module Avm
6
- module EacRubyBase1
7
- module Runners
8
- class Base < ::Avm::Runners::Base
9
- require_sub __FILE__
10
-
11
- runner_with :help, :subcommands do
12
- desc 'Ruby utilities for AVM.'
13
- subcommands
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1,63 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/eac_ruby_base1/source_generators/base/version_builder'
4
- require 'avm/source_generators/base'
5
- require 'eac_ruby_utils/core_ext'
6
-
7
- module Avm
8
- module EacRubyBase1
9
- module SourceGenerators
10
- class Base < ::Avm::SourceGenerators::Base
11
- module Dependencies
12
- common_concern
13
-
14
- COMMON_DEPENDENCY_GEMS = %w[eac_ruby_utils].freeze
15
- DEVELOPMENT_DEPENDENCY_GEMS = %w[eac_ruby_gem_support].freeze
16
-
17
- module ClassMethods
18
- # @return [Array<String>]
19
- def common_dependency_gems
20
- COMMON_DEPENDENCY_GEMS
21
- end
22
-
23
- # @return [Array<String>]
24
- def development_dependency_gems
25
- DEVELOPMENT_DEPENDENCY_GEMS
26
- end
27
- end
28
-
29
- # @return [String]
30
- def common_dependencies
31
- dependencies_section(:common_dependency_gems, '')
32
- end
33
-
34
- def dependency_version(gem_name)
35
- ::Avm::EacRubyBase1::SourceGenerators::Base::VersionBuilder.new(gem_name, options).to_s
36
- end
37
-
38
- # @return [String]
39
- def development_dependencies
40
- dependencies_section(:development_dependency_gems, 'development_')
41
- end
42
-
43
- protected
44
-
45
- # @param gem_name [String]
46
- # @param prefix [String]
47
- # @return [String]
48
- def dependency_line(gem_name, prefix)
49
- "#{IDENT}s.add_#{prefix}dependency '#{gem_name}', #{dependency_version(gem_name)}\n"
50
- end
51
-
52
- # @param setting_key [Symbol]
53
- # @param prefix [String]
54
- # @return [String]
55
- def dependencies_section(gems_method, prefix)
56
- self.class.send(gems_method).sort.map { |gem_name| dependency_line(gem_name, prefix) }
57
- .join.rstrip
58
- end
59
- end
60
- end
61
- end
62
- end
63
- end
@@ -1,27 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/eac_ruby_base1/source_generators/base/options'
4
- require 'avm/source_generators/base'
5
- require 'eac_ruby_utils/core_ext'
6
-
7
- module Avm
8
- module EacRubyBase1
9
- module SourceGenerators
10
- class Base < ::Avm::SourceGenerators::Base
11
- module GemfileLock
12
- def generate_gemfile_lock
13
- return unless generate_gemfile_lock?
14
-
15
- self_gem.bundle('install').chdir_root.execute!
16
- end
17
-
18
- # @return [Boolean]
19
- def generate_gemfile_lock?
20
- options[::Avm::EacRubyBase1::SourceGenerators::Base::Options::GEMFILE_LOCK_OPTION]
21
- .to_bool
22
- end
23
- end
24
- end
25
- end
26
- end
27
- end
@@ -1,35 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/source_generators/base'
4
- require 'eac_ruby_utils/core_ext'
5
-
6
- module Avm
7
- module EacRubyBase1
8
- module SourceGenerators
9
- class Base < ::Avm::SourceGenerators::Base
10
- module Options
11
- common_concern
12
-
13
- GEMFILE_LOCK_OPTION = :'gemfile-lock'
14
-
15
- OPTIONS = {
16
- GEMFILE_LOCK_OPTION => 'Run "bundle install" at the end'
17
- }.freeze
18
-
19
- module ClassMethods
20
- def option_list
21
- OPTIONS.merge(dependency_version_options).inject(super) { |a, e| a.option(*e) }
22
- end
23
-
24
- # @return [Hash<Symbol, String>]
25
- def dependency_version_options
26
- (common_dependency_gems + development_dependency_gems).sort.to_h do |gem_name|
27
- ["#{gem_name}_version".dasherize.to_sym, "Version for \"#{gem_name}\" gem."]
28
- end
29
- end
30
- end
31
- end
32
- end
33
- end
34
- end
35
- end
@@ -1,62 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/source_generators/base'
4
- require 'avm/eac_ruby_base1/rubygems/remote'
5
- require 'eac_ruby_utils/core_ext'
6
-
7
- module Avm
8
- module EacRubyBase1
9
- module SourceGenerators
10
- class Base < ::Avm::SourceGenerators::Base
11
- class VersionBuilder
12
- enable_simple_cache
13
- common_constructor :gem_name, :options
14
-
15
- def to_s
16
- r = "'~> #{two_segments}'"
17
- r += ", '>= #{three_segments}'" if segments.count >= 3 && segments[2].positive?
18
- r
19
- end
20
-
21
- # @return [Gem::Version]
22
- def version
23
- options_version || loaded_version || maximum_version
24
- end
25
-
26
- def two_segments
27
- segments.first(2).join('.')
28
- end
29
-
30
- def three_segments
31
- segments.first(3).join('.')
32
- end
33
-
34
- private
35
-
36
- # @return [Gem::Version]
37
- def maximum_version
38
- r = ::Avm::EacRubyBase1::Rubygems::Remote.new(gem_name).maximum_number
39
- return ::Gem::Version.new(r) if r.present?
40
-
41
- raise "None version found for gem \"#{gem_name}\""
42
- end
43
-
44
- def segments_uncached
45
- version.release.to_s.split('.').map(&:to_i)
46
- end
47
-
48
- # @return [Gem::Version, nil]
49
- def loaded_version
50
- ::Gem.loaded_specs[gem_name].if_present(&:version)
51
- end
52
-
53
- def options_version
54
- options["#{gem_name}_version".dasherize.to_sym].if_present do |v|
55
- ::Gem::Version.new(v)
56
- end
57
- end
58
- end
59
- end
60
- end
61
- end
62
- end
@@ -1,112 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/eac_ruby_base1/sources/base'
4
- require 'avm/source_generators/base'
5
- require 'eac_templates/core_ext'
6
- require 'eac_ruby_utils/core_ext'
7
-
8
- module Avm
9
- module EacRubyBase1
10
- module SourceGenerators
11
- class Base < ::Avm::SourceGenerators::Base
12
- GEMSPEC_FILES_DIRECTORY_PATHS = %w[lib].freeze
13
- GEMSPEC_FILES_FILE_PATHS = [].freeze
14
- IDENT = ' '
15
- JOBS = %w[gemspec root_lib version_lib gemfile_lock].freeze
16
- TEMPLATE_VARIABLES = %w[lib_path name root_module].freeze
17
-
18
- enable_speaker
19
- enable_simple_cache
20
- require_sub __FILE__, include_modules: true
21
-
22
- # @return [String]
23
- def gemspec_extra
24
- gemspec_extra_lines.map { |line| "\n#{IDENT}#{line}" }.join
25
- end
26
-
27
- # @return [Array<String>]
28
- def gemspec_extra_lines
29
- []
30
- end
31
-
32
- # @return [String]
33
- def gemspec_files_value
34
- "Dir[#{gemspec_files_paths.map { |path| "'#{path}'" }.join(', ')}]"
35
- end
36
-
37
- # @return [Array<String>]
38
- def gemspec_files_paths
39
- ["{#{gemspec_files_directory_paths.sort.join(',')}}/**/*"] +
40
- gemspec_files_file_paths.sort
41
- end
42
-
43
- # @return [Array<String>]
44
- def gemspec_files_directory_paths
45
- GEMSPEC_FILES_DIRECTORY_PATHS
46
- end
47
-
48
- # @return [Array<String>]
49
- def gemspec_files_file_paths
50
- GEMSPEC_FILES_FILE_PATHS
51
- end
52
-
53
- def lib_path
54
- name.split('-').join('/')
55
- end
56
-
57
- def root_module
58
- lib_path.camelize
59
- end
60
-
61
- def root_module_close
62
- root_module_components.count.times.map do |index|
63
- "#{IDENT * index}end"
64
- end.reverse.join("\n")
65
- end
66
-
67
- def root_module_inner_identation
68
- IDENT * root_module_components.count
69
- end
70
-
71
- def root_module_open
72
- root_module_components.each_with_index.map do |component, index|
73
- "#{IDENT * index}module #{component}"
74
- end.join("\n")
75
- end
76
-
77
- def root_module_components
78
- root_module.split('::')
79
- end
80
-
81
- protected
82
-
83
- def generate_gemspec
84
- template_apply('gemspec', "#{name}.gemspec")
85
- end
86
-
87
- def generate_root_lib
88
- template_apply('root_lib', "lib/#{lib_path}.rb")
89
- end
90
-
91
- def generate_version_lib
92
- template_apply('version', "lib/#{lib_path}/version.rb")
93
- end
94
-
95
- # @return [EacTemplates::Modules::Base]
96
- def root_template
97
- template.child('static')
98
- end
99
-
100
- def self_gem_uncached
101
- ::Avm::EacRubyBase1::Sources::Base.new(target_path)
102
- end
103
-
104
- def template_apply(from, to)
105
- target = target_path.join(to)
106
- target.dirname.mkpath
107
- template.child(from).apply_to_file(self, target.to_path)
108
- end
109
- end
110
- end
111
- end
112
- end
@@ -1,11 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
-
5
- module Avm
6
- module EacRubyBase1
7
- module SourceGenerators
8
- require_sub __FILE__
9
- end
10
- end
11
- end
@@ -1,39 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/eac_generic_base0/sources/base'
4
- require 'eac_ruby_utils/core_ext'
5
- require 'eac_ruby_utils/ruby/command'
6
-
7
- module Avm
8
- module EacRubyBase1
9
- module Sources
10
- class Base < ::Avm::EacGenericBase0::Sources::Base
11
- class BundleCommand < ::EacRubyUtils::Ruby::Command
12
- GEMFILE_PATH_ENVVAR = 'BUNDLE_GEMFILE'
13
-
14
- attr_reader :source
15
-
16
- def initialize(source, command_args, extra_options = {})
17
- @source = source
18
- super(command_args, extra_options.merge(host_env: source.env))
19
- end
20
-
21
- # Changes current directory to the source's directory.
22
- def chdir_root
23
- chdir(source.path)
24
- end
25
-
26
- def envvar_gemfile
27
- envvar(GEMFILE_PATH_ENVVAR, source.gemfile_path.to_path)
28
- end
29
-
30
- protected
31
-
32
- def duplicate(command, extra_options)
33
- self.class.new(source, command, extra_options)
34
- end
35
- end
36
- end
37
- end
38
- end
39
- end
@@ -1,68 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'addressable'
4
- require 'avm/eac_generic_base0/sources/base'
5
- require 'avm/eac_ruby_base1/sources/base/bundle_command'
6
- require 'avm/eac_ruby_base1/sources/bundle_update'
7
- require 'eac_ruby_utils/core_ext'
8
-
9
- module Avm
10
- module EacRubyBase1
11
- module Sources
12
- class Base < ::Avm::EacGenericBase0::Sources::Base
13
- module Bundler
14
- CONFIGURED_GEMFILE_PATH_ENTRY_KEY = 'ruby.gemfile_path'
15
- DEFAULT_GEMFILE_PATH = 'Gemfile'
16
- GEMFILE_SOURCE_PARSER = /^\s*source\s+['"]([^'"]+)['"]$/.to_parser do |m|
17
- ::Addressable::URI.parse(m[1])
18
- end
19
-
20
- # @return [Avm::EacRubyBase1::Sources::Base::BundleCommand]
21
- def bundle(*args)
22
- ::Avm::EacRubyBase1::Sources::Base::BundleCommand.new(self, %w[bundle] + args)
23
- .envvar_gemfile
24
- end
25
-
26
- # @return [Avm::EacRubyBase1::Sources::BundleUpdate]
27
- def bundle_update
28
- ::Avm::EacRubyBase1::Sources::BundleUpdate.new(self)
29
- end
30
-
31
- # @return [String]
32
- def configured_gemfile_path
33
- configuration_entry(CONFIGURED_GEMFILE_PATH_ENTRY_KEY).value
34
- end
35
-
36
- # @return [String]
37
- def default_gemfile_path
38
- DEFAULT_GEMFILE_PATH
39
- end
40
-
41
- # @return [Bundler::LockfileParser]
42
- def gemfile_lock_content
43
- ::Bundler::LockfileParser.new(::Bundler.read_file(gemfile_lock_path))
44
- end
45
-
46
- def gemfile_lock_gem_version(gem_name)
47
- gemfile_lock_content.specs.find { |gem| gem.name == gem_name }.if_present(&:version)
48
- end
49
-
50
- # @return [Pathname]
51
- def gemfile_lock_path
52
- gemfile_path.basename_sub { |b| "#{b}.lock" }
53
- end
54
-
55
- # @return [Pathname]
56
- def gemfile_path
57
- path.join(configured_gemfile_path || default_gemfile_path)
58
- end
59
-
60
- # @return [Addressable::URI]
61
- def gemfile_source
62
- GEMFILE_SOURCE_PARSER.parse!(gemfile_path.read)
63
- end
64
- end
65
- end
66
- end
67
- end
68
- end
@@ -1,42 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/eac_generic_base0/sources/base'
4
- require 'eac_ruby_utils/core_ext'
5
-
6
- module Avm
7
- module EacRubyBase1
8
- module Sources
9
- class Base < ::Avm::EacGenericBase0::Sources::Base
10
- module Rake
11
- RAKEFILE_BASENAME = 'Rakefile'
12
- RAKE_TASKS_LINE_PARSER = /\Arake\s+(\S+)\s+/.to_parser do |m|
13
- m[1]
14
- end
15
-
16
- # @return [Avm::EacRubyBase1::Sources::Base::BundleCommand]
17
- def rake(*args)
18
- raise "File \"#{rakefile_path}\" does not exist" unless rakefile_path.exist?
19
-
20
- bundle('exec', 'rake', '--rakefile', rakefile_path, *args)
21
- end
22
-
23
- # @return [Pathname]
24
- def rakefile_path
25
- path.join(RAKEFILE_BASENAME)
26
- end
27
-
28
- # @return [Boolean]
29
- def rake_task?(task_name)
30
- rake_tasks.include?(task_name)
31
- end
32
-
33
- # @return [Array<String>]
34
- def rake_tasks
35
- rake('--all', '--tasks').execute!.each_line
36
- .map { |line| RAKE_TASKS_LINE_PARSER.parse!(line) }
37
- end
38
- end
39
- end
40
- end
41
- end
42
- end
@@ -1,28 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/eac_generic_base0/sources/base'
4
- require 'avm/eac_ruby_base1/sources/base/bundle_command'
5
- require 'avm/eac_ruby_base1/sources/bundle_update'
6
- require 'eac_ruby_utils/core_ext'
7
-
8
- module Avm
9
- module EacRubyBase1
10
- module Sources
11
- class Base < ::Avm::EacGenericBase0::Sources::Base
12
- module Rubocop
13
- RUBOCOP_CONFIG_SUBPATH = '.rubocop.yml'
14
-
15
- # @return [Avm::EacRubyBase1::Sources::Base::RubocopCommand]
16
- def rubocop_command
17
- ::Avm::EacRubyBase1::Sources::Base::RubocopCommand.new(self)
18
- end
19
-
20
- # @return [Pathname]
21
- def rubocop_config_path
22
- path.join(RUBOCOP_CONFIG_SUBPATH)
23
- end
24
- end
25
- end
26
- end
27
- end
28
- end