devtools 0.1.0 → 0.1.26
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 +5 -5
- data/.circleci/config.yml +41 -0
- data/.rspec +1 -0
- data/.rubocop.yml +1 -2
- data/Gemfile +9 -2
- data/README.md +3 -3
- data/config/devtools.yml +2 -0
- data/config/flay.yml +2 -2
- data/config/flog.yml +1 -1
- data/config/mutant.yml +6 -2
- data/config/reek.yml +105 -106
- data/config/rubocop.yml +37 -3
- data/devtools.gemspec +27 -25
- data/lib/devtools/config.rb +74 -66
- data/lib/devtools/flay.rb +98 -0
- data/lib/devtools/project/initializer/rake.rb +11 -7
- data/lib/devtools/project/initializer/rspec.rb +30 -55
- data/lib/devtools/project/initializer.rb +2 -12
- data/lib/devtools/project.rb +27 -105
- data/lib/devtools/rake/flay.rb +155 -0
- data/lib/devtools/spec_helper.rb +1 -3
- data/lib/devtools.rb +42 -89
- data/shared/spec/shared/abstract_type_behavior.rb +0 -2
- data/shared/spec/shared/command_method_behavior.rb +0 -2
- data/shared/spec/shared/each_method_behaviour.rb +0 -2
- data/shared/spec/shared/idempotent_method_behavior.rb +2 -3
- data/shared/spec/support/ice_nine_config.rb +0 -2
- data/spec/integration/devtools/rake/flay/verify_spec.rb +196 -0
- data/spec/spec_helper.rb +4 -11
- data/spec/unit/devtools/config/yardstick_spec.rb +17 -0
- data/spec/unit/devtools/config_spec.rb +78 -0
- data/spec/unit/devtools/flay/file_list/call_spec.rb +19 -0
- data/spec/unit/devtools/flay/scale/flay_report_spec.rb +17 -0
- data/spec/unit/devtools/flay/scale/measure_spec.rb +43 -0
- data/spec/unit/devtools/project/initializer/rake_spec.rb +21 -0
- data/spec/unit/devtools/project/initializer/rspec_spec.rb +52 -0
- data/spec/unit/devtools/project_spec.rb +34 -0
- data/spec/unit/devtools_spec.rb +14 -0
- data/tasks/metrics/ci.rake +3 -7
- data/tasks/metrics/coverage.rake +2 -2
- data/tasks/metrics/flay.rake +6 -33
- data/tasks/metrics/flog.rake +10 -7
- data/tasks/metrics/reek.rake +5 -4
- data/tasks/metrics/rubocop.rake +1 -3
- data/tasks/metrics/yardstick.rake +0 -14
- data/tasks/spec.rake +1 -3
- data/tasks/yard.rake +1 -3
- metadata +124 -65
- data/.ruby-gemset +0 -1
- data/.travis.yml +0 -15
- data/TODO +0 -0
- data/bin/devtools +0 -18
- data/circle.yml +0 -7
- data/default/config/devtools.yml +0 -2
- data/default/config/flay.yml +0 -3
- data/default/config/flog.yml +0 -2
- data/default/config/mutant.yml +0 -3
- data/default/config/reek.yml +0 -103
- data/default/config/rubocop.yml +0 -91
- data/default/config/yardstick.yml +0 -2
- data/lib/devtools/platform.rb +0 -118
- data/lib/devtools/site/initializer.rb +0 -57
- data/lib/devtools/site.rb +0 -41
- data/shared/spec/shared/hash_method_behavior.rb +0 -9
- data/tasks/metrics/mutant.rake +0 -50
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 64b90583c21a4251db47614a1e348030409446db3344af2d0c038e53eb3e4525
|
|
4
|
+
data.tar.gz: 54a3b6dc05714842b17800b7ca2ae0d52517e487664ee781eb9331579d17ed47
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 7127a1523bf4eb6e08385ae04aeddf12d12389194252de53f027e5f917658379e74fcb25d8c02471c22b45a72d28537d17d973fca096fb7809125080085c2d00
|
|
7
|
+
data.tar.gz: ac1ae6fc3e4bc8c6f74f82df44a15feec714073d7a8ed5ffcfac3a1ea7d3f6fec2453d9cca9f321e26c3a711052ec7c866098df0744e17e2c79b910d032cb11e
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
defaults: &defaults
|
|
2
|
+
working_directory: ~/mutant
|
|
3
|
+
docker:
|
|
4
|
+
- image: circleci/ruby:2.6.0
|
|
5
|
+
version: 2
|
|
6
|
+
jobs:
|
|
7
|
+
unit_specs:
|
|
8
|
+
<<: *defaults
|
|
9
|
+
steps:
|
|
10
|
+
- checkout
|
|
11
|
+
- run: bundle install
|
|
12
|
+
- run: bundle exec rspec spec/unit
|
|
13
|
+
integration_specs:
|
|
14
|
+
<<: *defaults
|
|
15
|
+
steps:
|
|
16
|
+
- checkout
|
|
17
|
+
- run: bundle install
|
|
18
|
+
- run: bundle exec rspec spec/integration
|
|
19
|
+
metrics:
|
|
20
|
+
<<: *defaults
|
|
21
|
+
steps:
|
|
22
|
+
- checkout
|
|
23
|
+
- run: bundle install
|
|
24
|
+
- run: bundle exec rake metrics:rubocop
|
|
25
|
+
- run: bundle exec rake metrics:reek
|
|
26
|
+
- run: bundle exec rake metrics:flay
|
|
27
|
+
- run: bundle exec rake metrics:flog
|
|
28
|
+
mutant:
|
|
29
|
+
<<: *defaults
|
|
30
|
+
steps:
|
|
31
|
+
- checkout
|
|
32
|
+
- run: bundle install
|
|
33
|
+
- run: bundle exec mutant --since HEAD~1 -- 'Devtools*'
|
|
34
|
+
workflows:
|
|
35
|
+
version: 2
|
|
36
|
+
test:
|
|
37
|
+
jobs:
|
|
38
|
+
- unit_specs
|
|
39
|
+
- integration_specs
|
|
40
|
+
- metrics
|
|
41
|
+
- mutant
|
data/.rspec
CHANGED
data/.rubocop.yml
CHANGED
data/Gemfile
CHANGED
data/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# devtools
|
|
2
2
|
|
|
3
|
-
[](https://circleci.com/gh/mbj/devtools/tree/master)
|
|
4
4
|
[](https://gemnasium.com/mbj/devtools)
|
|
5
5
|
[](https://codeclimate.com/github/datamapper/devtools)
|
|
6
6
|
<!-- [](https://codeclimate.com/github/mbj/devtools) -->
|
|
@@ -10,11 +10,11 @@ Used to centralize metric setup and development gem dependencies.
|
|
|
10
10
|
|
|
11
11
|
## Installation
|
|
12
12
|
|
|
13
|
-
Add the
|
|
13
|
+
Add the gem to your Gemfile's development section.
|
|
14
14
|
|
|
15
15
|
```ruby
|
|
16
16
|
group :development, :test do
|
|
17
|
-
gem 'devtools',
|
|
17
|
+
gem 'devtools', '~> 0.1.x'
|
|
18
18
|
end
|
|
19
19
|
```
|
|
20
20
|
|
data/config/devtools.yml
ADDED
data/config/flay.yml
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
---
|
|
2
|
-
threshold:
|
|
3
|
-
total_score:
|
|
2
|
+
threshold: 8
|
|
3
|
+
total_score: 119
|
data/config/flog.yml
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
---
|
|
2
|
-
threshold:
|
|
2
|
+
threshold: 13.5
|
data/config/mutant.yml
CHANGED
data/config/reek.yml
CHANGED
|
@@ -1,107 +1,106 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
LongYieldList:
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
NestedIterators:
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
NilCheck:
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
RepeatedConditional:
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
max_helper_calls: 0
|
|
2
|
+
detectors:
|
|
3
|
+
Attribute:
|
|
4
|
+
enabled: false
|
|
5
|
+
exclude: []
|
|
6
|
+
BooleanParameter:
|
|
7
|
+
enabled: true
|
|
8
|
+
exclude: []
|
|
9
|
+
ClassVariable:
|
|
10
|
+
enabled: true
|
|
11
|
+
exclude: []
|
|
12
|
+
ControlParameter:
|
|
13
|
+
enabled: true
|
|
14
|
+
exclude: []
|
|
15
|
+
DataClump:
|
|
16
|
+
enabled: true
|
|
17
|
+
exclude: []
|
|
18
|
+
max_copies: 0
|
|
19
|
+
min_clump_size: 2
|
|
20
|
+
DuplicateMethodCall:
|
|
21
|
+
enabled: true
|
|
22
|
+
exclude: []
|
|
23
|
+
max_calls: 1
|
|
24
|
+
allow_calls: []
|
|
25
|
+
FeatureEnvy:
|
|
26
|
+
enabled: true
|
|
27
|
+
exclude: []
|
|
28
|
+
IrresponsibleModule:
|
|
29
|
+
enabled: true
|
|
30
|
+
exclude: []
|
|
31
|
+
LongParameterList:
|
|
32
|
+
enabled: true
|
|
33
|
+
exclude:
|
|
34
|
+
- Devtools::Config#self.attribute
|
|
35
|
+
max_params: 2
|
|
36
|
+
overrides: {}
|
|
37
|
+
LongYieldList:
|
|
38
|
+
enabled: true
|
|
39
|
+
exclude: []
|
|
40
|
+
max_params: 0
|
|
41
|
+
NestedIterators:
|
|
42
|
+
enabled: true
|
|
43
|
+
exclude: []
|
|
44
|
+
max_allowed_nesting: 1
|
|
45
|
+
ignore_iterators: []
|
|
46
|
+
NilCheck:
|
|
47
|
+
enabled: true
|
|
48
|
+
exclude: []
|
|
49
|
+
RepeatedConditional:
|
|
50
|
+
enabled: true
|
|
51
|
+
exclude: []
|
|
52
|
+
max_ifs: 1
|
|
53
|
+
TooManyConstants:
|
|
54
|
+
enabled: true
|
|
55
|
+
exclude:
|
|
56
|
+
- Devtools
|
|
57
|
+
TooManyInstanceVariables:
|
|
58
|
+
enabled: true
|
|
59
|
+
exclude: []
|
|
60
|
+
max_instance_variables: 2
|
|
61
|
+
TooManyMethods:
|
|
62
|
+
enabled: true
|
|
63
|
+
exclude: []
|
|
64
|
+
max_methods: 15
|
|
65
|
+
TooManyStatements:
|
|
66
|
+
enabled: true
|
|
67
|
+
exclude: []
|
|
68
|
+
max_statements: 5
|
|
69
|
+
UncommunicativeMethodName:
|
|
70
|
+
enabled: true
|
|
71
|
+
exclude: []
|
|
72
|
+
reject:
|
|
73
|
+
- '/^[a-z]$/'
|
|
74
|
+
- '/[0-9]$/'
|
|
75
|
+
- '/[A-Z]/'
|
|
76
|
+
accept: []
|
|
77
|
+
UncommunicativeModuleName:
|
|
78
|
+
enabled: true
|
|
79
|
+
exclude: []
|
|
80
|
+
reject:
|
|
81
|
+
- '/^.$/'
|
|
82
|
+
- '/[0-9]$/'
|
|
83
|
+
accept: []
|
|
84
|
+
UncommunicativeParameterName:
|
|
85
|
+
enabled: true
|
|
86
|
+
exclude: []
|
|
87
|
+
reject:
|
|
88
|
+
- '/^.$/'
|
|
89
|
+
- '/[0-9]$/'
|
|
90
|
+
- '/[A-Z]/'
|
|
91
|
+
accept: []
|
|
92
|
+
UncommunicativeVariableName:
|
|
93
|
+
enabled: true
|
|
94
|
+
exclude: []
|
|
95
|
+
reject:
|
|
96
|
+
- '/^.$/'
|
|
97
|
+
- '/[0-9]$/'
|
|
98
|
+
- '/[A-Z]/'
|
|
99
|
+
accept: []
|
|
100
|
+
UnusedParameters:
|
|
101
|
+
enabled: true
|
|
102
|
+
exclude: []
|
|
103
|
+
UtilityFunction:
|
|
104
|
+
enabled: true
|
|
105
|
+
exclude:
|
|
106
|
+
- Devtools::Project::Initializer::Rspec#require_files # intentional for deduplication
|
data/config/rubocop.yml
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
inherit_from: ../.rubocop.yml
|
|
2
2
|
|
|
3
|
+
AllCops:
|
|
4
|
+
TargetRubyVersion: 2.5.0
|
|
5
|
+
|
|
6
|
+
Metrics/BlockLength:
|
|
7
|
+
Exclude:
|
|
8
|
+
# Ignore RSpec DSL
|
|
9
|
+
- spec/**/*
|
|
10
|
+
# Ignore gemspec DSL
|
|
11
|
+
- '*.gemspec'
|
|
12
|
+
|
|
13
|
+
Naming/FileName:
|
|
14
|
+
Exclude:
|
|
15
|
+
- Rakefile
|
|
16
|
+
|
|
3
17
|
# Avoid parameter lists longer than five parameters.
|
|
4
18
|
ParameterLists:
|
|
5
19
|
Max: 3
|
|
@@ -89,10 +103,10 @@ PercentLiteralDelimiters:
|
|
|
89
103
|
|
|
90
104
|
# Align if/else blocks with the variable assignment
|
|
91
105
|
EndAlignment:
|
|
92
|
-
|
|
106
|
+
EnforcedStyleAlignWith: variable
|
|
93
107
|
|
|
94
108
|
# Do not always align parameters when it is easier to read
|
|
95
|
-
|
|
109
|
+
Layout/ParameterAlignment:
|
|
96
110
|
Exclude:
|
|
97
111
|
- spec/**/*_spec.rb
|
|
98
112
|
|
|
@@ -101,7 +115,7 @@ ClassCheck:
|
|
|
101
115
|
EnforcedStyle: kind_of?
|
|
102
116
|
|
|
103
117
|
# Do not prefer double quotes to be used when %q or %Q is more appropriate
|
|
104
|
-
|
|
118
|
+
Style/RedundantPercentQ:
|
|
105
119
|
Enabled: false
|
|
106
120
|
|
|
107
121
|
# Allow a maximum ABC score
|
|
@@ -115,3 +129,23 @@ LambdaCall:
|
|
|
115
129
|
# Allow additional spaces
|
|
116
130
|
ExtraSpacing:
|
|
117
131
|
Enabled: false
|
|
132
|
+
|
|
133
|
+
# All objects can still be mutated if their eigenclass is patched
|
|
134
|
+
RedundantFreeze:
|
|
135
|
+
Enabled: false
|
|
136
|
+
|
|
137
|
+
# Prefer using `fail` when raising and `raise` when reraising
|
|
138
|
+
SignalException:
|
|
139
|
+
EnforcedStyle: semantic
|
|
140
|
+
|
|
141
|
+
Style/FrozenStringLiteralComment:
|
|
142
|
+
Enabled: false
|
|
143
|
+
|
|
144
|
+
Style/CommentedKeyword:
|
|
145
|
+
Enabled: false
|
|
146
|
+
|
|
147
|
+
Style/MixinGrouping:
|
|
148
|
+
Enabled: false
|
|
149
|
+
|
|
150
|
+
Layout/MultilineMethodCallIndentation:
|
|
151
|
+
EnforcedStyle: indented
|
data/devtools.gemspec
CHANGED
|
@@ -1,33 +1,35 @@
|
|
|
1
|
-
# encoding: utf-8
|
|
2
|
-
|
|
3
1
|
Gem::Specification.new do |gem|
|
|
4
2
|
gem.name = 'devtools'
|
|
5
|
-
gem.version = '0.1.
|
|
6
|
-
gem.authors = [
|
|
7
|
-
gem.email = [
|
|
8
|
-
gem.description = 'A metagem
|
|
3
|
+
gem.version = '0.1.26'
|
|
4
|
+
gem.authors = ['Markus Schirp']
|
|
5
|
+
gem.email = ['mbj@schirp-dso.com']
|
|
6
|
+
gem.description = 'A metagem wrapping development tools'
|
|
9
7
|
gem.summary = gem.description
|
|
10
8
|
gem.homepage = 'https://github.com/rom-rb/devtools'
|
|
11
9
|
gem.license = 'MIT'
|
|
12
10
|
|
|
13
|
-
gem.require_paths
|
|
14
|
-
gem.files
|
|
15
|
-
gem.executables
|
|
16
|
-
gem.test_files
|
|
17
|
-
gem.extra_rdoc_files
|
|
18
|
-
|
|
11
|
+
gem.require_paths = %w[lib]
|
|
12
|
+
gem.files = `git ls-files`.split("\n")
|
|
13
|
+
gem.executables = %w[]
|
|
14
|
+
gem.test_files = `git ls-files -- spec`.split("\n")
|
|
15
|
+
gem.extra_rdoc_files = %w[README.md]
|
|
16
|
+
|
|
17
|
+
gem.add_runtime_dependency 'abstract_type', '~> 0.0.7'
|
|
18
|
+
gem.add_runtime_dependency 'adamantium', '~> 0.2.0'
|
|
19
|
+
gem.add_runtime_dependency 'anima', '~> 0.3.0'
|
|
20
|
+
gem.add_runtime_dependency 'concord', '~> 0.1.5'
|
|
21
|
+
gem.add_runtime_dependency 'flay', '~> 2.12.0'
|
|
22
|
+
gem.add_runtime_dependency 'flog', '~> 4.6.2'
|
|
23
|
+
gem.add_runtime_dependency 'procto', '~> 0.0.3'
|
|
24
|
+
gem.add_runtime_dependency 'rake', '~> 12.3.0'
|
|
25
|
+
gem.add_runtime_dependency 'reek', '~> 5.6.0'
|
|
26
|
+
gem.add_runtime_dependency 'rspec', '~> 3.8.0'
|
|
27
|
+
gem.add_runtime_dependency 'rspec-core', '~> 3.8.0'
|
|
28
|
+
gem.add_runtime_dependency 'rspec-its', '~> 1.2.0'
|
|
29
|
+
gem.add_runtime_dependency 'rubocop', '~> 0.79.0'
|
|
30
|
+
gem.add_runtime_dependency 'simplecov', '~> 0.16.1'
|
|
31
|
+
gem.add_runtime_dependency 'yard', '~> 0.9.16'
|
|
32
|
+
gem.add_runtime_dependency 'yardstick', '~> 0.9.9'
|
|
19
33
|
|
|
20
|
-
gem.
|
|
21
|
-
gem.add_dependency 'rspec-core', '~> 3.3.0'
|
|
22
|
-
gem.add_dependency 'rspec-its', '~> 1.2.0'
|
|
23
|
-
gem.add_dependency 'rake', '~> 10.4.2'
|
|
24
|
-
gem.add_dependency 'yard', '~> 0.8.7.6'
|
|
25
|
-
gem.add_dependency 'flay', '~> 2.6.1'
|
|
26
|
-
gem.add_dependency 'flog', '~> 4.3.2'
|
|
27
|
-
gem.add_dependency 'reek', '~> 3.3.1'
|
|
28
|
-
gem.add_dependency 'rubocop', '~> 0.33.0'
|
|
29
|
-
gem.add_dependency 'simplecov', '~> 0.10.0'
|
|
30
|
-
gem.add_dependency 'yardstick', '~> 0.9.9'
|
|
31
|
-
gem.add_dependency 'mutant', '~> 0.8.3'
|
|
32
|
-
gem.add_dependency 'mutant-rspec', '~> 0.8.2'
|
|
34
|
+
gem.add_development_dependency 'mutant', '~> 0.9.4'
|
|
33
35
|
end
|