mecha 0.6.1 → 0.7.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/.ruby-version +1 -1
  3. data/README.md +24 -4
  4. data/TODO.md +9 -0
  5. data/lib/mecha/generators/app/app_builder.rb +16 -7
  6. data/lib/mecha/generators/app/app_generator.rb +10 -1
  7. data/lib/mecha/generators/app/templates/Gemfile.erb +10 -7
  8. data/lib/mecha/generators/app/templates/README.md.erb +13 -3
  9. data/lib/mecha/generators/app/templates/gitignore.erb +7 -0
  10. data/lib/mecha/generators/bitbucket_pipelines/bitbucket_pipelines_generator.rb +0 -1
  11. data/lib/mecha/generators/cpf_cnpj/cpf_cnpj_generator.rb +17 -0
  12. data/lib/mecha/generators/cpf_cnpj/templates/app/validators/cnpj_format_validator.rb +6 -0
  13. data/lib/mecha/generators/danger/danger_generator.rb +37 -0
  14. data/lib/mecha/generators/danger/templates/Dangerfile +68 -0
  15. data/lib/mecha/generators/devise/devise_generator.rb +18 -2
  16. data/lib/mecha/generators/guard/guard_generator.rb +3 -3
  17. data/lib/mecha/generators/guard/templates/Guardfile +43 -0
  18. data/lib/mecha/generators/heroku/heroku_generator.rb +99 -0
  19. data/lib/mecha/generators/heroku/templates/app.json +21 -0
  20. data/lib/mecha/generators/i18n/i18n_generator.rb +2 -4
  21. data/lib/mecha/generators/pronto/pronto_generator.rb +74 -0
  22. data/lib/mecha/generators/pronto/templates/flayignore +4 -0
  23. data/lib/mecha/generators/pronto/templates/reek +48 -0
  24. data/lib/mecha/generators/rubocop/templates/rubocop.yml +16 -1
  25. data/lib/mecha/generators/sentry/sentry_generator.rb +32 -18
  26. data/lib/mecha/generators/sentry/templates/_sentry.html.erb +2 -0
  27. data/lib/mecha/generators/sentry/templates/sentry.rb +5 -0
  28. data/lib/mecha/generators/simplecov/simplecov_generator.rb +34 -4
  29. data/lib/mecha/generators/tests/templates/spec/rails_helper.rb +18 -0
  30. data/lib/mecha/generators/tests/templates/spec/spec_helper.rb +27 -0
  31. data/lib/mecha/generators/tests/templates/spec/support/factory_bot.rb +3 -0
  32. data/lib/mecha/generators/tests/templates/test/test_helper.rb +10 -19
  33. data/lib/mecha/generators/tests/tests_generator.rb +37 -6
  34. data/lib/mecha/version.rb +3 -3
  35. data/lib/mecha.rb +30 -9
  36. data/mecha.gemspec +3 -6
  37. metadata +22 -53
  38. data/lib/mecha/generators/i18n/templates/config/locales/en.yml +0 -213
  39. data/lib/mecha/generators/i18n/templates/config/locales/pt-BR.yml +0 -221
  40. data/lib/mecha/generators/sentry/templates/rubocop.yml +0 -47
  41. data/lib/mecha/generators/simplecov/templates/simplecov +0 -10
@@ -0,0 +1,4 @@
1
+ **/db/**/*.rb
2
+ **/test/**/*.rb
3
+ **/spec/**/*.rb
4
+ **/app/admin/**/*.rb
@@ -0,0 +1,48 @@
1
+ ---
2
+ IrresponsibleModule:
3
+ enabled: false
4
+ exclude: []
5
+
6
+ DuplicateMethodCall:
7
+ enabled: false
8
+
9
+ UtilityFunction:
10
+ public_methods_only: true
11
+
12
+ "app/controllers":
13
+ IrresponsibleModule:
14
+ enabled: false
15
+ NestedIterators:
16
+ max_allowed_nesting: 2
17
+ UnusedPrivateMethod:
18
+ enabled: false
19
+ InstanceVariableAssumption:
20
+ enabled: false
21
+ "app/constants":
22
+ IrresponsibleModule:
23
+ enabled: false
24
+ UtilityFunction:
25
+ enabled: false
26
+ "app/helpers":
27
+ IrresponsibleModule:
28
+ enabled: false
29
+ UtilityFunction:
30
+ enabled: false
31
+ "app/mailers":
32
+ InstanceVariableAssumption:
33
+ enabled: false
34
+ "test":
35
+ InstanceVariableAssumption:
36
+ enabled: false
37
+ "db/migrate":
38
+ TooManyStatements:
39
+ enabled: false
40
+ UncommunicativeVariableName:
41
+ enabled: false
42
+ FeatureEnvy:
43
+ enabled: false
44
+
45
+ exclude_paths:
46
+ - db
47
+ - test
48
+ - spec
@@ -1,6 +1,9 @@
1
1
  Rails:
2
2
  Enabled: true
3
3
 
4
+ Rails/NotNullColumn:
5
+ Enabled: false
6
+
4
7
  AllCops:
5
8
  Exclude:
6
9
  - 'db/schema.rb'
@@ -10,6 +13,9 @@ AllCops:
10
13
  - 'Guardfile'
11
14
  - 'config/**/*'
12
15
  - 'lib/tasks/*.rake'
16
+ - 'Dangerfile'
17
+ - 'test/support/assertions.rb'
18
+ - 'app/admin/**/*'
13
19
 
14
20
  Documentation:
15
21
  Enabled: false
@@ -23,25 +29,34 @@ Metrics/BlockLength:
23
29
  - 'Rakefile'
24
30
  - '**/*.rake'
25
31
  - 'test/**/*'
32
+ - 'spec/**/*'
26
33
 
27
34
  Metrics/ClassLength:
28
35
  Exclude:
29
36
  - 'test/**/*'
37
+ - 'spec/**/*'
30
38
 
31
39
  Metrics/BlockLength:
32
40
  Exclude:
33
41
  - 'db/migrate/**'
34
42
  - 'test/**/*'
43
+ - 'spec/**/*'
35
44
 
36
45
  Metrics/LineLength:
37
- Max: 120
46
+ Max: 130
38
47
 
39
48
  Metrics/MethodLength:
40
49
  Exclude:
41
50
  - 'db/migrate/**'
42
51
  - 'test/**/*'
52
+ - 'spec/**/*'
43
53
 
44
54
  Style/ClassAndModuleChildren:
45
55
  EnforcedStyle: nested
46
56
  Exclude:
47
57
  - 'test/test_helper.rb'
58
+
59
+ Naming/PredicateName:
60
+ Exclude:
61
+ - 'test/support/pages/**/*'
62
+ - 'test/support/page_components/**/*'
@@ -3,12 +3,35 @@ require 'rails/generators'
3
3
  module Mecha
4
4
  module Generators
5
5
  class SentryGenerator < Rails::Generators::Base
6
+ source_root File.join(File.dirname(__FILE__), 'templates')
7
+
6
8
  def add_gem
7
9
  gem 'sentry-raven'
8
10
  end
9
11
 
12
+ def config_sentry
13
+ copy_file('sentry.rb', 'config/initializers/sentry.rb')
14
+ end
15
+
16
+ def add_sentry_js_partial
17
+ copy_file('_sentry.html.erb', 'app/views/layouts/_sentry.html.erb')
18
+ inject_into_file(
19
+ 'app/views/layouts/application.html.erb',
20
+ "\n\n <%= render 'layouts/sentry' if Rails.env.staging? || Rails.env.production? %>",
21
+ before: "\n </head>"
22
+ )
23
+
24
+ message = <<-MESSAGE.strip_heredoc
25
+
26
+ Add SENTRY_JS environment variable.
27
+ Get your Sentry DSN at https://docs.sentry.io/clients/javascript/.
28
+
29
+ MESSAGE
30
+
31
+ say message
32
+ end
33
+
10
34
  def config_application_rb
11
- application(config_sentry)
12
35
  application('config.filter_parameters << :password')
13
36
  environment('config.action_dispatch.show_exceptions = false', env: 'production')
14
37
  end
@@ -17,7 +40,7 @@ module Mecha
17
40
  inject_into_file(
18
41
  'app/controllers/application_controller.rb',
19
42
  application_controller_set_raven_context,
20
- before: "end"
43
+ before: 'end'
21
44
  )
22
45
 
23
46
  inject_into_file(
@@ -29,28 +52,19 @@ module Mecha
29
52
 
30
53
  private
31
54
 
32
- def config_sentry
33
- <<-DOC
34
- Raven.configure do |config|
35
- config.dsn = ENV['DNS'] || ''
36
- config.sanitize_fields = Rails.application.config.filter_parameters.map(&:to_s)
37
- config.environments = ['staging', 'production']
38
- end
39
- DOC
40
- end
41
-
42
55
  def application_controller_before_action
43
56
  "\n before_action :set_raven_context"
44
57
  end
45
58
 
46
59
  def application_controller_set_raven_context
47
- <<-DOC
48
- \n private
60
+ <<-DOC.strip_heredoc
49
61
 
50
- def set_raven_context
51
- Raven.user_context(id: session[:current_user_id])
52
- Raven.extra_context(params: params.to_unsafe_h, url: request.url)
53
- end
62
+ private
63
+
64
+ def set_raven_context
65
+ Raven.user_context(id: session[:current_user_id])
66
+ Raven.extra_context(params: params.to_unsafe_h, url: request.url)
67
+ end
54
68
  DOC
55
69
  end
56
70
  end
@@ -0,0 +1,2 @@
1
+ <script src="https://cdn.ravenjs.com/3.17.0/raven.min.js" crossorigin="anonymous"></script>
2
+ <script>Raven.config('<%= ENV[SENTRY_JS] %>').install();</script>
@@ -0,0 +1,5 @@
1
+ return if Rails.env.test? || Rails.env.development?
2
+
3
+ Raven.configure do |config|
4
+ config.sanitize_fields = Rails.application.config.filter_parameters.map(&:to_s)
5
+ end
@@ -6,13 +6,43 @@ module Mecha
6
6
  source_root File.join(File.dirname(__FILE__), 'templates')
7
7
 
8
8
  def add_gem
9
- gem_group :test do
10
- gem 'simplecov', require: false
9
+ gem_group :development, :test do
10
+ gem 'simplecov'
11
+ gem 'simplecov-json'
11
12
  end
12
13
  end
13
14
 
14
- def copy_simplecov
15
- copy_file('simplecov', '.simplecov')
15
+ def config_simplecov_on_test_helper
16
+ inject_into_file('test/test_helper.rb', simplecov_config, after: "ENV['RAILS_ENV'] ||= 'test'")
17
+ end
18
+
19
+ private
20
+
21
+ def simplecov_config
22
+ <<-SIMPLECOV.strip_heredoc
23
+ require 'simplecov'
24
+ require 'simplecov-json'
25
+
26
+ SimpleCov.formatters = SimpleCov::Formatter::MultiFormatter.new(
27
+ [SimpleCov::Formatter::HTMLFormatter, SimpleCov::Formatter::JSONFormatter]
28
+ )
29
+
30
+ SimpleCov.command_name('MiniTest')
31
+ SimpleCov.start do
32
+ load_profile 'test_frameworks'
33
+
34
+ add_filter '/bin/'
35
+ add_filter '/config/'
36
+ add_filter '/db/'
37
+
38
+ add_group 'Controllers', %w[app/controllers app/policies]
39
+ add_group 'Models', %w[app/models app/validators]
40
+ add_group 'Mailers', 'app/mailers'
41
+ add_group 'Helpers', %w[app/helpers app/presenters]
42
+ add_group 'Services', %w[app/jobs app/services app/uploaders]
43
+ add_group 'Libraries', 'lib'
44
+ end
45
+ SIMPLECOV
16
46
  end
17
47
  end
18
48
  end
@@ -0,0 +1,18 @@
1
+ ENV['RAILS_ENV'] ||= 'test'
2
+
3
+ require File.expand_path('../../config/environment', __FILE__)
4
+ abort('The Rails environment is running in production mode!') if Rails.env.production?
5
+
6
+ require 'spec_helper'
7
+ require 'rspec/rails'
8
+
9
+ Dir[Rails.root.join('spec', 'support', '**', '*.rb')].each { |f| require f }
10
+
11
+ # Checks for pending migration and applies them before tests are run.
12
+ # If you are not using ActiveRecord, you can remove this line.
13
+ ActiveRecord::Migration.maintain_test_schema!
14
+
15
+ RSpec.configure do |config|
16
+ config.infer_spec_type_from_file_location!
17
+ config.filter_rails_from_backtrace!
18
+ end
@@ -0,0 +1,27 @@
1
+ if Gem.loaded_specs.key?('simpelcov')
2
+ require 'simplecov'
3
+ require 'simplecov-json'
4
+
5
+ SimpleCov.formatters = SimpleCov::Formatter::MultiFormatter.new(
6
+ [SimpleCov::Formatter::HTMLFormatter, SimpleCov::Formatter::JSONFormatter]
7
+ )
8
+
9
+ SimpleCov.start
10
+ end
11
+
12
+ RSpec.configure do |config|
13
+ config.expect_with :rspec do |expectations|
14
+ expectations.include_chain_clauses_in_custom_matcher_descriptions = true
15
+ end
16
+
17
+ config.mock_with :rspec do |mocks|
18
+ mocks.verify_partial_doubles = true
19
+ end
20
+
21
+ config.filter_run_when_matching :focus
22
+ config.disable_monkey_patching!
23
+ config.default_formatter = 'doc' if config.files_to_run.one?
24
+ config.profile_examples = 10
25
+ config.order = :random
26
+ Kernel.srand config.seed
27
+ end
@@ -0,0 +1,3 @@
1
+ RSpec.configure do |config|
2
+ config.include FactoryBot::Syntax::Methods
3
+ end
@@ -1,23 +1,27 @@
1
1
  ENV['RAILS_ENV'] ||= 'test'
2
2
 
3
- require 'simplecov'
4
- SimpleCov.start
5
-
6
3
  require File.expand_path('../../config/environment', __FILE__)
7
4
  require 'rails/test_help'
8
5
  require 'capybara/rails'
9
- require 'capybara/poltergeist'
10
6
  require 'webmock/minitest'
11
7
  require 'support/page_object'
12
8
 
13
9
  Dir[Rails.root.join('test', 'support', '**', '*.rb')].each { |f| require f }
14
10
 
15
- Capybara.javascript_driver = :poltergeist
11
+ VCR.configure do |config|
12
+ config.cassette_library_dir = 'test/fixtures/vcr_cassettes'
13
+ config.hook_into :webmock
14
+ config.ignore_localhost = true
15
+ config.before_record do |i|
16
+ i.response.body.force_encoding('UTF-8')
17
+ end
18
+ end
19
+
16
20
  WebMock.disable_net_connect!(allow_localhost: true)
17
21
 
18
22
  module ActiveSupport
19
23
  class TestCase
20
- include FactoryGirl::Syntax::Methods
24
+ include FactoryBot::Syntax::Methods
21
25
 
22
26
  self.use_transactional_tests = false
23
27
 
@@ -30,16 +34,3 @@ module ActiveSupport
30
34
  end
31
35
  end
32
36
  end
33
-
34
- module ActionDispatch
35
- class IntegrationTest
36
- include Devise::Test::IntegrationHelpers
37
- include Capybara::DSL
38
- include CapybaraExtras
39
-
40
- teardown do
41
- Capybara.reset_sessions!
42
- Capybara.use_default_driver
43
- end
44
- end
45
- end
@@ -2,32 +2,63 @@ require 'rails/generators'
2
2
 
3
3
  module Mecha
4
4
  module Generators
5
- class TestsGenerator < Rails::Generators::Base
5
+ class TestsGenerator < Rails::Generators::AppBase
6
+ class_option :rspec, type: :boolean, default: false, desc: 'Configure RSpec'
6
7
  source_root File.join(File.dirname(__FILE__), 'templates')
7
8
 
8
9
  def add_test_gems
9
10
  gem_group :test do
10
- gem 'capybara'
11
11
  gem 'database_rewinder'
12
- gem 'poltergeist'
13
12
  gem 'ruby-prof'
14
- gem 'simplecov', require: false
15
13
  gem 'timecop'
14
+ gem 'vcr'
16
15
  gem 'webmock'
16
+
17
17
  end
18
18
  end
19
19
 
20
20
  def add_development_test_gems
21
21
  gem_group :development, :test do
22
- gem 'factory_girl_rails'
22
+ gem 'factory_bot_rails'
23
23
  gem 'faker'
24
+ gem 'rspec-rails' if rspec?
25
+ gem 'shoulda-matchers' if rspec?
24
26
  end
25
27
  end
26
28
 
27
29
  def test_files
28
- directory('test/support', 'test/support')
30
+ return if rspec?
31
+ empty_directory_with_keep_file('test/support')
29
32
  copy_file('test/test_helper.rb', 'test/test_helper.rb', force: true)
30
33
  end
34
+
35
+ def rspec_files
36
+ return unless rspec?
37
+ bundle_command('install')
38
+ run('spring stop')
39
+ generate('rspec:install')
40
+ empty_directory('spec/support')
41
+ # copy_file('spec/support/factory_bot.rb', 'spec/support/factory_bot.rb', force: true)
42
+ # copy_file('spec/rails_helper.rb', 'spec/rails_helper.rb', force: true)
43
+ # copy_file('spec/spec_helper.rb', 'spec/spec_helper.rb', force: true)
44
+ remove_file('test')
45
+ end
46
+
47
+ def say_warking
48
+ message = <<-MESSAGE.strip_heredoc
49
+
50
+ Please install Chrome driver `brew install chromedriver`.
51
+
52
+ MESSAGE
53
+
54
+ say message
55
+ end
56
+
57
+ private
58
+
59
+ def rspec?
60
+ options[:rspec].present?
61
+ end
31
62
  end
32
63
  end
33
64
  end
data/lib/mecha/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Mecha
2
- VERSION = '0.6.1'.freeze
3
- RUBY_VERSION = '>= 2.4'.freeze
4
- RAILS_VERSION = '~> 5.0.0'.freeze
2
+ VERSION = '0.7.0'.freeze
3
+ RUBY_VERSION = '2.3.3'.freeze
4
+ RAILS_VERSION = '5.1.4'.freeze
5
5
  end
data/lib/mecha.rb CHANGED
@@ -11,13 +11,24 @@ require 'mecha/generators/tests/tests_generator'
11
11
  require 'mecha/generators/bitbucket_pipelines/bitbucket_pipelines_generator'
12
12
  require 'mecha/generators/devise/devise_generator'
13
13
  require 'mecha/generators/sentry/sentry_generator'
14
+ require 'mecha/generators/cpf_cnpj/cpf_cnpj_generator'
15
+ require 'mecha/generators/danger/danger_generator'
16
+ require 'mecha/generators/pronto/pronto_generator'
17
+ # require 'mecha/generators/heroku/heroku_generator'
14
18
 
15
19
  module Mecha
16
20
  def self.opts
17
21
  Slop.parse do |o|
18
22
  o.bool '--bitbucket-pipelines', 'config Bitbucket Pipelines'
23
+ o.bool '--cpf_cnpj', 'install and config CPF/CNPJ'
24
+ o.bool '--danger', 'install and config Danger'
19
25
  o.bool '--devise', 'install and config Devise'
26
+ o.bool '--pronto', 'install and config Pronto'
27
+ o.bool '--rspec', 'install and config RSpec'
20
28
  o.bool '--sentry', 'install and config Sentry'
29
+ o.bool '--simplecov', 'install and config Simplecov'
30
+ # o.bool '--heroku', 'configure Heroku Pipeline with staging and production environments'
31
+ # o.string '--org', 'configure project in your Heroku Org', default: ''
21
32
  o.on '--version', 'print the gem version' do
22
33
  puts Mecha::VERSION
23
34
  exit
@@ -30,15 +41,25 @@ module Mecha
30
41
  end
31
42
 
32
43
  def self.start
44
+ arguments = []
45
+ arguments << ARGV.first
46
+ arguments << '--simplecov' if Mecha.opts.simplecov?
47
+ arguments << '--rspec' if Mecha.opts.rspec?
48
+
49
+
33
50
  Mecha::Generators::AppGenerator.start
34
- Mecha::Generators::AssetsGenerator.start
35
- Mecha::Generators::GuardGenerator.start
36
- Mecha::Generators::RubocopGenerator.start
37
- Mecha::Generators::SimplecovGenerator.start
38
- Mecha::Generators::I18nGenerator.start
39
- Mecha::Generators::TestsGenerator.start
40
- Mecha::Generators::BitbucketPipelinesGenerator.start if Mecha.opts.bitbucket_pipelines?
41
- Mecha::Generators::DeviseGenerator.start if Mecha.opts.devise?
42
- Mecha::Generators::SentryGenerator.start if Mecha.opts.sentry?
51
+ # Mecha::Generators::AssetsGenerator.start
52
+ # Mecha::Generators::GuardGenerator.start
53
+ # Mecha::Generators::RubocopGenerator.start
54
+ # Mecha::Generators::I18nGenerator.start
55
+ Mecha::Generators::TestsGenerator.start(arguments)
56
+ # Mecha::Generators::SimplecovGenerator.start if Mecha.opts.simplecov?
57
+ # Mecha::Generators::BitbucketPipelinesGenerator.start if Mecha.opts.bitbucket_pipelines?
58
+ # Mecha::Generators::DeviseGenerator.start if Mecha.opts.devise?
59
+ # Mecha::Generators::SentryGenerator.start if Mecha.opts.sentry?
60
+ # Mecha::Generators::CpfCnpjGenerator.start if Mecha.opts.cpf_cnpj?
61
+ # Mecha::Generators::DangerGenerator.start(arguments) if Mecha.opts.danger?
62
+ # Mecha::Generators::ProntoGenerator.start(arguments) if Mecha.opts.pronto?
63
+ # Mecha::Generators::HerokuGenerator.start("--org #{Mecha[:org]}")
43
64
  end
44
65
  end
data/mecha.gemspec CHANGED
@@ -25,16 +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 = ">= #{Mecha::RUBY_VERSION}"
29
29
 
30
- spec.add_dependency 'rails', Mecha::RAILS_VERSION
31
- spec.add_dependency 'slop'
30
+ spec.add_dependency 'rails', "~> #{Mecha::RAILS_VERSION}"
31
+ spec.add_dependency 'slop', '>= 4.5.0'
32
32
 
33
33
  spec.add_development_dependency 'bundler'
34
34
  spec.add_development_dependency 'rake'
35
35
  spec.add_development_dependency 'minitest'
36
36
  spec.add_development_dependency 'minitest-reporters'
37
- spec.add_development_dependency 'guard', '>=2.1.0'
38
- spec.add_development_dependency 'guard-minitest'
39
- spec.add_development_dependency 'pry', '>= 0.9.12'
40
37
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mecha
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.1
4
+ version: 0.7.0
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-04-06 00:00:00.000000000 Z
11
+ date: 2017-10-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 5.0.0
19
+ version: 5.1.4
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 5.0.0
26
+ version: 5.1.4
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: slop
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: 4.5.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: 4.5.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -94,48 +94,6 @@ dependencies:
94
94
  - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: guard
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: 2.1.0
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: 2.1.0
111
- - !ruby/object:Gem::Dependency
112
- name: guard-minitest
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- version: '0'
125
- - !ruby/object:Gem::Dependency
126
- name: pry
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - ">="
130
- - !ruby/object:Gem::Version
131
- version: 0.9.12
132
- type: :development
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - ">="
137
- - !ruby/object:Gem::Version
138
- version: 0.9.12
139
97
  description: Mecha is used by MLabs to bootstrap working apps with our defaults.
140
98
  email:
141
99
  - contact@magrathealabs.com
@@ -153,6 +111,7 @@ files:
153
111
  - LICENSE.txt
154
112
  - README.md
155
113
  - Rakefile
114
+ - TODO.md
156
115
  - bin/console
157
116
  - bin/mecha
158
117
  - bin/rake
@@ -168,20 +127,30 @@ files:
168
127
  - lib/mecha/generators/bitbucket_pipelines/bitbucket_pipelines_generator.rb
169
128
  - lib/mecha/generators/bitbucket_pipelines/templates/bitbucket-pipelines.yml.erb
170
129
  - lib/mecha/generators/bitbucket_pipelines/templates/config/databases/postgresql.bitbucket.yml.erb
130
+ - lib/mecha/generators/cpf_cnpj/cpf_cnpj_generator.rb
131
+ - lib/mecha/generators/cpf_cnpj/templates/app/validators/cnpj_format_validator.rb
132
+ - lib/mecha/generators/danger/danger_generator.rb
133
+ - lib/mecha/generators/danger/templates/Dangerfile
171
134
  - lib/mecha/generators/devise/devise_generator.rb
172
135
  - lib/mecha/generators/guard/guard_generator.rb
173
136
  - lib/mecha/generators/guard/templates/Guardfile
137
+ - lib/mecha/generators/heroku/heroku_generator.rb
138
+ - lib/mecha/generators/heroku/templates/app.json
174
139
  - lib/mecha/generators/i18n/i18n_generator.rb
175
- - lib/mecha/generators/i18n/templates/config/locales/en.yml
176
140
  - lib/mecha/generators/i18n/templates/config/locales/models/en.yml
177
141
  - lib/mecha/generators/i18n/templates/config/locales/models/pt-BR.yml
178
- - lib/mecha/generators/i18n/templates/config/locales/pt-BR.yml
142
+ - lib/mecha/generators/pronto/pronto_generator.rb
143
+ - lib/mecha/generators/pronto/templates/flayignore
144
+ - lib/mecha/generators/pronto/templates/reek
179
145
  - lib/mecha/generators/rubocop/rubocop_generator.rb
180
146
  - lib/mecha/generators/rubocop/templates/rubocop.yml
181
147
  - lib/mecha/generators/sentry/sentry_generator.rb
182
- - lib/mecha/generators/sentry/templates/rubocop.yml
148
+ - lib/mecha/generators/sentry/templates/_sentry.html.erb
149
+ - lib/mecha/generators/sentry/templates/sentry.rb
183
150
  - lib/mecha/generators/simplecov/simplecov_generator.rb
184
- - lib/mecha/generators/simplecov/templates/simplecov
151
+ - lib/mecha/generators/tests/templates/spec/rails_helper.rb
152
+ - lib/mecha/generators/tests/templates/spec/spec_helper.rb
153
+ - lib/mecha/generators/tests/templates/spec/support/factory_bot.rb
185
154
  - lib/mecha/generators/tests/templates/test/factories/.keep
186
155
  - lib/mecha/generators/tests/templates/test/support/capybara_extras.rb
187
156
  - lib/mecha/generators/tests/templates/test/support/page_object.rb
@@ -203,7 +172,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
203
172
  requirements:
204
173
  - - ">="
205
174
  - !ruby/object:Gem::Version
206
- version: '2.4'
175
+ version: 2.3.3
207
176
  required_rubygems_version: !ruby/object:Gem::Requirement
208
177
  requirements:
209
178
  - - ">="