ehbrs-tools 0.26.0 → 0.28.2

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 (148) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +2 -0
  3. data/Gemfile.lock +51 -31
  4. data/lib/ehbrs/tools/runner/fs/selected.rb +18 -25
  5. data/lib/ehbrs/tools/runner/music/lyrics.rb +3 -4
  6. data/lib/ehbrs/tools/runner/music/lyrics_book.rb +41 -0
  7. data/lib/ehbrs/tools/runner/music/selected.rb +6 -6
  8. data/lib/ehbrs/tools/version.rb +1 -1
  9. data/lib/ehbrs/user_dirs.rb +2 -2
  10. data/lib/ehbrs/videos/extract/package.rb +2 -2
  11. data/lib/ehbrs/videos/extract/package_file.rb +0 -1
  12. data/spec/lib/ehbrs/tools/runner/fs/used_space_spec.rb +2 -1
  13. data/vendor/eac_cli/lib/eac_cli/config.rb +6 -3
  14. data/vendor/eac_cli/lib/eac_cli/definition/argument_option.rb +1 -1
  15. data/vendor/eac_cli/lib/eac_cli/definition/base_option.rb +9 -1
  16. data/vendor/eac_cli/lib/eac_cli/definition/boolean_option.rb +6 -0
  17. data/vendor/eac_cli/lib/eac_cli/runner_with/help/builder.rb +3 -3
  18. data/vendor/eac_cli/lib/eac_cli/version.rb +1 -1
  19. data/vendor/eac_cli/spec/lib/eac_cli/runner_spec.rb +6 -5
  20. data/vendor/eac_fs/Gemfile +5 -0
  21. data/vendor/eac_fs/eac_fs.gemspec +20 -0
  22. data/vendor/{eac_ruby_utils/lib/eac_ruby_utils/filesystem_cache.rb → eac_fs/lib/eac_fs/cache.rb} +7 -2
  23. data/vendor/eac_fs/lib/eac_fs/cached_download.rb +39 -0
  24. data/vendor/eac_fs/lib/eac_fs/file_info.rb +29 -0
  25. data/vendor/eac_fs/lib/eac_fs/patches/module/fs_cache.rb +10 -0
  26. data/vendor/eac_fs/lib/eac_fs/patches/module.rb +4 -0
  27. data/vendor/eac_fs/lib/eac_fs/patches/object/fs_cache.rb +15 -0
  28. data/vendor/eac_fs/lib/eac_fs/patches/object.rb +4 -0
  29. data/vendor/eac_fs/lib/eac_fs/patches/pathname/info.rb +12 -0
  30. data/vendor/eac_fs/lib/eac_fs/patches/pathname.rb +4 -0
  31. data/vendor/eac_fs/lib/eac_fs/patches.rb +4 -0
  32. data/vendor/eac_fs/lib/eac_fs/version.rb +5 -0
  33. data/vendor/eac_fs/lib/eac_fs.rb +7 -0
  34. data/vendor/{eac_ruby_utils/spec/lib/eac_ruby_utils/filesystem_cache_spec.rb → eac_fs/spec/lib/eac_fs/cache_spec.rb} +2 -2
  35. data/vendor/eac_fs/spec/rubocop_spec.rb +3 -0
  36. data/vendor/eac_fs/spec/spec_helper.rb +4 -0
  37. data/vendor/eac_ruby_base0/eac_ruby_base0.gemspec +2 -1
  38. data/vendor/eac_ruby_base0/lib/eac_ruby_base0/application.rb +4 -4
  39. data/vendor/eac_ruby_base0/lib/eac_ruby_base0/core_ext.rb +1 -0
  40. data/vendor/eac_ruby_base0/lib/eac_ruby_base0/runner.rb +16 -7
  41. data/vendor/eac_ruby_base0/lib/eac_ruby_base0/version.rb +1 -1
  42. data/vendor/eac_ruby_gems_utils/Gemfile +5 -0
  43. data/vendor/eac_ruby_gems_utils/LICENCE +16 -0
  44. data/vendor/eac_ruby_gems_utils/README.rdoc +3 -0
  45. data/vendor/eac_ruby_gems_utils/eac_ruby_gems_utils.gemspec +30 -0
  46. data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/gem/command.rb +33 -0
  47. data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/gem/version_file.rb +41 -0
  48. data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/gem.rb +97 -0
  49. data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/tests/base.rb +58 -0
  50. data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/tests/minitest.rb +25 -0
  51. data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/tests/multiple/decorated_gem.rb +48 -0
  52. data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/tests/multiple/result.rb +25 -0
  53. data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/tests/multiple.rb +84 -0
  54. data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/tests/rspec.rb +21 -0
  55. data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/tests.rb +9 -0
  56. data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/version.rb +5 -0
  57. data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils.rb +7 -0
  58. data/vendor/eac_ruby_gems_utils/spec/code/rubocop_check_spec.rb +3 -0
  59. data/vendor/eac_ruby_gems_utils/spec/lib/eac_ruby_gems_utils/gem/version_file_spec.rb +14 -0
  60. data/vendor/eac_ruby_gems_utils/spec/lib/eac_ruby_gems_utils/gem/version_file_spec_files/a_version_file.rb +7 -0
  61. data/vendor/eac_ruby_gems_utils/spec/lib/eac_ruby_gems_utils/gem_spec.rb +20 -0
  62. data/vendor/eac_ruby_gems_utils/spec/spec_helper.rb +4 -0
  63. data/vendor/eac_ruby_gems_utils/spec/support/mygem/Gemfile +5 -0
  64. data/vendor/eac_ruby_gems_utils/spec/support/mygem/Gemfile.lock +19 -0
  65. data/vendor/eac_ruby_gems_utils/spec/support/mygem/Rakefile +14 -0
  66. data/vendor/eac_ruby_gems_utils/spec/support/mygem/exe/myrunner +5 -0
  67. data/vendor/eac_ruby_gems_utils/spec/support/mygem/lib/mygem/version.rb +5 -0
  68. data/vendor/eac_ruby_gems_utils/spec/support/mygem/lib/mygem.rb +5 -0
  69. data/vendor/eac_ruby_gems_utils/spec/support/mygem/mygem.gemspec +16 -0
  70. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/version.rb +1 -1
  71. data/vendor/eac_templates/Gemfile +5 -0
  72. data/vendor/eac_templates/eac_templates.gemspec +19 -0
  73. data/vendor/eac_templates/lib/eac_templates/directory.rb +108 -0
  74. data/vendor/eac_templates/lib/eac_templates/file.rb +48 -0
  75. data/vendor/eac_templates/lib/eac_templates/patches/module/erb_template.rb +9 -0
  76. data/vendor/eac_templates/lib/eac_templates/patches/module/template.rb +10 -0
  77. data/vendor/eac_templates/lib/eac_templates/patches/module.rb +4 -0
  78. data/vendor/eac_templates/lib/eac_templates/patches/object/erb_template.rb +9 -0
  79. data/vendor/eac_templates/lib/eac_templates/patches/object/template.rb +9 -0
  80. data/vendor/eac_templates/lib/eac_templates/patches/object.rb +4 -0
  81. data/vendor/eac_templates/lib/eac_templates/patches.rb +4 -0
  82. data/vendor/eac_templates/lib/eac_templates/searcher.rb +53 -0
  83. data/vendor/eac_templates/lib/eac_templates/variable_not_found_error.rb +5 -0
  84. data/vendor/eac_templates/lib/eac_templates/variable_providers/base.rb +21 -0
  85. data/vendor/eac_templates/lib/eac_templates/variable_providers/config_reader.rb +27 -0
  86. data/vendor/eac_templates/lib/eac_templates/variable_providers/entries_reader.rb +23 -0
  87. data/vendor/eac_templates/lib/eac_templates/variable_providers/generic.rb +23 -0
  88. data/vendor/eac_templates/lib/eac_templates/variable_providers/hash.rb +27 -0
  89. data/vendor/eac_templates/lib/eac_templates/variable_providers.rb +23 -0
  90. data/vendor/eac_templates/lib/eac_templates/version.rb +5 -0
  91. data/vendor/eac_templates/lib/eac_templates.rb +7 -0
  92. data/vendor/eac_templates/spec/lib/eac_templates/file_spec.rb +35 -0
  93. data/vendor/eac_templates/spec/lib/eac_templates/file_spec_files/expected_content +2 -0
  94. data/vendor/eac_templates/spec/lib/eac_templates/file_spec_files/source.template +2 -0
  95. data/vendor/eac_templates/spec/lib/eac_templates/searcher_spec.rb +30 -0
  96. data/vendor/eac_templates/spec/lib/eac_templates/searcher_spec_files/path1/subdir1/file1.template +1 -0
  97. data/vendor/eac_templates/spec/lib/eac_templates/searcher_spec_files/path1/subdir1/file2 +1 -0
  98. data/vendor/eac_templates/spec/lib/eac_templates/searcher_spec_files/path2/subdir1/file3.template +1 -0
  99. data/vendor/eac_templates/spec/lib/object/template_spec.rb +23 -0
  100. data/vendor/eac_templates/spec/lib/object/template_spec_files/path/my_stub_with_template +1 -0
  101. data/vendor/eac_templates/spec/rubocop_spec.rb +3 -0
  102. data/vendor/eac_templates/spec/spec_helper.rb +4 -0
  103. data/vendor/ehbrs_ruby_utils/ehbrs_ruby_utils.gemspec +2 -0
  104. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/core_ext.rb +5 -0
  105. data/{lib/ehbrs → vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils}/fs/compressed_package.rb +3 -3
  106. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/fs/selected/build.rb +41 -0
  107. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/fs/selected/build_file.rb +27 -0
  108. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/fs/selected.rb +35 -0
  109. data/{lib/ehbrs → vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils}/fs.rb +2 -1
  110. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/music/lyrics_book/album.rb +42 -0
  111. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/music/lyrics_book/resource.rb +64 -0
  112. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/music/lyrics_book/song.rb +68 -0
  113. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/music/lyrics_book.rb +65 -0
  114. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/patches/object.rb +4 -0
  115. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/patches.rb +4 -0
  116. data/vendor/ehbrs_ruby_utils/lib/ehbrs_ruby_utils/version.rb +1 -1
  117. data/vendor/ehbrs_ruby_utils/template/ehbrs_ruby_utils/music/lyrics_book/album/inner.html.erb +3 -0
  118. data/vendor/ehbrs_ruby_utils/template/ehbrs_ruby_utils/music/lyrics_book/custom_style.css +15 -0
  119. data/vendor/ehbrs_ruby_utils/template/ehbrs_ruby_utils/music/lyrics_book/index.html.erb +14 -0
  120. data/vendor/ehbrs_ruby_utils/template/ehbrs_ruby_utils/music/lyrics_book/main.html.erb +24 -0
  121. data/vendor/ehbrs_ruby_utils/template/ehbrs_ruby_utils/music/lyrics_book/resource/main.html.erb +8 -0
  122. data/vendor/ehbrs_ruby_utils/template/ehbrs_ruby_utils/music/lyrics_book/song/inner.html.erb +9 -0
  123. data/vendor/ultimate_lyrics/lib/ultimate_lyrics/provider.rb +4 -0
  124. data/vendor/ultimate_lyrics/lib/ultimate_lyrics/provider_search.rb +1 -1
  125. data/vendor/ultimate_lyrics/lib/ultimate_lyrics/providers_data.xml +2 -1
  126. data/vendor/ultimate_lyrics/lib/ultimate_lyrics/version.rb +1 -1
  127. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/encyclopaedia_metallum__michael_jackson_thriller.target.yaml +1 -1
  128. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/encyclopaedia_metallum__milton_nascimento_rouxinol.target.yaml +1 -1
  129. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/hindilyrics_net_bollywood_songs__michael_jackson_thriller.source.html +18 -18
  130. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/hindilyrics_net_bollywood_songs__michael_jackson_thriller.target.yaml +1 -1
  131. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/hindilyrics_net_bollywood_songs__milton_nascimento_rouxinol.source.html +18 -18
  132. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/hindilyrics_net_bollywood_songs__milton_nascimento_rouxinol.target.yaml +1 -1
  133. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/lyrics_com__milton_nascimento_rouxinol.target.yaml +1 -3
  134. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/lyricsplugin_com__michael_jackson_thriller.target.yaml +1 -1
  135. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/lyricsplugin_com__milton_nascimento_rouxinol.target.yaml +1 -1
  136. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/lyricsreg_com__milton_nascimento_rouxinol.source.html +3 -3
  137. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/lyricsreg_com__milton_nascimento_rouxinol.target.yaml +1 -1
  138. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/mp3lyrics_org__michael_jackson_thriller.source.html +3 -3
  139. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/mp3lyrics_org__michael_jackson_thriller.target.yaml +1 -1
  140. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/mp3lyrics_org__milton_nascimento_rouxinol.source.html +3 -3
  141. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/mp3lyrics_org__milton_nascimento_rouxinol.target.yaml +1 -1
  142. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/songlyrics_com__michael_jackson_thriller.source.html +15 -12
  143. data/vendor/ultimate_lyrics/spec/lib/ultimate_lyrics/parser_spec_files/songlyrics_com__michael_jackson_thriller.target.yaml +1 -1
  144. data/vendor/ultimate_lyrics/ultimate_lyrics.gemspec +4 -2
  145. metadata +98 -9
  146. data/lib/ehbrs/patches/module/erb_template.rb +0 -11
  147. data/lib/ehbrs/patches/object/erb_template.rb +0 -9
  148. data/vendor/eac_ruby_utils/lib/eac_ruby_utils/fs_cache.rb +0 -12
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ed1aa5f7815ed7b0d48dafd1adbe15fefc1d9b65c1f88b573b11c4f0f83dcb9a
4
- data.tar.gz: 1410d0c2c225cb81a266c96c6e835169db6f05407f474fad319e23a2ac0be0cf
3
+ metadata.gz: 27cfd6fd70b80a51d74091e516bcd784cafe2ed0150de7424e865213ef2a6397
4
+ data.tar.gz: '099eae7fd47b2b34f11417228a16f838033b4dfa3b725bc16363c2a23ccc6ce6'
5
5
  SHA512:
6
- metadata.gz: d5a5e0d55099bad71f3100b9ce17cc0fff3d6962543da41e43919536ded40e9a6d01ab1cb85514c1e73660e78065fc9f02cf7d0bafc0959f204b7fda1ba45ede
7
- data.tar.gz: 8c37bccb70f1f5e2190b4102914b28fac6658f96ec7cbb56e2db606e3675bddddb149986eb300703539e754dbbe5d85be08f94723066799efad4a418f4ca5bd2
6
+ metadata.gz: caf38bb6c3ae4c907aa20761ef390b8ef3371e150ad512758813c8c411c7d24d10c33abf2a263904875c96cd90dc00987ba6127d0b5ef5452f9581594b96e878
7
+ data.tar.gz: 14096bf6312bde96792b427a71b5eddc03bc044b8fbd11a56e7513b6a72fb517641a0b53a2ce8f01ada21433bb376871af1aa8f6c3bb2cec30bd4ea734cd9ec0
data/Gemfile CHANGED
@@ -11,3 +11,5 @@ Dir["#{gems_subdir}/*"].each do |dir|
11
11
  basename = ::File.basename(dir)
12
12
  gem basename, path: "#{gems_subdir}/#{basename}"
13
13
  end
14
+
15
+ gem 'httpclient', git: 'https://github.com/livelink/httpclient.git'
data/Gemfile.lock CHANGED
@@ -1,7 +1,13 @@
1
+ GIT
2
+ remote: https://github.com/livelink/httpclient.git
3
+ revision: 40f7e88078c95f9a6909fb56f9e313632637cd72
4
+ specs:
5
+ httpclient (2.8.4)
6
+
1
7
  PATH
2
8
  remote: .
3
9
  specs:
4
- ehbrs-tools (0.26.0)
10
+ ehbrs-tools (0.28.2)
5
11
  avm-tools (~> 0.82, >= 0.82.1)
6
12
  eac_cli (~> 0.12, >= 0.12.5)
7
13
  eac_ruby_utils (~> 0.71)
@@ -33,7 +39,7 @@ PATH
33
39
  PATH
34
40
  remote: vendor/eac_cli
35
41
  specs:
36
- eac_cli (0.22.2)
42
+ eac_cli (0.23.1)
37
43
  colorize (~> 0.8.1)
38
44
  eac_config (~> 0.5, >= 0.5.1)
39
45
  eac_ruby_utils (~> 0.70)
@@ -52,28 +58,53 @@ PATH
52
58
  eac_ruby_utils (~> 0.74)
53
59
  eac_templates (~> 0.1)
54
60
 
61
+ PATH
62
+ remote: vendor/eac_fs
63
+ specs:
64
+ eac_fs (0.5.0)
65
+ content-type
66
+ eac_ruby_utils (~> 0.70)
67
+ ruby-filemagic
68
+
55
69
  PATH
56
70
  remote: vendor/eac_ruby_base0
57
71
  specs:
58
- eac_ruby_base0 (0.10.1)
72
+ eac_ruby_base0 (0.12.0)
59
73
  eac_cli (~> 0.22, >= 0.22.2)
60
- eac_ruby_gems_utils (~> 0.9.5, ~> 0.9)
74
+ eac_fs (~> 0.3)
75
+ eac_ruby_gems_utils (~> 0.9.6, ~> 0.9)
76
+ eac_ruby_utils (~> 0.70)
77
+
78
+ PATH
79
+ remote: vendor/eac_ruby_gems_utils
80
+ specs:
81
+ eac_ruby_gems_utils (0.9.6)
82
+ bundler (~> 2.2, >= 2.2.17)
61
83
  eac_ruby_utils (~> 0.70)
62
84
 
63
85
  PATH
64
86
  remote: vendor/eac_ruby_utils
65
87
  specs:
66
- eac_ruby_utils (0.75.0)
88
+ eac_ruby_utils (0.76.0)
67
89
  activesupport (>= 4.0)
68
90
  addressable (~> 2.6)
69
91
  filesize
70
92
  net-ssh (~> 4.2)
71
93
 
94
+ PATH
95
+ remote: vendor/eac_templates
96
+ specs:
97
+ eac_templates (0.2.0)
98
+ eac_config (~> 0.5)
99
+ eac_ruby_utils (~> 0.64)
100
+
72
101
  PATH
73
102
  remote: vendor/ehbrs_ruby_utils
74
103
  specs:
75
- ehbrs_ruby_utils (0.10.0)
104
+ ehbrs_ruby_utils (0.12.1)
76
105
  aranha-parsers (~> 0.8, >= 0.8.5)
106
+ avm (~> 0.3, >= 0.3.2)
107
+ eac_fs (~> 0.5)
77
108
  eac_ruby_utils (~> 0.70)
78
109
  eac_templates (~> 0.1, >= 0.1.1)
79
110
  taglib-ruby (~> 1.1)
@@ -82,7 +113,7 @@ PATH
82
113
  PATH
83
114
  remote: vendor/ultimate_lyrics
84
115
  specs:
85
- ultimate_lyrics (0.1.0)
116
+ ultimate_lyrics (0.1.2)
86
117
  aranha-parsers (~> 0.8, >= 0.8.5)
87
118
  eac_ruby_utils (~> 0.74)
88
119
 
@@ -99,13 +130,14 @@ GEM
99
130
  public_suffix (>= 2.0.2, < 5.0)
100
131
  asciidoctor (2.0.16)
101
132
  ast (2.4.2)
102
- avm (0.3.2)
133
+ avm (0.5.0)
103
134
  eac_docker (~> 0.3)
104
135
  eac_git (~> 0.6)
105
136
  eac_ruby_utils (~> 0.68)
106
137
  eac_templates (~> 0.1, >= 0.1.1)
107
- avm-apps (0.4.1)
108
- eac_ruby_utils (~> 0.67)
138
+ filesize (~> 0.2)
139
+ htmlbeautifier (~> 1.3, >= 1.3.1)
140
+ minitar (~> 0.9)
109
141
  avm-eac_asciidoctor_base0 (0.3.1)
110
142
  asciidoctor (~> 2.0, >= 2.0.12)
111
143
  avm-eac_webapp_base0 (~> 0.1)
@@ -115,25 +147,15 @@ GEM
115
147
  avm-eac_webapp_base0 (0.1.1)
116
148
  avm (~> 0.1)
117
149
  eac_ruby_utils (~> 0.68)
118
- avm-tools (0.105.0)
150
+ avm-tools (0.108.0)
119
151
  aranha-parsers (~> 0.4)
120
- asciidoctor (~> 2.0, >= 2.0.12)
121
152
  avm (~> 0.1)
122
- avm-apps (~> 0.2)
123
153
  avm-eac_asciidoctor_base0
124
154
  clipboard (~> 1.3, >= 1.3.3)
125
- content-type (~> 0.0.1)
126
155
  curb (~> 0.9.10)
127
- eac_docker (~> 0.2)
128
- eac_git (~> 0.2)
129
156
  eac_ruby_base0 (~> 0.7, >= 0.7.2)
130
157
  eac_ruby_gems_utils (~> 0.6, >= 0.6.1)
131
- eac_templates (~> 0.1)
132
- filesize
133
158
  git (~> 1.7)
134
- htmlbeautifier (~> 1.3, >= 1.3.1)
135
- minitar
136
- os
137
159
  ruby-progressbar (~> 1.10, >= 1.10.1)
138
160
  axiom-types (0.1.1)
139
161
  descendants_tracker (~> 0.0.4)
@@ -152,7 +174,7 @@ GEM
152
174
  thread_safe (~> 0.3, >= 0.3.1)
153
175
  diff-lcs (1.4.4)
154
176
  dry-inflector (0.2.1)
155
- eac_git (0.7.3)
177
+ eac_git (0.8.0)
156
178
  eac_ruby_utils (~> 0.74)
157
179
  parseconfig (~> 1.0, >= 1.0.8)
158
180
  eac_ruby_gem_support (0.4.0)
@@ -161,12 +183,6 @@ GEM
161
183
  rubocop (~> 0.80.1)
162
184
  rubocop-rails (~> 2.4.2)
163
185
  rubocop-rspec (~> 1.38.1)
164
- eac_ruby_gems_utils (0.9.5)
165
- bundler (~> 2.2, >= 2.2.17)
166
- eac_ruby_utils (~> 0.70)
167
- eac_templates (0.1.2)
168
- eac_config (~> 0.5)
169
- eac_ruby_utils (~> 0.64)
170
186
  faraday (1.8.0)
171
187
  faraday-em_http (~> 1.0)
172
188
  faraday-em_synchrony (~> 1.0)
@@ -191,7 +207,6 @@ GEM
191
207
  rchardet (~> 1.8)
192
208
  hpricot (0.8.6)
193
209
  htmlbeautifier (1.3.1)
194
- httpclient (2.8.3)
195
210
  i18n (1.8.10)
196
211
  concurrent-ruby (~> 1.0)
197
212
  ice_nine (0.11.2)
@@ -201,13 +216,13 @@ GEM
201
216
  minitest (5.14.4)
202
217
  multipart-post (2.1.1)
203
218
  net-ssh (4.2.0)
204
- nokogiri (1.12.4-x86_64-linux)
219
+ nokogiri (1.12.5-x86_64-linux)
205
220
  racc (~> 1.4)
206
221
  ofx-parser (1.1.0)
207
222
  hpricot (>= 0.6)
208
223
  os (1.1.1)
209
224
  parallel (1.21.0)
210
- parseconfig (1.1.0)
225
+ parseconfig (1.1.2)
211
226
  parser (3.0.2.0)
212
227
  ast (~> 2.4.1)
213
228
  parslet (1.8.2)
@@ -244,6 +259,7 @@ GEM
244
259
  rubocop (>= 0.72.0)
245
260
  rubocop-rspec (1.38.1)
246
261
  rubocop (>= 0.68.1)
262
+ ruby-filemagic (0.7.2)
247
263
  ruby-progressbar (1.11.0)
248
264
  ruby2_keywords (0.0.5)
249
265
  rubyzip (2.3.2)
@@ -274,11 +290,15 @@ DEPENDENCIES
274
290
  eac_cli!
275
291
  eac_config!
276
292
  eac_docker!
293
+ eac_fs!
277
294
  eac_ruby_base0!
278
295
  eac_ruby_gem_support (~> 0.3)
296
+ eac_ruby_gems_utils!
279
297
  eac_ruby_utils!
298
+ eac_templates!
280
299
  ehbrs-tools!
281
300
  ehbrs_ruby_utils!
301
+ httpclient!
282
302
  ultimate_lyrics!
283
303
 
284
304
  BUNDLED WITH
@@ -1,56 +1,51 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'eac_ruby_utils/envs'
4
- require 'eac_ruby_utils/fs/clearable_directory'
4
+
5
5
  require 'ehbrs/tools/core_ext'
6
+ require 'ehbrs_ruby_utils/fs/selected'
6
7
 
7
8
  module Ehbrs
8
9
  module Tools
9
10
  class Runner
10
11
  class Fs
11
12
  class Selected
12
- DEFAULT_TRAVERSER_RECURSIVE = true
13
-
14
13
  enable_jobs_runner
15
- runner_with :confirmation, :help, :filesystem_traverser do
14
+ runner_with :confirmation, :help do
16
15
  desc 'Seleciona diretórios.'
17
16
  arg_opt '-b', '--build-dir', 'Constrói diretório alvo.'
17
+ arg_opt '-f', '--filename', 'Nome do arquivo que anota o diretório como selecionado.',
18
+ default: ::EhbrsRubyUtils::Fs::Selected::DEFAULT_FILENAME
19
+
20
+ pos_arg :root_path
18
21
  end
19
22
 
20
23
  def run
21
- infov 'Recursive', traverser_recursive
24
+ infov 'Root path', selected.root_path
25
+ infov 'Filename', selected.filename
26
+ infov 'Build directory', build_dir.if_present('-')
22
27
  run_jobs :show, :build
23
28
  end
24
29
 
25
30
  protected
26
31
 
27
- def build_selected_directory(path)
28
- path
29
- end
30
-
31
32
  def directory_label(directory)
32
33
  directory.to_s
33
34
  end
34
35
 
35
36
  def directory_target_basename(directory)
36
- directory.basename.to_path
37
+ ::EhbrsRubyUtils::Fs::Selected::Build::DEFAULT_TARGET_BASENAME_PROC.call(directory)
37
38
  end
38
39
 
39
40
  private
40
41
 
41
42
  def build
42
43
  infom "Building directory \"#{build_dir}\" with selected..."
43
- build_dir.clear
44
- selected_directories.each do |directory|
45
- ::EacRubyUtils::Envs.local.command(
46
- 'ln', '-s', directory.to_path,
47
- build_dir.join(directory_target_basename(directory))
48
- ).system!
49
- end
44
+ selected.build(build_dir, &method(:directory_target_basename)).perform
50
45
  end
51
46
 
52
47
  def build_dir_uncached
53
- parsed.build_dir.if_present { |v| ::EacRubyUtils::Fs::ClearableDirectory.new(v) }
48
+ parsed.build_dir.if_present(&:to_pathname)
54
49
  end
55
50
 
56
51
  def run_build?
@@ -59,9 +54,11 @@ module Ehbrs
59
54
 
60
55
  def selected_directories_uncached
61
56
  infom 'Searching selected directories...'
62
- @selected = []
63
- run_filesystem_traverser
64
- @selected.sort
57
+ selected.found
58
+ end
59
+
60
+ def selected_uncached
61
+ ::EhbrsRubyUtils::Fs::Selected.new(parsed.root_path, filename: parsed.filename)
65
62
  end
66
63
 
67
64
  def show
@@ -70,10 +67,6 @@ module Ehbrs
70
67
  puts directory_label(directory)
71
68
  end
72
69
  end
73
-
74
- def traverser_check_directory(path)
75
- @selected << build_selected_directory(path) if path.join('.selected').exist?
76
- end
77
70
  end
78
71
  end
79
72
  end
@@ -1,6 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'eac_ruby_utils/fs_cache'
4
3
  require 'ehbrs/tools/core_ext'
5
4
  require 'ehbrs_ruby_utils/videos/container'
6
5
  require 'ultimate_lyrics/provider'
@@ -13,7 +12,7 @@ module Ehbrs
13
12
  DEFAULT_PROVIDER = 'lyrics.com'
14
13
 
15
14
  runner_with :help, :output do
16
- arg_opt '-p', '--provider', "Nome do provedor [Nome do #{DEFAULT_PROVIDER}]"
15
+ arg_opt '-p', '--provider', 'Nome do provedor.', default: DEFAULT_PROVIDER
17
16
  pos_arg :file
18
17
  end
19
18
 
@@ -33,7 +32,7 @@ module Ehbrs
33
32
 
34
33
  def start_banner
35
34
  infov 'File', file
36
- %w[artist album track title].each do |attr|
35
+ %w[artist album track title year].each do |attr|
37
36
  infov attr.humanize, container.tag_file.tag.send(attr)
38
37
  end
39
38
  infov 'Selected provider', provider
@@ -60,7 +59,7 @@ module Ehbrs
60
59
  end
61
60
 
62
61
  def provider_name
63
- parsed.provider.if_present(DEFAULT_PROVIDER)
62
+ parsed.provider
64
63
  end
65
64
  end
66
65
  end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'ehbrs/tools/core_ext'
4
+ require 'ehbrs_ruby_utils/music/lyrics_book'
5
+ require 'ehbrs_ruby_utils/videos/container'
6
+ require 'ultimate_lyrics/provider'
7
+
8
+ module Ehbrs
9
+ module Tools
10
+ class Runner
11
+ class Music
12
+ class LyricsBook
13
+ runner_with :help, :output do
14
+ arg_opt '-p', '--provider', 'Nome do provedor.',
15
+ default: ::EhbrsRubyUtils::Music::LyricsBook::DEFAULT_PROVIDER_NAME
16
+ pos_arg :source_dir
17
+ end
18
+
19
+ def run
20
+ start_banner
21
+ run_output
22
+ end
23
+
24
+ def start_banner
25
+ infov 'Source directory', book.source_dir
26
+ infov 'Selected provider', book.provider
27
+ end
28
+
29
+ def book_uncached
30
+ ::EhbrsRubyUtils::Music::LyricsBook.new(parsed.source_dir,
31
+ provider_name: parsed.provider)
32
+ end
33
+
34
+ def output_content
35
+ book.output
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -10,16 +10,16 @@ module Ehbrs
10
10
  class Selected < ::Ehbrs::Tools::Runner::Fs::Selected
11
11
  protected
12
12
 
13
- def build_selected_directory(path)
14
- ::Ehbrs::Music::Album.new(path)
15
- end
16
-
17
13
  def directory_label(directory)
18
- directory.to_label
14
+ path_to_album(directory).to_label
19
15
  end
20
16
 
21
17
  def directory_target_basename(directory)
22
- directory.id
18
+ path_to_album(directory).id
19
+ end
20
+
21
+ def path_to_album(path)
22
+ ::Ehbrs::Music::Album.new(path)
23
23
  end
24
24
  end
25
25
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Ehbrs
4
4
  module Tools
5
- VERSION = '0.26.0'
5
+ VERSION = '0.28.2'
6
6
  end
7
7
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'eac_ruby_utils/filesystem_cache'
3
+ require 'eac_fs/cache'
4
4
  require 'eac_ruby_utils/simple_cache'
5
5
 
6
6
  module Ehbrs
@@ -15,7 +15,7 @@ module Ehbrs
15
15
  private
16
16
 
17
17
  def user_home_dir_uncached
18
- ::EacRubyUtils::FilesystemCache.new(ENV['HOME'])
18
+ ::EacFs::Cache.new(ENV['HOME'])
19
19
  end
20
20
 
21
21
  def cache_uncached
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'eac_ruby_utils/core_ext'
4
- require 'ehbrs/fs/compressed_package'
4
+ require 'ehbrs_ruby_utils/fs/compressed_package'
5
5
  require 'ehbrs/videos/extract/package_file'
6
6
 
7
7
  module Ehbrs
@@ -37,7 +37,7 @@ module Ehbrs
37
37
  raise "Extract directory \"#{r}\" is a file" if r.file?
38
38
 
39
39
  r.rmtree if r.directory?
40
- ::Ehbrs::Fs::CompressedPackage.new(path).extract_to(r)
40
+ ::EhbrsRubyUtils::Fs::CompressedPackage.new(path).extract_to(r)
41
41
  r
42
42
  end
43
43
 
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'eac_ruby_utils/core_ext'
4
- require 'ehbrs/fs/compressed_package'
5
4
 
6
5
  module Ehbrs
7
6
  module Videos
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'eac_fs/cache'
3
4
  require 'eac_ruby_utils/fs/temp'
4
5
  require 'ehbrs/tools/runner'
5
6
  require 'ehbrs/tools/runner/fs/used_space'
@@ -8,7 +9,7 @@ require 'ehbrs/observers/with_persistence'
8
9
  RSpec.describe ::Ehbrs::Tools::Runner::Fs::UsedSpace do
9
10
  let(:target) { ::EacRubyUtils::Fs::Temp.directory }
10
11
  let(:user_dir) { ::EacRubyUtils::Fs::Temp.directory }
11
- let(:cached_user_dir) { ::EacRubyUtils::FilesystemCache.new(user_dir) }
12
+ let(:cached_user_dir) { ::EacFs::Cache.new(user_dir) }
12
13
  let(:observers_user_dir) { cached_user_dir.child('observers') }
13
14
  let(:observer_path) do
14
15
  observers_user_dir.child(target.to_s.parameterize).content_path.to_pathname
@@ -3,16 +3,19 @@
3
3
  require 'eac_ruby_utils/core_ext'
4
4
 
5
5
  module EacCli
6
- class Config
6
+ class Config < ::SimpleDelegator
7
7
  require_sub __FILE__
8
- attr_reader :sub
9
8
 
10
9
  def initialize(sub_node)
11
- @sub = sub_node
10
+ super(sub_node)
12
11
  end
13
12
 
14
13
  def entry(path, options = {})
15
14
  ::EacCli::Config::Entry.new(self, path, options)
16
15
  end
16
+
17
+ def sub
18
+ __getobj__
19
+ end
17
20
  end
18
21
  end
@@ -13,7 +13,7 @@ module EacCli
13
13
  repeat? ? previous_value + [new_value] : new_value
14
14
  end
15
15
 
16
- def default_value
16
+ def default_default_value
17
17
  repeat? ? [] : nil
18
18
  end
19
19
  end
@@ -18,7 +18,7 @@ module EacCli
18
18
 
19
19
  enable_listable
20
20
  enable_abstract_methods :build_value, :default_value
21
- lists.add_symbol :option, :optional, :usage, :repeat, :required
21
+ lists.add_symbol :option, :default, :optional, :usage, :repeat, :required
22
22
  common_constructor :short, :long, :description, :options, default: [{}] do
23
23
  raise 'Nor short neither long selector was set' if short.blank? && long.blank?
24
24
 
@@ -27,6 +27,14 @@ module EacCli
27
27
  )
28
28
  end
29
29
 
30
+ def default_value
31
+ default_value? ? options[OPTION_DEFAULT] : default_default_value
32
+ end
33
+
34
+ def default_value?
35
+ options.key?(OPTION_DEFAULT)
36
+ end
37
+
30
38
  def identifier
31
39
  [long, short].each do |v|
32
40
  v.to_s.if_present { |vv| return vv.variableize.to_sym }
@@ -14,6 +14,12 @@ module EacCli
14
14
  end
15
15
 
16
16
  def default_value
17
+ return super unless default_value?
18
+
19
+ raise "Unallowed default value for boolean options (Option: #{self})"
20
+ end
21
+
22
+ def default_default_value
17
23
  repeat? ? 0 : false
18
24
  end
19
25
  end
@@ -36,9 +36,9 @@ module EacCli
36
36
  end
37
37
 
38
38
  def option_definition(option)
39
- self.class.option_usage_full(option) + option.description.if_present('') do |v|
40
- OPTION_DESC_SEP + v
41
- end
39
+ [self.class.option_usage_full(option), option.description,
40
+ option.default_value? ? "[Default: \"#{option.default_value}\"]" : nil]
41
+ .reject(&:blank?).join(OPTION_DESC_SEP)
42
42
  end
43
43
 
44
44
  def section(header, include_header = true)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacCli
4
- VERSION = '0.22.2'
4
+ VERSION = '0.23.1'
5
5
  end
@@ -13,6 +13,7 @@ RSpec.describe ::EacCli::Runner do
13
13
  bool_opt '-p', '--opt2', 'A boolean option'
14
14
  arg_opt '-q', '--opt4', 'A repeatable argument option.', repeat: true
15
15
  bool_opt '-r', '--opt5', 'A repeatable boolean option', repeat: true
16
+ arg_opt '-s', '--opt6', 'A argument option with default value', default: 'DEFAULT'
16
17
  pos_arg :pos1
17
18
  pos_arg :pos2, repeat: true, optional: true
18
19
  alt do
@@ -28,9 +29,9 @@ RSpec.describe ::EacCli::Runner do
28
29
  let(:parsed_actual) { instance.parsed.to_h.symbolize_keys }
29
30
 
30
31
  context 'when all args are supplied' do
31
- let(:argv) { %w[--opt1 aaa --opt2 bbb ccc ddd] }
32
+ let(:argv) { %w[--opt1 aaa --opt2 bbb ccc ddd --opt6 6] }
32
33
  let(:parsed_expected) do
33
- { opt1: 'aaa', opt2: true, opt3: false, opt4: [], opt5: 0, pos1: 'bbb',
34
+ { opt1: 'aaa', opt2: true, opt3: false, opt4: [], opt5: 0, opt6: '6', pos1: 'bbb',
34
35
  pos2: %w[ccc ddd] }
35
36
  end
36
37
 
@@ -65,7 +66,7 @@ RSpec.describe ::EacCli::Runner do
65
66
  context 'when only required args are supplied' do
66
67
  let(:argv) { %w[bbb] }
67
68
  let(:parsed_expected) do
68
- { opt1: nil, opt2: false, opt3: false, opt4: [], opt5: 0, pos1: 'bbb',
69
+ { opt1: nil, opt2: false, opt3: false, opt4: [], opt5: 0, opt6: 'DEFAULT', pos1: 'bbb',
69
70
  pos2: [] }
70
71
  end
71
72
 
@@ -87,7 +88,7 @@ RSpec.describe ::EacCli::Runner do
87
88
  context 'when alternative args are supplied' do
88
89
  let(:argv) { %w[--opt3] }
89
90
  let(:parsed_expected) do
90
- { opt1: nil, opt2: false, opt3: true, opt4: [], opt5: 0, pos1: nil,
91
+ { opt1: nil, opt2: false, opt3: true, opt4: [], opt5: 0, opt6: 'DEFAULT', pos1: nil,
91
92
  pos2: [] }
92
93
  end
93
94
 
@@ -98,7 +99,7 @@ RSpec.describe ::EacCli::Runner do
98
99
  context 'when repeated options are supplied' do
99
100
  let(:argv) { %w[--opt5 -rrr --opt4=A -q B --opt4 C AAA] }
100
101
  let(:parsed_expected) do
101
- { opt1: nil, opt2: false, opt3: false, opt4: %w[A B C], opt5: 4, pos1: 'AAA',
102
+ { opt1: nil, opt2: false, opt3: false, opt4: %w[A B C], opt5: 4, opt6: 'DEFAULT', pos1: 'AAA',
102
103
  pos2: [] }
103
104
  end
104
105
 
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ $LOAD_PATH.push File.expand_path('lib', __dir__)
4
+
5
+ require 'eac_fs/version'
6
+
7
+ Gem::Specification.new do |s|
8
+ s.name = 'eac_fs'
9
+ s.version = EacFs::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 'content-type'
16
+ s.add_dependency 'eac_ruby_utils', '~> 0.70'
17
+ s.add_dependency 'ruby-filemagic'
18
+
19
+ s.add_development_dependency 'eac_ruby_gem_support', '~> 0.3'
20
+ end
@@ -1,7 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module EacRubyUtils
4
- class FilesystemCache
3
+ require 'eac_ruby_utils/core_ext'
4
+ require 'fileutils'
5
+
6
+ module EacFs
7
+ class Cache
8
+ enable_context
9
+
5
10
  CONTENT_FILE_NAME = '__content__'
6
11
 
7
12
  attr_reader :path