git_commit_size_scraper 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8f4d3305ab29ed3f2a2fcb6644219e77d8a7a54b
4
- data.tar.gz: 5a2cc6c5a0bbd10cfd85de590373d8f394c9ed12
3
+ metadata.gz: 1cff546b0a40b83559b17d79d60e3ac90f802de3
4
+ data.tar.gz: f397ae9e254f692c829199b25d594b68e34abd0a
5
5
  SHA512:
6
- metadata.gz: 30834a191f591c4d92e9872b92a4a69f8415df3b438cfb76fdc5a35813f1040afec54a736a906a6654347cf1b787a9dec33db4b7102ff6df9d47b1217e5bb349
7
- data.tar.gz: 1cf4deef53d4e81d200660404894e5accc60a54d9cda79ca95f5415b9fdfbe4ecfb7028a34b9cd0eae56146c8afd9b2fc0c82eaf7bc1f3c365bf5b8048913cc0
6
+ metadata.gz: f49a6a52c9cdf1c8d0fa83bca32fb5acc70fb329b97b88493d308ab7eda91f3bba0484528d9db3cb4cb28ea4b568de604d52533188579ac5e70dc9ec789e6e34
7
+ data.tar.gz: 379bf01be4643e73046145f96890d2988162f2831742d01b591fc2011467f912b4ef126d51317a26d6e37552cdebd512cbee94c8bf8888ad7ebc098177df0ce4
data/Gemfile.lock CHANGED
@@ -1,13 +1,13 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- git_commit_size_scraper (1.0.0)
4
+ git_commit_size_scraper (1.0.1)
5
5
  statistical_array (~> 1.0)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- rake (10.1.0)
10
+ rake (10.3.1)
11
11
  statistical_array (1.0.0)
12
12
 
13
13
  PLATFORMS
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # Git Commit Size Scraper
1
+ # Git Commit-Size Scraper
2
2
 
3
3
  ## Copyright and Licensing
4
4
 
@@ -1,3 +1,3 @@
1
1
  module GitCommitSizeScraper
2
- VERSION = "1.0.0"
2
+ VERSION = "1.0.1"
3
3
  end
metadata CHANGED
@@ -1,55 +1,55 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: git_commit_size_scraper
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Todd A. Jacobs
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-10-09 00:00:00.000000000 Z
11
+ date: 2014-05-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: statistical_array
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.0'
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
26
  version: '1.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '1.3'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.3'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  description: Walk Git history to calculate commit size in bytes.
@@ -60,10 +60,10 @@ executables:
60
60
  extensions: []
61
61
  extra_rdoc_files: []
62
62
  files:
63
- - .gitignore
64
- - .ruby-gemset
65
- - .ruby-version
66
- - .travis.yml
63
+ - ".gitignore"
64
+ - ".ruby-gemset"
65
+ - ".ruby-version"
66
+ - ".travis.yml"
67
67
  - AUTHORS
68
68
  - COPYING
69
69
  - Gemfile
@@ -73,7 +73,6 @@ files:
73
73
  - Rakefile
74
74
  - bin/git_commit_size_scraper
75
75
  - git_commit_size_scraper.gemspec
76
- - lib/git_commit_size_scraper.foo
77
76
  - lib/git_commit_size_scraper.rb
78
77
  - lib/git_commit_size_scraper/scraper.rb
79
78
  - lib/git_commit_size_scraper/version.rb
@@ -87,18 +86,19 @@ require_paths:
87
86
  - lib
88
87
  required_ruby_version: !ruby/object:Gem::Requirement
89
88
  requirements:
90
- - - '>='
89
+ - - ">="
91
90
  - !ruby/object:Gem::Version
92
91
  version: '0'
93
92
  required_rubygems_version: !ruby/object:Gem::Requirement
94
93
  requirements:
95
- - - '>='
94
+ - - ">="
96
95
  - !ruby/object:Gem::Version
97
96
  version: '0'
98
97
  requirements: []
99
98
  rubyforge_project:
100
- rubygems_version: 2.1.6
99
+ rubygems_version: 2.2.2
101
100
  signing_key:
102
101
  specification_version: 4
103
102
  summary: ''
104
103
  test_files: []
104
+ has_rdoc:
@@ -1,60 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- class GitCommitSize
4
- attr_reader :list
5
-
6
- def initialize args=nil
7
- @commits = `git rev-list --all #{args}`.split
8
- @list = {}
9
- end
10
-
11
- def blobs_in_commit treeish
12
- `git diff-tree -r -c -M -C --no-commit-id #{treeish}`.
13
- split("\n").
14
- map { |blob| blob.split[3] }
15
- end
16
-
17
- def size_in_bytes obj
18
- return 0 if obj =~ /\A0+\z/
19
- `git cat-file -s #{obj}`.to_i
20
- end
21
-
22
- def bytes_in_commit treeish
23
- blobs = blobs_in_commit treeish
24
- total = blobs.map { |blob| size_in_bytes blob }.reduce(:+)
25
- end
26
-
27
- def walk
28
- @commits.map { |c| @list[c] = bytes_in_commit c }
29
- end
30
-
31
- def sorted
32
- @list.reject { |k, v| v.nil? }.sort_by { |k,v| v }
33
- end
34
-
35
- def avg
36
- (@list.values.compact.reduce(:+).to_f / @commits.count).round
37
- end
38
-
39
- def median
40
- list = @list.values.map(&:to_i).sort
41
- n = list.count
42
- case @list.count.odd?
43
- when true
44
- @list[(n+1)/2]
45
- when false
46
- ( list[n/2-1] + list[n/2] ) / 2.0
47
- end
48
- end
49
- end
50
-
51
- if __FILE__ == $0
52
- git = GitCommitSize.new
53
- count = git.commits.count
54
- puts "Walking #{count} commits."
55
- git.walk
56
- result = git.sorted
57
- numsep = /(?<=\d)(?=(?:\d{3})+(\.\d+)?\z)/
58
- pp result
59
- puts "Average: %s bytes" % git.avg.to_s.gsub(numsep, ?,)
60
- end