avm-tools 0.50.0 → 0.51.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 (353) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +8 -0
  3. data/lib/avm/data/package/dump.rb +1 -1
  4. data/lib/avm/git/issue/complete/_test.rb +1 -1
  5. data/lib/avm/instances/configuration/_rubocop.rb +1 -1
  6. data/lib/avm/ruby/gems.rb +11 -0
  7. data/lib/avm/ruby/gems/generator.rb +168 -0
  8. data/lib/avm/ruby/rubocop/_gemfile.rb +1 -1
  9. data/lib/avm/stereotypes/eac_webapp_base0/runner/data/dump.rb +1 -1
  10. data/lib/avm/tools/runner/git/deploy.rb +2 -2
  11. data/lib/avm/tools/runner/ruby/gems.rb +22 -0
  12. data/lib/avm/tools/runner/ruby/gems/generate.rb +50 -0
  13. data/lib/avm/tools/version.rb +1 -1
  14. data/template/avm/ruby/gems/generator/gemspec.template +18 -0
  15. data/template/avm/ruby/gems/generator/root_lib.template +7 -0
  16. data/template/avm/ruby/gems/generator/static/Gemfile +5 -0
  17. data/template/avm/ruby/gems/generator/static/spec/rubocop_spec.rb +7 -0
  18. data/template/avm/ruby/gems/generator/static/spec/spec_helper.rb +100 -0
  19. data/template/avm/ruby/gems/generator/version.template +5 -0
  20. data/vendor/gems/eac_ruby_utils/Gemfile +16 -0
  21. data/vendor/gems/eac_ruby_utils/MIT-LICENCE +16 -0
  22. data/vendor/gems/eac_ruby_utils/README.rdoc +3 -0
  23. data/vendor/gems/eac_ruby_utils/eac_ruby_utils.gemspec +24 -0
  24. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils.rb +6 -0
  25. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/arguments_consumer.rb +81 -0
  26. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/by_reference.rb +23 -0
  27. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/common_concern.rb +68 -0
  28. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/common_constructor.rb +133 -0
  29. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/configs.rb +74 -0
  30. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/configs/file.rb +66 -0
  31. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/console.rb +5 -0
  32. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/console/configs.rb +135 -0
  33. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/console/docopt_runner.rb +39 -0
  34. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/console/docopt_runner/_class_methods.rb +18 -0
  35. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/console/docopt_runner/_doc.rb +25 -0
  36. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/console/docopt_runner/_settings.rb +19 -0
  37. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/console/docopt_runner/_subcommands.rb +139 -0
  38. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/console/speaker.rb +133 -0
  39. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/console/speaker/_class_methods.rb +39 -0
  40. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/console/speaker/_constants.rb +14 -0
  41. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/console/speaker/list.rb +63 -0
  42. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/console/speaker/node.rb +26 -0
  43. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/contextualizable.rb +16 -0
  44. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/core_ext.rb +5 -0
  45. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/custom_format.rb +53 -0
  46. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/envs.rb +23 -0
  47. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/envs/base_env.rb +28 -0
  48. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/envs/command.rb +168 -0
  49. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/envs/command/extra_options.rb +46 -0
  50. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/envs/executable.rb +51 -0
  51. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/envs/file.rb +22 -0
  52. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/envs/local_env.rb +17 -0
  53. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/envs/process.rb +19 -0
  54. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/envs/spawn.rb +32 -0
  55. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env.rb +72 -0
  56. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/filesystem_cache.rb +53 -0
  57. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/fs.rb +9 -0
  58. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/fs/extname.rb +30 -0
  59. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/fs/temp.rb +52 -0
  60. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/fs/temp/directory.rb +16 -0
  61. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/fs/temp/file.rb +34 -0
  62. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/fs/traversable.rb +47 -0
  63. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/fs/traverser.rb +74 -0
  64. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/fs_cache.rb +11 -0
  65. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/listable.rb +17 -0
  66. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/listable/class_methods.rb +14 -0
  67. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/listable/instance_methods.rb +30 -0
  68. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/listable/integer_list.rb +23 -0
  69. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/listable/list.rb +93 -0
  70. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/listable/lists.rb +59 -0
  71. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/listable/string_list.rb +19 -0
  72. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/listable/symbol_list.rb +19 -0
  73. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/listable/value.rb +38 -0
  74. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/on_clean_ruby_environment.rb +12 -0
  75. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/options_consumer.rb +62 -0
  76. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patch.rb +11 -0
  77. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches.rb +4 -0
  78. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/class.rb +4 -0
  79. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/class/common_constructor.rb +9 -0
  80. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerable.rb +4 -0
  81. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerable/boolean_combinations.rb +45 -0
  82. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/hash.rb +5 -0
  83. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/options_consumer.rb +10 -0
  84. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/sym_keys_hash.rb +10 -0
  85. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/module.rb +4 -0
  86. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/module/common_concern.rb +10 -0
  87. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/module/console_speaker.rb +10 -0
  88. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/module/listable.rb +10 -0
  89. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/module/patch.rb +9 -0
  90. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/module/require_sub.rb +9 -0
  91. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/module/simple_cache.rb +10 -0
  92. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/object.rb +5 -0
  93. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/object/asserts.rb +14 -0
  94. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/object/if_present.rb +19 -0
  95. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/object/template.rb +16 -0
  96. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/object/to_pathname.rb +15 -0
  97. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname.rb +4 -0
  98. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/basename_sub.rb +9 -0
  99. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/regexp.rb +4 -0
  100. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/regexp/if_match.rb +16 -0
  101. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/time.rb +4 -0
  102. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/time/default_time_zone_set.rb +5 -0
  103. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/patches/time/local_time_zone.rb +25 -0
  104. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/paths_hash.rb +93 -0
  105. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/require_sub.rb +54 -0
  106. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/rspec.rb +9 -0
  107. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/rspec/conditional.rb +38 -0
  108. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/rspec/stubbed_ssh.rb +44 -0
  109. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/ruby.rb +9 -0
  110. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb +31 -0
  111. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/ruby/on_clean_environment.rb +26 -0
  112. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/settings_provider.rb +65 -0
  113. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/simple_cache.rb +42 -0
  114. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/templates.rb +9 -0
  115. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/templates/directory.rb +110 -0
  116. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/templates/file.rb +50 -0
  117. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/templates/searcher.rb +55 -0
  118. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_not_found_error.rb +7 -0
  119. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers.rb +25 -0
  120. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers/base.rb +23 -0
  121. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers/entries_reader.rb +25 -0
  122. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers/generic.rb +25 -0
  123. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/templates/variable_providers/hash.rb +29 -0
  124. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/version.rb +5 -0
  125. data/vendor/gems/eac_ruby_utils/lib/eac_ruby_utils/yaml.rb +96 -0
  126. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/arguments_consumer_spec.rb +17 -0
  127. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/common_concern_spec.rb +42 -0
  128. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/common_constructor_spec.rb +37 -0
  129. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/configs_spec.rb +31 -0
  130. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/console/configs_spec.rb +14 -0
  131. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/console/docopt_runner_spec.rb +136 -0
  132. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/console/speaker_spec.rb +36 -0
  133. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/custom_format_spec.rb +60 -0
  134. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/executable_spec.rb +37 -0
  135. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/ssh_env_spec.rb +25 -0
  136. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/filesystem_cache_spec.rb +32 -0
  137. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/fs/extname_spec.rb +18 -0
  138. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/fs/temp/temp_spec.rb +12 -0
  139. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/fs/temp_spec.rb +52 -0
  140. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/listable_spec.rb +212 -0
  141. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/options_consumer_spec.rb +45 -0
  142. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerable/boolean_combinations_spec.rb +39 -0
  143. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/hash/options_consumer_spec.rb +17 -0
  144. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/hash/sym_keys_hash_spec.rb +13 -0
  145. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/console_speaker_spec.rb +13 -0
  146. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/listable_spec.rb +13 -0
  147. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/simple_cache_spec.rb +13 -0
  148. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/if_present_spec.rb +13 -0
  149. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/template_spec.rb +23 -0
  150. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/template_spec_files/path/my_stub_with_template +1 -0
  151. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/basename_sub_spec.rb +17 -0
  152. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/paths_hash_spec.rb +49 -0
  153. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub_spec.rb +19 -0
  154. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub_spec/stubbed_module_a.rb +6 -0
  155. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub_spec/stubbed_not_module.rb +6 -0
  156. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/ruby_spec.rb +22 -0
  157. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/settings_provider_spec.rb +46 -0
  158. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/simple_cache_spec.rb +102 -0
  159. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/templates/file_spec.rb +35 -0
  160. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/templates/file_spec_files/expected_content +2 -0
  161. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/templates/file_spec_files/source.template +2 -0
  162. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/templates/searcher_spec.rb +30 -0
  163. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/templates/searcher_spec_files/path1/subdir1/file1.template +1 -0
  164. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/templates/searcher_spec_files/path1/subdir1/file2 +1 -0
  165. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/templates/searcher_spec_files/path2/subdir1/file3.template +1 -0
  166. data/vendor/gems/eac_ruby_utils/spec/lib/eac_ruby_utils/yaml_spec.rb +75 -0
  167. data/vendor/gems/eac_ruby_utils/spec/locales/pt-BR.yml +55 -0
  168. data/vendor/gems/eac_ruby_utils/spec/rubocop_check_spec.rb +7 -0
  169. data/vendor/gems/eac_ruby_utils/spec/spec_helper.rb +12 -0
  170. data/vendor/git-subrepo/Changes +51 -0
  171. data/vendor/git-subrepo/Intro.pod +508 -0
  172. data/vendor/git-subrepo/License +21 -0
  173. data/vendor/git-subrepo/Makefile +80 -0
  174. data/vendor/git-subrepo/Meta +28 -0
  175. data/vendor/git-subrepo/ReadMe.pod +695 -0
  176. data/vendor/git-subrepo/doc/comparison.swim +35 -0
  177. data/vendor/git-subrepo/doc/git-subrepo.swim +611 -0
  178. data/vendor/git-subrepo/doc/intro-to-subrepo.swim +387 -0
  179. data/vendor/git-subrepo/ext/bashplus/Changes +15 -0
  180. data/vendor/git-subrepo/ext/bashplus/License +21 -0
  181. data/vendor/git-subrepo/ext/bashplus/Makefile +45 -0
  182. data/vendor/git-subrepo/ext/bashplus/Meta +28 -0
  183. data/vendor/git-subrepo/ext/bashplus/ReadMe.pod +77 -0
  184. data/vendor/git-subrepo/ext/bashplus/bin/bash+ +43 -0
  185. data/vendor/git-subrepo/ext/bashplus/doc/bash+.swim +61 -0
  186. data/vendor/git-subrepo/ext/bashplus/lib/bash+.bash +92 -0
  187. data/vendor/git-subrepo/ext/bashplus/man/man1/bash+.1 +134 -0
  188. data/vendor/git-subrepo/ext/bashplus/man/man3/bash+.3 +134 -0
  189. data/vendor/git-subrepo/ext/bashplus/test/base.t +12 -0
  190. data/vendor/git-subrepo/ext/bashplus/test/fcopy.t +22 -0
  191. data/vendor/git-subrepo/ext/bashplus/test/lib/foo/bar.bash +3 -0
  192. data/vendor/git-subrepo/ext/bashplus/test/lib/foo/foo.bash +3 -0
  193. data/vendor/git-subrepo/ext/bashplus/test/source-bash+-std.t +18 -0
  194. data/vendor/git-subrepo/ext/bashplus/test/source-bash+.t +23 -0
  195. data/vendor/git-subrepo/ext/bashplus/test/test.bash +70 -0
  196. data/vendor/git-subrepo/ext/bashplus/test/use.t +19 -0
  197. data/vendor/git-subrepo/ext/test-more-bash/Changes +15 -0
  198. data/vendor/git-subrepo/ext/test-more-bash/License +21 -0
  199. data/vendor/git-subrepo/ext/test-more-bash/Makefile +20 -0
  200. data/vendor/git-subrepo/ext/test-more-bash/Meta +30 -0
  201. data/vendor/git-subrepo/ext/test-more-bash/ReadMe.pod +115 -0
  202. data/vendor/git-subrepo/ext/test-more-bash/doc/test-more.swim +89 -0
  203. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/Changes +15 -0
  204. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/License +21 -0
  205. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/Makefile +45 -0
  206. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/Meta +28 -0
  207. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/ReadMe.pod +77 -0
  208. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/bin/bash+ +43 -0
  209. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/doc/bash+.swim +61 -0
  210. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/lib/bash+.bash +92 -0
  211. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/man/man1/bash+.1 +134 -0
  212. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/man/man3/bash+.3 +134 -0
  213. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/base.t +12 -0
  214. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/fcopy.t +22 -0
  215. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/lib/foo/bar.bash +3 -0
  216. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/lib/foo/foo.bash +3 -0
  217. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/source-bash+-std.t +18 -0
  218. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/source-bash+.t +23 -0
  219. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/test.bash +70 -0
  220. data/vendor/git-subrepo/ext/test-more-bash/ext/bashplus/test/use.t +19 -0
  221. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/Changes +15 -0
  222. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/License +21 -0
  223. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/Makefile +37 -0
  224. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/Meta +28 -0
  225. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/ReadMe.pod +66 -0
  226. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/doc/test-tap.swim +48 -0
  227. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/lib/test/tap.bash +153 -0
  228. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/man/man3/test-tap.3 +119 -0
  229. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/bail_out.t +13 -0
  230. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/done.t +10 -0
  231. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/fail.t +20 -0
  232. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/fail_fast.t +15 -0
  233. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/helper.bash +9 -0
  234. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/pass.t +9 -0
  235. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/plan.t +10 -0
  236. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/skip_all.t +20 -0
  237. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/tap.t +13 -0
  238. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/test/bail.t +14 -0
  239. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/test/fail.t +7 -0
  240. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/test/fail_fast.t +12 -0
  241. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/test/skip-all-init.t +8 -0
  242. data/vendor/git-subrepo/ext/test-more-bash/ext/test-tap-bash/test/test/skip-all-plan.t +9 -0
  243. data/vendor/git-subrepo/ext/test-more-bash/lib/test/more.bash +95 -0
  244. data/vendor/git-subrepo/ext/test-more-bash/man/man3/test-more.3 +173 -0
  245. data/vendor/git-subrepo/ext/test-more-bash/test/fail.t +20 -0
  246. data/vendor/git-subrepo/ext/test-more-bash/test/more.t +20 -0
  247. data/vendor/git-subrepo/ext/test-more-bash/test/pass.t +9 -0
  248. data/vendor/git-subrepo/ext/test-more-bash/test/setup +8 -0
  249. data/vendor/git-subrepo/ext/test-more-bash/test/skip_all.t +11 -0
  250. data/vendor/git-subrepo/ext/test-more-bash/test/test/fail1.t +12 -0
  251. data/vendor/git-subrepo/ext/test-more-bash/test/test/skip_all.t +10 -0
  252. data/vendor/git-subrepo/lib/git-subrepo +1891 -0
  253. data/vendor/git-subrepo/lib/git-subrepo.d/help-functions.bash +343 -0
  254. data/vendor/git-subrepo/man/man1/git-subrepo.1 +746 -0
  255. data/vendor/git-subrepo/note/0.4.0 +12 -0
  256. data/vendor/git-subrepo/note/AllGitCmds +148 -0
  257. data/vendor/git-subrepo/note/Cases +32 -0
  258. data/vendor/git-subrepo/note/Commands +33 -0
  259. data/vendor/git-subrepo/note/Dags +199 -0
  260. data/vendor/git-subrepo/note/Gists +7 -0
  261. data/vendor/git-subrepo/note/Links +25 -0
  262. data/vendor/git-subrepo/note/Plugins +10 -0
  263. data/vendor/git-subrepo/note/Spec +39 -0
  264. data/vendor/git-subrepo/note/Story1 +57 -0
  265. data/vendor/git-subrepo/note/ToDo +55 -0
  266. data/vendor/git-subrepo/note/design.swim +137 -0
  267. data/vendor/git-subrepo/note/design2.swim +85 -0
  268. data/vendor/git-subrepo/note/init-test +38 -0
  269. data/vendor/git-subrepo/note/pull-dance.txt +18 -0
  270. data/vendor/git-subrepo/note/recreate-rebase-conflict.sh +56 -0
  271. data/vendor/git-subrepo/note/subtree-rebase-fail-example/test.bash +29 -0
  272. data/vendor/git-subrepo/note/test-subrepo-push.sh +69 -0
  273. data/vendor/git-subrepo/note/test.sh +58 -0
  274. data/vendor/git-subrepo/pkg/bin/generate-completion.pl +210 -0
  275. data/vendor/git-subrepo/pkg/bin/generate-help-functions.pl +89 -0
  276. data/vendor/git-subrepo/share/completion.bash +42 -0
  277. data/vendor/git-subrepo/share/enable-completion.sh +50 -0
  278. data/vendor/git-subrepo/share/git-completion.bash +2738 -0
  279. data/vendor/git-subrepo/share/zsh-completion/_git-subrepo +82 -0
  280. data/vendor/git-subrepo/test/branch-all.t +41 -0
  281. data/vendor/git-subrepo/test/branch-rev-list-one-path.t +43 -0
  282. data/vendor/git-subrepo/test/branch-rev-list.t +47 -0
  283. data/vendor/git-subrepo/test/branch.t +52 -0
  284. data/vendor/git-subrepo/test/clean.t +43 -0
  285. data/vendor/git-subrepo/test/clone-annotated-tag.t +45 -0
  286. data/vendor/git-subrepo/test/clone.t +107 -0
  287. data/vendor/git-subrepo/test/compile.t +19 -0
  288. data/vendor/git-subrepo/test/config.t +58 -0
  289. data/vendor/git-subrepo/test/encode.t +91 -0
  290. data/vendor/git-subrepo/test/error.t +171 -0
  291. data/vendor/git-subrepo/test/fetch.t +43 -0
  292. data/vendor/git-subrepo/test/gitignore.t +61 -0
  293. data/vendor/git-subrepo/test/init.t +64 -0
  294. data/vendor/git-subrepo/test/issue29.t +98 -0
  295. data/vendor/git-subrepo/test/issue95.t +98 -0
  296. data/vendor/git-subrepo/test/issue96.t +96 -0
  297. data/vendor/git-subrepo/test/pull-all.t +38 -0
  298. data/vendor/git-subrepo/test/pull-merge.t +113 -0
  299. data/vendor/git-subrepo/test/pull-message.t +88 -0
  300. data/vendor/git-subrepo/test/pull-new-branch.t +58 -0
  301. data/vendor/git-subrepo/test/pull-ours.t +90 -0
  302. data/vendor/git-subrepo/test/pull-theirs.t +82 -0
  303. data/vendor/git-subrepo/test/pull-twice.t +44 -0
  304. data/vendor/git-subrepo/test/pull.t +99 -0
  305. data/vendor/git-subrepo/test/push-after-init.t +51 -0
  306. data/vendor/git-subrepo/test/push-force.t +56 -0
  307. data/vendor/git-subrepo/test/push-new-branch.t +61 -0
  308. data/vendor/git-subrepo/test/push-no-changes.t +29 -0
  309. data/vendor/git-subrepo/test/push-squash.t +56 -0
  310. data/vendor/git-subrepo/test/push.t +176 -0
  311. data/vendor/git-subrepo/test/reclone.t +45 -0
  312. data/vendor/git-subrepo/test/repo/bar/HEAD +1 -0
  313. data/vendor/git-subrepo/test/repo/bar/config +4 -0
  314. data/vendor/git-subrepo/test/repo/bar/objects/1f/0c4b264caed0126814a0ede851a1e0b4e16ae6 +0 -0
  315. data/vendor/git-subrepo/test/repo/bar/objects/87/46903fdb1b9c2101377880125917c2e05b4d69 +0 -0
  316. data/vendor/git-subrepo/test/repo/bar/objects/94/c86ffc745232d89f78c6f895e11e71272518db +0 -0
  317. data/vendor/git-subrepo/test/repo/bar/objects/c6/76c57b6576743fa56278527aa60ebd2e202a7c +0 -0
  318. data/vendor/git-subrepo/test/repo/bar/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 +0 -0
  319. data/vendor/git-subrepo/test/repo/bar/objects/f6/2a8ff3feadf39b0a98f1a86ec6d1eb33858ee9 +0 -0
  320. data/vendor/git-subrepo/test/repo/bar/refs/heads/master +1 -0
  321. data/vendor/git-subrepo/test/repo/bar/refs/tags/A +1 -0
  322. data/vendor/git-subrepo/test/repo/foo/HEAD +1 -0
  323. data/vendor/git-subrepo/test/repo/foo/config +4 -0
  324. data/vendor/git-subrepo/test/repo/foo/objects/a0/f4cdaaf533a936296cdebbed8206c3b9ededa8 +0 -0
  325. data/vendor/git-subrepo/test/repo/foo/objects/e2/1291a1ad392a9d4c51dd9586804f1467b28afd +0 -0
  326. data/vendor/git-subrepo/test/repo/foo/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 +0 -0
  327. data/vendor/git-subrepo/test/repo/foo/refs/heads/master +1 -0
  328. data/vendor/git-subrepo/test/repo/init/HEAD +1 -0
  329. data/vendor/git-subrepo/test/repo/init/config +5 -0
  330. data/vendor/git-subrepo/test/repo/init/objects/11/523f5dcf03b4c89b592dc8a3d0308f68da2386 +0 -0
  331. data/vendor/git-subrepo/test/repo/init/objects/14/2addf8ec5f37334e837440122c62f2c68a29ad +0 -0
  332. data/vendor/git-subrepo/test/repo/init/objects/32/5180321750a21cd7a4e7ecda319e557a4f6a09 +2 -0
  333. data/vendor/git-subrepo/test/repo/init/objects/3d/918c6901c02f43af5d31779dd5e1f9166aeb36 +0 -0
  334. data/vendor/git-subrepo/test/repo/init/objects/3e/4cb596066dce63ba4d047abddb677389b65e19 +0 -0
  335. data/vendor/git-subrepo/test/repo/init/objects/4b/6e53022e7a04f07887697e4f3d7c377fd9822b +0 -0
  336. data/vendor/git-subrepo/test/repo/init/objects/58/931fc1bd559b59c41ea738fc7ad04f9ad01bd3 +0 -0
  337. data/vendor/git-subrepo/test/repo/init/objects/5e/c0c28e1b806f25efdca18fcf7a74b49c3755bd +0 -0
  338. data/vendor/git-subrepo/test/repo/init/objects/75/fa6584e748f57eff06eebdc55e9ac21d4fcbf2 +1 -0
  339. data/vendor/git-subrepo/test/repo/init/objects/80/2d5edbd5e1cb7fca82b5bd38e7c8a0a496fb20 +0 -0
  340. data/vendor/git-subrepo/test/repo/init/objects/94/7b3d714c38791e95ad6f928b48c98bb8708acd +0 -0
  341. data/vendor/git-subrepo/test/repo/init/objects/95/e1f2df3f4d5f3d7a60588c25a7ca8a913d3c2a +1 -0
  342. data/vendor/git-subrepo/test/repo/init/objects/b1/5f4a7666baf40d949548ead946a3370e273479 +0 -0
  343. data/vendor/git-subrepo/test/repo/init/objects/c3/ee8978c4c5d84c3b7d00ba8e5906933d027882 +0 -0
  344. data/vendor/git-subrepo/test/repo/init/objects/c8/b0bffbc405ef3fad7354ff833fbec36d67ddfa +3 -0
  345. data/vendor/git-subrepo/test/repo/init/objects/dd/8bdb934ec848137f011fe423b185505c343626 +2 -0
  346. data/vendor/git-subrepo/test/repo/init/objects/e2/9be58c767cfeb27235c995d293a7d71aac0135 +2 -0
  347. data/vendor/git-subrepo/test/repo/init/objects/ee/1224401fc6aac595145fa727dcf6706ac8aec1 +1 -0
  348. data/vendor/git-subrepo/test/repo/init/objects/f1/cc1a657b2e805c400f5dcaaa76bd29c6178b1b +0 -0
  349. data/vendor/git-subrepo/test/repo/init/refs/heads/master +1 -0
  350. data/vendor/git-subrepo/test/setup +205 -0
  351. data/vendor/git-subrepo/test/status.t +68 -0
  352. data/vendor/git-subrepo/test/submodule.t +45 -0
  353. metadata +349 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1137821182b34e4446f1f175eac9e65759aa94850eaa2be6452e438794c3d7e2
4
- data.tar.gz: 646ea6c80d87e421e6959d316c746ef24e778650346dfbc7cd141c556fec77ad
3
+ metadata.gz: a30c179acc435486e3fe35ad34714133f582332ddcfb98fd00be1f75c1960df2
4
+ data.tar.gz: 07d4c21e8c6dd98d2f7ce70a02f5caec1ba0660e9a59f5d15af0c8b6f711022a
5
5
  SHA512:
6
- metadata.gz: 01a3a8f6965075d701380b9e97338b3d50497cf2ccc3e0e5bfe3f219c709db6b0c0bb3a6af6c51ea19557046c2170134fd70ea830b0faaddc03dac1f958a9c99
7
- data.tar.gz: ea67bf1ddfdae82da134cb4883958ed9c1efc17d6b25e65d2acc40d5c16fadeacc67b1f93817c113b4165360caf16a21fee1ef38e788e2e76b8e593625a7d7ed
6
+ metadata.gz: 9d3b21ec49fb39bad56c9d8de4538cf5261f452d57d8c0188e0cb501ae7a9584fa54d2e35a0a88c250956af6edc48eec0e91f2aa4c186fec038f67d148f911dc
7
+ data.tar.gz: 761bad690d7493109e71c2fdb34efcf5a0f1737d6d5b52d1f23d16c4c597e18593a5bca169900484421ff8071f79a20560a8754409e4b529135b905c099cbade
data/Gemfile CHANGED
@@ -3,3 +3,11 @@
3
3
  source 'https://rubygems.org'
4
4
 
5
5
  gemspec
6
+
7
+ gems_subdir = ::File.join(__dir__, 'vendor', 'gems')
8
+ Dir["#{gems_subdir}/*"].each do |dir|
9
+ next unless ::File.directory?(dir)
10
+
11
+ basename = ::File.basename(dir)
12
+ gem basename, path: "#{gems_subdir}/#{basename}"
13
+ end
@@ -10,7 +10,7 @@ module Avm
10
10
  enable_console_speaker
11
11
  enable_listable
12
12
 
13
- DEFAULT_EXPIRE_TIME = 1.days
13
+ DEFAULT_EXPIRE_TIME = 1.day
14
14
  DEFAULT_FILE_EXTENSION = '.tar'
15
15
 
16
16
  attr_reader :package, :data_file_path, :existing
@@ -10,7 +10,7 @@ module Avm
10
10
  class Complete
11
11
  def test_result
12
12
  test_command = configuration.if_present(&:any_test_command)
13
- return ::Avm::Result.success('unconfigured') unless test_command.present?
13
+ return ::Avm::Result.success('unconfigured') if test_command.blank?
14
14
 
15
15
  infom "Running test command \"#{test_command}\"..."
16
16
  result = test_command.execute
@@ -12,7 +12,7 @@ module Avm
12
12
 
13
13
  def rubocop_gemfile
14
14
  gemfile_path = read_entry(RUBOCOP_GEMFILE_KEY)
15
- return nil unless gemfile_path.present?
15
+ return nil if gemfile_path.blank?
16
16
 
17
17
  gemfile_path = gemfile_path.to_pathname.expand_path(storage_path.parent)
18
18
  return gemfile_path if gemfile_path.file?
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avm
6
+ module Ruby
7
+ module Gems
8
+ require_sub __FILE__
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,168 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/patches/object/template'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module Ruby
8
+ module Gems
9
+ class Generator
10
+ IDENT = ' '
11
+ JOBS = %w[root_directory gemspec root_lib version_lib static gemfile_lock rspec].freeze
12
+ TEMPLATE_VARIABLES = %w[lib_path name root_module].freeze
13
+
14
+ enable_console_speaker
15
+ enable_simple_cache
16
+ common_constructor :root_directory, :options, default: [{}] do
17
+ self.root_directory = root_directory.to_pathname
18
+ run
19
+ end
20
+
21
+ def eac_ruby_gem_support_version
22
+ dependency_version('eac_ruby_gem_support')
23
+ end
24
+
25
+ def eac_ruby_utils_version
26
+ dependency_version('eac_ruby_utils')
27
+ end
28
+
29
+ def name
30
+ root_directory.basename.to_s
31
+ end
32
+
33
+ def lib_path
34
+ name.split('-').join('/')
35
+ end
36
+
37
+ def root_module
38
+ lib_path.camelize
39
+ end
40
+
41
+ def root_module_close
42
+ root_module_components.count.times.map do |index|
43
+ (IDENT * index) + 'end'
44
+ end.reverse.join("\n")
45
+ end
46
+
47
+ def root_module_inner_identation
48
+ IDENT * root_module_components.count
49
+ end
50
+
51
+ def root_module_open
52
+ root_module_components.each_with_index.map do |component, index|
53
+ (IDENT * index) + 'module ' + component
54
+ end.join("\n")
55
+ end
56
+
57
+ def root_module_components
58
+ root_module.split('::')
59
+ end
60
+
61
+ protected
62
+
63
+ def apply_to_root_directory(template, subpath)
64
+ if template.is_a?(::EacRubyUtils::Templates::Directory)
65
+ template.children.each do |child|
66
+ apply_to_root_directory(child, subpath.join(child.basename))
67
+ end
68
+ elsif template.is_a?(::EacRubyUtils::Templates::File)
69
+ template.apply_to_file(template_variables, root_directory.join(subpath))
70
+ else
71
+ raise "Unknown template object: #{template}"
72
+ end
73
+ end
74
+
75
+ def dependency_version(gem_name)
76
+ VersionBuilder.new(gem_name, options).to_s
77
+ end
78
+
79
+ def generate_gemspec
80
+ template_apply('gemspec', "#{name}.gemspec")
81
+ end
82
+
83
+ def generate_gemfile_lock
84
+ self_gem.bundle('install').chdir_root.execute!
85
+ end
86
+
87
+ def generate_root_directory
88
+ root_directory.mkpath
89
+ end
90
+
91
+ def generate_root_lib
92
+ template_apply('root_lib', "lib/#{lib_path}.rb")
93
+ end
94
+
95
+ def generate_rspec
96
+ self_gem.bundle('exec', 'rspec').chdir_root.execute!
97
+ end
98
+
99
+ def generate_static
100
+ template.child('static').apply(self, root_directory)
101
+ end
102
+
103
+ def generate_version_lib
104
+ template_apply('version', "lib/#{lib_path}/version.rb")
105
+ end
106
+
107
+ def run
108
+ infov 'Root directory', root_directory
109
+ infov 'Gem name', name
110
+ JOBS.each do |job|
111
+ infom "Generating #{job.humanize}..."
112
+ send("generate_#{job}")
113
+ end
114
+ end
115
+
116
+ def self_gem_uncached
117
+ ::EacRubyGemsUtils::Gem.new(root_directory)
118
+ end
119
+
120
+ def template_apply(from, to)
121
+ target = root_directory.join(to)
122
+ target.dirname.mkpath
123
+ template.child("#{from}.template").apply_to_file(self, target.to_path)
124
+ end
125
+
126
+ class VersionBuilder
127
+ enable_simple_cache
128
+ common_constructor :gem_name, :options
129
+
130
+ def to_s
131
+ r = "'~> #{two_segments}'"
132
+ r += ", '>= #{three_segments}'" if segments.count >= 3 && segments[2].positive?
133
+ r
134
+ end
135
+
136
+ # @return [Gem::Version]
137
+ def version
138
+ (options_version || default_version)
139
+ end
140
+
141
+ def two_segments
142
+ segments.first(2).join('.')
143
+ end
144
+
145
+ def three_segments
146
+ segments.first(3).join('.')
147
+ end
148
+
149
+ private
150
+
151
+ def segments_uncached
152
+ version.release.to_s.split('.').map(&:to_i)
153
+ end
154
+
155
+ def default_version
156
+ ::Gem.loaded_specs[gem_name].version
157
+ end
158
+
159
+ def options_version
160
+ options["#{gem_name}_version".to_sym].if_present do |v|
161
+ ::Gem::Version.new(v)
162
+ end
163
+ end
164
+ end
165
+ end
166
+ end
167
+ end
168
+ end
@@ -18,7 +18,7 @@ module Avm
18
18
  end
19
19
 
20
20
  def rubocop_gemfile?
21
- return false unless mygem.present?
21
+ return false if mygem.blank?
22
22
 
23
23
  mygem.bundle('install').execute!
24
24
  mygem.gemfile_lock_gem_version('rubocop').present?
@@ -14,7 +14,7 @@ module Avm
14
14
  include ::EacRubyUtils::SimpleCache
15
15
  include ::EacRubyUtils::Console::Speaker
16
16
 
17
- DUMP_EXPIRE_TIME = 1.days
17
+ DUMP_EXPIRE_TIME = 1.day
18
18
  DEFAULT_DUMP_PATH_ENTRY_SUFFIX = 'data.default_dump_path'
19
19
  NO_DUMP_MESSAGE = 'Dump "%s" already exist and rewrite options was no setted nor ' \
20
20
  'dump was expired.'
@@ -47,10 +47,10 @@ module Avm
47
47
  end
48
48
 
49
49
  def validate
50
- unless reference_sha1.present?
50
+ if reference_sha1.blank?
51
51
  fatal_error "Object ID not found for reference \"#{reference}\""
52
52
  end
53
- fatal_error 'Nor <target-url> nor --instance was setted' unless target_url.present?
53
+ fatal_error 'Nor <target-url> nor --instance was setted' if target_url.blank?
54
54
  end
55
55
 
56
56
  def main_info_banner
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/console/docopt_runner'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module Tools
8
+ class Runner < ::EacRubyUtils::Console::DocoptRunner
9
+ class Ruby < ::EacRubyUtils::Console::DocoptRunner
10
+ class Gems < ::EacRubyUtils::Console::DocoptRunner
11
+ require_sub __FILE__
12
+ include ::EacCli::DefaultRunner
13
+
14
+ runner_definition do
15
+ desc 'Rubygems utilities for AVM.'
16
+ subcommands
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,50 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/ruby/gems/generator'
4
+ require 'eac_ruby_utils/console/docopt_runner'
5
+ require 'eac_ruby_utils/core_ext'
6
+ require 'eac_cli/default_runner'
7
+
8
+ module Avm
9
+ module Tools
10
+ class Runner < ::EacRubyUtils::Console::DocoptRunner
11
+ class Ruby < ::EacRubyUtils::Console::DocoptRunner
12
+ class Gems < ::EacRubyUtils::Console::DocoptRunner
13
+ class Generate < ::EacRubyUtils::Console::DocoptRunner
14
+ enable_console_speaker
15
+ enable_simple_cache
16
+
17
+ DOC = <<~DOCUMENT
18
+ Create a gem.
19
+
20
+ Usage:
21
+ __PROGRAM__ [options] <path>
22
+ __PROGRAM__ -h --help
23
+
24
+ Options:
25
+ -h --help Show this help.
26
+ --eac-ruby-utils-version=<version> Version for "eac_ruby_utils" gem.
27
+ --eac-ruby-gem-support-version=<version> Version for "eac_ruby_gem_support" gem.
28
+ DOCUMENT
29
+
30
+ def run
31
+ success "Gem \"#{generator.name}\" created in \"#{generator.root_directory}\""
32
+ end
33
+
34
+ private
35
+
36
+ def generator_uncached
37
+ ::Avm::Ruby::Gems::Generator.new(options.fetch('<path>'), generator_options)
38
+ end
39
+
40
+ def generator_options
41
+ %w[eac_ruby_utils eac_ruby_gem_support].map do |gem_name|
42
+ ["#{gem_name}_version".to_sym, options.fetch("--#{gem_name.dasherize}-version")]
43
+ end.to_h
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module Tools
5
- VERSION = '0.50.0'
5
+ VERSION = '0.51.0'
6
6
  end
7
7
  end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ $LOAD_PATH.push File.expand_path('lib', __dir__)
4
+
5
+ require '%%LIB_PATH%%/version'
6
+
7
+ Gem::Specification.new do |s|
8
+ s.name = '%%NAME%%'
9
+ s.version = %%ROOT_MODULE%%::VERSION
10
+ s.authors = ['Put here the authors']
11
+ s.summary = 'Put here de description.'
12
+
13
+ s.files = Dir['{lib}/**/*']
14
+
15
+ s.add_dependency 'eac_ruby_utils', %%EAC_RUBY_UTILS_VERSION%%
16
+
17
+ s.add_development_dependency 'eac_ruby_gem_support', %%EAC_RUBY_GEM_SUPPORT_VERSION%%
18
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ %%ROOT_MODULE_OPEN%%
6
+ %%ROOT_MODULE_INNER_IDENTATION%%require_sub __FILE__
7
+ %%ROOT_MODULE_CLOSE%%
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_gem_support/spec/examples/rubocop_check'
4
+
5
+ RSpec.describe ::RuboCop, slow: true do
6
+ include_examples 'rubocop_check', ::File.expand_path('..', __dir__)
7
+ end
@@ -0,0 +1,100 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file was generated by the `rspec --init` command. Conventionally, all
4
+ # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
5
+ # The generated `.rspec` file contains `--require spec_helper` which will cause
6
+ # this file to always be loaded, without a need to explicitly require it in any
7
+ # files.
8
+ #
9
+ # Given that it is always loaded, you are encouraged to keep this file as
10
+ # light-weight as possible. Requiring heavyweight dependencies from this file
11
+ # will add to the boot time of your test suite on EVERY test run, even for an
12
+ # individual file that may not need all of that loaded. Instead, consider making
13
+ # a separate helper file that requires the additional dependencies and performs
14
+ # the additional setup, and require it from the spec files that actually need
15
+ # it.
16
+ #
17
+ # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
18
+ RSpec.configure do |config|
19
+ # rspec-expectations config goes here. You can use an alternate
20
+ # assertion/expectation library such as wrong or the stdlib/minitest
21
+ # assertions if you prefer.
22
+ config.expect_with :rspec do |expectations|
23
+ # This option will default to `true` in RSpec 4. It makes the `description`
24
+ # and `failure_message` of custom matchers include text for helper methods
25
+ # defined using `chain`, e.g.:
26
+ # be_bigger_than(2).and_smaller_than(4).description
27
+ # # => "be bigger than 2 and smaller than 4"
28
+ # ...rather than:
29
+ # # => "be bigger than 2"
30
+ expectations.include_chain_clauses_in_custom_matcher_descriptions = true
31
+ end
32
+
33
+ # rspec-mocks config goes here. You can use an alternate test double
34
+ # library (such as bogus or mocha) by changing the `mock_with` option here.
35
+ config.mock_with :rspec do |mocks|
36
+ # Prevents you from mocking or stubbing a method that does not exist on
37
+ # a real object. This is generally recommended, and will default to
38
+ # `true` in RSpec 4.
39
+ mocks.verify_partial_doubles = true
40
+ end
41
+
42
+ # This option will default to `:apply_to_host_groups` in RSpec 4 (and will
43
+ # have no way to turn it off -- the option exists only for backwards
44
+ # compatibility in RSpec 3). It causes shared context metadata to be
45
+ # inherited by the metadata hash of host groups and examples, rather than
46
+ # triggering implicit auto-inclusion in groups with matching metadata.
47
+ config.shared_context_metadata_behavior = :apply_to_host_groups
48
+
49
+ # The settings below are suggested to provide a good initial experience
50
+ # with RSpec, but feel free to customize to your heart's content.
51
+ # # This allows you to limit a spec run to individual examples or groups
52
+ # # you care about by tagging them with `:focus` metadata. When nothing
53
+ # # is tagged with `:focus`, all examples get run. RSpec also provides
54
+ # # aliases for `it`, `describe`, and `context` that include `:focus`
55
+ # # metadata: `fit`, `fdescribe` and `fcontext`, respectively.
56
+ # config.filter_run_when_matching :focus
57
+ #
58
+ # # Allows RSpec to persist some state between runs in order to support
59
+ # # the `--only-failures` and `--next-failure` CLI options. We recommend
60
+ # # you configure your source control system to ignore this file.
61
+ # config.example_status_persistence_file_path = "spec/examples.txt"
62
+ #
63
+ # # Limits the available syntax to the non-monkey patched syntax that is
64
+ # # recommended. For more details, see:
65
+ # # - http://rspec.info/blog/2012/06/rspecs-new-expectation-syntax/
66
+ # # - http://www.teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
67
+ # # - http://rspec.info/blog/2014/05/notable-changes-in-rspec-3/#zero-monkey-patching-mode
68
+ # config.disable_monkey_patching!
69
+ #
70
+ # # This setting enables warnings. It's recommended, but in some cases may
71
+ # # be too noisy due to issues in dependencies.
72
+ # config.warnings = true
73
+ #
74
+ # # Many RSpec users commonly either run the entire suite or an individual
75
+ # # file, and it's useful to allow more verbose output when running an
76
+ # # individual spec file.
77
+ # if config.files_to_run.one?
78
+ # # Use the documentation formatter for detailed output,
79
+ # # unless a formatter has already been configured
80
+ # # (e.g. via a command-line flag).
81
+ # config.default_formatter = "doc"
82
+ # end
83
+ #
84
+ # # Print the 10 slowest examples and example groups at the
85
+ # # end of the spec run, to help surface which specs are running
86
+ # # particularly slow.
87
+ # config.profile_examples = 10
88
+ #
89
+ # # Run specs in random order to surface order dependencies. If you find an
90
+ # # order dependency and want to debug it, you can fix the order by providing
91
+ # # the seed, which is printed after each run.
92
+ # # --seed 1234
93
+ # config.order = :random
94
+ #
95
+ # # Seed global randomization in this process using the `--seed` CLI option.
96
+ # # Setting this allows you to use `--seed` to deterministically reproduce
97
+ # # test failures related to randomization by passing the same `--seed` value
98
+ # # as the one that triggered the failure.
99
+ # Kernel.srand config.seed
100
+ end