ehbrs-tools 0.26.0 → 0.28.2

Sign up to get free protection for your applications and to get access to all the features.
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