fdist 1.1.1 → 1.1.2

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: a70833b84a20dd91f598ec4dbaf4d4ad4b519b16
4
- data.tar.gz: 55a50904dc563a33603bd39e671e24d6410e6428
3
+ metadata.gz: 2bbdd04df8a248c4de7c7ae38d6ab029472e6322
4
+ data.tar.gz: 16be6d9e74e6aa5bb3c8e14cdbd88489521b4533
5
5
  SHA512:
6
- metadata.gz: 8ee372f6bab4926b8c084530c8da01f9c67f59cc3580355cea3c907704dc48f46c38ed98438d1e78a280fa36a95b365ffab5d875350713d192acfcf613287413
7
- data.tar.gz: 93871fae77d3e502980dcee1d9ec36ecfb3696c899c1d44e4037e395acc8d696f9eb6812581ea8740a64c0afdb3c2aa3870750ec65d0159b7a002cd6e3ab728e
6
+ metadata.gz: 2d122e88f189db54e5107ae5f3dd4f23f1971a8b1d261af66f412dcb1bc6feeaadb5a4d2c4e46bc87628a8ceee7812dc43ddc0dcf9aa5c6f54a22774739b1963
7
+ data.tar.gz: 6b6887cd8da07cdcf96b477fd8a28f5cc20bfdd864d508ad3eaa3842faba07fd6e778f2aa0fd6da41a249e1f18df00aa9d755371b8739cd947b995e3b42a8316
data/.rspec ADDED
@@ -0,0 +1 @@
1
+ --color
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- source "http://rubygems.org"
1
+ source "https://rubygems.org"
2
2
  # Add dependencies required to use your gem here.
3
3
  # Example:
4
4
  # gem "activesupport", ">= 2.3.5"
@@ -6,9 +6,9 @@ source "http://rubygems.org"
6
6
  # Add dependencies to develop your gem here.
7
7
  # Include everything needed to run rake, tests, features, etc.
8
8
  group :development do
9
- gem "shoulda", ">= 0"
9
+ gem "rspec", "~> 3.5.0"
10
10
  gem "rdoc", "~> 3.12"
11
11
  gem "bundler", "~> 1.0"
12
- gem "jeweler", "~> 2.0.1"
12
+ gem "jeweler", "~> 2.3.9"
13
13
  gem "simplecov", ">= 0"
14
14
  end
@@ -1,81 +1,85 @@
1
1
  GEM
2
- remote: http://rubygems.org/
2
+ remote: https://rubygems.org/
3
3
  specs:
4
- activesupport (4.1.0)
5
- i18n (~> 0.6, >= 0.6.9)
6
- json (~> 1.7, >= 1.7.7)
7
- minitest (~> 5.1)
8
- thread_safe (~> 0.1)
9
- tzinfo (~> 1.1)
10
- addressable (2.3.6)
11
- builder (3.2.2)
4
+ addressable (2.4.0)
5
+ builder (3.2.3)
12
6
  descendants_tracker (0.0.4)
13
7
  thread_safe (~> 0.3, >= 0.3.1)
14
- docile (1.1.3)
15
- faraday (0.9.0)
8
+ diff-lcs (1.3)
9
+ docile (1.3.0)
10
+ faraday (0.9.2)
16
11
  multipart-post (>= 1.2, < 3)
17
- git (1.2.6)
18
- github_api (0.11.3)
19
- addressable (~> 2.3)
20
- descendants_tracker (~> 0.0.1)
12
+ git (1.3.0)
13
+ github_api (0.16.0)
14
+ addressable (~> 2.4.0)
15
+ descendants_tracker (~> 0.0.4)
21
16
  faraday (~> 0.8, < 0.10)
22
- hashie (>= 1.2)
23
- multi_json (>= 1.7.5, < 2.0)
24
- nokogiri (~> 1.6.0)
25
- oauth2
26
- hashie (2.1.1)
27
- highline (1.6.21)
28
- i18n (0.6.9)
29
- jeweler (2.0.1)
17
+ hashie (>= 3.4)
18
+ mime-types (>= 1.16, < 3.0)
19
+ oauth2 (~> 1.0)
20
+ hashie (3.5.7)
21
+ highline (1.7.10)
22
+ jeweler (2.3.9)
30
23
  builder
31
- bundler (>= 1.0)
24
+ bundler
32
25
  git (>= 1.2.5)
33
- github_api
26
+ github_api (~> 0.16.0)
34
27
  highline (>= 1.6.15)
35
28
  nokogiri (>= 1.5.10)
29
+ psych
36
30
  rake
37
31
  rdoc
38
- json (1.8.1)
39
- jwt (0.1.11)
40
- multi_json (>= 1.5)
41
- mini_portile (0.5.3)
42
- minitest (5.3.3)
43
- multi_json (1.9.2)
44
- multi_xml (0.5.5)
32
+ semver2
33
+ json (1.8.6)
34
+ jwt (1.5.6)
35
+ mime-types (2.99.3)
36
+ mini_portile2 (2.3.0)
37
+ multi_json (1.13.1)
38
+ multi_xml (0.6.0)
45
39
  multipart-post (2.0.0)
46
- nokogiri (1.6.1)
47
- mini_portile (~> 0.5.0)
48
- oauth2 (0.9.3)
49
- faraday (>= 0.8, < 0.10)
50
- jwt (~> 0.1.8)
40
+ nokogiri (1.8.2)
41
+ mini_portile2 (~> 2.3.0)
42
+ oauth2 (1.4.0)
43
+ faraday (>= 0.8, < 0.13)
44
+ jwt (~> 1.0)
51
45
  multi_json (~> 1.3)
52
46
  multi_xml (~> 0.5)
53
- rack (~> 1.2)
54
- rack (1.5.2)
55
- rake (10.3.0)
47
+ rack (>= 1.2, < 3)
48
+ psych (3.0.2)
49
+ rack (2.0.4)
50
+ rake (12.3.0)
56
51
  rdoc (3.12.2)
57
52
  json (~> 1.4)
58
- shoulda (3.5.0)
59
- shoulda-context (~> 1.0, >= 1.0.1)
60
- shoulda-matchers (>= 1.4.1, < 3.0)
61
- shoulda-context (1.2.1)
62
- shoulda-matchers (2.6.0)
63
- activesupport (>= 3.0.0)
64
- simplecov (0.8.2)
65
- docile (~> 1.1.0)
66
- multi_json
67
- simplecov-html (~> 0.8.0)
68
- simplecov-html (0.8.0)
69
- thread_safe (0.3.3)
70
- tzinfo (1.1.0)
71
- thread_safe (~> 0.1)
53
+ rspec (3.5.0)
54
+ rspec-core (~> 3.5.0)
55
+ rspec-expectations (~> 3.5.0)
56
+ rspec-mocks (~> 3.5.0)
57
+ rspec-core (3.5.4)
58
+ rspec-support (~> 3.5.0)
59
+ rspec-expectations (3.5.0)
60
+ diff-lcs (>= 1.2.0, < 2.0)
61
+ rspec-support (~> 3.5.0)
62
+ rspec-mocks (3.5.0)
63
+ diff-lcs (>= 1.2.0, < 2.0)
64
+ rspec-support (~> 3.5.0)
65
+ rspec-support (3.5.0)
66
+ semver2 (3.4.2)
67
+ simplecov (0.16.1)
68
+ docile (~> 1.1)
69
+ json (>= 1.8, < 3)
70
+ simplecov-html (~> 0.10.0)
71
+ simplecov-html (0.10.2)
72
+ thread_safe (0.3.6)
72
73
 
73
74
  PLATFORMS
74
75
  ruby
75
76
 
76
77
  DEPENDENCIES
77
78
  bundler (~> 1.0)
78
- jeweler (~> 2.0.1)
79
+ jeweler (~> 2.3.9)
79
80
  rdoc (~> 3.12)
80
- shoulda
81
+ rspec (~> 3.5.0)
81
82
  simplecov
83
+
84
+ BUNDLED WITH
85
+ 1.16.1
@@ -1,4 +1,4 @@
1
- Copyright (c) 2013 michael d. towle
1
+ Copyright (c) 2018 M. Towle
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
@@ -14,6 +14,6 @@ Description goes here.
14
14
 
15
15
  == Copyright
16
16
 
17
- Copyright (c) 2013 michael d. towle. See LICENSE.txt for
17
+ Copyright (c) 2018 M. Towle. See LICENSE.txt for
18
18
  further details.
19
19
 
data/Rakefile CHANGED
@@ -13,39 +13,39 @@ require 'rake'
13
13
 
14
14
  require 'jeweler'
15
15
  Jeweler::Tasks.new do |gem|
16
+ # gem is a Gem::Specification... see http://guides.rubygems.org/specification-reference/ for more options
16
17
  gem.name = "fdist"
17
- gem.homepage = "http://github.com/gametheoretic/fdist"
18
+ gem.homepage = "http://github.com/towledev/fdist"
18
19
  gem.license = "MIT"
19
- gem.summary = %Q{Enumerable#fdist -- returns a freq. dist.}
20
- gem.description = %Q{Given a block, Enumerable#fdist returns a frequency distribution of the results in the form of a Hash (sans block, distribution of raw element frequencies aka counts). Though one most often avoids imbuing a Hash w/ order-meaning, in this case the return Hash's pairs come ordered by frequency (i.e., the value side of the key-value pair).}
21
- gem.email = "gametheoretic@gmail.com"
22
- gem.authors = ["michael d. towle"]
23
- gem.files.include "lib/**/*.rb"
20
+ gem.summary = %Q{Enumerable#fdist}
21
+ gem.description = %Q{Helper function for the Enumerable module which returns a frequency distribution.}
22
+ gem.email = "towledev@gmail.com"
23
+ gem.authors = ["M. Towle"]
24
+ # dependencies defined in Gemfile
25
+ gem.files.include "lib/fdist.rb"
24
26
  end
25
-
26
27
  Jeweler::RubygemsDotOrgTasks.new
27
28
 
28
- require 'rake/testtask'
29
- Rake::TestTask.new(:test) do |test|
30
- test.libs << 'lib' << 'test'
31
- test.pattern = 'test/**/test_*.rb'
32
- test.verbose = true
29
+ require 'rspec/core'
30
+ require 'rspec/core/rake_task'
31
+ RSpec::Core::RakeTask.new(:spec) do |spec|
32
+ spec.pattern = FileList['spec/**/*_spec.rb']
33
33
  end
34
34
 
35
35
  desc "Code coverage detail"
36
36
  task :simplecov do
37
37
  ENV['COVERAGE'] = "true"
38
- Rake::Task['test'].execute
38
+ Rake::Task['spec'].execute
39
39
  end
40
40
 
41
- task :default => :test
41
+ task :default => :spec
42
42
 
43
43
  require 'rdoc/task'
44
44
  Rake::RDocTask.new do |rdoc|
45
45
  version = File.exist?('VERSION') ? File.read('VERSION') : ""
46
46
 
47
47
  rdoc.rdoc_dir = 'rdoc'
48
- rdoc.title = "temp #{version}"
48
+ rdoc.title = "fdist #{version}"
49
49
  rdoc.rdoc_files.include('README*')
50
50
  rdoc.rdoc_files.include('lib/**/*.rb')
51
51
  end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.1
1
+ 1.1.2
@@ -1,18 +1,16 @@
1
-
2
1
  module Enumerable
2
+ def fdist(&block)
3
+ inject({}) do |memo, element|
4
+ if block_given?
5
+ item = block.call(element)
6
+ else
7
+ item = element
8
+ end
3
9
 
4
- # such that #fdist allows the user to select a slice off results off the top/bottom/whatever of the frequency distribution hash without conversion to- and from-Array type.
5
-
6
-
7
- def fdist(valid_array_slice_arg=0..-1)
8
- self.group_by do |elem|
9
- block_given? ? yield(elem) : elem
10
- end.to_a.map do |result, results_array|
11
- [result, results_array.count]
12
- end.sort_by do |result, frequency|
13
- frequency
14
- end[valid_array_slice_arg].to_h
10
+ memo[item] ||= 0
11
+ memo[item] += 1
12
+ memo
13
+ end
14
+ .sort_by(&:last)
15
15
  end
16
- end
17
-
18
-
16
+ end
@@ -0,0 +1,5 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
+
3
+ describe 'Fdist' do
4
+
5
+ end
@@ -0,0 +1,29 @@
1
+ require 'simplecov'
2
+
3
+ module SimpleCov::Configuration
4
+ def clean_filters
5
+ @filters = []
6
+ end
7
+ end
8
+
9
+ SimpleCov.configure do
10
+ clean_filters
11
+ load_adapter 'test_frameworks'
12
+ end
13
+
14
+ ENV["COVERAGE"] && SimpleCov.start do
15
+ add_filter "/.rvm/"
16
+ end
17
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
18
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
19
+
20
+ require 'rspec'
21
+ require 'fdist'
22
+
23
+ # Requires supporting files with custom matchers and macros, etc,
24
+ # in ./support/ and its subdirectories.
25
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
26
+
27
+ RSpec.configure do |config|
28
+
29
+ end
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fdist
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
- - michael d. towle
7
+ - M. Towle
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-04-16 00:00:00.000000000 Z
11
+ date: 2018-03-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: shoulda
14
+ name: rspec
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: 3.5.0
20
20
  type: :development
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: '0'
26
+ version: 3.5.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rdoc
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -58,14 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 2.0.1
61
+ version: 2.3.9
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 2.0.1
68
+ version: 2.3.9
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: simplecov
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -80,12 +80,8 @@ dependencies:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
- description: Given a block, Enumerable#fdist returns a frequency distribution of the
84
- results in the form of a Hash (sans block, distribution of raw element frequencies
85
- aka counts). Though one most often avoids imbuing a Hash w/ order-meaning, in this
86
- case the return Hash's pairs come ordered by frequency (i.e., the value side of
87
- the key-value pair).
88
- email: gametheoretic@gmail.com
83
+ description: Helper function for the Enumerable module which returns a frequency distribution.
84
+ email: towledev@gmail.com
89
85
  executables: []
90
86
  extensions: []
91
87
  extra_rdoc_files:
@@ -93,15 +89,17 @@ extra_rdoc_files:
93
89
  - README.rdoc
94
90
  files:
95
91
  - ".document"
92
+ - ".rspec"
96
93
  - Gemfile
97
94
  - Gemfile.lock
98
95
  - LICENSE.txt
99
96
  - README.rdoc
100
97
  - Rakefile
101
98
  - VERSION
102
- - fdist.gemspec
103
99
  - lib/fdist.rb
104
- homepage: http://github.com/gametheoretic/fdist
100
+ - spec/fdist_spec.rb
101
+ - spec/spec_helper.rb
102
+ homepage: http://github.com/towledev/fdist
105
103
  licenses:
106
104
  - MIT
107
105
  metadata: {}
@@ -121,8 +119,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
121
119
  version: '0'
122
120
  requirements: []
123
121
  rubyforge_project:
124
- rubygems_version: 2.2.2
122
+ rubygems_version: 2.6.14
125
123
  signing_key:
126
124
  specification_version: 4
127
- summary: Enumerable#fdist -- returns a freq. dist.
125
+ summary: Enumerable#fdist
128
126
  test_files: []
@@ -1,61 +0,0 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
- # -*- encoding: utf-8 -*-
5
- # stub: fdist 1.1.1 ruby lib
6
-
7
- Gem::Specification.new do |s|
8
- s.name = "fdist"
9
- s.version = "1.1.1"
10
-
11
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
- s.require_paths = ["lib"]
13
- s.authors = ["michael d. towle"]
14
- s.date = "2014-04-16"
15
- s.description = "Given a block, Enumerable#fdist returns a frequency distribution of the results in the form of a Hash (sans block, distribution of raw element frequencies aka counts). Though one most often avoids imbuing a Hash w/ order-meaning, in this case the return Hash's pairs come ordered by frequency (i.e., the value side of the key-value pair)."
16
- s.email = "gametheoretic@gmail.com"
17
- s.extra_rdoc_files = [
18
- "LICENSE.txt",
19
- "README.rdoc"
20
- ]
21
- s.files = [
22
- ".document",
23
- "Gemfile",
24
- "Gemfile.lock",
25
- "LICENSE.txt",
26
- "README.rdoc",
27
- "Rakefile",
28
- "VERSION",
29
- "fdist.gemspec",
30
- "lib/fdist.rb"
31
- ]
32
- s.homepage = "http://github.com/gametheoretic/fdist"
33
- s.licenses = ["MIT"]
34
- s.rubygems_version = "2.2.2"
35
- s.summary = "Enumerable#fdist -- returns a freq. dist."
36
-
37
- if s.respond_to? :specification_version then
38
- s.specification_version = 4
39
-
40
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
41
- s.add_development_dependency(%q<shoulda>, [">= 0"])
42
- s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
43
- s.add_development_dependency(%q<bundler>, ["~> 1.0"])
44
- s.add_development_dependency(%q<jeweler>, ["~> 2.0.1"])
45
- s.add_development_dependency(%q<simplecov>, [">= 0"])
46
- else
47
- s.add_dependency(%q<shoulda>, [">= 0"])
48
- s.add_dependency(%q<rdoc>, ["~> 3.12"])
49
- s.add_dependency(%q<bundler>, ["~> 1.0"])
50
- s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
51
- s.add_dependency(%q<simplecov>, [">= 0"])
52
- end
53
- else
54
- s.add_dependency(%q<shoulda>, [">= 0"])
55
- s.add_dependency(%q<rdoc>, ["~> 3.12"])
56
- s.add_dependency(%q<bundler>, ["~> 1.0"])
57
- s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
58
- s.add_dependency(%q<simplecov>, [">= 0"])
59
- end
60
- end
61
-