mecha 0.7.2 → 0.7.3

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 38f0d8b5eb2c622d527d3c82f0b53c01cfa45533
4
- data.tar.gz: '08c868fea4be7d5602814984c3efe09e7a895be5'
3
+ metadata.gz: 7bd5a4102c6ae7097d6cfe4fa2a11e1bd0afec74
4
+ data.tar.gz: 20d638e73b01013df5631c48660e4402e0c2baba
5
5
  SHA512:
6
- metadata.gz: b5dac8f51a2099d5fd07c140d3546f9fd188ad396b08548c1fe4472d50b77cc430594533c8c16a05dece87ed89fa4675a43108acbbd8038479f4b1c3be898d55
7
- data.tar.gz: 5219c3e8193d71205d163dafc82c9406d1bc146fb2afca1ae525d1ed998cb375b687d6da66004fa5ba6514b98035766765affd91ed9bc82d339319ab2e4ded0b
6
+ metadata.gz: 1b6cdd9aef233cec0b6406c0ed3f03f6e45a3cce59c02a652df871abd92529828850fa4328c49d083d3d25d5e6e811db9550852340aa697f70be55d316630d38
7
+ data.tar.gz: fb6e92e53a12ebaa56be52b3ee9c132a03c506d8b7d1b328eb6378aa8ad1c5abcc5801590dfcb4bb831bc261042977c84f8623f09cef8b8e4304a499a412b592
@@ -0,0 +1,2 @@
1
+ # Owners
2
+ @alfakini @schweigert @diogotrentini
@@ -1,5 +1,5 @@
1
1
  sudo: false
2
2
  language: ruby
3
3
  rvm:
4
- - 2.4.0
4
+ - 2.5.0
5
5
  before_install: gem install bundler -v 1.14.4
File without changes
data/README.md CHANGED
@@ -2,7 +2,6 @@
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/mecha.svg)](https://badge.fury.io/rb/mecha)
4
4
  [![Build Status](https://travis-ci.org/magrathealabs/mecha.svg?branch=master)](https://travis-ci.org/magrathealabs/mecha)
5
- [![Dependency Status](https://gemnasium.com/badges/github.com/magrathealabs/mecha.svg)](https://gemnasium.com/github.com/magrathealabs/mecha)
6
5
  [![Code Climate](https://codeclimate.com/github/magrathealabs/mecha/badges/gpa.svg)](https://codeclimate.com/github/magrathealabs/mecha)
7
6
  [![Test Coverage](https://codeclimate.com/github/magrathealabs/mecha/badges/coverage.svg)](https://codeclimate.com/github/magrathealabs/mecha/coverage)
8
7
 
@@ -14,12 +14,15 @@ require 'mecha/generators/sentry/sentry_generator'
14
14
  require 'mecha/generators/cpf_cnpj/cpf_cnpj_generator'
15
15
  require 'mecha/generators/danger/danger_generator'
16
16
  require 'mecha/generators/pronto/pronto_generator'
17
+ require 'mecha/generators/circleci/circleci_generator'
18
+ require 'mecha/generators/github/github_generator'
17
19
 
18
20
  module Mecha
19
21
  def self.opts
20
22
  Slop.parse do |o|
21
23
  o.bool '--webpack', 'pass the webpack option for rails'
22
24
  o.bool '--bitbucket-pipelines', 'config Bitbucket Pipelines'
25
+ o.bool '--circleci', 'config CircleCI'
23
26
  o.bool '--cpf_cnpj', 'install and config CPF/CNPJ'
24
27
  o.bool '--danger', 'install and config Danger'
25
28
  o.bool '--devise', 'install and config Devise'
@@ -43,9 +46,12 @@ module Mecha
43
46
  arguments << ARGV.first
44
47
  arguments << '--simplecov' if Mecha.opts.simplecov?
45
48
  arguments << '--rspec' if Mecha.opts.rspec?
49
+ arguments << '--pronto' if Mecha.opts.pronto?
50
+ arguments << '--danger' if Mecha.opts.danger?
46
51
 
47
52
  Mecha::Generators::AppGenerator.start
48
53
  Mecha::Generators::AssetsGenerator.start
54
+ Mecha::Generators::GithubGenerator.start
49
55
  Mecha::Generators::GuardGenerator.start
50
56
  Mecha::Generators::RubocopGenerator.start
51
57
  Mecha::Generators::I18nGenerator.start
@@ -57,5 +63,6 @@ module Mecha
57
63
  Mecha::Generators::CpfCnpjGenerator.start if Mecha.opts.cpf_cnpj?
58
64
  Mecha::Generators::DangerGenerator.start(arguments) if Mecha.opts.danger?
59
65
  Mecha::Generators::ProntoGenerator.start(arguments) if Mecha.opts.pronto?
66
+ Mecha::Generators::CircleciGenerator.start(arguments) if Mecha.opts.circleci?
60
67
  end
61
68
  end
@@ -9,10 +9,19 @@ module Mecha
9
9
  template('Gemfile.erb', 'Gemfile')
10
10
  end
11
11
 
12
+ def ruby_version
13
+ template('ruby-version.erb', '.ruby-version')
14
+ end
15
+
12
16
  def gitignore
13
17
  template('gitignore.erb', '.gitignore')
14
18
  end
15
19
 
20
+ def procfile
21
+ template('procfile.erb', 'Procfile')
22
+ template('config/puma.rb.erb', 'config/puma.rb')
23
+ end
24
+
16
25
  def database_yml
17
26
  template "config/databases/#{options[:database]}.yml.erb", 'config/database.example.yml'
18
27
  template "config/databases/#{options[:database]}.yml.erb", 'config/database.yml'
@@ -10,20 +10,24 @@ ruby '<%= RUBY_VERSION %>'
10
10
  gem 'rails', '~> <%= Mecha::RAILS_VERSION %>'
11
11
 
12
12
  gem 'pg', '~> 0.18.4'
13
- gem 'puma', '~> 3.10.0'
13
+ gem 'puma', '~> 3.11'
14
14
 
15
+ gem 'bootsnap', '>= 1.1.0', require: false
15
16
  gem 'jquery-rails', '~> 4.3.1'
16
- gem 'sass-rails'
17
- gem 'uglifier', '~> 3.1.12'
17
+ gem 'sass-rails', '~> 5.0'
18
+ gem 'uglifier', '>= 1.3.0'
18
19
  gem 'webpacker'
19
20
 
20
21
  group :development, :test do
21
22
  gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
22
- gem 'capybara', '~> 2.13'
23
+ gem 'capybara', '>= 2.15', '< 4.0'
23
24
  gem 'dotenv-rails'
25
+ gem 'factory_bot'
26
+ gem 'faker'
24
27
  gem 'pry'
25
28
  gem 'pry-byebug'
26
29
  gem 'selenium-webdriver'
30
+ gem 'chromedriver-helper'
27
31
  end
28
32
 
29
33
  group :development do
@@ -32,3 +36,6 @@ group :development do
32
36
  gem 'spring-watcher-listen', '~> 2.0.0'
33
37
  gem 'web-console', '>= 3.3.0'
34
38
  end
39
+
40
+ # Windows does not include zoneinfo files, so bundle the tzinfo-data gem
41
+ gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
@@ -0,0 +1 @@
1
+ web: bundle exec puma -C config/puma.rb
@@ -0,0 +1,13 @@
1
+ workers Integer(ENV['WEB_CONCURRENCY'] || 4)
2
+ threads_count = Integer(ENV['RAILS_MAX_THREADS'] || 5)
3
+ threads threads_count, threads_count
4
+
5
+ preload_app!
6
+
7
+ rackup DefaultRackup
8
+ port ENV['PORT'] || 3000
9
+ environment ENV['RACK_ENV'] || 'development'
10
+
11
+ on_worker_boot do
12
+ ActiveRecord::Base.establish_connection
13
+ end
@@ -0,0 +1,16 @@
1
+ require 'rails/generators'
2
+
3
+ module Mecha
4
+ module Generators
5
+ class CircleciGenerator < Rails::Generators::Base
6
+ class_option :pronto, type: :boolean, default: false
7
+ class_option :danger, type: :boolean, default: false
8
+
9
+ source_root File.join(File.dirname(__FILE__), 'templates')
10
+
11
+ def copy_circleci
12
+ template('circle.yml.erb', 'circle.yml')
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,20 @@
1
+ machine:
2
+ environment:
3
+ TESTOPTS: "--ci-dir=$CIRCLE_TEST_REPORTS/reports"
4
+ <% if options[:pronto] %>
5
+ PRONTO_PULL_REQUEST_ID: "$(echo $CI_PULL_REQUEST | grep -o -E '[0-9]+')"
6
+ PRONTO_GITHUB_SLUG: "${CIRCLE_PROJECT_USERNAME}/${CIRCLE_PROJECT_REPONAME}"
7
+ PRONTO_FORMAT: "%{msg} [%{runner}:%{level}]"
8
+ PRONTO_VERBOSE: true
9
+ <% end %>
10
+
11
+ test:
12
+ after:
13
+ - mkdir -p ${CIRCLE_ARTIFACTS}/reports/
14
+ - cp -R /home/ubuntu/${CIRCLE_PROJECT_REPONAME}/coverage/* ${CIRCLE_ARTIFACTS}/reports/
15
+ <% if options[:pronto] %>
16
+ - bundle exec pronto run -f github_pr github_status -c origin/master
17
+ <% end %>
18
+ <% if options[:danger] %>
19
+ - bundle exec danger
20
+ <% end %>
@@ -9,8 +9,8 @@ module Mecha
9
9
  source_paths << Rails::Generators::AppGenerator.source_root << File.join(File.dirname(__FILE__), 'templates')
10
10
 
11
11
  def install_devise
12
- gem('devise', '~> 4.3.0')
13
- gem('devise-i18n', '~> 1.3.0')
12
+ gem('devise', '~> 4.4.3')
13
+ gem('devise-i18n', '~> 1.6.4')
14
14
  bundle_command('install')
15
15
 
16
16
  stop_spring
@@ -0,0 +1,13 @@
1
+ require 'rails/generators'
2
+
3
+ module Mecha
4
+ module Generators
5
+ class GithubGenerator < Rails::Generators::Base
6
+ source_root File.join(File.dirname(__FILE__), 'templates')
7
+
8
+ def copy_templates
9
+ directory('.github')
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,21 @@
1
+ Please introduce what you're delivering in this PR. Add context about the bug or feature.
2
+
3
+ ## :computer: SCREENSHOTS
4
+
5
+ If you made UI changes, add here the screenshots.
6
+
7
+ ## :squirrel: TESTS
8
+
9
+ ### SCENARIO ONE
10
+
11
+ Describe the test scenario the reviewer show execute in staging to test the new feature or the bug fix.
12
+
13
+ 1. Step 1
14
+ 2. Step 2
15
+ 3. Step N
16
+
17
+ Describe what the expected results are.
18
+
19
+ ## :package: DEPLOY
20
+
21
+ If necessary, this section should be used to describe the deploy process.
@@ -16,7 +16,8 @@ module Mecha
16
16
  end
17
17
 
18
18
  def add_i18n_gem
19
- gem 'rails-i18n', '~> 5.0.4'
19
+ gem 'rails-i18n', '~> 5.1.1'
20
+ gem 'route_translator'
20
21
  end
21
22
 
22
23
  def create_models_locales
@@ -1,5 +1,5 @@
1
1
  module Mecha
2
- VERSION = '0.7.2'.freeze
3
- RUBY_VERSION = '2.3.3'.freeze
4
- RAILS_VERSION = '5.1.4'.freeze
2
+ VERSION = '0.7.3'.freeze
3
+ RUBY_VERSION = '2.5.1'.freeze
4
+ RAILS_VERSION = '5.2.0'.freeze
5
5
  end
@@ -25,13 +25,13 @@ Gem::Specification.new do |spec|
25
25
  spec.executables = ['mecha']
26
26
  spec.require_paths = ['lib']
27
27
 
28
- spec.required_ruby_version = ">= #{Mecha::RUBY_VERSION}"
28
+ spec.required_ruby_version = '>= 2.3.3'
29
29
 
30
- spec.add_dependency 'rails', "~> #{Mecha::RAILS_VERSION}"
30
+ spec.add_dependency 'rails', '>= 5.2.0', '< 5.3.0'
31
31
  spec.add_dependency 'slop', '>= 4.5.0'
32
32
 
33
33
  spec.add_development_dependency 'bundler'
34
- spec.add_development_dependency 'rake'
35
34
  spec.add_development_dependency 'minitest'
36
35
  spec.add_development_dependency 'minitest-reporters'
36
+ spec.add_development_dependency 'rake'
37
37
  end
metadata CHANGED
@@ -1,29 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mecha
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.2
4
+ version: 0.7.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Magrathea Labs
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-10-27 00:00:00.000000000 Z
11
+ date: 2018-08-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 5.2.0
20
+ - - "<"
18
21
  - !ruby/object:Gem::Version
19
- version: 5.1.4
22
+ version: 5.3.0
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - "~>"
27
+ - - ">="
25
28
  - !ruby/object:Gem::Version
26
- version: 5.1.4
29
+ version: 5.2.0
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: 5.3.0
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: slop
29
35
  requirement: !ruby/object:Gem::Requirement
@@ -53,7 +59,7 @@ dependencies:
53
59
  - !ruby/object:Gem::Version
54
60
  version: '0'
55
61
  - !ruby/object:Gem::Dependency
56
- name: rake
62
+ name: minitest
57
63
  requirement: !ruby/object:Gem::Requirement
58
64
  requirements:
59
65
  - - ">="
@@ -67,7 +73,7 @@ dependencies:
67
73
  - !ruby/object:Gem::Version
68
74
  version: '0'
69
75
  - !ruby/object:Gem::Dependency
70
- name: minitest
76
+ name: minitest-reporters
71
77
  requirement: !ruby/object:Gem::Requirement
72
78
  requirements:
73
79
  - - ">="
@@ -81,7 +87,7 @@ dependencies:
81
87
  - !ruby/object:Gem::Version
82
88
  version: '0'
83
89
  - !ruby/object:Gem::Dependency
84
- name: minitest-reporters
90
+ name: rake
85
91
  requirement: !ruby/object:Gem::Requirement
86
92
  requirements:
87
93
  - - ">="
@@ -102,13 +108,14 @@ executables:
102
108
  extensions: []
103
109
  extra_rdoc_files: []
104
110
  files:
111
+ - ".github/CODEOWNERS"
105
112
  - ".gitignore"
106
113
  - ".rubocop.yml"
107
114
  - ".ruby-version"
108
115
  - ".travis.yml"
109
116
  - CODE_OF_CONDUCT.md
110
117
  - Gemfile
111
- - LICENSE.txt
118
+ - LICENSE
112
119
  - README.md
113
120
  - Rakefile
114
121
  - bin/console
@@ -119,18 +126,25 @@ files:
119
126
  - lib/mecha/generators/app/app_builder.rb
120
127
  - lib/mecha/generators/app/app_generator.rb
121
128
  - lib/mecha/generators/app/templates/Gemfile.erb
129
+ - lib/mecha/generators/app/templates/Procfile.erb
122
130
  - lib/mecha/generators/app/templates/README.md.erb
123
131
  - lib/mecha/generators/app/templates/config/databases/postgresql.yml.erb
132
+ - lib/mecha/generators/app/templates/config/puma.rb.erb
124
133
  - lib/mecha/generators/app/templates/gitignore.erb
134
+ - lib/mecha/generators/app/templates/ruby-version.erb
125
135
  - lib/mecha/generators/assets/assets_generator.rb
126
136
  - lib/mecha/generators/bitbucket_pipelines/bitbucket_pipelines_generator.rb
127
137
  - lib/mecha/generators/bitbucket_pipelines/templates/bitbucket-pipelines.yml.erb
128
138
  - lib/mecha/generators/bitbucket_pipelines/templates/config/databases/postgresql.bitbucket.yml.erb
139
+ - lib/mecha/generators/circleci/circleci_generator.rb
140
+ - lib/mecha/generators/circleci/templates/circle.yml.erb
129
141
  - lib/mecha/generators/cpf_cnpj/cpf_cnpj_generator.rb
130
142
  - lib/mecha/generators/cpf_cnpj/templates/app/validators/cnpj_format_validator.rb
131
143
  - lib/mecha/generators/danger/danger_generator.rb
132
144
  - lib/mecha/generators/danger/templates/Dangerfile
133
145
  - lib/mecha/generators/devise/devise_generator.rb
146
+ - lib/mecha/generators/github/github_generator.rb
147
+ - lib/mecha/generators/github/templates/.github/PULL_REQUEST_TEMPLATE.md
134
148
  - lib/mecha/generators/guard/guard_generator.rb
135
149
  - lib/mecha/generators/guard/templates/Guardfile
136
150
  - lib/mecha/generators/i18n/i18n_generator.rb
@@ -177,7 +191,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
177
191
  version: '0'
178
192
  requirements: []
179
193
  rubyforge_project:
180
- rubygems_version: 2.6.11
194
+ rubygems_version: 2.6.14
181
195
  signing_key:
182
196
  specification_version: 4
183
197
  summary: Generate a Rails app using MLabs defaults.