ruby_native_statistics 0.10.0 → 0.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|
+
[](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: []
|