eac_tools 0.76.1 → 0.77.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 (332) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +23 -38
  3. data/lib/eac_tools/version.rb +1 -1
  4. data/sub/avm-eac_generic_base0/Gemfile +2 -2
  5. data/sub/avm-eac_generic_base0/avm-eac_generic_base0.gemspec +5 -3
  6. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/file_formats/base/apply.rb +1 -1
  7. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/file_formats/base/file_resource_name_helper.rb +2 -2
  8. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/file_formats/base.rb +1 -1
  9. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/version.rb +1 -1
  10. data/sub/avm-eac_generic_base0/spec/lib/avm/eac_generic_base0/file_formats/base_spec.rb +1 -1
  11. data/sub/avm-eac_generic_base0/spec/lib/avm/eac_generic_base0/sources/base_spec.rb +1 -1
  12. data/sub/avm-eac_generic_base0/spec/rubocop_spec.rb +1 -1
  13. data/sub/avm-eac_generic_base0/spec/spec_helper.rb +1 -1
  14. data/sub/avm-tools/avm-tools.gemspec +6 -4
  15. data/sub/avm-tools/lib/avm/tools/runner/instance/system.rb +65 -0
  16. data/sub/avm-tools/lib/avm/tools/runner/source/issue/complete.rb +4 -4
  17. data/sub/avm-tools/lib/avm/tools/runner_with/instance_data_dump.rb +1 -1
  18. data/sub/avm-tools/lib/avm/tools/version.rb +1 -1
  19. data/sub/avm-tools/spec/dummy/avm-tools_stub/avm-tools.gemspec +1 -0
  20. data/sub/avm-tools/spec/dummy/ruby_gem_stub/ruby_gem_stub.gemspec +1 -0
  21. data/sub/avm-tools/spec/lib/avm/projects/stereotypes/git_subrepo/publish_spec.rb +6 -3
  22. data/sub/avm-tools/spec/lib/avm/projects/stereotypes/git_subrepo/warp_spec.rb +2 -2
  23. data/sub/avm-tools/spec/lib/avm/tools/runner/files/rotate_spec.rb +2 -2
  24. data/sub/avm-tools/spec/lib/avm/tools/runner/git/deploy_spec.rb +6 -6
  25. metadata +11 -311
  26. data/sub/eac_docker/Gemfile +0 -8
  27. data/sub/eac_docker/eac_docker.gemspec +0 -19
  28. data/sub/eac_docker/lib/eac_docker/container.rb +0 -84
  29. data/sub/eac_docker/lib/eac_docker/debug.rb +0 -15
  30. data/sub/eac_docker/lib/eac_docker/executables.rb +0 -18
  31. data/sub/eac_docker/lib/eac_docker/images/base.rb +0 -14
  32. data/sub/eac_docker/lib/eac_docker/images/coded.rb +0 -43
  33. data/sub/eac_docker/lib/eac_docker/images/named.rb +0 -30
  34. data/sub/eac_docker/lib/eac_docker/images/templatized.rb +0 -51
  35. data/sub/eac_docker/lib/eac_docker/images.rb +0 -9
  36. data/sub/eac_docker/lib/eac_docker/registry.rb +0 -17
  37. data/sub/eac_docker/lib/eac_docker/rspec/setup.rb +0 -17
  38. data/sub/eac_docker/lib/eac_docker/rspec/stub_image.rb +0 -40
  39. data/sub/eac_docker/lib/eac_docker/rspec.rb +0 -9
  40. data/sub/eac_docker/lib/eac_docker/version.rb +0 -5
  41. data/sub/eac_docker/lib/eac_docker.rb +0 -7
  42. data/sub/eac_docker/spec/lib/eac_docker/executables_spec.rb +0 -9
  43. data/sub/eac_docker/spec/lib/eac_docker/images/coded_spec.rb +0 -12
  44. data/sub/eac_docker/spec/lib/eac_docker/images/coded_spec_files/image1/Dockerfile +0 -1
  45. data/sub/eac_docker/spec/lib/eac_docker/images/templatized_spec.rb +0 -18
  46. data/sub/eac_docker/spec/lib/eac_docker/images/templatized_spec_files/stub_docker_image/Dockerfile +0 -1
  47. data/sub/eac_docker/spec/rubocop_spec.rb +0 -3
  48. data/sub/eac_docker/spec/spec_helper.rb +0 -4
  49. data/sub/eac_ruby_base0/Gemfile +0 -8
  50. data/sub/eac_ruby_base0/eac_ruby_base0.gemspec +0 -21
  51. data/sub/eac_ruby_base0/lib/eac_ruby_base0/application.rb +0 -88
  52. data/sub/eac_ruby_base0/lib/eac_ruby_base0/application_xdg.rb +0 -34
  53. data/sub/eac_ruby_base0/lib/eac_ruby_base0/core_ext.rb +0 -5
  54. data/sub/eac_ruby_base0/lib/eac_ruby_base0/jobs_runner.rb +0 -31
  55. data/sub/eac_ruby_base0/lib/eac_ruby_base0/patches/class/jobs_runner.rb +0 -10
  56. data/sub/eac_ruby_base0/lib/eac_ruby_base0/patches/class.rb +0 -4
  57. data/sub/eac_ruby_base0/lib/eac_ruby_base0/patches.rb +0 -4
  58. data/sub/eac_ruby_base0/lib/eac_ruby_base0/rspec/setup.rb +0 -14
  59. data/sub/eac_ruby_base0/lib/eac_ruby_base0/rspec.rb +0 -9
  60. data/sub/eac_ruby_base0/lib/eac_ruby_base0/runner/contexts.rb +0 -52
  61. data/sub/eac_ruby_base0/lib/eac_ruby_base0/runner/prepend.rb +0 -39
  62. data/sub/eac_ruby_base0/lib/eac_ruby_base0/runner.rb +0 -37
  63. data/sub/eac_ruby_base0/lib/eac_ruby_base0/runner_with.rb +0 -9
  64. data/sub/eac_ruby_base0/lib/eac_ruby_base0/version.rb +0 -5
  65. data/sub/eac_ruby_base0/lib/eac_ruby_base0.rb +0 -7
  66. data/sub/eac_ruby_base0/spec/rubocop_spec.rb +0 -3
  67. data/sub/eac_ruby_base0/spec/spec_helper.rb +0 -4
  68. data/sub/eac_ruby_utils/Gemfile +0 -8
  69. data/sub/eac_ruby_utils/MIT-LICENCE +0 -16
  70. data/sub/eac_ruby_utils/README.rdoc +0 -3
  71. data/sub/eac_ruby_utils/eac_ruby_utils.gemspec +0 -25
  72. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_abstract.rb +0 -100
  73. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/array_accessor.rb +0 -25
  74. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/base_accessor.rb +0 -57
  75. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/boolean_accessor.rb +0 -16
  76. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/class_methods.rb +0 -20
  77. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/common_accessor.rb +0 -30
  78. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/enumerable_accessor.rb +0 -52
  79. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/hash_accessor.rb +0 -57
  80. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/instance_methods.rb +0 -21
  81. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable/set_accessor.rb +0 -25
  82. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_immutable.rb +0 -15
  83. data/sub/eac_ruby_utils/lib/eac_ruby_utils/acts_as_instance_method.rb +0 -34
  84. data/sub/eac_ruby_utils/lib/eac_ruby_utils/arguments_consumer.rb +0 -81
  85. data/sub/eac_ruby_utils/lib/eac_ruby_utils/bit.rb +0 -46
  86. data/sub/eac_ruby_utils/lib/eac_ruby_utils/bit_array.rb +0 -81
  87. data/sub/eac_ruby_utils/lib/eac_ruby_utils/blank_not_blank.rb +0 -19
  88. data/sub/eac_ruby_utils/lib/eac_ruby_utils/boolean.rb +0 -31
  89. data/sub/eac_ruby_utils/lib/eac_ruby_utils/by_reference.rb +0 -23
  90. data/sub/eac_ruby_utils/lib/eac_ruby_utils/byte.rb +0 -105
  91. data/sub/eac_ruby_utils/lib/eac_ruby_utils/byte_array.rb +0 -36
  92. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_concern/class_setup.rb +0 -52
  93. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_concern/module_setup.rb +0 -41
  94. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_concern.rb +0 -20
  95. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/class_accessors.rb +0 -36
  96. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/class_initialize.rb +0 -39
  97. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/instance_initialize.rb +0 -64
  98. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/super_args.rb +0 -54
  99. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor.rb +0 -94
  100. data/sub/eac_ruby_utils/lib/eac_ruby_utils/compact.rb +0 -22
  101. data/sub/eac_ruby_utils/lib/eac_ruby_utils/compare_by.rb +0 -28
  102. data/sub/eac_ruby_utils/lib/eac_ruby_utils/context.rb +0 -33
  103. data/sub/eac_ruby_utils/lib/eac_ruby_utils/contextualizable.rb +0 -21
  104. data/sub/eac_ruby_utils/lib/eac_ruby_utils/core_ext.rb +0 -7
  105. data/sub/eac_ruby_utils/lib/eac_ruby_utils/custom_format.rb +0 -53
  106. data/sub/eac_ruby_utils/lib/eac_ruby_utils/enum.rb +0 -102
  107. data/sub/eac_ruby_utils/lib/eac_ruby_utils/enumerables_methods.rb +0 -42
  108. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_command/append_command_options.rb +0 -38
  109. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_command/concat.rb +0 -41
  110. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_command/debugging.rb +0 -19
  111. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_command/execution.rb +0 -52
  112. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_command/extra_options.rb +0 -28
  113. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_command.rb +0 -45
  114. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_env.rb +0 -28
  115. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command/envvars.rb +0 -27
  116. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command/extra_options.rb +0 -23
  117. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command.rb +0 -67
  118. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/composite_command.rb +0 -45
  119. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/executable.rb +0 -93
  120. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/execution_error.rb +0 -8
  121. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/execution_result.rb +0 -45
  122. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/file.rb +0 -22
  123. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/local_env.rb +0 -17
  124. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/process.rb +0 -27
  125. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/spawn.rb +0 -32
  126. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/dasho_options.rb +0 -53
  127. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/identity_file.rb +0 -25
  128. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/quiet.rb +0 -24
  129. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/terminal.rb +0 -34
  130. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env.rb +0 -75
  131. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs.rb +0 -23
  132. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/clearable_directory.rb +0 -57
  133. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/extname.rb +0 -30
  134. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/temp/directory.rb +0 -16
  135. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/temp/file.rb +0 -34
  136. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/temp.rb +0 -52
  137. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs.rb +0 -9
  138. data/sub/eac_ruby_utils/lib/eac_ruby_utils/gems_registry/gem.rb +0 -80
  139. data/sub/eac_ruby_utils/lib/eac_ruby_utils/gems_registry.rb +0 -34
  140. data/sub/eac_ruby_utils/lib/eac_ruby_utils/inflector.rb +0 -29
  141. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/class_methods.rb +0 -14
  142. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/instance_methods.rb +0 -30
  143. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/integer_list.rb +0 -23
  144. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/item.rb +0 -48
  145. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/list.rb +0 -129
  146. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/lists.rb +0 -51
  147. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/string_list.rb +0 -19
  148. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/symbol_list.rb +0 -19
  149. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable.rb +0 -17
  150. data/sub/eac_ruby_utils/lib/eac_ruby_utils/local_time_zone.rb +0 -48
  151. data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales/from_all_gems.rb +0 -4
  152. data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales/from_gem.rb +0 -47
  153. data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales/module_i18n_translate.rb +0 -74
  154. data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales.rb +0 -9
  155. data/sub/eac_ruby_utils/lib/eac_ruby_utils/method_class.rb +0 -30
  156. data/sub/eac_ruby_utils/lib/eac_ruby_utils/module_ancestors_variable/base.rb +0 -34
  157. data/sub/eac_ruby_utils/lib/eac_ruby_utils/module_ancestors_variable/hash.rb +0 -20
  158. data/sub/eac_ruby_utils/lib/eac_ruby_utils/module_ancestors_variable/set.rb +0 -19
  159. data/sub/eac_ruby_utils/lib/eac_ruby_utils/module_ancestors_variable.rb +0 -9
  160. data/sub/eac_ruby_utils/lib/eac_ruby_utils/options_consumer.rb +0 -62
  161. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patch.rb +0 -11
  162. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/addressable/uri/query_value.rb +0 -37
  163. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/addressable/uri.rb +0 -4
  164. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/addressable.rb +0 -4
  165. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/abstract.rb +0 -9
  166. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/common_constructor.rb +0 -9
  167. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/method_class.rb +0 -9
  168. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/self_included_modules.rb +0 -7
  169. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/settings_provider.rb +0 -10
  170. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/static_method_class.rb +0 -9
  171. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class.rb +0 -4
  172. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerable/boolean_combinations.rb +0 -45
  173. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerable.rb +0 -4
  174. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator/current.rb +0 -9
  175. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator/stopped.rb +0 -14
  176. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator.rb +0 -4
  177. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/options_consumer.rb +0 -10
  178. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/sym_keys_hash.rb +0 -10
  179. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/to_struct.rb +0 -10
  180. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash.rb +0 -5
  181. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/kernel/nyi.rb +0 -10
  182. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/kernel.rb +0 -4
  183. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/abstract_methods.rb +0 -10
  184. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/acts_as_abstract.rb +0 -14
  185. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/acts_as_immutable.rb +0 -10
  186. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/acts_as_instance_method.rb +0 -10
  187. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/common_concern.rb +0 -9
  188. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/compare_by.rb +0 -9
  189. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/context.rb +0 -11
  190. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/i18n_translate.rb +0 -9
  191. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/immutable.rb +0 -11
  192. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/listable.rb +0 -10
  193. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/module_parent.rb +0 -5
  194. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/patch.rb +0 -9
  195. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/require_sub.rb +0 -9
  196. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/simple_cache.rb +0 -10
  197. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/speaker.rb +0 -9
  198. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module.rb +0 -4
  199. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/asserts.rb +0 -25
  200. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/call_if_proc.rb +0 -11
  201. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/compact.rb +0 -20
  202. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/debug.rb +0 -51
  203. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/i18n_translate.rb +0 -13
  204. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/if_nil.rb +0 -17
  205. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/if_present.rb +0 -19
  206. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/if_respond.rb +0 -22
  207. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/to_bool.rb +0 -12
  208. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/to_pathname.rb +0 -15
  209. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/to_uri.rb +0 -15
  210. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object.rb +0 -5
  211. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/assert_parent.rb +0 -12
  212. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/basename_noext.rb +0 -10
  213. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/basename_sub.rb +0 -13
  214. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/child_of.rb +0 -16
  215. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/if_exist.rb +0 -10
  216. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/mkpath_s.rb +0 -12
  217. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/parent_n.rb +0 -11
  218. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/readlink_r.rb +0 -11
  219. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/reqdir_glob.rb +0 -13
  220. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname.rb +0 -4
  221. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/regexp/if_match.rb +0 -16
  222. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/regexp/to_parser.rb +0 -10
  223. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/regexp.rb +0 -4
  224. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/string/delimited.rb +0 -16
  225. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/string/inflector.rb +0 -11
  226. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/string.rb +0 -4
  227. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/time/required_zone.rb +0 -11
  228. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/time.rb +0 -4
  229. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches.rb +0 -4
  230. data/sub/eac_ruby_utils/lib/eac_ruby_utils/recursive_builder.rb +0 -51
  231. data/sub/eac_ruby_utils/lib/eac_ruby_utils/regexp_parser.rb +0 -39
  232. data/sub/eac_ruby_utils/lib/eac_ruby_utils/require_sub/base.rb +0 -80
  233. data/sub/eac_ruby_utils/lib/eac_ruby_utils/require_sub/sub_file.rb +0 -59
  234. data/sub/eac_ruby_utils/lib/eac_ruby_utils/require_sub.rb +0 -11
  235. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/default_setup.rb +0 -20
  236. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup/conditionals.rb +0 -17
  237. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup/setup_manager.rb +0 -17
  238. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup.rb +0 -27
  239. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup_manager.rb +0 -49
  240. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/stub_speaker.rb +0 -39
  241. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec.rb +0 -9
  242. data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb +0 -32
  243. data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/on_clean_environment.rb +0 -71
  244. data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/on_replace_objects/replace_instance_method.rb +0 -36
  245. data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/on_replace_objects.rb +0 -52
  246. data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby.rb +0 -9
  247. data/sub/eac_ruby_utils/lib/eac_ruby_utils/settings_provider/setting_value.rb +0 -78
  248. data/sub/eac_ruby_utils/lib/eac_ruby_utils/settings_provider.rb +0 -50
  249. data/sub/eac_ruby_utils/lib/eac_ruby_utils/simple_cache.rb +0 -77
  250. data/sub/eac_ruby_utils/lib/eac_ruby_utils/speaker/receiver.rb +0 -64
  251. data/sub/eac_ruby_utils/lib/eac_ruby_utils/speaker/sender.rb +0 -32
  252. data/sub/eac_ruby_utils/lib/eac_ruby_utils/speaker.rb +0 -16
  253. data/sub/eac_ruby_utils/lib/eac_ruby_utils/static_method_class.rb +0 -12
  254. data/sub/eac_ruby_utils/lib/eac_ruby_utils/string_delimited.rb +0 -70
  255. data/sub/eac_ruby_utils/lib/eac_ruby_utils/struct.rb +0 -63
  256. data/sub/eac_ruby_utils/lib/eac_ruby_utils/unimplemented_method_error.rb +0 -6
  257. data/sub/eac_ruby_utils/lib/eac_ruby_utils/version.rb +0 -5
  258. data/sub/eac_ruby_utils/lib/eac_ruby_utils/wildcards.rb +0 -26
  259. data/sub/eac_ruby_utils/lib/eac_ruby_utils/yaml.rb +0 -105
  260. data/sub/eac_ruby_utils/lib/eac_ruby_utils.rb +0 -6
  261. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/acts_as_abstract_spec.rb +0 -94
  262. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/acts_as_immutable/array_accessor_spec.rb +0 -43
  263. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/acts_as_immutable/common_accessor_spec.rb +0 -57
  264. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/acts_as_immutable/hash_accessor_spec.rb +0 -42
  265. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/acts_as_immutable/set_accessor_spec.rb +0 -43
  266. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/arguments_consumer_spec.rb +0 -17
  267. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/bit_array_spec.rb +0 -22
  268. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/blank_not_blank_spec.rb +0 -16
  269. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/byte_spec.rb +0 -54
  270. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/common_concern_spec.rb +0 -65
  271. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/common_constructor_spec.rb +0 -151
  272. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/compact_spec.rb +0 -20
  273. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/compare_by_spec.rb +0 -38
  274. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/custom_format_spec.rb +0 -60
  275. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/enum_spec.rb +0 -43
  276. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/enumerables_methods_spec.rb +0 -50
  277. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/command/base_example.rb +0 -97
  278. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/command/local_env_spec.rb +0 -11
  279. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/command/ssh_env_spec.rb +0 -17
  280. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/executable_spec.rb +0 -37
  281. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/ssh_env_spec.rb +0 -25
  282. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/fs/extname_spec.rb +0 -18
  283. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/fs/temp/directory_spec.rb +0 -12
  284. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/fs/temp_spec.rb +0 -52
  285. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/inflector_spec.rb +0 -16
  286. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/listable_spec.rb +0 -225
  287. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/local_time_zone_spec.rb +0 -17
  288. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/method_class_spec.rb +0 -46
  289. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/module_ancestors_variable/hash_spec.rb +0 -57
  290. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/module_ancestors_variable/set_spec.rb +0 -57
  291. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/options_consumer_spec.rb +0 -80
  292. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/addressable/uri/query_value_spec.rb +0 -25
  293. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/class/abstract_spec.rb +0 -25
  294. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/class/acts_as_abstract_spec.rb +0 -14
  295. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/class/method_class_spec.rb +0 -20
  296. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/class/self_included_modules_spec.rb +0 -30
  297. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/class/static_method_class_spec.rb +0 -20
  298. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerable/boolean_combinations_spec.rb +0 -39
  299. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerator/current_spec.rb +0 -26
  300. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerator/stopped_spec.rb +0 -32
  301. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/hash/options_consumer_spec.rb +0 -17
  302. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/hash/sym_keys_hash_spec.rb +0 -13
  303. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/compare_by_spec.rb +0 -36
  304. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/listable_spec.rb +0 -15
  305. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/simple_cache_spec.rb +0 -15
  306. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/speaker_spec.rb +0 -13
  307. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/call_if_proc_spec.rb +0 -11
  308. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/compact_spec.rb +0 -20
  309. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/if_present_spec.rb +0 -13
  310. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/template_spec_files/path/my_stub_with_template +0 -1
  311. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/assert_parent_spec.rb +0 -21
  312. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/basename_noext_spec.rb +0 -26
  313. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/basename_sub_spec.rb +0 -17
  314. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/child_of_spec.rb +0 -26
  315. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/parent_n_spec.rb +0 -33
  316. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/string/delimited_spec.rb +0 -34
  317. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/recursive_builder_spec.rb +0 -65
  318. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub/base_spec/stubbed_module_a.rb +0 -6
  319. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub/base_spec/stubbed_not_module.rb +0 -6
  320. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub/base_spec.rb +0 -19
  321. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/rspec/setup/setup_manager_spec.rb +0 -17
  322. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/ruby/on_clean_environment_spec.rb +0 -33
  323. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/ruby/on_replace_objects_spec.rb +0 -67
  324. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/settings_provider_spec.rb +0 -64
  325. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/simple_cache_spec.rb +0 -129
  326. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/static_method_class_spec.rb +0 -44
  327. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/struct_spec.rb +0 -57
  328. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/wildcards_spec.rb +0 -27
  329. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/yaml_spec.rb +0 -76
  330. data/sub/eac_ruby_utils/spec/locales/pt-BR.yml +0 -58
  331. data/sub/eac_ruby_utils/spec/rubocop_check_spec.rb +0 -3
  332. data/sub/eac_ruby_utils/spec/spec_helper.rb +0 -15
@@ -1,22 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacRubyUtils
4
- class Compact
5
- attr_reader :object, :attributes
6
-
7
- def initialize(object, attributes)
8
- @object = object
9
- @attributes = attributes
10
- end
11
-
12
- # @return [Array]
13
- def to_a
14
- attributes.map { |attr| object.send(attr) }
15
- end
16
-
17
- # @return [Hash]
18
- def to_h
19
- attributes.map { |attr| [attr.to_sym, object.send(attr)] }.to_h
20
- end
21
- end
22
- end
@@ -1,28 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/common_concern/module_setup'
4
-
5
- module EacRubyUtils
6
- class CompareBy
7
- attr_reader :fields
8
-
9
- def initialize(fields)
10
- @fields = fields
11
- end
12
-
13
- def apply(klass)
14
- pself = self
15
- klass.include(::Comparable)
16
- %i[<=> eql?].each do |cmp_method|
17
- klass.define_method(cmp_method) do |other|
18
- pself.object_values(self).send(cmp_method, pself.object_values(other))
19
- end
20
- end
21
- klass.define_method(:hash) { pself.object_values(self).hash }
22
- end
23
-
24
- def object_values(object)
25
- fields.map { |field| object.send(field) }
26
- end
27
- end
28
- end
@@ -1,33 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacRubyUtils
4
- class Context
5
- delegate :any?, to: :stack
6
-
7
- def current
8
- optional_current || raise('No elements in context')
9
- end
10
-
11
- def optional_current
12
- stack.last
13
- end
14
-
15
- delegate :pop, to: :stack
16
- delegate :push, to: :stack
17
-
18
- def on(obj)
19
- push(obj)
20
- begin
21
- yield
22
- ensure
23
- pop
24
- end
25
- end
26
-
27
- private
28
-
29
- def stack
30
- @stack ||= []
31
- end
32
- end
33
- end
@@ -1,21 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/context'
4
-
5
- module EacRubyUtils
6
- module Contextualizable
7
- common_concern
8
-
9
- module ClassMethods
10
- def context
11
- @context ||= ::EacRubyUtils::Context.new
12
- end
13
- end
14
-
15
- module InstanceMethods
16
- def context
17
- self.class.context
18
- end
19
- end
20
- end
21
- end
@@ -1,7 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/locales/from_all_gems'
4
- require 'eac_ruby_utils/patches'
5
- require 'active_support/dependencies/autoload'
6
- require 'active_support/core_ext'
7
- require 'active_support/json'
@@ -1,53 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacRubyUtils
4
- # A formatter like [String.sprintf].
5
- class CustomFormat
6
- TYPE_PATTERN = /[a-zA-Z]/.freeze
7
- SEQUENCE_PATTERN = /(?<!%)%(#{TYPE_PATTERN})/.freeze
8
-
9
- attr_reader :mapping
10
-
11
- def initialize(mapping)
12
- @mapping = mapping.transform_keys(&:to_sym).freeze
13
- end
14
-
15
- def format(string)
16
- ::EacRubyUtils::CustomFormat::String.new(self, string)
17
- end
18
-
19
- class String
20
- attr_reader :format, :string
21
-
22
- def initialize(format, string)
23
- @format = format
24
- @string = string
25
- end
26
-
27
- def mapping
28
- @mapping ||= format.mapping.select do |k, _v|
29
- sequences.include?(k)
30
- end
31
- end
32
-
33
- def sequences
34
- @sequences ||= string.scan(SEQUENCE_PATTERN).map(&:first).uniq.map(&:to_sym)
35
- end
36
-
37
- def source_object_value(object, method)
38
- return object.send(method) if object.respond_to?(method)
39
- return object[method] if object.respond_to?('[]')
40
-
41
- raise ::ArgumentError, "Methods \"#{method}\" or \"[]\" not found for #{object}"
42
- end
43
-
44
- def with(source_object)
45
- r = string
46
- mapping.each do |key, method|
47
- r = r.gsub(/%#{::Regexp.quote(key)}/, source_object_value(source_object, method).to_s)
48
- end
49
- r.gsub('%%', '%')
50
- end
51
- end
52
- end
53
- end
@@ -1,102 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/inflector'
4
-
5
- module EacRubyUtils
6
- # Similar to Java's enum type (https://docs.oracle.com/javase/tutorial/java/javaOO/enum.html).
7
- class Enum
8
- class << self
9
- def enum(key, *args, &block)
10
- value = Value.new(self, key, args, &block)
11
- raise ::ArgumentError, "#{self} already has a value with key=#{value.key}" if
12
- value_set.include?(value)
13
-
14
- value_set << value.apply
15
-
16
- self
17
- end
18
-
19
- def values
20
- value_set.map(&:value)
21
- end
22
-
23
- private
24
-
25
- def value_set
26
- @value_set ||= []
27
- end
28
- end
29
-
30
- attr_reader :key
31
-
32
- protected
33
-
34
- def initialize(key)
35
- @key = key
36
- end
37
-
38
- class Value
39
- include ::Comparable
40
-
41
- attr_reader :klass, :key, :args, :block
42
-
43
- def initialize(klass, key, args, &block)
44
- @klass = klass
45
- @key = ::EacRubyUtils::Inflector.variableize(key.to_s).to_sym
46
- @args = args
47
- @block = block
48
- end
49
-
50
- def <=>(other)
51
- key <=> other.key
52
- end
53
-
54
- def apply
55
- define_constant
56
- define_class_method
57
-
58
- self
59
- end
60
-
61
- # @return [String]
62
- def class_method_name
63
- key.to_s
64
- end
65
-
66
- # @return [String]
67
- def constant_name
68
- class_method_name.upcase
69
- end
70
-
71
- def value
72
- @value ||= uncached_value
73
- end
74
-
75
- private
76
-
77
- def define_class_method
78
- the_value = self
79
- klass.define_singleton_method(class_method_name) { the_value.value }
80
- end
81
-
82
- def define_constant
83
- klass.const_set(constant_name, value)
84
- end
85
-
86
- def uncached_value
87
- klass.new(key, *value_args)
88
- end
89
-
90
- def value_args
91
- r = if block
92
- block.call
93
- elsif args.count == 1 && args.first.is_a?(::Enumerable)
94
- args.first
95
- else
96
- args
97
- end
98
- r.is_a?(::Enumerable) ? r : [r]
99
- end
100
- end
101
- end
102
- end
@@ -1,42 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/patches/object/debug'
4
-
5
- module EacRubyUtils
6
- module EnumerablesMethods
7
- class << self
8
- WRITE_METHOD_PATTERNS = [/\A[a-z].*[\!\=]\z/i] +
9
- %i[\[\]= <<].map { |m| /\A#{::Regexp.quote(m)}\z/ } +
10
- %i[add clear delete divide keep reset shift subtract]
11
- .map { |m| /\A#{::Regexp.quote(m)}.*\z/ }
12
-
13
- # @param klass [Klass]
14
- # @return [Enumerable<Symbol>]
15
- def self_methods_names(klass)
16
- (klass.public_instance_methods - klass.superclass.public_instance_methods).sort
17
- end
18
-
19
- # @param method_name [Symbol]
20
- # @return [Boolean]
21
- def write_method?(method_name)
22
- WRITE_METHOD_PATTERNS.any? { |pattern| pattern.match?(method_name.to_s) }
23
- end
24
- end
25
-
26
- ARRAY_METHODS = self_methods_names(::Array)
27
- ARRAY_WRITE_METHODS = ARRAY_METHODS.select { |m| write_method?(m) }
28
- ARRAY_READ_METHODS = ARRAY_METHODS - ARRAY_WRITE_METHODS
29
-
30
- ENUMERABLE_METHODS = ::Enumerable.public_instance_methods.sort
31
- ENUMERABLE_WRITE_METHODS = ENUMERABLE_METHODS.select { |m| write_method?(m) }
32
- ENUMERABLE_READ_METHODS = ENUMERABLE_METHODS - ENUMERABLE_WRITE_METHODS
33
-
34
- HASH_METHODS = self_methods_names(::Hash)
35
- HASH_WRITE_METHODS = HASH_METHODS.select { |m| write_method?(m) }
36
- HASH_READ_METHODS = HASH_METHODS - HASH_WRITE_METHODS
37
-
38
- SET_METHODS = self_methods_names(::Set)
39
- SET_WRITE_METHODS = SET_METHODS.select { |m| write_method?(m) } + [:merge]
40
- SET_READ_METHODS = SET_METHODS - SET_WRITE_METHODS
41
- end
42
- end
@@ -1,38 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
- require 'shellwords'
5
-
6
- module EacRubyUtils
7
- module Envs
8
- module BaseCommand
9
- class AppendCommandOptions
10
- enable_method_class
11
- common_constructor :command, :command_line, :options
12
-
13
- def result
14
- r = command_line
15
- r = input.command + ' | ' + r if input
16
- r = "cat #{Shellwords.escape(input_file)} | #{r}" if input_file
17
- r += ' > ' + Shellwords.escape(output_file) if output_file
18
- r
19
- end
20
-
21
- # @return [EacRubyUtils::Envs::Command, nil]
22
- def input
23
- options[:input]
24
- end
25
-
26
- # @return [Pathname, nil]
27
- def input_file
28
- options[:input_file].if_present(&:to_pathname)
29
- end
30
-
31
- # @return [Pathname, nil]
32
- def output_file
33
- options[:output_file].if_present(&:to_pathname)
34
- end
35
- end
36
- end
37
- end
38
- end
@@ -1,41 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/struct'
4
-
5
- module EacRubyUtils
6
- module Envs
7
- module BaseCommand
8
- module Concat
9
- AND_OPERATOR = '&&'
10
- BEFORE_OPERATOR = ';'
11
- OR_OPERATOR = '||'
12
- PIPE_OPERATOR = '|'
13
-
14
- # @param operator [Symbol]
15
- # @return [EacRubyUtils::Envs::CompositeCommand]
16
- def concat(operator, other_command)
17
- require 'eac_ruby_utils/envs/composite_command'
18
- ::EacRubyUtils::Envs::CompositeCommand.new(operator, self, other_command)
19
- end
20
-
21
- # @return [EacRubyUtils::Envs::Command]
22
- def and(other_command)
23
- concat(AND_OPERATOR, other_command)
24
- end
25
-
26
- # @return [EacRubyUtils::Envs::Command]
27
- def before(other_command)
28
- concat(BEFORE_OPERATOR, other_command)
29
- end
30
-
31
- def or(other_command)
32
- concat(OR_OPERATOR, other_command)
33
- end
34
-
35
- def pipe(other_command)
36
- concat(PIPE_OPERATOR, other_command)
37
- end
38
- end
39
- end
40
- end
41
- end
@@ -1,19 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacRubyUtils
4
- module Envs
5
- module BaseCommand
6
- module Debugging
7
- def debug?
8
- ENV['DEBUG'].to_s.strip != ''
9
- end
10
-
11
- # Print a message if debugging is enabled.
12
- def debug_print(message)
13
- message = message.to_s
14
- puts message.if_respond(:light_red, message) if debug?
15
- end
16
- end
17
- end
18
- end
19
- end
@@ -1,52 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/envs/execution_error'
4
- require 'eac_ruby_utils/envs/execution_result'
5
- require 'eac_ruby_utils/envs/process'
6
- require 'eac_ruby_utils/envs/spawn'
7
- require 'pp'
8
-
9
- module EacRubyUtils
10
- module Envs
11
- module BaseCommand
12
- module Execution
13
- def execute!(options = {})
14
- options[:exit_outputs] = status_results.merge(options[:exit_outputs].presence || {})
15
- er = ::EacRubyUtils::Envs::ExecutionResult.new(execute(options), options)
16
- return er.result if er.success?
17
-
18
- raise ::EacRubyUtils::Envs::ExecutionError,
19
- "execute! command failed: #{self}\n#{er.r.pretty_inspect}"
20
- end
21
-
22
- def execute(options = {})
23
- c = command(options)
24
- debug_print("BEFORE: #{c}")
25
- t1 = Time.now
26
- r = ::EacRubyUtils::Envs::Process.new(c).to_h
27
- i = Time.now - t1
28
- debug_print("AFTER [#{i}]: #{c}")
29
- r
30
- end
31
-
32
- def spawn(options = {})
33
- c = command(options)
34
- debug_print("SPAWN: #{c}")
35
- ::EacRubyUtils::Envs::Spawn.new(c)
36
- end
37
-
38
- def system!(options = {})
39
- return if system(options)
40
-
41
- raise ::EacRubyUtils::Envs::ExecutionError, "system! command failed: #{self}"
42
- end
43
-
44
- def system(options = {})
45
- c = command(options)
46
- debug_print(c)
47
- Kernel.system(c)
48
- end
49
- end
50
- end
51
- end
52
- end
@@ -1,28 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'active_support/core_ext/hash/indifferent_access'
4
- require 'active_support/core_ext/object/blank'
5
- require 'shellwords'
6
-
7
- module EacRubyUtils
8
- module Envs
9
- module BaseCommand
10
- module ExtraOptions
11
- # @return [ActiveSupport::HashWithIndifferentAccess]
12
- def extra_options
13
- @extra_options ||= {}.with_indifferent_access
14
- end
15
-
16
- def status_result(status_code, result)
17
- duplicate_by_extra_options(status_results: status_results.merge(status_code => result))
18
- end
19
-
20
- private
21
-
22
- def status_results
23
- extra_options[:status_results] ||= {}.with_indifferent_access
24
- end
25
- end
26
- end
27
- end
28
- end
@@ -1,45 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
- require 'shellwords'
5
-
6
- module EacRubyUtils
7
- module Envs
8
- module BaseCommand
9
- require_sub __FILE__
10
-
11
- common_concern do
12
- enable_abstract_methods
13
- include ::EacRubyUtils::Envs::BaseCommand::Concat
14
- include ::EacRubyUtils::Envs::BaseCommand::Debugging
15
- include ::EacRubyUtils::Envs::BaseCommand::Execution
16
- include ::EacRubyUtils::Envs::BaseCommand::ExtraOptions
17
- end
18
-
19
- # @return [EacRubyUtils::Envs::BaseEnv]
20
- def env
21
- raise_abstract_method __method__
22
- end
23
-
24
- def command(options = {})
25
- append_command_options(
26
- env.command_line(command_line_without_env),
27
- options
28
- )
29
- end
30
-
31
- # @return [String]
32
- def command_line_without_env(_options = {})
33
- raise_abstract_method __method__
34
- end
35
-
36
- private
37
-
38
- def escape(arg)
39
- arg = arg.to_s
40
- m = /^\@ESC_(.+)$/.match(arg)
41
- m ? m[1] : Shellwords.escape(arg)
42
- end
43
- end
44
- end
45
- end
@@ -1,28 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/envs/command'
4
- require 'eac_ruby_utils/envs/executable'
5
- require 'eac_ruby_utils/envs/file'
6
-
7
- module EacRubyUtils
8
- module Envs
9
- class BaseEnv
10
- def command(*args)
11
- ::EacRubyUtils::Envs::Command.new(self, args)
12
- end
13
-
14
- # <b>DEPRECATED:</b> Please use <tt>file(file).exist?</tt> instead.
15
- def file_exist?(file)
16
- self.file(file).exist?
17
- end
18
-
19
- def executable(*executable_new_args)
20
- ::EacRubyUtils::Envs::Executable.new(self, *executable_new_args)
21
- end
22
-
23
- def file(path)
24
- ::EacRubyUtils::Envs::File.new(self, path)
25
- end
26
- end
27
- end
28
- end
@@ -1,27 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
- require 'shellwords'
5
-
6
- module EacRubyUtils
7
- module Envs
8
- class Command
9
- module Envvars
10
- def envvar(name, value)
11
- duplicate_by_extra_options(envvars: envvars.merge(name => value))
12
- end
13
-
14
- private
15
-
16
- def append_envvars(command)
17
- e = envvars.map { |k, v| "#{Shellwords.escape(k)}=#{Shellwords.escape(v)}" }.join(' ')
18
- e.present? ? "#{e} #{command}" : command
19
- end
20
-
21
- def envvars
22
- extra_options[:envvars] ||= {}.with_indifferent_access
23
- end
24
- end
25
- end
26
- end
27
- end
@@ -1,23 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'active_support/core_ext/hash/indifferent_access'
4
- require 'active_support/core_ext/object/blank'
5
- require 'shellwords'
6
-
7
- module EacRubyUtils
8
- module Envs
9
- class Command
10
- module ExtraOptions
11
- def chdir(dir)
12
- duplicate_by_extra_options(chdir: dir)
13
- end
14
-
15
- private
16
-
17
- def append_chdir(command)
18
- extra_options[:chdir].present? ? "(cd '#{extra_options[:chdir]}' ; #{command} )" : command
19
- end
20
- end
21
- end
22
- end
23
- end
@@ -1,67 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
- require 'eac_ruby_utils/envs/base_command'
5
-
6
- module EacRubyUtils
7
- module Envs
8
- class Command
9
- require_sub __FILE__, include_modules: true, require_dependency: true
10
- include ::EacRubyUtils::Envs::BaseCommand
11
-
12
- class << self
13
- # @param command [Array]
14
- # @return [Array]
15
- def sanitize_initialize_arguments(arguments)
16
- if arguments.count == 1 && arguments.first.is_a?(Array)
17
- arguments.first
18
- elsif arguments.is_a?(Array)
19
- arguments
20
- else
21
- raise "Invalid argument command: #{arguments}|#{arguments.class}"
22
- end
23
- end
24
- end
25
-
26
- common_constructor :env, :args, :extra_options, default: [{}] do
27
- self.extra_options = extra_options.with_indifferent_access
28
- self.args = self.class.sanitize_initialize_arguments(args)
29
- end
30
-
31
- def append(args)
32
- duplicate_by_command(self.args + args)
33
- end
34
-
35
- def prepend(args)
36
- duplicate_by_command(args + self.args)
37
- end
38
-
39
- def to_s
40
- "#{args} [ENV: #{env}]"
41
- end
42
-
43
- # @return [String]
44
- def command_line_without_env
45
- c = args
46
- c = c.map { |x| escape(x) }.join(' ') if c.is_a?(Enumerable)
47
- append_chdir(append_envvars(c))
48
- end
49
-
50
- protected
51
-
52
- def duplicate(command, extra_options)
53
- self.class.new(env, command, extra_options)
54
- end
55
-
56
- private
57
-
58
- def duplicate_by_command(new_command)
59
- duplicate(new_command, extra_options)
60
- end
61
-
62
- def duplicate_by_extra_options(set_extra_options)
63
- duplicate(args, extra_options.merge(set_extra_options))
64
- end
65
- end
66
- end
67
- end