changed checksum.exs
 
@@ -1,22 +1,22 @@
1
1
%{
2
- "hnswlib-nif-2.16-aarch64-apple-darwin-0.1.3.tar.gz" => "sha256:ccd3df0b77c365c59aa228af2f248244ee0850969c44974ab01b430b58b261f4",
3
- "hnswlib-nif-2.16-aarch64-linux-gnu-0.1.3.tar.gz" => "sha256:ecf4994fb6c1b2caac206bb4fef9471b69db25e82bb559a79044599a4777f1e4",
4
- "hnswlib-nif-2.16-armv7l-linux-gnueabihf-0.1.3.tar.gz" => "sha256:4ce94634ddbb63c5014b73e3024f7ccb18358ee667ec1c139be2c1560b0eaec1",
5
- "hnswlib-nif-2.16-i686-linux-gnu-0.1.3.tar.gz" => "sha256:ea5160f843e110b53a617c41c3520206a9c81a8261d7ce09e25dea7edb885a4e",
6
- "hnswlib-nif-2.16-powerpc64le-linux-gnu-0.1.3.tar.gz" => "sha256:b4836789ba9a61e8de2e1686cbd8ec72a4a07480febfd5b7dea31c5ff7740a5a",
7
- "hnswlib-nif-2.16-riscv64-linux-gnu-0.1.3.tar.gz" => "sha256:e74c166857c71b24d62ade08267a9602adc001d3218cce16e057da0a25dcc2c5",
8
- "hnswlib-nif-2.16-s390x-linux-gnu-0.1.3.tar.gz" => "sha256:4c202ffe2a81d179492f8a6edbc45d826dca3cfefbe08da2ee4764cb4ce24166",
9
- "hnswlib-nif-2.16-x86_64-apple-darwin-0.1.3.tar.gz" => "sha256:7e8e7024a23217a5d538ffcd4e32596e9ac716e2fd666ad3df816b2a299b7154",
10
- "hnswlib-nif-2.16-x86_64-linux-gnu-0.1.3.tar.gz" => "sha256:022f25598084f27f3a7f31abfaa33a070b575172418ef97c018d00653d7f0201",
11
- "hnswlib-nif-2.16-x86_64-windows-msvc-0.1.3.tar.gz" => "sha256:d049207154f52014897156b9d203c68840dfe9e1c1e7c5db475bbd8b9fadcc6e",
12
- "hnswlib-nif-2.17-aarch64-apple-darwin-0.1.3.tar.gz" => "sha256:18a6cc084913a9f3764c884d1bab36776c5f6cfd045599519e9179d5b0cc41d5",
13
- "hnswlib-nif-2.17-aarch64-linux-gnu-0.1.3.tar.gz" => "sha256:95aee9f6f5bef49562a91a39381d1c6feb361a1ba3f15ed9b3ce8bfee7f13c41",
14
- "hnswlib-nif-2.17-armv7l-linux-gnueabihf-0.1.3.tar.gz" => "sha256:37530a9d4aa66dbbd55c78acfc0aa4ba6755c4a059eba9a44a76f281c2ce13a7",
15
- "hnswlib-nif-2.17-i686-linux-gnu-0.1.3.tar.gz" => "sha256:f6a4d2acd1facbccfd9b12234be26da2293228bed3331996c506a3aa3ba4efbf",
16
- "hnswlib-nif-2.17-powerpc64le-linux-gnu-0.1.3.tar.gz" => "sha256:c32e463bf73cd22f493ca63366da5a9a611d6cc169cc7a8f578ae8feb2231494",
17
- "hnswlib-nif-2.17-riscv64-linux-gnu-0.1.3.tar.gz" => "sha256:9831d07afeea2bd8b4f00b64c00b1139c7a6840e1736c332ff1f4d835465502d",
18
- "hnswlib-nif-2.17-s390x-linux-gnu-0.1.3.tar.gz" => "sha256:65435f54040e91d2da9b39bc1b38e7c9b32af07835731b6e6c1404574114c4d5",
19
- "hnswlib-nif-2.17-x86_64-apple-darwin-0.1.3.tar.gz" => "sha256:3a4f40142020ab0d118efb0b5f861a92f2065e36e488af1e4b9c97d14c313cf9",
20
- "hnswlib-nif-2.17-x86_64-linux-gnu-0.1.3.tar.gz" => "sha256:cf15209c7b616308f45b18bd579b4f9d9f9ddcff1e924fb9bbd9b5ecc0adbf1c",
21
- "hnswlib-nif-2.17-x86_64-windows-msvc-0.1.3.tar.gz" => "sha256:5635759d614bd4ca99861308fbe17683b212fd06f6c135ccea2f4a4a5673e475",
2
+ "hnswlib-nif-2.16-aarch64-apple-darwin-0.1.4.tar.gz" => "sha256:1bc96da6596efbcbda744e696cdc509d86bb380409f4c2c4a3bfd78671a6560e",
3
+ "hnswlib-nif-2.16-aarch64-linux-gnu-0.1.4.tar.gz" => "sha256:8e0540fdb0488251e05cd6daae57279ce5e2a6d86f0b20b693a64fd76c656a7a",
4
+ "hnswlib-nif-2.16-armv7l-linux-gnueabihf-0.1.4.tar.gz" => "sha256:17f7e92f080b6b10c7c77a48334046d83b6edba34aa0a1c8b879ed4d9076097e",
5
+ "hnswlib-nif-2.16-i686-linux-gnu-0.1.4.tar.gz" => "sha256:df7b5f58b727c1917ee7b280997b4e4b957573aa998c7c11e6158dd2cace4d98",
6
+ "hnswlib-nif-2.16-powerpc64le-linux-gnu-0.1.4.tar.gz" => "sha256:98aa4c49c5bc3f69899dc33e84719860637ebc2bc7f40f68f3970e67fbdb6d7f",
7
+ "hnswlib-nif-2.16-riscv64-linux-gnu-0.1.4.tar.gz" => "sha256:4744c5754d3107a76776f1442de0c8afa1c2aa04a6cdec4652ee60a72ad2bbc7",
8
+ "hnswlib-nif-2.16-s390x-linux-gnu-0.1.4.tar.gz" => "sha256:b7eb2bc29c02dcc114cc555efd4408ba29974462864a0cf806d64cc9007360a8",
9
+ "hnswlib-nif-2.16-x86_64-apple-darwin-0.1.4.tar.gz" => "sha256:1b465a2ed2742dcdbd069df450089a3d0b7106d8f172d64ab1c55a714a39b7a8",
10
+ "hnswlib-nif-2.16-x86_64-linux-gnu-0.1.4.tar.gz" => "sha256:270383fd0f409104f79c2867ffbb67857ad0ed9735addc201e06eb29c400d0f9",
11
+ "hnswlib-nif-2.16-x86_64-windows-msvc-0.1.4.tar.gz" => "sha256:86944ef864f265b8366c42179d02eb4cc6a2c16005c13ab595b1286f77ecd2ca",
12
+ "hnswlib-nif-2.17-aarch64-apple-darwin-0.1.4.tar.gz" => "sha256:f23efa8115f2fe18eb02b579c6baf797779ef89141ceb486a1e297c819b38085",
13
+ "hnswlib-nif-2.17-aarch64-linux-gnu-0.1.4.tar.gz" => "sha256:f50f1a4b76bde421c08ea9e3d5f4236dcdfa7d941233e449f2eb82e0b247add8",
14
+ "hnswlib-nif-2.17-armv7l-linux-gnueabihf-0.1.4.tar.gz" => "sha256:6793e45ee9b69659351428df032d92c3225ca55c24a46853f5ebd3f36355051a",
15
+ "hnswlib-nif-2.17-i686-linux-gnu-0.1.4.tar.gz" => "sha256:223d2145c48329ce08bfbe3c7fb6cef54ddc846f58801ca843182dd9fe8a8f73",
16
+ "hnswlib-nif-2.17-powerpc64le-linux-gnu-0.1.4.tar.gz" => "sha256:0962d98f2ad2f85b6b307a0153dfdd868c39ee58a70e8778d1135dcc53c2a906",
17
+ "hnswlib-nif-2.17-riscv64-linux-gnu-0.1.4.tar.gz" => "sha256:c94982e0dd347dd80df240a7fe52b8022dfd776c40f6ac7f4f1967bd0b9724f9",
18
+ "hnswlib-nif-2.17-s390x-linux-gnu-0.1.4.tar.gz" => "sha256:fd536a74d4f58ab5fab59f75415e44732b7a7ec5f075fbab6f49346d902b1107",
19
+ "hnswlib-nif-2.17-x86_64-apple-darwin-0.1.4.tar.gz" => "sha256:1cc1f1b941e12e499e97deb46eee2f3e38751ddf7af2b769f84dfe12e71d2bcb",
20
+ "hnswlib-nif-2.17-x86_64-linux-gnu-0.1.4.tar.gz" => "sha256:d3b2f6e9a07c12826be0827a2e0a63a925625d404787cdd50b1454fa8ba87de1",
21
+ "hnswlib-nif-2.17-x86_64-windows-msvc-0.1.4.tar.gz" => "sha256:df5e943ed08bd51be852180bea922ce5edd214504faddf0a66c055c08b8274db",
22
22
}
changed hex_metadata.config
 
@@ -1,6 +1,6 @@
1
1
{<<"links">>,[{<<"GitHub">>,<<"https://github.com/elixir-nx/hnswlib">>}]}.
2
2
{<<"name">>,<<"hnswlib">>}.
3
- {<<"version">>,<<"0.1.3">>}.
3
+ {<<"version">>,<<"0.1.4">>}.
4
4
{<<"description">>,<<"Elixir binding for the hnswlib library">>}.
5
5
{<<"elixir">>,<<"~> 1.12">>}.
6
6
{<<"app">>,<<"hnswlib">>}.
changed lib/hnswlib_index.ex
 
@@ -24,7 +24,7 @@ defmodule HNSWLib.Index do
24
24
25
25
Number of dimensions for each vector.
26
26
27
- - *max_elements*: `non_neg_integer()`.
27
+ - *max_elements*: `pos_integer()`.
28
28
29
29
Number of maximum elements.
30
30
 
@@ -42,7 +42,7 @@ defmodule HNSWLib.Index do
42
42
- *random_seed*: `non_neg_integer()`.
43
43
- *allow_replace_deleted*: `boolean()`.
44
44
"""
45
- @spec new(:cosine | :ip | :l2, non_neg_integer(), non_neg_integer(), [
45
+ @spec new(:cosine | :ip | :l2, non_neg_integer(), pos_integer(), [
46
46
{:m, non_neg_integer()},
47
47
{:ef_construction, non_neg_integer()},
48
48
{:random_seed, non_neg_integer()},
 
@@ -50,7 +50,7 @@ defmodule HNSWLib.Index do
50
50
]) :: {:ok, %T{}} | {:error, String.t()}
51
51
def new(space, dim, max_elements, opts \\ [])
52
52
when (space == :l2 or space == :ip or space == :cosine) and is_integer(dim) and dim >= 0 and
53
- is_integer(max_elements) and max_elements >= 0 do
53
+ is_integer(max_elements) and max_elements > 0 do
54
54
m = Helper.get_keyword!(opts, :m, :non_neg_integer, 16)
55
55
ef_construction = Helper.get_keyword!(opts, :ef_construction, :non_neg_integer, 200)
56
56
random_seed = Helper.get_keyword!(opts, :random_seed, :non_neg_integer, 100)
changed mix.exs
 
@@ -1,7 +1,7 @@
1
1
defmodule HNSWLib.MixProject do
2
2
use Mix.Project
3
3
4
- @version "0.1.3"
4
+ @version "0.1.4"
5
5
@github_url "https://github.com/elixir-nx/hnswlib"
6
6
7
7
def project do