gemaker 0.6.0 → 1.0.0

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 (41) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +1 -1
  3. data/.rubocop.yml +61 -603
  4. data/CHANGELOG.md +9 -0
  5. data/README.md +10 -0
  6. data/gemaker.gemspec +5 -6
  7. data/lib/gemaker.rb +2 -2
  8. data/lib/gemaker/cli.rb +2 -3
  9. data/lib/gemaker/commands/add_cli_structure.rb +1 -0
  10. data/lib/gemaker/commands/add_install_generator.rb +30 -6
  11. data/lib/gemaker/commands/configure_continuous_integration.rb +23 -0
  12. data/lib/gemaker/commands/configure_editor_config.rb +10 -0
  13. data/lib/gemaker/commands/configure_test_env.rb +9 -8
  14. data/lib/gemaker/commands/create_gem.rb +3 -6
  15. data/lib/gemaker/commands/customize_engine.rb +31 -4
  16. data/lib/gemaker/config.rb +1 -9
  17. data/lib/gemaker/templates/circle_config.yml.erb +103 -0
  18. data/lib/gemaker/templates/circleci-setup-script.sh +3 -0
  19. data/lib/gemaker/templates/editorconfig +24 -0
  20. data/lib/gemaker/templates/engine/Guardfile +6 -9
  21. data/lib/gemaker/templates/engine/README.md.erb +45 -2
  22. data/lib/gemaker/templates/engine/development.rb.erb +81 -0
  23. data/lib/gemaker/templates/engine/gemspec.erb +8 -5
  24. data/lib/gemaker/templates/engine/gitignore +1 -0
  25. data/lib/gemaker/templates/engine/install_generator.rb.erb +0 -2
  26. data/lib/gemaker/templates/engine/rails_helper.rb.erb +2 -7
  27. data/lib/gemaker/templates/engine/rubocop.yml.erb +503 -0
  28. data/lib/gemaker/templates/normal/README.md.erb +14 -0
  29. data/lib/gemaker/templates/normal/gemspec.erb +9 -6
  30. data/lib/gemaker/templates/normal/rubocop.yml.erb +496 -0
  31. data/lib/gemaker/templates/ruby-version.erb +1 -1
  32. data/lib/gemaker/util.rb +3 -2
  33. data/lib/gemaker/version.rb +7 -2
  34. metadata +51 -50
  35. data/.coveralls.yml +0 -1
  36. data/.hound.yml +0 -4
  37. data/lib/gemaker/commands/add_hound_rules.rb +0 -12
  38. data/lib/gemaker/commands/configure_travis.rb +0 -15
  39. data/lib/gemaker/templates/coveralls.yml +0 -1
  40. data/lib/gemaker/templates/engine/travis.yml.erb +0 -15
  41. data/lib/gemaker/templates/normal/travis.yml.erb +0 -13
@@ -1 +1 @@
1
- <%= config.ruby_version %>
1
+ <%= Gemaker::RUBY_VERSION %>
data/lib/gemaker/util.rb CHANGED
@@ -5,7 +5,7 @@ module Gemaker
5
5
  end
6
6
 
7
7
  def copy_template(source, destination, locales = {})
8
- template_path = get_template_path(source) + ".erb"
8
+ template_path = "#{get_template_path(source)}.erb"
9
9
  destination_path = get_destination_path(destination)
10
10
 
11
11
  input = File.open(template_path)
@@ -62,7 +62,7 @@ module Gemaker
62
62
  def parse_erb(content, data)
63
63
  b = binding
64
64
  data.each { |k, v| singleton_class.send(:define_method, k) { v } }
65
- ERB.new(content, nil, "-").result(b)
65
+ ERB.new(content, trim_mode: '-').result(b)
66
66
  end
67
67
 
68
68
  def info(string)
@@ -71,6 +71,7 @@ module Gemaker
71
71
 
72
72
  def error(string)
73
73
  return if string.blank?
74
+
74
75
  puts string.to_s.red
75
76
  end
76
77
  end
@@ -1,4 +1,9 @@
1
1
  module Gemaker
2
- VERSION = "0.6.0"
3
- RAILS_VERSION = "5.1.5"
2
+ VERSION = "1.0.0"
3
+ BUNDLER_VERSION = "2.2.15"
4
+ RAILS_VERSION = "6.0"
5
+ MIN_RAILS_VERSION = "6.0"
6
+ RUBY_VERSIONS = ["2.5", "2.6", "2.7"]
7
+ RUBY_VERSION = RUBY_VERSIONS.last
8
+ RUBOCOP_VERSION = "1.9"
4
9
  end
metadata CHANGED
@@ -1,17 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gemaker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Leandro Segovia
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-06-08 00:00:00.000000000 Z
11
+ date: 2021-07-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: power-types
14
+ name: activesupport
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
@@ -25,33 +25,25 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: commander
28
+ name: artii
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :runtime
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
31
+ - - "~>"
39
32
  - !ruby/object:Gem::Version
40
- version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: activesupport
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
33
+ version: '2.1'
45
34
  - - ">="
46
35
  - !ruby/object:Gem::Version
47
- version: '0'
36
+ version: 2.1.1
48
37
  type: :runtime
49
38
  prerelease: false
50
39
  version_requirements: !ruby/object:Gem::Requirement
51
40
  requirements:
41
+ - - "~>"
42
+ - !ruby/object:Gem::Version
43
+ version: '2.1'
52
44
  - - ">="
53
45
  - !ruby/object:Gem::Version
54
- version: '0'
46
+ version: 2.1.1
55
47
  - !ruby/object:Gem::Dependency
56
48
  name: colorize
57
49
  requirement: !ruby/object:Gem::Requirement
@@ -73,25 +65,33 @@ dependencies:
73
65
  - !ruby/object:Gem::Version
74
66
  version: 0.7.7
75
67
  - !ruby/object:Gem::Dependency
76
- name: artii
68
+ name: commander
77
69
  requirement: !ruby/object:Gem::Requirement
78
70
  requirements:
79
- - - "~>"
80
- - !ruby/object:Gem::Version
81
- version: '2.1'
82
71
  - - ">="
83
72
  - !ruby/object:Gem::Version
84
- version: 2.1.1
73
+ version: '0'
85
74
  type: :runtime
86
75
  prerelease: false
87
76
  version_requirements: !ruby/object:Gem::Requirement
88
77
  requirements:
89
- - - "~>"
78
+ - - ">="
90
79
  - !ruby/object:Gem::Version
91
- version: '2.1'
80
+ version: '0'
81
+ - !ruby/object:Gem::Dependency
82
+ name: power-types
83
+ requirement: !ruby/object:Gem::Requirement
84
+ requirements:
92
85
  - - ">="
93
86
  - !ruby/object:Gem::Version
94
- version: 2.1.1
87
+ version: '0'
88
+ type: :runtime
89
+ prerelease: false
90
+ version_requirements: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - ">="
93
+ - !ruby/object:Gem::Version
94
+ version: '0'
95
95
  - !ruby/object:Gem::Dependency
96
96
  name: bundler
97
97
  requirement: !ruby/object:Gem::Requirement
@@ -106,6 +106,20 @@ dependencies:
106
106
  - - "~>"
107
107
  - !ruby/object:Gem::Version
108
108
  version: 2.2.15
109
+ - !ruby/object:Gem::Dependency
110
+ name: coveralls
111
+ requirement: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - ">="
114
+ - !ruby/object:Gem::Version
115
+ version: '0'
116
+ type: :development
117
+ prerelease: false
118
+ version_requirements: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - ">="
121
+ - !ruby/object:Gem::Version
122
+ version: '0'
109
123
  - !ruby/object:Gem::Dependency
110
124
  name: rake
111
125
  requirement: !ruby/object:Gem::Requirement
@@ -154,28 +168,14 @@ dependencies:
154
168
  requirements:
155
169
  - - "~>"
156
170
  - !ruby/object:Gem::Version
157
- version: 0.65.0
171
+ version: '1.9'
158
172
  type: :development
159
173
  prerelease: false
160
174
  version_requirements: !ruby/object:Gem::Requirement
161
175
  requirements:
162
176
  - - "~>"
163
177
  - !ruby/object:Gem::Version
164
- version: 0.65.0
165
- - !ruby/object:Gem::Dependency
166
- name: coveralls
167
- requirement: !ruby/object:Gem::Requirement
168
- requirements:
169
- - - ">="
170
- - !ruby/object:Gem::Version
171
- version: '0'
172
- type: :development
173
- prerelease: false
174
- version_requirements: !ruby/object:Gem::Requirement
175
- requirements:
176
- - - ">="
177
- - !ruby/object:Gem::Version
178
- version: '0'
178
+ version: '1.9'
179
179
  description: Ruby CLI created to build Platanus' gems
180
180
  email:
181
181
  - ldlsegovia@gmail.com
@@ -186,9 +186,7 @@ extra_rdoc_files: []
186
186
  files:
187
187
  - ".circleci/config.yml"
188
188
  - ".circleci/setup-rubygems.sh"
189
- - ".coveralls.yml"
190
189
  - ".gitignore"
191
- - ".hound.yml"
192
190
  - ".rspec"
193
191
  - ".rubocop.yml"
194
192
  - ".ruby-version"
@@ -205,15 +203,15 @@ files:
205
203
  - lib/gemaker/cli.rb
206
204
  - lib/gemaker/commands/add_changelog.rb
207
205
  - lib/gemaker/commands/add_cli_structure.rb
208
- - lib/gemaker/commands/add_hound_rules.rb
209
206
  - lib/gemaker/commands/add_install_generator.rb
210
207
  - lib/gemaker/commands/add_license.rb
211
208
  - lib/gemaker/commands/add_readme.rb
212
209
  - lib/gemaker/commands/add_ruby_version.rb
213
210
  - lib/gemaker/commands/base.rb
211
+ - lib/gemaker/commands/configure_continuous_integration.rb
212
+ - lib/gemaker/commands/configure_editor_config.rb
214
213
  - lib/gemaker/commands/configure_git.rb
215
214
  - lib/gemaker/commands/configure_test_env.rb
216
- - lib/gemaker/commands/configure_travis.rb
217
215
  - lib/gemaker/commands/create_gem.rb
218
216
  - lib/gemaker/commands/customize_engine.rb
219
217
  - lib/gemaker/commands/customize_gemspec.rb
@@ -222,11 +220,14 @@ files:
222
220
  - lib/gemaker/config.rb
223
221
  - lib/gemaker/templates/CHANGELOG.md
224
222
  - lib/gemaker/templates/LICENSE.txt.erb
223
+ - lib/gemaker/templates/circle_config.yml.erb
224
+ - lib/gemaker/templates/circleci-setup-script.sh
225
225
  - lib/gemaker/templates/cli.rb.erb
226
- - lib/gemaker/templates/coveralls.yml
226
+ - lib/gemaker/templates/editorconfig
227
227
  - lib/gemaker/templates/engine/Guardfile
228
228
  - lib/gemaker/templates/engine/README.md.erb
229
229
  - lib/gemaker/templates/engine/Rakefile
230
+ - lib/gemaker/templates/engine/development.rb.erb
230
231
  - lib/gemaker/templates/engine/engine.rb.erb
231
232
  - lib/gemaker/templates/engine/example_class.rb.erb
232
233
  - lib/gemaker/templates/engine/gemspec.erb
@@ -237,18 +238,18 @@ files:
237
238
  - lib/gemaker/templates/engine/lib_main_file.rb.erb
238
239
  - lib/gemaker/templates/engine/rails_helper.rb.erb
239
240
  - lib/gemaker/templates/engine/rspec
241
+ - lib/gemaker/templates/engine/rubocop.yml.erb
240
242
  - lib/gemaker/templates/engine/spec_helper.rb.erb
241
243
  - lib/gemaker/templates/engine/test_example.rb.erb
242
- - lib/gemaker/templates/engine/travis.yml.erb
243
244
  - lib/gemaker/templates/exe.erb
244
245
  - lib/gemaker/templates/image.png
245
246
  - lib/gemaker/templates/normal/Guardfile
246
247
  - lib/gemaker/templates/normal/README.md.erb
247
248
  - lib/gemaker/templates/normal/Rakefile
248
249
  - lib/gemaker/templates/normal/gemspec.erb
250
+ - lib/gemaker/templates/normal/rubocop.yml.erb
249
251
  - lib/gemaker/templates/normal/spec_helper.rb.erb
250
252
  - lib/gemaker/templates/normal/test_example.rb.erb
251
- - lib/gemaker/templates/normal/travis.yml.erb
252
253
  - lib/gemaker/templates/ruby-version.erb
253
254
  - lib/gemaker/templates/test_helpers.rb
254
255
  - lib/gemaker/templates/video.mp4
data/.coveralls.yml DELETED
@@ -1 +0,0 @@
1
- service_name: travis-ci
data/.hound.yml DELETED
@@ -1,4 +0,0 @@
1
- ---
2
- ruby:
3
- enabled: true
4
- config_file: ".rubocop.yml"
@@ -1,12 +0,0 @@
1
- module Gemaker
2
- module Cmd
3
- class AddHoundRules < Gemaker::Cmd::Base
4
- def perform
5
- execute_in_gem(
6
- "hound rules update ruby --local",
7
- "Missing tool. Please run `gem install hound-cli`."
8
- )
9
- end
10
- end
11
- end
12
- end
@@ -1,15 +0,0 @@
1
- module Gemaker
2
- module Cmd
3
- class ConfigureTravis < Gemaker::Cmd::Base
4
- def in_normal_context
5
- copy_template("normal/travis.yml", ".travis.yml", config: @config)
6
- info "Configure Tavis"
7
- end
8
-
9
- def in_engine_context
10
- copy_template("engine/travis.yml", ".travis.yml", config: @config)
11
- info "Configure Tavis"
12
- end
13
- end
14
- end
15
- end
@@ -1 +0,0 @@
1
- service_name: travis-ci
@@ -1,15 +0,0 @@
1
- sudo: false
2
- language: ruby
3
- rvm:
4
- - 2.3.1
5
- script:
6
- - RAILS_ENV=test bundle exec rake db:create db:migrate
7
- - bundle exec rspec spec
8
- deploy:
9
- provider: rubygems
10
- api_key:
11
- secure: your_secure_secret
12
- gem: <%= config.gem_name %>
13
- on:
14
- tags: true
15
- repo: platanus/<%= config.gem_name %>
@@ -1,13 +0,0 @@
1
- sudo: false
2
- language: ruby
3
- rvm:
4
- - 2.3.1
5
- before_install: gem install bundler -v 1.12.5
6
- deploy:
7
- provider: rubygems
8
- api_key:
9
- secure: your_secure_key
10
- gem: <%= config.gem_name %>
11
- on:
12
- tags: true
13
- repo: platanus/<%= config.gem_name %>