khiva 0.1.3 → 0.2.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/CHANGELOG.md +8 -0
- data/README.md +3 -3
- data/lib/khiva/array.rb +5 -8
- data/lib/khiva/version.rb +1 -1
- data/lib/khiva.rb +20 -16
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '086bdca24cfb0bd2cba8c06c84e17efa6f0853e9d201133732493a82a1eec0f0'
|
4
|
+
data.tar.gz: 7a899d7065ffe7f9650081f9480f378dffed85707bf32a36b6a1aa4c5634cc39
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 84239b838ccce4f3fa90b95f927e973e279eb3bf9e273e76c73228c04b2e918e71bb40f0bd98e0a73b46453e27148856d61d2333f03163a9bfb61b3b8cc46ccc
|
7
|
+
data.tar.gz: de680ec20fa545489cc9566ecf684f7e245e1a8ced68e4ef3a48c6c1a5b52b05aa796500c9fe8a30c2f18ece37e288e57ddbc2c6c20991601dda90aa26ce579a
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Khiva
|
1
|
+
# Khiva Ruby
|
2
2
|
|
3
3
|
[Khiva](https://github.com/shapelets/khiva) - high-performance time series algorithms - for Ruby
|
4
4
|
|
@@ -17,7 +17,7 @@ brew install khiva
|
|
17
17
|
Add this line to your application’s Gemfile:
|
18
18
|
|
19
19
|
```ruby
|
20
|
-
gem
|
20
|
+
gem "khiva"
|
21
21
|
```
|
22
22
|
|
23
23
|
## Getting Started
|
@@ -835,7 +835,7 @@ Install ArrayFire:
|
|
835
835
|
|
836
836
|
```sh
|
837
837
|
sudo apt-key adv --fetch-key https://repo.arrayfire.com/GPG-PUB-KEY-ARRAYFIRE-2020.PUB
|
838
|
-
echo "deb [arch=amd64] https://repo.arrayfire.com/
|
838
|
+
echo "deb [arch=amd64] https://repo.arrayfire.com/debian all main" | sudo tee /etc/apt/sources.list.d/arrayfire.list
|
839
839
|
sudo apt-get update
|
840
840
|
sudo apt-get install arrayfire-unified3 arrayfire-cpu3-openblas arrayfire-opencl3-openblas
|
841
841
|
```
|
data/lib/khiva/array.rb
CHANGED
@@ -44,13 +44,10 @@ module Khiva
|
|
44
44
|
data = Fiddle::Pointer[flat_obj.pack("#{TYPE_FORMAT[type]}*")]
|
45
45
|
ndims = dims.size
|
46
46
|
dims = Fiddle::Pointer[dims.pack("q!*")]
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
@ptr = result
|
47
|
+
@ptr = Fiddle::Pointer.malloc(Fiddle::SIZEOF_VOIDP)
|
48
|
+
FFI.call(:create_array, data, ndims, dims, @ptr, TYPES.index(type))
|
49
|
+
ObjectSpace.define_finalizer(@ptr, self.class.finalize(@ptr.to_i))
|
51
50
|
end
|
52
|
-
|
53
|
-
ObjectSpace.define_finalizer(self, self.class.finalize(@ptr))
|
54
51
|
end
|
55
52
|
|
56
53
|
def display
|
@@ -131,9 +128,9 @@ module Khiva
|
|
131
128
|
alias_method :dup, :copy
|
132
129
|
alias_method :clone, :copy
|
133
130
|
|
134
|
-
def self.finalize(
|
131
|
+
def self.finalize(addr)
|
135
132
|
# must use proc instead of stabby lambda
|
136
|
-
proc { FFI.call(:delete_array,
|
133
|
+
proc { FFI.call(:delete_array, addr) }
|
137
134
|
end
|
138
135
|
end
|
139
136
|
end
|
data/lib/khiva/version.rb
CHANGED
data/lib/khiva.rb
CHANGED
@@ -2,21 +2,21 @@
|
|
2
2
|
require "fiddle/import"
|
3
3
|
|
4
4
|
# modules
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
5
|
+
require_relative "khiva/array"
|
6
|
+
require_relative "khiva/clustering"
|
7
|
+
require_relative "khiva/dimensionality"
|
8
|
+
require_relative "khiva/distances"
|
9
|
+
require_relative "khiva/features"
|
10
|
+
require_relative "khiva/library"
|
11
|
+
require_relative "khiva/linalg"
|
12
|
+
require_relative "khiva/matrix"
|
13
|
+
require_relative "khiva/normalization"
|
14
|
+
require_relative "khiva/polynomial"
|
15
|
+
require_relative "khiva/regression"
|
16
|
+
require_relative "khiva/regularization"
|
17
|
+
require_relative "khiva/statistics"
|
18
|
+
require_relative "khiva/utils"
|
19
|
+
require_relative "khiva/version"
|
20
20
|
|
21
21
|
module Khiva
|
22
22
|
class Error < StandardError; end
|
@@ -28,7 +28,11 @@ module Khiva
|
|
28
28
|
if Gem.win_platform?
|
29
29
|
["khiva_c.dll"]
|
30
30
|
elsif RbConfig::CONFIG["host_os"] =~ /darwin/i
|
31
|
-
["
|
31
|
+
if RbConfig::CONFIG["host_cpu"] =~ /arm|aarch64/i
|
32
|
+
["libkhiva_c.dylib", "/opt/homebrew/lib/libkhiva_c.dylib"]
|
33
|
+
else
|
34
|
+
["libkhiva_c.dylib"]
|
35
|
+
end
|
32
36
|
else
|
33
37
|
["libkhiva_c.so"]
|
34
38
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: khiva
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Kane
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-06-08 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description:
|
14
14
|
email: andrew@ankane.org
|
@@ -36,7 +36,7 @@ files:
|
|
36
36
|
- lib/khiva/statistics.rb
|
37
37
|
- lib/khiva/utils.rb
|
38
38
|
- lib/khiva/version.rb
|
39
|
-
homepage: https://github.com/ankane/khiva
|
39
|
+
homepage: https://github.com/ankane/khiva-ruby
|
40
40
|
licenses:
|
41
41
|
- MPL-2.0
|
42
42
|
metadata: {}
|
@@ -48,14 +48,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
48
48
|
requirements:
|
49
49
|
- - ">="
|
50
50
|
- !ruby/object:Gem::Version
|
51
|
-
version: '2.
|
51
|
+
version: '2.7'
|
52
52
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
53
53
|
requirements:
|
54
54
|
- - ">="
|
55
55
|
- !ruby/object:Gem::Version
|
56
56
|
version: '0'
|
57
57
|
requirements: []
|
58
|
-
rubygems_version: 3.
|
58
|
+
rubygems_version: 3.4.10
|
59
59
|
signing_key:
|
60
60
|
specification_version: 4
|
61
61
|
summary: High-performance time series algorithms for Ruby
|