eac_tools 0.37.1 → 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 (52) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +37 -28
  3. data/lib/eac_tools/version.rb +1 -1
  4. data/sub/avm/avm.gemspec +1 -1
  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/registry/file_formats.rb +10 -0
  8. data/sub/avm/lib/avm/registry.rb +2 -2
  9. data/sub/avm/lib/avm/version.rb +1 -1
  10. data/sub/avm-eac_generic_base0/avm-eac_generic_base0.gemspec +2 -2
  11. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/file_formats/base.rb +32 -0
  12. data/sub/{avm-files/lib/avm/files/formatter/formats.rb → avm-eac_generic_base0/lib/avm/eac_generic_base0/file_formats.rb} +3 -5
  13. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/version.rb +1 -1
  14. data/sub/avm-eac_php_base0/avm-eac_php_base0.gemspec +2 -1
  15. data/sub/avm-eac_php_base0/lib/avm/eac_php_base0/file_formats/base.rb +20 -0
  16. data/sub/avm-eac_php_base0/lib/avm/eac_php_base0/file_formats.rb +11 -0
  17. data/sub/avm-eac_php_base0/lib/avm/eac_php_base0/version.rb +1 -1
  18. data/sub/avm-eac_python_base0/Gemfile +8 -0
  19. data/sub/avm-eac_python_base0/avm-eac_python_base0.gemspec +19 -0
  20. data/sub/avm-eac_python_base0/lib/avm/eac_python_base0/file_formats/base.rb +20 -0
  21. data/sub/avm-eac_python_base0/lib/avm/eac_python_base0/file_formats.rb +11 -0
  22. data/sub/avm-eac_python_base0/lib/avm/eac_python_base0/version.rb +7 -0
  23. data/sub/avm-eac_python_base0/lib/avm/eac_python_base0.rb +9 -0
  24. data/sub/avm-eac_python_base0/spec/rubocop_spec.rb +3 -0
  25. data/sub/avm-eac_python_base0/spec/spec_helper.rb +4 -0
  26. data/sub/avm-eac_ruby_base1/avm-eac_ruby_base1.gemspec +2 -2
  27. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/file_formats/base.rb +20 -0
  28. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/file_formats.rb +11 -0
  29. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/version.rb +1 -1
  30. data/sub/avm-eac_webapp_base0/avm-eac_webapp_base0.gemspec +2 -2
  31. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/html.rb +43 -0
  32. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/javascript.rb +22 -0
  33. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/json.rb +25 -0
  34. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/provider.rb +23 -0
  35. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats/xml.rb +26 -0
  36. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/file_formats.rb +11 -0
  37. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/version.rb +1 -1
  38. data/sub/avm-files/avm-files.gemspec +2 -2
  39. data/sub/avm-files/lib/avm/files/formatter.rb +6 -5
  40. data/sub/avm-files/lib/avm/files/version.rb +1 -1
  41. data/sub/avm-tools/avm-tools.gemspec +6 -3
  42. data/sub/avm-tools/lib/avm/tools/version.rb +1 -1
  43. metadata +37 -24
  44. data/sub/avm-files/lib/avm/files/formatter/formats/base.rb +0 -62
  45. data/sub/avm-files/lib/avm/files/formatter/formats/generic_plain.rb +0 -34
  46. data/sub/avm-files/lib/avm/files/formatter/formats/html.rb +0 -45
  47. data/sub/avm-files/lib/avm/files/formatter/formats/javascript.rb +0 -24
  48. data/sub/avm-files/lib/avm/files/formatter/formats/json.rb +0 -27
  49. data/sub/avm-files/lib/avm/files/formatter/formats/php.rb +0 -22
  50. data/sub/avm-files/lib/avm/files/formatter/formats/python.rb +0 -22
  51. data/sub/avm-files/lib/avm/files/formatter/formats/ruby.rb +0 -22
  52. data/sub/avm-files/lib/avm/files/formatter/formats/xml.rb +0 -28
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3a06d6cf3c9faa8f37538fc898007ccf3501d0fbff41a883ba7b36a9d8f9a366
4
- data.tar.gz: 6bf1bd1dce7b5cedce59963194408964ed49ea4cf85a44609df482e29bddc9d0
3
+ metadata.gz: adddd8b71bf6e7fea8707749d003c2b70c48a9788a89203936cc2caf44577d21
4
+ data.tar.gz: 33e2a116d3f440f20a6dcdb1472d11ed1b62225c2d5c83e670d675cb707b3e22
5
5
  SHA512:
6
- metadata.gz: 55243dbe562ad019575f0014096a024aeb844723597fe4b00dc415c1f234a1424fca4d80498c7c679d9ace63fc0ead2c205b4a224ebf8bbca1f95d9fb96fd92d
7
- data.tar.gz: 5b47516144519424c1d3345460f6d36b5fd9d011015a1daa7342b9656d9512e53d0954c59a4545f71395f0a0fcedb74bc352edc7ba6406bf33806fe7c46726e7
6
+ metadata.gz: 81a7b7abf41d216ddcf599907100e128be48f1a45af08d16501ba842f6eb083f17c8dc8b35ee022b6708d840f6a3189e1604afbe816c0192d43a439cbe7819ee
7
+ data.tar.gz: 292a5afc0448b0010973a90a9ab8a7e92e932d1475368e2c11130bad74046c7961639f9a56d00b9a41b675b098b5850cdef351678aa880b8d611459c2dd22043
data/Gemfile.lock CHANGED
@@ -1,20 +1,20 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- eac_tools (0.37.1)
5
- avm (~> 0.50)
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.25)
15
- avm-eac_webapp_base0 (~> 0.10)
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, >= 0.142.1)
17
+ avm-tools (~> 0.142, >= 0.142.2)
18
18
  eac_ruby_utils (~> 0.105)
19
19
 
20
20
  PATH
@@ -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,17 +95,17 @@ PATH
87
95
  PATH
88
96
  remote: sub/avm-eac_ruby_base1
89
97
  specs:
90
- avm-eac_ruby_base1 (0.25.0)
91
- avm (~> 0.50)
92
- avm-eac_generic_base0 (~> 0.5)
98
+ avm-eac_ruby_base1 (0.26.0)
99
+ avm (~> 0.51)
100
+ avm-eac_generic_base0 (~> 0.6)
93
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.10.0)
99
- avm (~> 0.50)
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
111
  eac_ruby_utils (~> 0.105)
@@ -113,11 +121,11 @@ 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
@@ -133,12 +141,12 @@ PATH
133
141
  PATH
134
142
  remote: sub/avm-tools
135
143
  specs:
136
- avm-tools (0.142.1)
144
+ avm-tools (0.142.2)
137
145
  aranha-parsers (~> 0.14, >= 0.14.3)
138
- avm (~> 0.50)
139
- avm-eac_ruby_base1 (~> 0.25)
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)
149
+ avm-files (~> 0.5)
142
150
  avm-git (~> 0.8)
143
151
  clipboard (~> 1.3, >= 1.3.6)
144
152
  curb (~> 0.9, >= 0.9.11)
@@ -151,11 +159,11 @@ PATH
151
159
  PATH
152
160
  remote: sub/avm
153
161
  specs:
154
- avm (0.50.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)
166
+ eac_git (~> 0.13)
159
167
  eac_ruby_utils (~> 0.105)
160
168
  eac_templates (~> 0.3, >= 0.3.2)
161
169
  filesize (~> 0.2)
@@ -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.1'
4
+ VERSION = '0.37.2'
5
5
  end
data/sub/avm/avm.gemspec CHANGED
@@ -15,7 +15,7 @@ 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'
18
+ s.add_dependency 'eac_git', '~> 0.13'
19
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'
@@ -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
@@ -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
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Avm
4
- VERSION = '0.50.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
@@ -0,0 +1,4 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/rspec/default_setup'
4
+ ::EacRubyUtils::Rspec.default_setup_create(::File.expand_path('..', __dir__))
@@ -12,8 +12,8 @@ Gem::Specification.new do |s|
12
12
 
13
13
  s.files = Dir['{lib,locale,template}/**/*']
14
14
 
15
- s.add_dependency 'avm', '~> 0.50'
16
- s.add_dependency 'avm-eac_generic_base0', '~> 0.5'
15
+ s.add_dependency 'avm', '~> 0.51'
16
+ s.add_dependency 'avm-eac_generic_base0', '~> 0.6'
17
17
  s.add_dependency 'eac_ruby_utils', '~> 0.105'
18
18
 
19
19
  s.add_development_dependency 'aranha-parsers', '~> 0.14', '>= 0.14.1'
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_generic_base0/file_formats/base'
4
+ require 'avm/eac_ruby_base1/rubocop'
5
+
6
+ module Avm
7
+ module EacRubyBase1
8
+ module FileFormats
9
+ class Base < ::Avm::EacGenericBase0::FileFormats::Base
10
+ VALID_BASENAMES = %w[*.gemspec *.rake *.rb Gemfile Rakefile].freeze
11
+ VALID_TYPES = ['x-ruby'].freeze
12
+
13
+ def internal_apply(files)
14
+ ::Avm::EacRubyBase1::Rubocop.new('.', ['-a', '--ignore-parent-exclusion'] + files).run
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 EacRubyBase1
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 EacRubyBase1
5
- VERSION = '0.25.0'
5
+ VERSION = '0.26.0'
6
6
  end
7
7
  end
@@ -12,8 +12,8 @@ Gem::Specification.new do |s|
12
12
 
13
13
  s.files = Dir['{lib,template}/**/*']
14
14
 
15
- s.add_dependency 'avm', '~> 0.50'
16
- s.add_dependency 'avm-eac_generic_base0', '~> 0.5'
15
+ s.add_dependency 'avm', '~> 0.51'
16
+ s.add_dependency 'avm-eac_generic_base0', '~> 0.6'
17
17
  s.add_dependency 'avm-eac_postgresql_base0', '~> 0.2'
18
18
  s.add_dependency 'avm-eac_ubuntu_base0', '~> 0.3'
19
19
  s.add_dependency 'eac_ruby_utils', '~> 0.105'
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_generic_base0/file_formats/base'
4
+ require 'htmlbeautifier'
5
+
6
+ module Avm
7
+ module EacWebappBase0
8
+ module FileFormats
9
+ class Html < ::Avm::EacGenericBase0::FileFormats::Base
10
+ VALID_BASENAMES = %w[*.html *.html.erb].freeze
11
+ VALID_TYPES = [].freeze
12
+
13
+ def file_apply(path)
14
+ input = ::File.read(path)
15
+ temppath = tempfile_path
16
+ ::File.open(temppath, 'w') do |output|
17
+ beautify path, input, output
18
+ end
19
+ ::FileUtils.mv(temppath, path)
20
+ super(path)
21
+ end
22
+
23
+ private
24
+
25
+ def beautify(name, input, output)
26
+ output.puts ::HtmlBeautifier.beautify(input, htmlbeautify_options)
27
+ rescue StandardError => e
28
+ raise "Error parsing #{name}: #{e}"
29
+ end
30
+
31
+ def htmlbeautify_options
32
+ @htmlbeautify_options ||= { indent: ' ' }
33
+ end
34
+
35
+ def tempfile_path
36
+ tempfile = ::Tempfile.new
37
+ tempfile.close
38
+ tempfile.path
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,22 @@
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 EacWebappBase0
8
+ module FileFormats
9
+ class Javascript < ::Avm::EacGenericBase0::FileFormats::Base
10
+ VALID_BASENAMES = %w[*.js].freeze
11
+ VALID_TYPES = [].freeze
12
+
13
+ def internal_apply(files)
14
+ ::Avm::Executables.js_beautify.command.append(
15
+ ['--indent-size=2', '--end-with-newline', '--replace', *files]
16
+ ).system!
17
+ super(files)
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_generic_base0/file_formats/base'
4
+
5
+ module Avm
6
+ module EacWebappBase0
7
+ module FileFormats
8
+ class Json < ::Avm::EacGenericBase0::FileFormats::Base
9
+ VALID_BASENAMES = %w[*.json].freeze
10
+ VALID_TYPES = [].freeze
11
+
12
+ def file_apply(file)
13
+ ::File.write(file, ::JSON.pretty_generate(::JSON.parse(::File.read(file))))
14
+ end
15
+
16
+ def json_file?(file)
17
+ ::JSON.parse(::File.read(file))
18
+ true
19
+ rescue JSON::ParserError
20
+ false
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end