ruby_native_statistics 0.10.0 → 0.10.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/ISSUE_TEMPLATE/bug_report.md +31 -0
- data/.github/workflows/main.yml +0 -5
- data/Gemfile +1 -0
- data/Gemfile.lock +10 -1
- data/README.md +19 -5
- data/Rakefile +2 -2
- data/{LICENSE → UNLICENSE} +0 -0
- data/lib/ruby_native_statistics/version.rb +1 -1
- data/ruby_native_statistics.gemspec +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 036604251e233fa21e003468d976c66ba1dc370baa076fe406e0353d94ed56c1
|
4
|
+
data.tar.gz: c067648a6b836216d271f33aaead61f909ee2f85c1d0a0d72649a5eecd7f6ba1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 197dc499363abdd6c97f6ff6edec30393ee6d094641c0534b179e29a69f31c49488cbfff65472ddce4fc1107e2fe63ecb9acc7f43533993efcd6c87b02e8c4cd
|
7
|
+
data.tar.gz: eb01d7ab4f57e71c71962daec3ac839af6c27a3ab1da74766137d9336e31263e2cd6abd0bca1a251cb1ea91c13e3523179c966ed6590cd82629b0863b7f8a9c1
|
@@ -0,0 +1,31 @@
|
|
1
|
+
---
|
2
|
+
name: Bug report
|
3
|
+
about: Create a report to help us improve
|
4
|
+
title: ''
|
5
|
+
labels: ''
|
6
|
+
assignees: ''
|
7
|
+
|
8
|
+
---
|
9
|
+
|
10
|
+
**Describe the bug**
|
11
|
+
A clear and concise description of what the bug is.
|
12
|
+
|
13
|
+
**To Reproduce**
|
14
|
+
Steps to reproduce the behavior:
|
15
|
+
1. Go to '...'
|
16
|
+
2. Click on '....'
|
17
|
+
3. Scroll down to '....'
|
18
|
+
4. See error
|
19
|
+
|
20
|
+
**Expected behavior**
|
21
|
+
A clear and concise description of what you expected to happen.
|
22
|
+
|
23
|
+
**Screenshots**
|
24
|
+
If applicable, add screenshots to help explain your problem.
|
25
|
+
|
26
|
+
**Desktop (please complete the following information):**
|
27
|
+
- OS: [e.g. iOS]
|
28
|
+
- Version [e.g. 22]
|
29
|
+
|
30
|
+
**Additional context**
|
31
|
+
Add any other context about the problem here.
|
data/.github/workflows/main.yml
CHANGED
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -6,12 +6,20 @@ PATH
|
|
6
6
|
GEM
|
7
7
|
remote: https://rubygems.org/
|
8
8
|
specs:
|
9
|
+
ansi (1.5.0)
|
10
|
+
builder (3.2.4)
|
9
11
|
docile (1.3.2)
|
10
12
|
json (2.3.0)
|
11
|
-
minitest (5.
|
13
|
+
minitest (5.14.0)
|
14
|
+
minitest-reporters (1.4.2)
|
15
|
+
ansi
|
16
|
+
builder
|
17
|
+
minitest (>= 5.0)
|
18
|
+
ruby-progressbar
|
12
19
|
rake (12.3.3)
|
13
20
|
rake-compiler (1.1.0)
|
14
21
|
rake
|
22
|
+
ruby-progressbar (1.10.1)
|
15
23
|
simplecov (0.17.1)
|
16
24
|
docile (~> 1.1)
|
17
25
|
json (>= 1.8, < 3)
|
@@ -24,6 +32,7 @@ PLATFORMS
|
|
24
32
|
|
25
33
|
DEPENDENCIES
|
26
34
|
minitest (~> 5.0)
|
35
|
+
minitest-reporters (~> 1.4.2)
|
27
36
|
rake (~> 12.0)
|
28
37
|
rake-compiler (~> 1.1)
|
29
38
|
ruby_native_statistics!
|
data/README.md
CHANGED
@@ -1,4 +1,6 @@
|
|
1
|
-
# Ruby Native Statistics
|
1
|
+
# Ruby Native Statistics
|
2
|
+
|
3
|
+
[![Test status](https://github.com/corybuecker/ruby-native-statistics/workflows/Test%20suite/badge.svg)](https://github.com/corybuecker/ruby-native-statistics/actions)
|
2
4
|
|
3
5
|
This is a native extension to Ruby that adds native (C) statistical functions to the Array class. At present the following functions are provided:
|
4
6
|
|
@@ -12,14 +14,26 @@ This is a native extension to Ruby that adds native (C) statistical functions to
|
|
12
14
|
|
13
15
|
Check the Github Actions build to see the currently supported versions of Ruby. This list will match whatever stable versions are specified at https://www.ruby-lang.org/en/downloads/.
|
14
16
|
|
15
|
-
It is
|
17
|
+
It is generally more performant than calculating these values with pure Ruby. For a comparison, run the benchmarks with `rake benchmark`.
|
18
|
+
|
19
|
+
| Test (Ruby 2.7.0) | Run 1 | Run 2 | Run 3 | Run 4 | Run 5 |
|
20
|
+
| ------------------ | -------- | -------- | -------- | -------- | -------- |
|
21
|
+
| bench_native_stdev | 0.000105 | 0.000102 | 0.000101 | 0.000099 | 0.000132 |
|
22
|
+
| bench_ruby_stdev | 0.001661 | 0.001695 | 0.001733 | 0.001664 | 0.002006 |
|
23
|
+
|
24
|
+
| Test (Ruby 2.7.0) | Run 1 | Run 2 | Run 3 | Run 4 | Run 5 |
|
25
|
+
| ------------------- | -------- | -------- | -------- | -------- | -------- |
|
26
|
+
| bench_native_median | 0.001019 | 0.000955 | 0.001023 | 0.000933 | 0.000986 |
|
27
|
+
| bench_ruby_median | 0.001206 | 0.001166 | 0.001160 | 0.001160 | 0.001162 |
|
16
28
|
|
17
|
-
|
18
|
-
|
29
|
+
| Test (Ruby 2.7.0) | Run 1 | Run 2 | Run 3 | Run 4 | Run 5 |
|
30
|
+
| ----------------- | -------- | -------- | -------- | -------- | -------- |
|
31
|
+
| bench_native_mean | 0.000051 | 0.000045 | 0.000050 | 0.000050 | 0.000049 |
|
32
|
+
| bench_ruby_mean | 0.000457 | 0.000462 | 0.000465 | 0.000486 | 0.000475 |
|
19
33
|
|
20
34
|
## Found a bug? Need a function?
|
21
35
|
|
22
|
-
If you found a bug or
|
36
|
+
If you found a bug or need a particular function, please let me know! I work on this gem in my spare time, mainly for learning purposes. Feel free to open a PR or a Github issue and I'll take a look as soon as possible.
|
23
37
|
|
24
38
|
## Usage
|
25
39
|
|
data/Rakefile
CHANGED
@@ -11,10 +11,10 @@ Rake::TestTask.new(:test) do |t|
|
|
11
11
|
t.test_files = FileList["test/**/*_test.rb"]
|
12
12
|
end
|
13
13
|
|
14
|
-
Rake::TestTask.new(benchmark: :compile) do |t|
|
14
|
+
Rake::TestTask.new(benchmark: [:clean, :compile]) do |t|
|
15
15
|
t.libs << "test"
|
16
16
|
t.libs << "lib"
|
17
17
|
t.test_files = FileList["test/**/*_benchmark.rb"]
|
18
18
|
end
|
19
19
|
|
20
|
-
task :default => [:compile, :test]
|
20
|
+
task :default => [:clean, :compile, :test]
|
data/{LICENSE → UNLICENSE}
RENAMED
File without changes
|
@@ -7,7 +7,7 @@ Gem::Specification.new do |spec|
|
|
7
7
|
spec.email = ["cory.buecker@gmail.com"]
|
8
8
|
|
9
9
|
spec.license = "Unlicense"
|
10
|
-
spec.summary = "
|
10
|
+
spec.summary = "High performance, native (C) implementations of various statistical functions."
|
11
11
|
spec.homepage = "https://github.com/corybuecker/ruby-native-statistics"
|
12
12
|
|
13
13
|
spec.required_ruby_version = Gem::Requirement.new(">= 2.4.9")
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby_native_statistics
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.10.
|
4
|
+
version: 0.10.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cory Buecker
|
@@ -18,15 +18,16 @@ extensions:
|
|
18
18
|
- ext/ruby_native_statistics/extconf.rb
|
19
19
|
extra_rdoc_files: []
|
20
20
|
files:
|
21
|
+
- ".github/ISSUE_TEMPLATE/bug_report.md"
|
21
22
|
- ".github/workflows/main.yml"
|
22
23
|
- ".gitignore"
|
23
24
|
- ".vscode/c_cpp_properties.json"
|
24
25
|
- ".vscode/settings.json"
|
25
26
|
- Gemfile
|
26
27
|
- Gemfile.lock
|
27
|
-
- LICENSE
|
28
28
|
- README.md
|
29
29
|
- Rakefile
|
30
|
+
- UNLICENSE
|
30
31
|
- changelog.md
|
31
32
|
- ext/ruby_native_statistics/conversions.c
|
32
33
|
- ext/ruby_native_statistics/conversions.h
|
@@ -66,6 +67,5 @@ requirements: []
|
|
66
67
|
rubygems_version: 3.1.2
|
67
68
|
signing_key:
|
68
69
|
specification_version: 4
|
69
|
-
summary:
|
70
|
-
to the Array class.
|
70
|
+
summary: High performance, native (C) implementations of various statistical functions.
|
71
71
|
test_files: []
|