eac_tools 0.37.0 → 0.37.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 (88) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +51 -42
  3. data/lib/eac_tools/version.rb +1 -1
  4. data/sub/avm/avm.gemspec +4 -2
  5. data/sub/avm/lib/avm/file_formats/base.rb +60 -0
  6. data/sub/avm/lib/avm/file_formats.rb +9 -0
  7. data/sub/avm/lib/avm/launcher/context.rb +6 -3
  8. data/sub/avm/lib/avm/launcher/paths/logical.rb +0 -1
  9. data/sub/avm/lib/avm/launcher/stereotype.rb +4 -4
  10. data/sub/avm/lib/avm/registry/file_formats.rb +10 -0
  11. data/sub/avm/lib/avm/registry.rb +2 -2
  12. data/sub/avm/lib/avm/rspec/setup/launcher.rb +19 -0
  13. data/sub/avm/lib/avm/rspec/setup.rb +2 -0
  14. data/sub/avm/lib/avm/rspec/source_generator.rb +3 -3
  15. data/sub/avm/lib/avm/version.rb +1 -1
  16. data/sub/avm-eac_generic_base0/avm-eac_generic_base0.gemspec +2 -2
  17. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/file_formats/base.rb +32 -0
  18. data/sub/{avm-files/lib/avm/files/formatter/formats.rb → avm-eac_generic_base0/lib/avm/eac_generic_base0/file_formats.rb} +3 -5
  19. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/version.rb +1 -1
  20. data/sub/avm-eac_php_base0/avm-eac_php_base0.gemspec +2 -1
  21. data/sub/avm-eac_php_base0/lib/avm/eac_php_base0/file_formats/base.rb +20 -0
  22. data/sub/avm-eac_php_base0/lib/avm/eac_php_base0/file_formats.rb +11 -0
  23. data/sub/avm-eac_php_base0/lib/avm/eac_php_base0/version.rb +1 -1
  24. data/sub/avm-eac_python_base0/Gemfile +8 -0
  25. data/sub/avm-eac_python_base0/avm-eac_python_base0.gemspec +19 -0
  26. data/sub/avm-eac_python_base0/lib/avm/eac_python_base0/file_formats/base.rb +20 -0
  27. data/sub/avm-eac_python_base0/lib/avm/eac_python_base0/file_formats.rb +11 -0
  28. data/sub/avm-eac_python_base0/lib/avm/eac_python_base0/version.rb +7 -0
  29. data/sub/avm-eac_python_base0/lib/avm/eac_python_base0.rb +9 -0
  30. data/sub/avm-eac_python_base0/spec/rubocop_spec.rb +3 -0
  31. data/sub/avm-eac_python_base0/spec/spec_helper.rb +4 -0
  32. data/sub/avm-eac_ruby_base1/avm-eac_ruby_base1.gemspec +3 -3
  33. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/file_formats/base.rb +20 -0
  34. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/file_formats.rb +11 -0
  35. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher/gem/build.rb +1 -0
  36. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rspec/setup.rb +16 -0
  37. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rspec/source_generator.rb +22 -0
  38. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rspec.rb +11 -0
  39. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/version.rb +1 -1
  40. data/sub/{avm-tools → avm-eac_ruby_base1}/spec/lib/avm/eac_ruby_base1/launcher/gem/build_spec.rb +5 -2
  41. data/sub/{avm-tools → avm-eac_ruby_base1}/spec/lib/avm/eac_ruby_base1/launcher/gem/specification_spec.rb +11 -2
  42. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish_spec.rb +24 -0
  43. data/sub/{avm-tools → avm-eac_ruby_base1}/spec/lib/avm/eac_ruby_base1/launcher_stereotypes/base_spec.rb +5 -4
  44. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base_spec.rb +1 -1
  45. data/sub/avm-eac_webapp_base0/avm-eac_webapp_base0.gemspec +3 -3
  46. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/html.rb +43 -0
  47. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/javascript.rb +22 -0
  48. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/json.rb +25 -0
  49. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/provider.rb +23 -0
  50. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/xml.rb +26 -0
  51. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats.rb +11 -0
  52. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy/build.rb +1 -1
  53. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy/{git_info.rb → scm.rb} +10 -5
  54. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy/version.rb +2 -2
  55. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy.rb +3 -2
  56. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/version.rb +1 -1
  57. data/sub/avm-files/avm-files.gemspec +2 -2
  58. data/sub/avm-files/lib/avm/files/formatter.rb +6 -5
  59. data/sub/avm-files/lib/avm/files/version.rb +1 -1
  60. data/sub/avm-git/avm-git.gemspec +3 -3
  61. data/sub/avm-git/lib/avm/git/launcher/base/underlying.rb +8 -10
  62. data/sub/avm-git/lib/avm/git/version.rb +1 -1
  63. data/sub/avm-tools/avm-tools.gemspec +8 -5
  64. data/sub/avm-tools/lib/avm/tools/version.rb +1 -1
  65. data/sub/eac_git/eac_git.gemspec +1 -1
  66. data/sub/eac_git/lib/eac_git/local/remote.rb +12 -1
  67. data/sub/eac_git/lib/eac_git/remote.rb +10 -5
  68. data/sub/eac_git/lib/eac_git/{remote → remote_like}/ls_result.rb +1 -1
  69. data/sub/eac_git/lib/eac_git/remote_like.rb +32 -0
  70. data/sub/eac_git/lib/eac_git/version.rb +1 -1
  71. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command/exec_error.rb +10 -0
  72. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command/execute_result.rb +47 -0
  73. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command.rb +3 -40
  74. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup/setup_manager.rb +17 -0
  75. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup.rb +8 -2
  76. data/sub/eac_ruby_utils/lib/eac_ruby_utils/version.rb +1 -1
  77. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/rspec/setup/setup_manager_spec.rb +17 -0
  78. metadata +58 -36
  79. data/sub/avm-files/lib/avm/files/formatter/formats/base.rb +0 -62
  80. data/sub/avm-files/lib/avm/files/formatter/formats/generic_plain.rb +0 -34
  81. data/sub/avm-files/lib/avm/files/formatter/formats/html.rb +0 -45
  82. data/sub/avm-files/lib/avm/files/formatter/formats/javascript.rb +0 -24
  83. data/sub/avm-files/lib/avm/files/formatter/formats/json.rb +0 -27
  84. data/sub/avm-files/lib/avm/files/formatter/formats/php.rb +0 -22
  85. data/sub/avm-files/lib/avm/files/formatter/formats/python.rb +0 -22
  86. data/sub/avm-files/lib/avm/files/formatter/formats/ruby.rb +0 -22
  87. data/sub/avm-files/lib/avm/files/formatter/formats/xml.rb +0 -28
  88. data/sub/avm-tools/spec/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish_spec.rb +0 -19
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c51afc6cc47066279aecae0a111a60358d765c6cb42bd50b028aa1d01972e051
4
- data.tar.gz: 370f9cf00a71393edc5345948f95dc96e438cf00ea3672b6c2f23e7f8d5da285
3
+ metadata.gz: adddd8b71bf6e7fea8707749d003c2b70c48a9788a89203936cc2caf44577d21
4
+ data.tar.gz: 33e2a116d3f440f20a6dcdb1472d11ed1b62225c2d5c83e670d675cb707b3e22
5
5
  SHA512:
6
- metadata.gz: f8114f6308cee0ee687085eb7b2e87419bb55876e9bc4cad9ddee448b6d5e325ac162196ca06eb48af92b72b391b106cb6ee4bce51a5260e28f1e6a611349a8d
7
- data.tar.gz: 738c6a8e0a54ead97d5af98a37fb48c95d9befda1743b4de35e50e894868396c9bee734cbf41e56d7421dd84eff60064a1d7fc2ea57c44650d6c9347aaaaf957
6
+ metadata.gz: 81a7b7abf41d216ddcf599907100e128be48f1a45af08d16501ba842f6eb083f17c8dc8b35ee022b6708d840f6a3189e1604afbe816c0192d43a439cbe7819ee
7
+ data.tar.gz: 292a5afc0448b0010973a90a9ab8a7e92e932d1475368e2c11130bad74046c7961639f9a56d00b9a41b675b098b5850cdef351678aa880b8d611459c2dd22043
data/Gemfile.lock CHANGED
@@ -1,21 +1,21 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- eac_tools (0.37.0)
5
- avm (~> 0.49)
4
+ eac_tools (0.37.2)
5
+ avm (~> 0.51)
6
6
  avm-eac_asciidoctor_base0 (~> 0.7, >= 0.7.1)
7
- avm-eac_generic_base0 (~> 0.5)
7
+ avm-eac_generic_base0 (~> 0.6)
8
8
  avm-eac_latex_base0 (~> 0.2, >= 0.2.1)
9
- avm-eac_php_base0 (~> 0.1)
9
+ avm-eac_php_base0 (~> 0.2)
10
10
  avm-eac_rails_base0 (~> 0.8, >= 0.8.1)
11
11
  avm-eac_rails_base1 (~> 0.7)
12
12
  avm-eac_redmine_base0 (~> 0.16)
13
13
  avm-eac_redmine_plugin_base0 (~> 0.3)
14
- avm-eac_ruby_base1 (~> 0.24)
15
- avm-eac_webapp_base0 (~> 0.9, >= 0.9.2)
14
+ avm-eac_ruby_base1 (~> 0.26)
15
+ avm-eac_webapp_base0 (~> 0.11)
16
16
  avm-eac_wordpress_base0 (~> 0.2, >= 0.2.1)
17
- avm-tools (~> 0.142)
18
- eac_ruby_utils (~> 0.104)
17
+ avm-tools (~> 0.142, >= 0.142.2)
18
+ eac_ruby_utils (~> 0.105)
19
19
 
20
20
  PATH
21
21
  remote: sub/avm-eac_asciidoctor_base0
@@ -30,9 +30,9 @@ PATH
30
30
  PATH
31
31
  remote: sub/avm-eac_generic_base0
32
32
  specs:
33
- avm-eac_generic_base0 (0.5.0)
34
- avm (~> 0.28)
35
- eac_ruby_utils (~> 0.96)
33
+ avm-eac_generic_base0 (0.6.0)
34
+ avm (~> 0.51)
35
+ eac_ruby_utils (~> 0.105)
36
36
 
37
37
  PATH
38
38
  remote: sub/avm-eac_latex_base0
@@ -45,8 +45,16 @@ PATH
45
45
  PATH
46
46
  remote: sub/avm-eac_php_base0
47
47
  specs:
48
- avm-eac_php_base0 (0.1.0)
49
- eac_ruby_utils (~> 0.104)
48
+ avm-eac_php_base0 (0.2.0)
49
+ avm-eac_generic_base0 (~> 0.6)
50
+ eac_ruby_utils (~> 0.105)
51
+
52
+ PATH
53
+ remote: sub/avm-eac_python_base0
54
+ specs:
55
+ avm-eac_python_base0 (0.1.0)
56
+ avm-eac_generic_base0 (~> 0.6)
57
+ eac_ruby_utils (~> 0.105)
50
58
 
51
59
  PATH
52
60
  remote: sub/avm-eac_rails_base0
@@ -87,20 +95,20 @@ PATH
87
95
  PATH
88
96
  remote: sub/avm-eac_ruby_base1
89
97
  specs:
90
- avm-eac_ruby_base1 (0.24.0)
91
- avm (~> 0.49)
92
- avm-eac_generic_base0 (~> 0.5)
93
- eac_ruby_utils (~> 0.104)
98
+ avm-eac_ruby_base1 (0.26.0)
99
+ avm (~> 0.51)
100
+ avm-eac_generic_base0 (~> 0.6)
101
+ eac_ruby_utils (~> 0.105)
94
102
 
95
103
  PATH
96
104
  remote: sub/avm-eac_webapp_base0
97
105
  specs:
98
- avm-eac_webapp_base0 (0.9.2)
99
- avm (~> 0.46)
100
- avm-eac_generic_base0 (~> 0.5)
106
+ avm-eac_webapp_base0 (0.11.0)
107
+ avm (~> 0.51)
108
+ avm-eac_generic_base0 (~> 0.6)
101
109
  avm-eac_postgresql_base0 (~> 0.2)
102
110
  avm-eac_ubuntu_base0 (~> 0.3)
103
- eac_ruby_utils (~> 0.104)
111
+ eac_ruby_utils (~> 0.105)
104
112
 
105
113
  PATH
106
114
  remote: sub/avm-eac_wordpress_base0
@@ -113,36 +121,36 @@ PATH
113
121
  PATH
114
122
  remote: sub/avm-files
115
123
  specs:
116
- avm-files (0.4.1)
117
- avm (~> 0.43)
124
+ avm-files (0.5.0)
125
+ avm (~> 0.51)
118
126
  eac_cli (~> 0.28)
119
127
  eac_fs (~> 0.12, >= 0.12.3)
120
- eac_ruby_utils (~> 0.103)
128
+ eac_ruby_utils (~> 0.105)
121
129
  eac_templates (~> 0.3, >= 0.3.2)
122
130
 
123
131
  PATH
124
132
  remote: sub/avm-git
125
133
  specs:
126
- avm-git (0.7.0)
127
- avm (~> 0.49)
134
+ avm-git (0.8.0)
135
+ avm (~> 0.50)
128
136
  avm-files (~> 0.4, >= 0.4.1)
129
- eac_git (~> 0.12, >= 0.12.3)
130
- eac_ruby_utils (~> 0.104)
137
+ eac_git (~> 0.13)
138
+ eac_ruby_utils (~> 0.105)
131
139
  git (~> 1.12)
132
140
 
133
141
  PATH
134
142
  remote: sub/avm-tools
135
143
  specs:
136
- avm-tools (0.142.0)
144
+ avm-tools (0.142.2)
137
145
  aranha-parsers (~> 0.14, >= 0.14.3)
138
- avm (~> 0.49)
139
- avm-eac_ruby_base1 (~> 0.24)
146
+ avm (~> 0.51)
147
+ avm-eac_ruby_base1 (~> 0.26)
140
148
  avm-eac_ubuntu_base0 (~> 0.3)
141
- avm-files (~> 0.4, >= 0.4.1)
142
- avm-git (~> 0.7)
149
+ avm-files (~> 0.5)
150
+ avm-git (~> 0.8)
143
151
  clipboard (~> 1.3, >= 1.3.6)
144
152
  curb (~> 0.9, >= 0.9.11)
145
- eac_git (~> 0.12, >= 0.12.3)
153
+ eac_git (~> 0.13)
146
154
  eac_ruby_base0 (~> 0.17)
147
155
  eac_templates (~> 0.3, >= 0.3.2)
148
156
  git (~> 1.12)
@@ -151,12 +159,12 @@ PATH
151
159
  PATH
152
160
  remote: sub/avm
153
161
  specs:
154
- avm (0.49.0)
162
+ avm (0.51.0)
155
163
  eac_cli (~> 0.28)
156
164
  eac_config (~> 0.11, >= 0.11.1)
157
165
  eac_docker (~> 0.5)
158
- eac_git (~> 0.12, >= 0.12.3)
159
- eac_ruby_utils (~> 0.104)
166
+ eac_git (~> 0.13)
167
+ eac_ruby_utils (~> 0.105)
160
168
  eac_templates (~> 0.3, >= 0.3.2)
161
169
  filesize (~> 0.2)
162
170
  htmlbeautifier (~> 1.4, >= 1.4.2)
@@ -195,8 +203,8 @@ PATH
195
203
  PATH
196
204
  remote: sub/eac_git
197
205
  specs:
198
- eac_git (0.12.3)
199
- eac_ruby_utils (~> 0.103)
206
+ eac_git (0.13.0)
207
+ eac_ruby_utils (~> 0.105)
200
208
  parseconfig (~> 1.1, >= 1.1.2)
201
209
 
202
210
  PATH
@@ -211,7 +219,7 @@ PATH
211
219
  PATH
212
220
  remote: sub/eac_ruby_utils
213
221
  specs:
214
- eac_ruby_utils (0.104.0)
222
+ eac_ruby_utils (0.105.0)
215
223
  activesupport (>= 4, < 7)
216
224
  addressable (~> 2.8, >= 2.8.1)
217
225
  bundler
@@ -238,7 +246,7 @@ GEM
238
246
  faraday_middleware (~> 1.2)
239
247
  nokogiri (~> 1.13, >= 1.13.8)
240
248
  ofx-parser (~> 1.1)
241
- asciidoctor (2.0.17)
249
+ asciidoctor (2.0.18)
242
250
  ast (2.4.2)
243
251
  avm-eac_postgresql_base0 (0.2.0)
244
252
  avm (~> 0.12, >= 0.12.1)
@@ -306,7 +314,7 @@ GEM
306
314
  minitest (5.16.3)
307
315
  multipart-post (2.2.3)
308
316
  net-ssh (4.2.0)
309
- nokogiri (1.13.8-x86_64-linux)
317
+ nokogiri (1.13.9-x86_64-linux)
310
318
  racc (~> 1.4)
311
319
  ofx-parser (1.1.0)
312
320
  hpricot (>= 0.6)
@@ -367,6 +375,7 @@ DEPENDENCIES
367
375
  avm-eac_generic_base0!
368
376
  avm-eac_latex_base0!
369
377
  avm-eac_php_base0!
378
+ avm-eac_python_base0!
370
379
  avm-eac_rails_base0!
371
380
  avm-eac_rails_base1!
372
381
  avm-eac_redmine_base0!
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacTools
4
- VERSION = '0.37.0'
4
+ VERSION = '0.37.2'
5
5
  end
data/sub/avm/avm.gemspec CHANGED
@@ -15,13 +15,15 @@ Gem::Specification.new do |s|
15
15
  s.add_dependency 'eac_cli', '~> 0.28'
16
16
  s.add_dependency 'eac_config', '~> 0.11', '>= 0.11.1'
17
17
  s.add_dependency 'eac_docker', '~> 0.5'
18
- s.add_dependency 'eac_git', '~> 0.12', '>= 0.12.3'
19
- s.add_dependency 'eac_ruby_utils', '~> 0.104'
18
+ s.add_dependency 'eac_git', '~> 0.13'
19
+ s.add_dependency 'eac_ruby_utils', '~> 0.105'
20
20
  s.add_dependency 'eac_templates', '~> 0.3', '>= 0.3.2'
21
21
  s.add_dependency 'filesize', '~> 0.2'
22
22
  s.add_dependency 'htmlbeautifier', '~> 1.4', '>= 1.4.2'
23
23
  s.add_dependency 'minitar', '~> 0.9'
24
24
 
25
25
  s.add_development_dependency 'aranha-parsers', '~> 0.14', '~> 0.14.1'
26
+ s.add_development_dependency 'avm-eac_ruby_base1', '~> 0.24'
27
+ s.add_development_dependency 'avm-git', '~> 0.7'
26
28
  s.add_development_dependency 'eac_ruby_gem_support', '~> 0.5.1'
27
29
  end
@@ -0,0 +1,60 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_fs/file_info'
4
+ require 'ostruct'
5
+
6
+ module Avm
7
+ module FileFormats
8
+ class Base
9
+ enable_abstract_methods
10
+
11
+ def apply(files)
12
+ old_content = Hash[files.map { |f| [f, File.read(f)] }]
13
+ ::Avm::Files::Formatter::Utf8Assert.assert_files(files) { internal_apply(files) }
14
+ files.map { |f| build_file_result(f, old_content[f]) }
15
+ end
16
+
17
+ def name
18
+ self.class.name.demodulize
19
+ end
20
+
21
+ def match?(file)
22
+ match_by_filename?(file) || match_by_type?(file)
23
+ end
24
+
25
+ def valid_basenames
26
+ constant_or_array('VALID_BASENAMES')
27
+ end
28
+
29
+ def valid_types
30
+ constant_or_array('VALID_TYPES')
31
+ end
32
+
33
+ private
34
+
35
+ def constant_or_array(name)
36
+ return [] unless self.class.const_defined?(name)
37
+
38
+ self.class.const_get(name)
39
+ end
40
+
41
+ def build_file_result(file, old_content)
42
+ ::OpenStruct.new(file: file, format: self.class,
43
+ changed: (old_content != File.read(file)))
44
+ end
45
+
46
+ def match_by_filename?(file)
47
+ valid_basenames.any? do |valid_basename|
48
+ file.basename.fnmatch?(valid_basename)
49
+ end
50
+ end
51
+
52
+ def match_by_type?(file)
53
+ info = ::EacFs::FileInfo.new(file)
54
+ return unless info.content_type.type == 'text'
55
+
56
+ valid_types.include?(info.content_type.subtype)
57
+ end
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avm
6
+ module FileFormats
7
+ require_sub __FILE__
8
+ end
9
+ end
@@ -8,7 +8,6 @@ require 'avm/launcher/context/instance_discovery'
8
8
  require 'avm/launcher/context/settings'
9
9
  require 'avm/launcher/paths/logical'
10
10
  require 'avm/launcher/project'
11
- require 'avm/tools/self'
12
11
 
13
12
  module Avm
14
13
  module Launcher
@@ -43,6 +42,10 @@ module Avm
43
42
  @recache = false
44
43
  end
45
44
 
45
+ def fs_object_id
46
+ root.real.variableize
47
+ end
48
+
46
49
  def instance(name)
47
50
  instances.find { |i| i.name == name }
48
51
  end
@@ -66,7 +69,7 @@ module Avm
66
69
  end
67
70
 
68
71
  def default_cache_root
69
- ::Avm::Tools::Self.application.cache_dir.join('launcher')
72
+ fs_cache.path
70
73
  end
71
74
 
72
75
  def default_option(key)
@@ -78,7 +81,7 @@ module Avm
78
81
  end
79
82
 
80
83
  def default_settings_file
81
- ::Avm::Tools::Self.application.config_dir.join('launcher.yaml')
84
+ ::File.join(::EacFs::Contexts.config.current.path, 'launcher.yaml')
82
85
  end
83
86
 
84
87
  def projects_uncached
@@ -1,6 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'avm/projects/stereotypes'
4
3
  require 'avm/launcher/paths/real'
5
4
  require 'avm/launcher/stereotype'
6
5
 
@@ -7,11 +7,7 @@ module Avm
7
7
  module Launcher
8
8
  module Stereotype
9
9
  class << self
10
- attr_reader :stereotypes
11
-
12
10
  def included(base)
13
- @stereotypes ||= []
14
- @stereotypes << base
15
11
  base.extend(ClassMethods)
16
12
  end
17
13
 
@@ -22,6 +18,10 @@ module Avm
22
18
  def nogit_stereotypes
23
19
  stereotypes - git_stereotypes
24
20
  end
21
+
22
+ def stereotypes
23
+ ::Avm::Registry.launcher_stereotypes.available
24
+ end
25
25
  end
26
26
 
27
27
  module ClassMethods
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/registry/from_gems'
4
+
5
+ module Avm
6
+ module Registry
7
+ class FileFormats < ::Avm::Registry::FromGems
8
+ end
9
+ end
10
+ end
@@ -7,8 +7,8 @@ module Avm
7
7
  module Registry
8
8
  require_sub __FILE__
9
9
  enable_listable
10
- lists.add_symbol :category, :application_stereotypes, :instances, :launcher_stereotypes,
11
- :runners, :scms, :source_generators, :sources
10
+ lists.add_symbol :category, :application_stereotypes, :file_formats, :instances,
11
+ :launcher_stereotypes, :runners, :scms, :source_generators, :sources
12
12
 
13
13
  class << self
14
14
  enable_simple_cache
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+ require 'tmpdir'
5
+
6
+ module Avm
7
+ module Rspec
8
+ module Setup
9
+ module Launcher
10
+ def temp_launcher_context(settings_file = nil)
11
+ settings_file ||= temp_file
12
+ ::Avm::Launcher::Context.current = ::Avm::Launcher::Context.new(
13
+ projects_root: ::Dir.mktmpdir, settings_file: settings_file, cache_root: ::Dir.mktmpdir
14
+ )
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -6,10 +6,12 @@ require 'eac_ruby_utils/core_ext'
6
6
  module Avm
7
7
  module Rspec
8
8
  module Setup
9
+ require_sub __FILE__
9
10
  EXAMPLES = %w[entries_values in_avm_registry not_in_avm_registry].freeze
10
11
 
11
12
  def self.extended(obj)
12
13
  obj.setup_examples
14
+ obj.rspec_config.include(::Avm::Rspec::Setup::Launcher)
13
15
  obj.rspec_config.include(::Avm::Rspec::SourceGenerator)
14
16
  end
15
17
 
@@ -6,9 +6,9 @@ module Avm
6
6
  module Rspec
7
7
  module SourceGenerator
8
8
  # @return [Avm::Sources::Base]
9
- def avm_source(stereotype_name, target_path = nil)
10
- target_path ||= temp_dir.join('generated_app')
11
- ::Avm::Registry.source_generators.detect(stereotype_name, target_path).perform
9
+ def avm_source(stereotype_name, options = {})
10
+ target_path ||= options.delete(:target_path) || temp_dir.join('generated_app')
11
+ ::Avm::Registry.source_generators.detect(stereotype_name, target_path, options).perform
12
12
  ::Avm::Registry.sources.detect(target_path)
13
13
  end
14
14
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Avm
4
- VERSION = '0.49.0'
4
+ VERSION = '0.51.0'
5
5
  end
@@ -12,8 +12,8 @@ Gem::Specification.new do |s|
12
12
 
13
13
  s.files = Dir['{lib,locale}/**/*']
14
14
 
15
- s.add_dependency 'avm', '~> 0.28'
16
- s.add_dependency 'eac_ruby_utils', '~> 0.96'
15
+ s.add_dependency 'avm', '~> 0.51'
16
+ s.add_dependency 'eac_ruby_utils', '~> 0.105'
17
17
 
18
18
  s.add_development_dependency 'eac_ruby_gem_support', '~> 0.5.1'
19
19
  end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/file_formats/base'
4
+
5
+ module Avm
6
+ module EacGenericBase0
7
+ class FileFormats
8
+ class Base < ::Avm::FileFormats::Base
9
+ VALID_BASENAMES = %w[*.asm *.bat *.css.coffee *.java *.js *.rb *.s *.scss *.sql *.tex
10
+ *.url *.yml *.yaml].freeze
11
+
12
+ VALID_TYPES = %w[plain x-shellscript].freeze
13
+
14
+ def internal_apply(files)
15
+ files.each { |file| file_apply(file) }
16
+ end
17
+
18
+ def file_apply(file)
19
+ file.write(string_apply(file.read))
20
+ end
21
+
22
+ def string_apply(string)
23
+ b = ''
24
+ string.each_line do |line|
25
+ b += "#{line.rstrip}\n"
26
+ end
27
+ "#{b.strip}\n".gsub(/\t/, ' ')
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -3,11 +3,9 @@
3
3
  require 'eac_ruby_utils/core_ext'
4
4
 
5
5
  module Avm
6
- module Files
7
- class Formatter
8
- module Formats
9
- require_sub __FILE__
10
- end
6
+ module EacGenericBase0
7
+ module FileFormats
8
+ require_sub __FILE__
11
9
  end
12
10
  end
13
11
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacGenericBase0
5
- VERSION = '0.5.0'
5
+ VERSION = '0.6.0'
6
6
  end
7
7
  end
@@ -12,7 +12,8 @@ Gem::Specification.new do |s|
12
12
 
13
13
  s.files = Dir['{lib,locale,template}/**/*']
14
14
 
15
- s.add_dependency 'eac_ruby_utils', '~> 0.104'
15
+ s.add_dependency 'avm-eac_generic_base0', '~> 0.6'
16
+ s.add_dependency 'eac_ruby_utils', '~> 0.105'
16
17
 
17
18
  s.add_development_dependency 'eac_ruby_gem_support', '~> 0.5', '>= 0.5.1'
18
19
  end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/executables'
4
+ require 'avm/eac_generic_base0/file_formats/base'
5
+
6
+ module Avm
7
+ module EacPhpBase0
8
+ module FileFormats
9
+ class Base < ::Avm::EacGenericBase0::FileFormats::Base
10
+ VALID_BASENAMES = %w[*.php].freeze
11
+ VALID_TYPES = ['x-php'].freeze
12
+
13
+ def file_apply(file)
14
+ ::Avm::Executables.php_cs_fixer.command.append(['fix', file]).system!
15
+ super(file)
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avm
6
+ module EacPhpBase0
7
+ module FileFormats
8
+ require_sub __FILE__
9
+ end
10
+ end
11
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacPhpBase0
5
- VERSION = '0.1.0'
5
+ VERSION = '0.2.0'
6
6
  end
7
7
  end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec
6
+
7
+ local_gemfile = ::File.join(::File.dirname(__FILE__), 'Gemfile.local')
8
+ eval_gemfile local_gemfile if ::File.exist?(local_gemfile)
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ $LOAD_PATH.push File.expand_path('lib', __dir__)
4
+
5
+ require 'avm/eac_python_base0/version'
6
+
7
+ Gem::Specification.new do |s|
8
+ s.name = 'avm-eac_python_base0'
9
+ s.version = Avm::EacPythonBase0::VERSION
10
+ s.authors = ['Eduardo H. Bogoni']
11
+ s.summary = 'AVM stereotype for Python applications.'
12
+
13
+ s.files = Dir['{lib,locale,template}/**/*']
14
+
15
+ s.add_dependency 'avm-eac_generic_base0', '~> 0.6'
16
+ s.add_dependency 'eac_ruby_utils', '~> 0.105'
17
+
18
+ s.add_development_dependency 'eac_ruby_gem_support', '~> 0.5', '>= 0.5.1'
19
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/executables'
4
+ require 'avm/eac_generic_base0/file_formats/base'
5
+
6
+ module Avm
7
+ module EacPythonBase0
8
+ module FileFormats
9
+ class Base < ::Avm::EacGenericBase0::FileFormats::Base
10
+ VALID_BASENAMES = %w[*.py].freeze
11
+ VALID_TYPES = ['x-python'].freeze
12
+
13
+ def internal_apply(files)
14
+ ::Avm::Executables.yapf.command.append(['--in-place', *files]).system!
15
+ super(files)
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avm
6
+ module EacPythonBase0
7
+ module FileFormats
8
+ require_sub __FILE__
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacPythonBase0
5
+ VERSION = '0.1.0'
6
+ end
7
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avm
6
+ module EacPythonBase0
7
+ require_sub __FILE__
8
+ end
9
+ end
@@ -0,0 +1,3 @@
1
+ # frozen_string_literal: true
2
+
3
+ ::EacRubyUtils::Rspec.default_setup.describe_rubocop