churn 1.0.1 → 1.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.travis.yml +2 -1
- data/Gemfile +1 -1
- data/Gemfile.lock +44 -38
- data/README.md +7 -7
- data/bin/churn +0 -1
- data/churn.gemspec +15 -14
- data/doc/Churn.html +165 -0
- data/doc/Churn/BzrAnalyzer.html +276 -0
- data/doc/Churn/ChurnCalculator.html +578 -0
- data/doc/Churn/ChurnHistory.html +250 -0
- data/doc/Churn/ChurnOptions.html +393 -0
- data/doc/Churn/GitAnalyzer.html +311 -0
- data/doc/Churn/HgAnalyzer.html +276 -0
- data/doc/Churn/LocationMapping.html +448 -0
- data/doc/Churn/SourceControl.html +451 -0
- data/doc/Churn/SvnAnalyzer.html +311 -0
- data/doc/LICENSE.html +123 -0
- data/doc/Object.html +246 -0
- data/doc/created.rid +15 -0
- data/doc/images/add.png +0 -0
- data/doc/images/arrow_up.png +0 -0
- data/doc/images/brick.png +0 -0
- data/doc/images/brick_link.png +0 -0
- data/doc/images/bug.png +0 -0
- data/doc/images/bullet_black.png +0 -0
- data/doc/images/bullet_toggle_minus.png +0 -0
- data/doc/images/bullet_toggle_plus.png +0 -0
- data/doc/images/date.png +0 -0
- data/doc/images/delete.png +0 -0
- data/doc/images/find.png +0 -0
- data/doc/images/loadingAnimation.gif +0 -0
- data/doc/images/macFFBgHack.png +0 -0
- data/doc/images/package.png +0 -0
- data/doc/images/page_green.png +0 -0
- data/doc/images/page_white_text.png +0 -0
- data/doc/images/page_white_width.png +0 -0
- data/doc/images/plugin.png +0 -0
- data/doc/images/ruby.png +0 -0
- data/doc/images/tag_blue.png +0 -0
- data/doc/images/tag_green.png +0 -0
- data/doc/images/transparent.png +0 -0
- data/doc/images/wrench.png +0 -0
- data/doc/images/wrench_orange.png +0 -0
- data/doc/images/zoom.png +0 -0
- data/doc/index.html +100 -0
- data/doc/js/darkfish.js +155 -0
- data/doc/js/jquery.js +18 -0
- data/doc/js/navigation.js +142 -0
- data/doc/js/search.js +94 -0
- data/doc/js/search_index.js +1 -0
- data/doc/js/searcher.js +228 -0
- data/doc/rdoc.css +595 -0
- data/doc/table_of_contents.html +167 -0
- data/lib/churn/calculator.rb +43 -43
- data/lib/churn/options.rb +3 -3
- data/lib/churn/scm/bzr_analyzer.rb +6 -2
- data/lib/churn/scm/git_analyzer.rb +19 -5
- data/lib/churn/scm/hg_analyzer.rb +5 -1
- data/lib/churn/scm/source_control.rb +15 -15
- data/lib/churn/scm/svn_analyzer.rb +5 -0
- data/lib/churn/version.rb +1 -1
- data/lib/tasks/churn_tasks.rb +1 -1
- data/test/data/churn_calculator.rb +14 -14
- data/test/data/test_helper.rb +5 -5
- data/test/test_helper.rb +5 -5
- data/test/unit/bzr_analyzer_test.rb +2 -2
- data/test/unit/churn_calculator_test.rb +1 -1
- data/test/unit/churn_history_test.rb +5 -5
- data/test/unit/churn_options_test.rb +3 -3
- data/test/unit/git_analyzer_test.rb +3 -3
- data/test/unit/hg_analyzer_test.rb +2 -2
- data/test/unit/location_mapping_test.rb +2 -2
- data/test/unit/source_control_test.rb +3 -3
- data/test/unit/svn_analyzer_test.rb +3 -3
- metadata +94 -76
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: c816b4eab0ce4a1311378d6aebf5a7ab04d4ac1d
|
4
|
+
data.tar.gz: 380238f8db9acad2b7cf0c1f3760f0e75767eb79
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 64e214dd33714eba3d30b6f22689b3edc60d1c7d9b6a09085df33aa0aeed8f3fa49607fdd841f39bdb8c49f18752ab966f929bec3ddbd0807cf65844da07a867
|
7
|
+
data.tar.gz: 884d1fa121966359dcb8df8d457bbc2dc209bde2084ce496a972dcc8820c24a5de9ffe2aee239421a783a7d026248ce3016c38719f5078bc42308fee61cc3a43
|
data/.travis.yml
CHANGED
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
churn (1.0.
|
4
|
+
churn (1.0.2)
|
5
5
|
chronic (>= 0.2.3)
|
6
6
|
hirb
|
7
7
|
json_pure
|
@@ -11,63 +11,69 @@ PATH
|
|
11
11
|
sexp_processor (~> 4.1)
|
12
12
|
|
13
13
|
GEM
|
14
|
-
remote:
|
14
|
+
remote: https://rubygems.org/
|
15
15
|
specs:
|
16
|
-
activesupport (
|
17
|
-
i18n (~> 0.6)
|
18
|
-
|
16
|
+
activesupport (4.1.2)
|
17
|
+
i18n (~> 0.6, >= 0.6.9)
|
18
|
+
json (~> 1.7, >= 1.7.7)
|
19
|
+
minitest (~> 5.1)
|
20
|
+
thread_safe (~> 0.1)
|
21
|
+
tzinfo (~> 1.1)
|
19
22
|
arrayfields (4.9.2)
|
20
23
|
chronic (0.10.2)
|
21
|
-
|
24
|
+
docile (1.1.5)
|
22
25
|
fattr (2.2.2)
|
23
|
-
hirb (0.7.
|
24
|
-
i18n (0.6.
|
26
|
+
hirb (0.7.2)
|
27
|
+
i18n (0.6.9)
|
25
28
|
json (1.8.1)
|
26
29
|
json_pure (1.8.1)
|
27
|
-
main (
|
30
|
+
main (6.0.0)
|
28
31
|
arrayfields (>= 4.7.4)
|
29
32
|
chronic (>= 0.6.2)
|
30
33
|
fattr (>= 2.2.0)
|
31
34
|
map (>= 5.1.0)
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
mocha (
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
rake (10.0.3)
|
43
|
-
rdoc (4.0.1)
|
35
|
+
map (6.5.4)
|
36
|
+
metaclass (0.0.4)
|
37
|
+
mime-types (2.3)
|
38
|
+
minitest (5.3.5)
|
39
|
+
mocha (1.1.0)
|
40
|
+
metaclass (~> 0.0.1)
|
41
|
+
multi_json (1.10.1)
|
42
|
+
netrc (0.7.7)
|
43
|
+
rake (10.3.2)
|
44
|
+
rdoc (4.1.1)
|
44
45
|
json (~> 1.4)
|
45
|
-
rest-client (1.
|
46
|
-
mime-types (>= 1.16)
|
47
|
-
|
46
|
+
rest-client (1.7.2)
|
47
|
+
mime-types (>= 1.16, < 3.0)
|
48
|
+
netrc (~> 0.7)
|
49
|
+
ruby_parser (3.6.2)
|
48
50
|
sexp_processor (~> 4.1)
|
49
|
-
sexp_processor (4.4.
|
50
|
-
shoulda (3.
|
51
|
-
shoulda-context (~> 1.0.1)
|
52
|
-
shoulda-matchers (
|
53
|
-
shoulda-context (1.
|
54
|
-
shoulda-matchers (
|
51
|
+
sexp_processor (4.4.4)
|
52
|
+
shoulda (3.5.0)
|
53
|
+
shoulda-context (~> 1.0, >= 1.0.1)
|
54
|
+
shoulda-matchers (>= 1.4.1, < 3.0)
|
55
|
+
shoulda-context (1.2.1)
|
56
|
+
shoulda-matchers (2.6.1)
|
55
57
|
activesupport (>= 3.0.0)
|
56
|
-
simplecov (0.
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
58
|
+
simplecov (0.8.2)
|
59
|
+
docile (~> 1.1.0)
|
60
|
+
multi_json
|
61
|
+
simplecov-html (~> 0.8.0)
|
62
|
+
simplecov-html (0.8.0)
|
63
|
+
test_construct (2.0.0)
|
64
|
+
thread_safe (0.3.4)
|
65
|
+
tzinfo (1.2.1)
|
66
|
+
thread_safe (~> 0.1)
|
62
67
|
|
63
68
|
PLATFORMS
|
64
69
|
ruby
|
65
70
|
|
66
71
|
DEPENDENCIES
|
67
72
|
churn!
|
68
|
-
|
73
|
+
minitest (~> 5.3)
|
74
|
+
mocha (~> 1.1.0)
|
69
75
|
rake
|
70
76
|
rdoc
|
71
77
|
shoulda
|
72
78
|
simplecov
|
73
|
-
|
79
|
+
test_construct (~> 2.0.0)
|
data/README.md
CHANGED
@@ -2,7 +2,7 @@ Churn
|
|
2
2
|
===
|
3
3
|
|
4
4
|
A Project to give the churn file, class, and method for a project for a given checkin. Over time the tool adds up the history of churns to give the number of times a file, class, or method is changing during the life of a project.
|
5
|
-
Churn for files is immediate, but classes and methods requires
|
5
|
+
Churn for files is immediate, but classes and methods requires building up a history using churn between revisions. The history is stored in ./tmp
|
6
6
|
|
7
7
|
Currently has full Git, Mercurial (hg), Bazaar (bzr) support, and partial SVN support (supports only file level churn currently)
|
8
8
|
|
@@ -17,7 +17,7 @@ File changes can be calculated on any single commit to look at method changes yo
|
|
17
17
|
|
18
18
|
## CI Build Status
|
19
19
|
|
20
|
-
[![Build Status](https://
|
20
|
+
[![Build Status](https://travis-ci.org/danmayer/churn.svg?branch=master)](http://travis-ci.org/danmayer/churn)
|
21
21
|
|
22
22
|
This project runs [travis-ci.org](http://travis-ci.org)
|
23
23
|
|
@@ -29,9 +29,9 @@ Want to help out, there are easy tasks ready for some attention. The list of ite
|
|
29
29
|
|
30
30
|
## Churn Usage
|
31
31
|
|
32
|
-
Install with `gem install churn` or for bundler add to your Gemfile `gem 'churn', :require => false`.
|
32
|
+
Install with `gem install churn` or for bundler add to your Gemfile `gem 'churn', :require => false`.
|
33
33
|
|
34
|
-
The reason you want require false is that when required by default churn is expecting to add some rake tasks, you don't really want or need it loading when running your server or tests.
|
34
|
+
The reason you want require false is that when required by default churn is expecting to add some rake tasks, you don't really want or need it loading when running your server or tests.
|
35
35
|
|
36
36
|
* rake:
|
37
37
|
* add `require 'churn'` to Rakefile
|
@@ -48,7 +48,7 @@ The reason you want require false is that when required by default churn is expe
|
|
48
48
|
* on command line run `churn` or `bundle exec churn`
|
49
49
|
* need help run `churn -h` to get additional information
|
50
50
|
* run the executable passing in options to override defaults
|
51
|
-
|
51
|
+
|
52
52
|
``` bash
|
53
53
|
churn -i "churn.gemspec, Gemfile" #ignore files
|
54
54
|
churn -y #output yaml format opposed to text
|
@@ -145,11 +145,11 @@ The reason you want require false is that when required by default churn is expe
|
|
145
145
|
--data_directory=[data_directory], -d (0 ~> string(data_directory=))
|
146
146
|
--past_history=[past_history], -p (0 ~> string(past_history=))
|
147
147
|
--help, -h
|
148
|
-
|
148
|
+
|
149
149
|
## Library Options
|
150
150
|
|
151
151
|
All the CLI options are parsed and just passed into the library. If you want to run the library directly from other code. The best way to see current options is where the [churn executable](https://github.com/danmayer/churn/blob/master/bin/churn) passes the parsed options into the `ChurnCalculator` class
|
152
|
-
|
152
|
+
|
153
153
|
###
|
154
154
|
# Available options
|
155
155
|
###
|
data/bin/churn
CHANGED
data/churn.gemspec
CHANGED
@@ -26,18 +26,19 @@ Gem::Specification.new do |s|
|
|
26
26
|
"README.md"
|
27
27
|
]
|
28
28
|
|
29
|
-
s.add_development_dependency
|
30
|
-
s.add_development_dependency
|
31
|
-
s.add_development_dependency
|
32
|
-
s.add_development_dependency
|
33
|
-
s.add_development_dependency
|
34
|
-
s.add_development_dependency
|
35
|
-
|
36
|
-
s.
|
37
|
-
s.add_runtime_dependency
|
38
|
-
s.add_runtime_dependency
|
39
|
-
s.add_runtime_dependency
|
40
|
-
s.add_runtime_dependency
|
41
|
-
s.add_runtime_dependency
|
42
|
-
s.add_runtime_dependency
|
29
|
+
s.add_development_dependency "minitest", "~> 5.3"
|
30
|
+
s.add_development_dependency "shoulda", ">= 0"
|
31
|
+
s.add_development_dependency "test_construct", "~> 2.0.0"
|
32
|
+
s.add_development_dependency "rake", ">= 0"
|
33
|
+
s.add_development_dependency "mocha", "~> 1.1.0"
|
34
|
+
s.add_development_dependency "simplecov", ">= 0"
|
35
|
+
s.add_development_dependency "rdoc", ">= 0"
|
36
|
+
#s.add_development_dependency "ruby-debug", "~> 0.10.4"
|
37
|
+
s.add_runtime_dependency "main", ">= 0"
|
38
|
+
s.add_runtime_dependency "json_pure", ">= 0"
|
39
|
+
s.add_runtime_dependency "chronic", ">= 0.2.3"
|
40
|
+
s.add_runtime_dependency "sexp_processor", "~> 4.1"
|
41
|
+
s.add_runtime_dependency "ruby_parser", "~> 3.0"
|
42
|
+
s.add_runtime_dependency "hirb", ">= 0"
|
43
|
+
s.add_runtime_dependency "rest-client", ">= 1.6.0"
|
43
44
|
end
|
data/doc/Churn.html
ADDED
@@ -0,0 +1,165 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
6
|
+
|
7
|
+
<title>module Churn - RDoc Documentation</title>
|
8
|
+
|
9
|
+
<link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
|
10
|
+
|
11
|
+
<script type="text/javascript">
|
12
|
+
var rdoc_rel_prefix = "./";
|
13
|
+
</script>
|
14
|
+
|
15
|
+
<script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
|
16
|
+
<script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
|
17
|
+
<script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
|
18
|
+
<script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
|
19
|
+
<script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
|
20
|
+
<script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
|
21
|
+
|
22
|
+
|
23
|
+
<body id="top" class="module">
|
24
|
+
<nav id="metadata">
|
25
|
+
<nav id="home-section" class="section">
|
26
|
+
<h3 class="section-header">
|
27
|
+
<a href="./index.html">Home</a>
|
28
|
+
<a href="./table_of_contents.html#classes">Classes</a>
|
29
|
+
<a href="./table_of_contents.html#methods">Methods</a>
|
30
|
+
</h3>
|
31
|
+
</nav>
|
32
|
+
|
33
|
+
|
34
|
+
<nav id="search-section" class="section project-section" class="initially-hidden">
|
35
|
+
<form action="#" method="get" accept-charset="utf-8">
|
36
|
+
<h3 class="section-header">
|
37
|
+
<input type="text" name="search" placeholder="Search" id="search-field"
|
38
|
+
title="Type to search, Up and Down to navigate, Enter to load">
|
39
|
+
</h3>
|
40
|
+
</form>
|
41
|
+
|
42
|
+
<ul id="search-results" class="initially-hidden"></ul>
|
43
|
+
</nav>
|
44
|
+
|
45
|
+
|
46
|
+
|
47
|
+
|
48
|
+
<div id="file-metadata">
|
49
|
+
<nav id="file-list-section" class="section">
|
50
|
+
<h3 class="section-header">Defined In</h3>
|
51
|
+
<ul>
|
52
|
+
<li>lib/churn/calculator.rb
|
53
|
+
<li>lib/churn/history.rb
|
54
|
+
<li>lib/churn/location_mapping.rb
|
55
|
+
<li>lib/churn/options.rb
|
56
|
+
<li>lib/churn/scm/bzr_analyzer.rb
|
57
|
+
<li>lib/churn/scm/git_analyzer.rb
|
58
|
+
<li>lib/churn/scm/hg_analyzer.rb
|
59
|
+
<li>lib/churn/scm/source_control.rb
|
60
|
+
<li>lib/churn/scm/svn_analyzer.rb
|
61
|
+
<li>lib/churn/version.rb
|
62
|
+
<li>lib/tasks/churn_tasks.rb
|
63
|
+
</ul>
|
64
|
+
</nav>
|
65
|
+
|
66
|
+
|
67
|
+
</div>
|
68
|
+
|
69
|
+
<div id="class-metadata">
|
70
|
+
|
71
|
+
|
72
|
+
|
73
|
+
|
74
|
+
|
75
|
+
</div>
|
76
|
+
|
77
|
+
<div id="project-metadata">
|
78
|
+
<nav id="fileindex-section" class="section project-section">
|
79
|
+
<h3 class="section-header">Pages</h3>
|
80
|
+
|
81
|
+
<ul>
|
82
|
+
|
83
|
+
<li class="file"><a href="./LICENSE.html">LICENSE</a>
|
84
|
+
|
85
|
+
</ul>
|
86
|
+
</nav>
|
87
|
+
|
88
|
+
<nav id="classindex-section" class="section project-section">
|
89
|
+
<h3 class="section-header">Class and Module Index</h3>
|
90
|
+
|
91
|
+
<ul class="link-list">
|
92
|
+
|
93
|
+
<li><a href="./Churn.html">Churn</a>
|
94
|
+
|
95
|
+
<li><a href="./Churn/BzrAnalyzer.html">Churn::BzrAnalyzer</a>
|
96
|
+
|
97
|
+
<li><a href="./Churn/ChurnCalculator.html">Churn::ChurnCalculator</a>
|
98
|
+
|
99
|
+
<li><a href="./Churn/ChurnHistory.html">Churn::ChurnHistory</a>
|
100
|
+
|
101
|
+
<li><a href="./Churn/ChurnOptions.html">Churn::ChurnOptions</a>
|
102
|
+
|
103
|
+
<li><a href="./Churn/GitAnalyzer.html">Churn::GitAnalyzer</a>
|
104
|
+
|
105
|
+
<li><a href="./Churn/HgAnalyzer.html">Churn::HgAnalyzer</a>
|
106
|
+
|
107
|
+
<li><a href="./Churn/LocationMapping.html">Churn::LocationMapping</a>
|
108
|
+
|
109
|
+
<li><a href="./Churn/SourceControl.html">Churn::SourceControl</a>
|
110
|
+
|
111
|
+
<li><a href="./Churn/SvnAnalyzer.html">Churn::SvnAnalyzer</a>
|
112
|
+
|
113
|
+
<li><a href="./Object.html">Object</a>
|
114
|
+
|
115
|
+
</ul>
|
116
|
+
</nav>
|
117
|
+
|
118
|
+
</div>
|
119
|
+
</nav>
|
120
|
+
|
121
|
+
<div id="documentation">
|
122
|
+
<h1 class="module">module Churn</h1>
|
123
|
+
|
124
|
+
<div id="description" class="description">
|
125
|
+
|
126
|
+
</div><!-- description -->
|
127
|
+
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
<section id="5Buntitled-5D" class="documentation-section">
|
132
|
+
|
133
|
+
|
134
|
+
|
135
|
+
|
136
|
+
|
137
|
+
<!-- Constants -->
|
138
|
+
<section id="constants-list" class="section">
|
139
|
+
<h3 class="section-header">Constants</h3>
|
140
|
+
<dl>
|
141
|
+
|
142
|
+
<dt id="VERSION">VERSION
|
143
|
+
|
144
|
+
<dd class="description">
|
145
|
+
|
146
|
+
|
147
|
+
</dl>
|
148
|
+
</section>
|
149
|
+
|
150
|
+
|
151
|
+
|
152
|
+
|
153
|
+
<!-- Methods -->
|
154
|
+
|
155
|
+
</section><!-- 5Buntitled-5D -->
|
156
|
+
|
157
|
+
</div><!-- documentation -->
|
158
|
+
|
159
|
+
|
160
|
+
<footer id="validator-badges">
|
161
|
+
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
162
|
+
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 4.0.1.
|
163
|
+
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
164
|
+
</footer>
|
165
|
+
|
@@ -0,0 +1,276 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
|
6
|
+
|
7
|
+
<title>class Churn::BzrAnalyzer - RDoc Documentation</title>
|
8
|
+
|
9
|
+
<link type="text/css" media="screen" href="../rdoc.css" rel="stylesheet">
|
10
|
+
|
11
|
+
<script type="text/javascript">
|
12
|
+
var rdoc_rel_prefix = "../";
|
13
|
+
</script>
|
14
|
+
|
15
|
+
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
16
|
+
<script type="text/javascript" charset="utf-8" src="../js/navigation.js"></script>
|
17
|
+
<script type="text/javascript" charset="utf-8" src="../js/search_index.js"></script>
|
18
|
+
<script type="text/javascript" charset="utf-8" src="../js/search.js"></script>
|
19
|
+
<script type="text/javascript" charset="utf-8" src="../js/searcher.js"></script>
|
20
|
+
<script type="text/javascript" charset="utf-8" src="../js/darkfish.js"></script>
|
21
|
+
|
22
|
+
|
23
|
+
<body id="top" class="class">
|
24
|
+
<nav id="metadata">
|
25
|
+
<nav id="home-section" class="section">
|
26
|
+
<h3 class="section-header">
|
27
|
+
<a href="../index.html">Home</a>
|
28
|
+
<a href="../table_of_contents.html#classes">Classes</a>
|
29
|
+
<a href="../table_of_contents.html#methods">Methods</a>
|
30
|
+
</h3>
|
31
|
+
</nav>
|
32
|
+
|
33
|
+
|
34
|
+
<nav id="search-section" class="section project-section" class="initially-hidden">
|
35
|
+
<form action="#" method="get" accept-charset="utf-8">
|
36
|
+
<h3 class="section-header">
|
37
|
+
<input type="text" name="search" placeholder="Search" id="search-field"
|
38
|
+
title="Type to search, Up and Down to navigate, Enter to load">
|
39
|
+
</h3>
|
40
|
+
</form>
|
41
|
+
|
42
|
+
<ul id="search-results" class="initially-hidden"></ul>
|
43
|
+
</nav>
|
44
|
+
|
45
|
+
|
46
|
+
|
47
|
+
|
48
|
+
<div id="file-metadata">
|
49
|
+
<nav id="file-list-section" class="section">
|
50
|
+
<h3 class="section-header">Defined In</h3>
|
51
|
+
<ul>
|
52
|
+
<li>lib/churn/scm/bzr_analyzer.rb
|
53
|
+
</ul>
|
54
|
+
</nav>
|
55
|
+
|
56
|
+
|
57
|
+
</div>
|
58
|
+
|
59
|
+
<div id="class-metadata">
|
60
|
+
|
61
|
+
<nav id="parent-class-section" class="section">
|
62
|
+
<h3 class="section-header">Parent</h3>
|
63
|
+
|
64
|
+
<p class="link">SourceControl
|
65
|
+
|
66
|
+
</nav>
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
<!-- Method Quickref -->
|
71
|
+
<nav id="method-list-section" class="section">
|
72
|
+
<h3 class="section-header">Methods</h3>
|
73
|
+
|
74
|
+
<ul class="link-list">
|
75
|
+
|
76
|
+
<li ><a href="#method-c-supported-3F">::supported?</a>
|
77
|
+
|
78
|
+
<li ><a href="#method-i-get_logs">#get_logs</a>
|
79
|
+
|
80
|
+
<li ><a href="#method-i-get_revisions">#get_revisions</a>
|
81
|
+
|
82
|
+
</ul>
|
83
|
+
</nav>
|
84
|
+
|
85
|
+
</div>
|
86
|
+
|
87
|
+
<div id="project-metadata">
|
88
|
+
<nav id="fileindex-section" class="section project-section">
|
89
|
+
<h3 class="section-header">Pages</h3>
|
90
|
+
|
91
|
+
<ul>
|
92
|
+
|
93
|
+
<li class="file"><a href="../LICENSE.html">LICENSE</a>
|
94
|
+
|
95
|
+
</ul>
|
96
|
+
</nav>
|
97
|
+
|
98
|
+
<nav id="classindex-section" class="section project-section">
|
99
|
+
<h3 class="section-header">Class and Module Index</h3>
|
100
|
+
|
101
|
+
<ul class="link-list">
|
102
|
+
|
103
|
+
<li><a href="../Churn.html">Churn</a>
|
104
|
+
|
105
|
+
<li><a href="../Churn/BzrAnalyzer.html">Churn::BzrAnalyzer</a>
|
106
|
+
|
107
|
+
<li><a href="../Churn/ChurnCalculator.html">Churn::ChurnCalculator</a>
|
108
|
+
|
109
|
+
<li><a href="../Churn/ChurnHistory.html">Churn::ChurnHistory</a>
|
110
|
+
|
111
|
+
<li><a href="../Churn/ChurnOptions.html">Churn::ChurnOptions</a>
|
112
|
+
|
113
|
+
<li><a href="../Churn/GitAnalyzer.html">Churn::GitAnalyzer</a>
|
114
|
+
|
115
|
+
<li><a href="../Churn/HgAnalyzer.html">Churn::HgAnalyzer</a>
|
116
|
+
|
117
|
+
<li><a href="../Churn/LocationMapping.html">Churn::LocationMapping</a>
|
118
|
+
|
119
|
+
<li><a href="../Churn/SourceControl.html">Churn::SourceControl</a>
|
120
|
+
|
121
|
+
<li><a href="../Churn/SvnAnalyzer.html">Churn::SvnAnalyzer</a>
|
122
|
+
|
123
|
+
<li><a href="../Object.html">Object</a>
|
124
|
+
|
125
|
+
</ul>
|
126
|
+
</nav>
|
127
|
+
|
128
|
+
</div>
|
129
|
+
</nav>
|
130
|
+
|
131
|
+
<div id="documentation">
|
132
|
+
<h1 class="class">class Churn::BzrAnalyzer</h1>
|
133
|
+
|
134
|
+
<div id="description" class="description">
|
135
|
+
|
136
|
+
<p>analizes Bzr / Bazaar SCM to find recently changed files, and what lines
|
137
|
+
have been altered</p>
|
138
|
+
|
139
|
+
</div><!-- description -->
|
140
|
+
|
141
|
+
|
142
|
+
|
143
|
+
|
144
|
+
<section id="5Buntitled-5D" class="documentation-section">
|
145
|
+
|
146
|
+
|
147
|
+
|
148
|
+
|
149
|
+
|
150
|
+
|
151
|
+
|
152
|
+
|
153
|
+
<!-- Methods -->
|
154
|
+
|
155
|
+
<section id="public-class-5Buntitled-5D-method-details" class="method-section section">
|
156
|
+
<h3 class="section-header">Public Class Methods</h3>
|
157
|
+
|
158
|
+
|
159
|
+
<div id="method-c-supported-3F" class="method-detail ">
|
160
|
+
|
161
|
+
<div class="method-heading">
|
162
|
+
<span class="method-name">supported?</span><span
|
163
|
+
class="method-args">()</span>
|
164
|
+
|
165
|
+
<span class="method-click-advice">click to toggle source</span>
|
166
|
+
|
167
|
+
</div>
|
168
|
+
|
169
|
+
|
170
|
+
<div class="method-description">
|
171
|
+
|
172
|
+
|
173
|
+
|
174
|
+
|
175
|
+
|
176
|
+
|
177
|
+
<div class="method-source-code" id="supported-3F-source">
|
178
|
+
<pre><span class="ruby-comment"># File lib/churn/scm/bzr_analyzer.rb, line 6</span>
|
179
|
+
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">supported?</span>
|
180
|
+
<span class="ruby-operator">!</span><span class="ruby-operator">!</span>(<span class="ruby-value">%xbzr nick 2>&1`</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">$?</span>.<span class="ruby-identifier">success?</span>)
|
181
|
+
<span class="ruby-keyword">end</span></pre>
|
182
|
+
</div><!-- supported-3F-source -->
|
183
|
+
|
184
|
+
</div>
|
185
|
+
|
186
|
+
|
187
|
+
|
188
|
+
|
189
|
+
</div><!-- supported-3F-method -->
|
190
|
+
|
191
|
+
|
192
|
+
</section><!-- public-class-method-details -->
|
193
|
+
|
194
|
+
<section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
|
195
|
+
<h3 class="section-header">Public Instance Methods</h3>
|
196
|
+
|
197
|
+
|
198
|
+
<div id="method-i-get_logs" class="method-detail ">
|
199
|
+
|
200
|
+
<div class="method-heading">
|
201
|
+
<span class="method-name">get_logs</span><span
|
202
|
+
class="method-args">()</span>
|
203
|
+
|
204
|
+
<span class="method-click-advice">click to toggle source</span>
|
205
|
+
|
206
|
+
</div>
|
207
|
+
|
208
|
+
|
209
|
+
<div class="method-description">
|
210
|
+
|
211
|
+
|
212
|
+
|
213
|
+
|
214
|
+
|
215
|
+
|
216
|
+
<div class="method-source-code" id="get_logs-source">
|
217
|
+
<pre><span class="ruby-comment"># File lib/churn/scm/bzr_analyzer.rb, line 10</span>
|
218
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_logs</span>
|
219
|
+
<span class="ruby-node">%xbzr log -v --short #{date_range}`</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">"\n"</span>).<span class="ruby-identifier">reject</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span> <span class="ruby-identifier">line</span> <span class="ruby-operator">!~</span> <span class="ruby-regexp">/^[ ]*(M|A) /</span>}.<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span> <span class="ruby-identifier">line</span>.<span class="ruby-identifier">strip</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)[<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>]}.<span class="ruby-identifier">flatten</span>
|
220
|
+
<span class="ruby-keyword">end</span></pre>
|
221
|
+
</div><!-- get_logs-source -->
|
222
|
+
|
223
|
+
</div>
|
224
|
+
|
225
|
+
|
226
|
+
|
227
|
+
|
228
|
+
</div><!-- get_logs-method -->
|
229
|
+
|
230
|
+
|
231
|
+
<div id="method-i-get_revisions" class="method-detail ">
|
232
|
+
|
233
|
+
<div class="method-heading">
|
234
|
+
<span class="method-name">get_revisions</span><span
|
235
|
+
class="method-args">()</span>
|
236
|
+
|
237
|
+
<span class="method-click-advice">click to toggle source</span>
|
238
|
+
|
239
|
+
</div>
|
240
|
+
|
241
|
+
|
242
|
+
<div class="method-description">
|
243
|
+
|
244
|
+
|
245
|
+
|
246
|
+
|
247
|
+
|
248
|
+
|
249
|
+
<div class="method-source-code" id="get_revisions-source">
|
250
|
+
<pre><span class="ruby-comment"># File lib/churn/scm/bzr_analyzer.rb, line 14</span>
|
251
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier">get_revisions</span>
|
252
|
+
<span class="ruby-node">%xbzr log --line #{date_range}`</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">"\n"</span>).<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span> <span class="ruby-identifier">line</span>[<span class="ruby-regexp">/^(\S+):/</span>, <span class="ruby-value">1</span>] }
|
253
|
+
<span class="ruby-keyword">end</span></pre>
|
254
|
+
</div><!-- get_revisions-source -->
|
255
|
+
|
256
|
+
</div>
|
257
|
+
|
258
|
+
|
259
|
+
|
260
|
+
|
261
|
+
</div><!-- get_revisions-method -->
|
262
|
+
|
263
|
+
|
264
|
+
</section><!-- public-instance-method-details -->
|
265
|
+
|
266
|
+
</section><!-- 5Buntitled-5D -->
|
267
|
+
|
268
|
+
</div><!-- documentation -->
|
269
|
+
|
270
|
+
|
271
|
+
<footer id="validator-badges">
|
272
|
+
<p><a href="http://validator.w3.org/check/referer">[Validate]</a>
|
273
|
+
<p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 4.0.1.
|
274
|
+
<p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
|
275
|
+
</footer>
|
276
|
+
|