metric_fu 2.1.3.6 → 2.1.3.7.18.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,3 @@
1
1
  language: ruby
2
2
  rvm:
3
- - 1.9.3
4
- - 1.9.2
5
3
  - 1.8.7
data/HISTORY.md CHANGED
@@ -1,3 +1,7 @@
1
+ === MetricFu 2.1.3.7 / 2013-01-08
2
+
3
+ * Bug fix, ensure Configuration is loaded before Run, https://github.com/metricfu/metric_fu/issues/36
4
+
1
5
  === MetricFu 2.1.3.6 / 2013-01-02
2
6
 
3
7
  * Fixed bug that wasn't show stats or rails_best_practices graphs
data/README.md CHANGED
@@ -1,18 +1,25 @@
1
- This is the official repository for metric_fu.
1
+ This is the official repository for metric_fu. The original repository by Jake Scruggs at [https://github.com/jscruggs/metric_fu](https://github.com/jscruggs/metric_fu) [has been deprecated.](http://jakescruggs.blogspot.com/2012/08/why-i-abandoned-metricfu.html).
2
2
 
3
- It is currently testing on MRI 1.8.7 and 1.9.3
3
+ __Installation__
4
+
5
+ gem install metric_fu
6
+
7
+ See documentation on the rubyforge page for how to customize your metrics.
8
+
9
+ By default, you can run all metrics from the root of an app with the command `metric_fu`
4
10
 
5
- The original repository by Jake Scruggs at [https://github.com/jscruggs/metric_fu](https://github.com/jscruggs/metric_fu) [has been deprecated.](http://jakescruggs.blogspot.com/2012/08/why-i-abandoned-metricfu.html).
11
+ You may also wish to use the `metricfu-metrical` fork, which will probably be merged in at some point.
6
12
 
7
- The gem is published on rubygems.org as metric_fu
13
+ __Compatibility__
14
+
15
+ It is currently testing on MRI 1.8.7 and 1.9.3
8
16
 
9
- There is also a related metricfu-metrical gem published
17
+ * The `japgolly-Saikuro` fork and `metric_fu-roodi` fork are a part of an attempt to get metric_fu working in a modern Ruby environment, specifically compatibility with Ruby 1.9 and Bundler.
10
18
 
11
- The japgolly-Saikuro fork is a part of an attempt to get metric_fu working in a modern
19
+ * Until we can upgrade to the latest RubyParser, metric_fu will fail on parsing some 1.9 code, e.g. the new hash syntax, and possibly have issues with encodings
12
20
 
13
- Please note that rake version 10.0.2 cannot be used, whereas 0.8.7 and 0.9.2 do work.
21
+ * Please note that rake version 10.0.2 cannot be used, whereas 0.8.7 and 0.9.2 do work.
14
22
 
15
- Ruby environment, specifically compatibility with Ruby 1.9 and Bundler.
16
23
 
17
24
  __CI Build Status__
18
25
 
@@ -57,14 +64,13 @@ The more of the above steps you do the easier it will be for me to merge in whic
57
64
 
58
65
  Resources:
59
66
 
60
- Github: http://github.com/metricfu/metric_fu
61
- Issue Tracker: http://github.com/metricfu/metric_fu/issues
62
- My Blog: http://benjaminfleischer.com
67
+ * Github: http://github.com/metricfu/metric_fu
68
+ * Issue Tracker: http://github.com/metricfu/metric_fu/issues
69
+ * Google Group: http://groups.google.com/group/metric_fu
70
+ * Homepage: http://metric-fu.rubyforge.org/
63
71
 
64
72
  Original Resources:
65
73
 
66
- Homepage: http://metric-fu.rubyforge.org/
67
- Github: http://github.com/jscruggs/metric_fu
68
- Google Group: http://groups.google.com/group/metric_fu
69
- Issue Tracker: http://github.com/jscruggs/metric_fu/issues
70
- My Blog: http://jakescruggs.blogspot.com/
74
+ * Github: http://github.com/jscruggs/metric_fu
75
+ * Issue Tracker: http://github.com/jscruggs/metric_fu/issues
76
+ * My Blog: http://jakescruggs.blogspot.com/
data/TODO.md CHANGED
@@ -9,15 +9,18 @@
9
9
  * cane https://github.com/square/cane
10
10
  * laser https://github.com/metricfu/laser
11
11
  * Add configurable logger to all output streams
12
+ * Allow command-line metric_fu to accept parameters, and especially output its version
12
13
  * Color code flog results with scale from: http://jakescruggs.blogspot.com/2008/08/whats-good-flog-score.html
13
14
  * Make running metric_fu on metric_fu less embarrassing
14
15
  * Load all gems at config time so you fail fast if one is missing
15
16
 
17
+
16
18
  ## Testing
17
19
 
18
20
  * Determine how to test metric_fu against codebases that are not metric_fu, to ensure it works on most applications
19
21
  * Re-organize test files structure to align with changed structure of library files
20
22
  * Remove / Modify Devver code from the generators/hotspots_spec and base/hotspot_analzyer_spec
23
+ * Don't leave around test artifacts such as the folders './foo' and './is set'
21
24
 
22
25
  ## Bugs / Fixes
23
26
 
@@ -33,6 +36,7 @@
33
36
  ## Misc
34
37
 
35
38
  * Determine if CodeIssue is used, else remove it
39
+ * Remove references to Ruport from the Devver / Caliper code
36
40
  * Update the homepage http://metric-fu.rubyforge.org/
37
41
  * Other intersting libraries to consider:
38
42
  * https://github.com/vinibaggio/discover-unused-partials
@@ -1,2 +1,3 @@
1
- require File.expand_path(File.join(File.dirname(__FILE__),'..','lib','metric_fu'))
1
+ #!/usr/bin/env ruby
2
+ require 'metric_fu'
2
3
  MetricFu::Run.new.run
data/lib/run.rb CHANGED
@@ -1,13 +1,13 @@
1
- MetricFu::Configuration.run do |config|
2
- config.roodi = config.roodi.merge(:roodi_config => "#{MetricFu.root_dir}/config/roodi_config.yml")
3
- config.churn = { :start_date => "1 year ago", :minimum_churn_count => 10}
4
- config.hotspots = { :start_date => "1 year ago", :minimum_churn_count => 10}
5
- end
1
+ MetricFu.lib_require { 'configuration' }
6
2
  module MetricFu
7
3
  class Run
8
4
  def initialize
9
5
  STDOUT.sync = true
10
- MetricFu::Configuration.run {}
6
+ MetricFu::Configuration.run do |config|
7
+ config.roodi = config.roodi.merge(:roodi_config => "#{MetricFu.root_dir}/config/roodi_config.yml")
8
+ config.churn = { :start_date => "1 year ago", :minimum_churn_count => 10}
9
+ config.hotspots = { :start_date => "1 year ago", :minimum_churn_count => 10}
10
+ end
11
11
  end
12
12
  def run
13
13
  add_metrics
@@ -1,3 +1,3 @@
1
1
  module MetricFu
2
- VERSION = "2.1.3.6"
2
+ VERSION = "2.1.3.7.18.1"
3
3
  end
@@ -5,57 +5,46 @@ Gem::Specification.new do |s|
5
5
  s.name = "metric_fu"
6
6
  s.platform = Gem::Platform::RUBY
7
7
  s.version = MetricFu::VERSION
8
- s.summary = "A fistful of code metrics, with awesome templates and graphs"
8
+ s.summary = "A (Ruby 1.8) fistful of code metrics, with awesome templates and graphs"
9
9
  s.email = "github@benjaminfleischer.com"
10
10
  s.homepage = "http://github.com/metricfu/metric_fu"
11
- s.description = "Code metrics from Flog, Flay, Simplecov-RCov, Saikuro, Churn, Reek, Roodi, Rails' stats task and Rails Best Practices"
11
+ s.description = "(Ruby 1.8) Code metrics from Flog, Flay, RCov, Saikuro, Churn, Reek, Roodi, Rails' stats task and Rails Best Practices"
12
12
  s.authors = ["Jake Scruggs", "Sean Soper", "Andre Arko", "Petrik de Heus", "Grant McInnes", "Nick Quaranto", "Édouard Brière", "Carl Youngblood", "Richard Huang", "Dan Mayer", "Benjamin Fleischer"]
13
13
  s.rubyforge_project = 'metric_fu'
14
- s.required_ruby_version = ">= 1.8.7"
15
- s.required_rubygems_version = ">= 1.3.6"
14
+ s.required_ruby_version = "~> 1.8.7"
15
+ # s.required_rubygems_version = ">= 1.3.6" per http://docs.rubygems.org/read/chapter/20#required_ruby_version, do not use
16
16
  s.files = `git ls-files`.split($\)
17
17
  s.test_files = s.files.grep(%r{^(test|spec|features)/})
18
18
  s.executables = s.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
19
19
  s.require_paths = ["lib"]
20
20
  s.license = 'MIT'
21
-
22
21
  {
23
22
  "flay" => ["= 1.2.1"],
24
- "flog" => ["= 2.3.0"],
25
- "reek" => ["= 1.2.12"],
26
23
  "metric_fu-roodi" => [">= 2.2.0"],
27
24
  "rails_best_practices" => ["~> 0.10.1"],
25
+ "rcov" => ["~> 0.8"],
26
+ "Saikuro" => ["= 1.1.0"],
27
+
28
+ "reek" => ["= 1.2.12"],
29
+ "flog" => ["= 2.3.0"],
28
30
  "churn" => ["= 0.0.25"],
29
- "sexp_processor" => ["~> 3.0.3"], # required because of churn, flog, reek 1.2.12, ripper_ruby_parser 0.0.8
30
- # "ruby_parser" => ["~> 2.3"], # required because of churn, flog, reek 1.2.12, ripper_ruby_parser 0.0.8
31
- "activesupport" => [">= 2.0.0"], # ok
32
- # "syntax" => ["= 1.0.0"],
31
+ "sexp_processor" => ["~> 3.0.3"], # required because of churn, flog, reek 1.2.12, ripper_ruby_parser 0.0.8
32
+ # "ruby_parser" => ["~> 2.3"], # required because of churn, flog, reek 1.2.12, ripper_ruby_parser 0.0.8
33
+
34
+
33
35
  "coderay" => [],
36
+ "bluff" => [],
37
+ "googlecharts" => [],
38
+ "activesupport" => [">= 2.0.0"],
39
+ "ripper" => ["= 1.0.5"],
34
40
  "fattr" => ["= 2.2.1"],
35
41
  "arrayfields" => [" =4.7.4"],
36
- "map" => [" =6.2.0"],
37
- "bluff" => [],
38
- "googlecharts" => []
42
+ "map" => [" =6.2.0"]
39
43
  }.each do |gem, version|
40
44
  if version == []
41
- s.add_dependency(gem)
45
+ s.add_runtime_dependency(gem)
42
46
  else
43
- s.add_dependency(gem,version)
47
+ s.add_runtime_dependency(gem,version)
44
48
  end
45
49
  end
46
- # string comparison ftw
47
- if RUBY_VERSION < '1.9'
48
- s.add_dependency("ripper",[" =1.0.5"])
49
- s.add_dependency("rcov", ["~> 0.8"])
50
- s.add_dependency("Saikuro", ["= 1.1.0"])
51
- else
52
- s.add_dependency("rcov", ["~> 0.8"])
53
- s.add_dependency("japgolly-Saikuro", ">= 1.1.1.0")
54
- # still using rcov in ruby 1.9 till some errors are fleshed out
55
- # s.add_dependency("simplecov", [">= 0.5.4"])
56
- # s.add_dependency("simplecov-rcov", [">= 0.2.3"])
57
- end
58
-
59
-
60
50
  end
61
-
metadata CHANGED
@@ -1,14 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metric_fu
3
3
  version: !ruby/object:Gem::Version
4
- hash: 103
4
+ hash: 349
5
5
  prerelease:
6
6
  segments:
7
7
  - 2
8
8
  - 1
9
9
  - 3
10
- - 6
11
- version: 2.1.3.6
10
+ - 7
11
+ - 18
12
+ - 1
13
+ version: 2.1.3.7.18.1
12
14
  platform: ruby
13
15
  authors:
14
16
  - Jake Scruggs
@@ -26,7 +28,7 @@ autorequire:
26
28
  bindir: bin
27
29
  cert_chain: []
28
30
 
29
- date: 2013-01-02 00:00:00 Z
31
+ date: 2013-01-09 00:00:00 Z
30
32
  dependencies:
31
33
  - !ruby/object:Gem::Dependency
32
34
  requirement: &id001 !ruby/object:Gem::Requirement
@@ -64,14 +66,14 @@ dependencies:
64
66
  requirements:
65
67
  - - "="
66
68
  - !ruby/object:Gem::Version
67
- hash: 5
69
+ hash: 19
68
70
  segments:
69
- - 2
70
- - 2
71
71
  - 1
72
- version: 2.2.1
72
+ - 1
73
+ - 0
74
+ version: 1.1.0
73
75
  prerelease: false
74
- name: fattr
76
+ name: Saikuro
75
77
  version_requirements: *id003
76
78
  type: :runtime
77
79
  - !ruby/object:Gem::Dependency
@@ -80,28 +82,30 @@ dependencies:
80
82
  requirements:
81
83
  - - "="
82
84
  - !ruby/object:Gem::Version
83
- hash: 39
85
+ hash: 5
84
86
  segments:
85
- - 6
86
87
  - 2
87
- - 0
88
- version: 6.2.0
88
+ - 2
89
+ - 1
90
+ version: 2.2.1
89
91
  prerelease: false
90
- name: map
92
+ name: fattr
91
93
  version_requirements: *id004
92
94
  type: :runtime
93
95
  - !ruby/object:Gem::Dependency
94
96
  requirement: &id005 !ruby/object:Gem::Requirement
95
97
  none: false
96
98
  requirements:
97
- - - ">="
99
+ - - "="
98
100
  - !ruby/object:Gem::Version
99
- hash: 3
101
+ hash: 39
100
102
  segments:
103
+ - 6
104
+ - 2
101
105
  - 0
102
- version: "0"
106
+ version: 6.2.0
103
107
  prerelease: false
104
- name: googlecharts
108
+ name: map
105
109
  version_requirements: *id005
106
110
  type: :runtime
107
111
  - !ruby/object:Gem::Dependency
@@ -110,44 +114,45 @@ dependencies:
110
114
  requirements:
111
115
  - - "="
112
116
  - !ruby/object:Gem::Version
113
- hash: 43
117
+ hash: 29
114
118
  segments:
115
- - 4
116
- - 7
117
- - 4
118
- version: 4.7.4
119
+ - 1
120
+ - 0
121
+ - 5
122
+ version: 1.0.5
119
123
  prerelease: false
120
- name: arrayfields
124
+ name: ripper
121
125
  version_requirements: *id006
122
126
  type: :runtime
123
127
  - !ruby/object:Gem::Dependency
124
128
  requirement: &id007 !ruby/object:Gem::Requirement
125
129
  none: false
126
130
  requirements:
127
- - - "="
131
+ - - ~>
128
132
  - !ruby/object:Gem::Version
129
- hash: 7
133
+ hash: 27
130
134
  segments:
131
- - 1
132
- - 2
133
- - 12
134
- version: 1.2.12
135
+ - 0
136
+ - 8
137
+ version: "0.8"
135
138
  prerelease: false
136
- name: reek
139
+ name: rcov
137
140
  version_requirements: *id007
138
141
  type: :runtime
139
142
  - !ruby/object:Gem::Dependency
140
143
  requirement: &id008 !ruby/object:Gem::Requirement
141
144
  none: false
142
145
  requirements:
143
- - - ">="
146
+ - - "="
144
147
  - !ruby/object:Gem::Version
145
- hash: 3
148
+ hash: 43
146
149
  segments:
147
- - 0
148
- version: "0"
150
+ - 4
151
+ - 7
152
+ - 4
153
+ version: 4.7.4
149
154
  prerelease: false
150
- name: coderay
155
+ name: arrayfields
151
156
  version_requirements: *id008
152
157
  type: :runtime
153
158
  - !ruby/object:Gem::Dependency
@@ -156,46 +161,44 @@ dependencies:
156
161
  requirements:
157
162
  - - ">="
158
163
  - !ruby/object:Gem::Version
159
- hash: 15
164
+ hash: 3
160
165
  segments:
161
- - 2
162
- - 0
163
166
  - 0
164
- version: 2.0.0
167
+ version: "0"
165
168
  prerelease: false
166
- name: activesupport
169
+ name: googlecharts
167
170
  version_requirements: *id009
168
171
  type: :runtime
169
172
  - !ruby/object:Gem::Dependency
170
173
  requirement: &id010 !ruby/object:Gem::Requirement
171
174
  none: false
172
175
  requirements:
173
- - - ~>
176
+ - - "="
174
177
  - !ruby/object:Gem::Version
175
- hash: 1
178
+ hash: 7
176
179
  segments:
177
- - 3
178
- - 0
179
- - 3
180
- version: 3.0.3
180
+ - 1
181
+ - 2
182
+ - 12
183
+ version: 1.2.12
181
184
  prerelease: false
182
- name: sexp_processor
185
+ name: reek
183
186
  version_requirements: *id010
184
187
  type: :runtime
185
188
  - !ruby/object:Gem::Dependency
186
189
  requirement: &id011 !ruby/object:Gem::Requirement
187
190
  none: false
188
191
  requirements:
189
- - - ~>
192
+ - - ">="
190
193
  - !ruby/object:Gem::Version
191
- hash: 53
194
+ hash: 15
192
195
  segments:
196
+ - 2
193
197
  - 0
194
- - 10
195
- - 1
196
- version: 0.10.1
198
+ - 0
199
+ version: 2.0.0
197
200
  prerelease: false
198
- name: rails_best_practices
201
+ name: activesupport
199
202
  version_requirements: *id011
200
203
  type: :runtime
201
204
  - !ruby/object:Gem::Dependency
@@ -204,46 +207,44 @@ dependencies:
204
207
  requirements:
205
208
  - - ">="
206
209
  - !ruby/object:Gem::Version
207
- hash: 7
210
+ hash: 3
208
211
  segments:
209
- - 2
210
- - 2
211
212
  - 0
212
- version: 2.2.0
213
+ version: "0"
213
214
  prerelease: false
214
- name: metric_fu-roodi
215
+ name: coderay
215
216
  version_requirements: *id012
216
217
  type: :runtime
217
218
  - !ruby/object:Gem::Dependency
218
219
  requirement: &id013 !ruby/object:Gem::Requirement
219
220
  none: false
220
221
  requirements:
221
- - - "="
222
+ - - ~>
222
223
  - !ruby/object:Gem::Version
223
- hash: 3
224
+ hash: 1
224
225
  segments:
225
- - 2
226
226
  - 3
227
227
  - 0
228
- version: 2.3.0
228
+ - 3
229
+ version: 3.0.3
229
230
  prerelease: false
230
- name: flog
231
+ name: sexp_processor
231
232
  version_requirements: *id013
232
233
  type: :runtime
233
234
  - !ruby/object:Gem::Dependency
234
235
  requirement: &id014 !ruby/object:Gem::Requirement
235
236
  none: false
236
237
  requirements:
237
- - - "="
238
+ - - ~>
238
239
  - !ruby/object:Gem::Version
239
- hash: 29
240
+ hash: 53
240
241
  segments:
242
+ - 0
243
+ - 10
241
244
  - 1
242
- - 2
243
- - 1
244
- version: 1.2.1
245
+ version: 0.10.1
245
246
  prerelease: false
246
- name: flay
247
+ name: rails_best_practices
247
248
  version_requirements: *id014
248
249
  type: :runtime
249
250
  - !ruby/object:Gem::Dependency
@@ -252,29 +253,30 @@ dependencies:
252
253
  requirements:
253
254
  - - "="
254
255
  - !ruby/object:Gem::Version
255
- hash: 29
256
+ hash: 3
256
257
  segments:
257
- - 1
258
+ - 2
259
+ - 3
258
260
  - 0
259
- - 5
260
- version: 1.0.5
261
+ version: 2.3.0
261
262
  prerelease: false
262
- name: ripper
263
+ name: flog
263
264
  version_requirements: *id015
264
265
  type: :runtime
265
266
  - !ruby/object:Gem::Dependency
266
267
  requirement: &id016 !ruby/object:Gem::Requirement
267
268
  none: false
268
269
  requirements:
269
- - - ~>
270
+ - - ">="
270
271
  - !ruby/object:Gem::Version
271
- hash: 27
272
+ hash: 7
272
273
  segments:
274
+ - 2
275
+ - 2
273
276
  - 0
274
- - 8
275
- version: "0.8"
277
+ version: 2.2.0
276
278
  prerelease: false
277
- name: rcov
279
+ name: metric_fu-roodi
278
280
  version_requirements: *id016
279
281
  type: :runtime
280
282
  - !ruby/object:Gem::Dependency
@@ -283,17 +285,17 @@ dependencies:
283
285
  requirements:
284
286
  - - "="
285
287
  - !ruby/object:Gem::Version
286
- hash: 19
288
+ hash: 29
287
289
  segments:
288
290
  - 1
291
+ - 2
289
292
  - 1
290
- - 0
291
- version: 1.1.0
293
+ version: 1.2.1
292
294
  prerelease: false
293
- name: Saikuro
295
+ name: flay
294
296
  version_requirements: *id017
295
297
  type: :runtime
296
- description: Code metrics from Flog, Flay, Simplecov-RCov, Saikuro, Churn, Reek, Roodi, Rails' stats task and Rails Best Practices
298
+ description: (Ruby 1.8) Code metrics from Flog, Flay, RCov, Saikuro, Churn, Reek, Roodi, Rails' stats task and Rails Best Practices
297
299
  email: github@benjaminfleischer.com
298
300
  executables:
299
301
  - metric_fu
@@ -468,7 +470,7 @@ require_paths:
468
470
  required_ruby_version: !ruby/object:Gem::Requirement
469
471
  none: false
470
472
  requirements:
471
- - - ">="
473
+ - - ~>
472
474
  - !ruby/object:Gem::Version
473
475
  hash: 57
474
476
  segments:
@@ -481,19 +483,17 @@ required_rubygems_version: !ruby/object:Gem::Requirement
481
483
  requirements:
482
484
  - - ">="
483
485
  - !ruby/object:Gem::Version
484
- hash: 23
486
+ hash: 3
485
487
  segments:
486
- - 1
487
- - 3
488
- - 6
489
- version: 1.3.6
488
+ - 0
489
+ version: "0"
490
490
  requirements: []
491
491
 
492
492
  rubyforge_project: metric_fu
493
493
  rubygems_version: 1.8.24
494
494
  signing_key:
495
495
  specification_version: 3
496
- summary: A fistful of code metrics, with awesome templates and graphs
496
+ summary: A (Ruby 1.8) fistful of code metrics, with awesome templates and graphs
497
497
  test_files:
498
498
  - spec/base/base_template_spec.rb
499
499
  - spec/base/configuration_spec.rb