eac_tools 0.37.1 → 0.37.2

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