spellkit 0.1.2 → 0.3.0

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.
Files changed (25) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +7 -3
  3. data/ext/spellkit/Cargo.toml +1 -1
  4. data/ext/spellkit/src/lib.rs +9 -8
  5. data/lib/spellkit/version.rb +1 -1
  6. data/lib/spellkit.rb +9 -2
  7. metadata +17 -24
  8. data/ext/spellkit/Cargo.lock +0 -345
  9. data/ext/spellkit/target/debug/build/clang-sys-051521a65ca8f402/out/common.rs +0 -355
  10. data/ext/spellkit/target/debug/build/clang-sys-051521a65ca8f402/out/dynamic.rs +0 -276
  11. data/ext/spellkit/target/debug/build/clang-sys-051521a65ca8f402/out/macros.rs +0 -49
  12. data/ext/spellkit/target/debug/build/rb-sys-4cf7db3819c4a6ed/out/bindings-0.9.117-mri-arm64-darwin24-3.3.0.rs +0 -8902
  13. data/ext/spellkit/target/debug/build/rb-sys-ead65721880de65e/out/bindings-0.9.117-mri-arm64-darwin24-3.3.0.rs +0 -8902
  14. data/ext/spellkit/target/debug/build/serde-b1b39c86cf577219/out/private.rs +0 -6
  15. data/ext/spellkit/target/debug/build/serde_core-7a7752261f0e4007/out/private.rs +0 -5
  16. data/ext/spellkit/target/debug/incremental/spellkit-07yduakb6espe/s-hbic3f250f-1cel1lt.lock +0 -0
  17. data/ext/spellkit/target/debug/incremental/spellkit-10n1yon0n2c8v/s-hbha7isu2i-02ly2uq.lock +0 -0
  18. data/ext/spellkit/target/debug/incremental/spellkit-1d3zzknqc98bj/s-hbic3f250l-011iykk.lock +0 -0
  19. data/ext/spellkit/target/debug/incremental/spellkit-1pt6om2w642b5/s-hbihepi6zy-1r3p88g.lock +0 -0
  20. data/ext/spellkit/target/debug/incremental/spellkit-2jusczkp089xp/s-hbhcyx6yob-0pqrnyt.lock +0 -0
  21. data/ext/spellkit/target/debug/incremental/spellkit-39nm03wp54lxw/s-hbhcyx6ynq-08lhwc0.lock +0 -0
  22. data/ext/spellkit/target/release/build/clang-sys-523e86284ef4dd76/out/common.rs +0 -355
  23. data/ext/spellkit/target/release/build/clang-sys-523e86284ef4dd76/out/dynamic.rs +0 -276
  24. data/ext/spellkit/target/release/build/clang-sys-523e86284ef4dd76/out/macros.rs +0 -49
  25. data/ext/spellkit/target/release/build/rb-sys-7d03ffe964952311/out/bindings-0.9.117-mri-arm64-darwin24-3.3.0.rs +0 -8902
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e36701637cedd91531b05d0b18680e57d26b9aae7e117d6a179f27d30a61e444
4
- data.tar.gz: 560114d91574153e6b618c509a705bbcd82969e4a437aee777fa2ee7f10babcc
3
+ metadata.gz: a16cdfa3277c6161351b4b9f2ba35720dd78487f7e7b49f6c3cebc6a6a4d2d4b
4
+ data.tar.gz: 71ec217bee6087915e2fa2fec3229ba4fa1ee8b354c437acf68ef5abcef19b0f
5
5
  SHA512:
6
- metadata.gz: 6cc82708564b26e943b4bc394ec41c13aa59c3ff7388027d113001cc8f8f8e83f219795b5547ab2ed318c9ab89733efbfbf3b937cdcf75d70a51836d5c2e4283
7
- data.tar.gz: a6903fb208c64dc53bd07ee2b183e4a5bfe552d038ee87129e6afe3f32b14197c0d6546139abeada777ff98db3ee2466c86dd158561bf8d9d8beedacc6b7b335
6
+ metadata.gz: 47903715b908a7d5e55837dc94edacf50f91399a74b2ec12174c22015657864624436cc59b5d9ec93de349d1dd17da45edda3f879a8622c320190568335d4f85
7
+ data.tar.gz: 0ef569d807b305ff9c3f1598e0c705ae72559aefd3efd644c90dc8f749db389d05861a698b39dd9ead5fe95652b5350e7519c25e7b17fc622422d91900cb43f9
data/README.md CHANGED
@@ -684,9 +684,13 @@ bundle exec rake build
684
684
  ## Platform Support
685
685
 
686
686
  Pre-built gems available for:
687
- - macOS (x86_64, arm64)
688
- - Linux (glibc, musl)
689
- - Ruby 3.1, 3.2, 3.3
687
+ - macOS (arm64)
688
+ - Linux (x86_64, aarch64)
689
+ - Ruby 3.1, 3.2, 3.3, 3.4, 4.0
690
+
691
+ A pre-built gem carries one compiled extension per Ruby ABI, so installing under a Ruby
692
+ outside that list falls back to building from source and needs a Rust toolchain (>= 1.85).
693
+ Ruby 4.0 support arrived in 0.3.0; earlier versions cannot compile against it at all.
690
694
 
691
695
  ## Contributing
692
696
 
@@ -11,7 +11,7 @@ name = "spellkit"
11
11
  crate-type = ["cdylib"]
12
12
 
13
13
  [dependencies]
14
- magnus = { version = "0.7", features = ["rb-sys"] }
14
+ magnus = { version = "0.8", features = ["rb-sys"] }
15
15
  hashbrown = "0.15"
16
16
  unicode-normalization = "0.1"
17
17
  regex = "1.11"
@@ -1,7 +1,7 @@
1
1
  mod symspell;
2
2
  mod guards;
3
3
 
4
- use magnus::{class, define_module, function, method, prelude::*, Error, RArray, RHash, Ruby, Value, TryConvert};
4
+ use magnus::{function, method, prelude::*, Error, RArray, RHash, Ruby, Value, TryConvert};
5
5
  use std::sync::{Arc, RwLock};
6
6
  use symspell::SymSpell;
7
7
  use guards::Guards;
@@ -264,10 +264,10 @@ impl Checker {
264
264
 
265
265
  if let Some(ref symspell) = state.symspell {
266
266
  let suggestions = symspell.suggestions(&word, max_suggestions);
267
- let result = RArray::new();
267
+ let result = ruby.ary_new();
268
268
 
269
269
  for suggestion in suggestions {
270
- let hash = RHash::new();
270
+ let hash = ruby.hash_new();
271
271
  hash.aset("term", suggestion.term)?;
272
272
  hash.aset("distance", suggestion.distance)?;
273
273
  hash.aset("freq", suggestion.frequency)?;
@@ -320,7 +320,7 @@ impl Checker {
320
320
  return Err(Error::new(ruby.exception_runtime_error(), "Dictionary not loaded. Call load! first"));
321
321
  }
322
322
 
323
- let result = RArray::new();
323
+ let result = ruby.ary_new();
324
324
 
325
325
  if let Some(ref symspell) = state.symspell {
326
326
  for token in tokens.into_iter() {
@@ -336,8 +336,9 @@ impl Checker {
336
336
  }
337
337
 
338
338
  fn stats(&self) -> Result<RHash, Error> {
339
+ let ruby = Ruby::get().unwrap();
339
340
  let state = self.state.read().unwrap();
340
- let stats = RHash::new();
341
+ let stats = ruby.hash_new();
341
342
 
342
343
  if !state.loaded {
343
344
  stats.aset("loaded", false)?;
@@ -376,9 +377,9 @@ impl Checker {
376
377
  }
377
378
 
378
379
  #[magnus::init]
379
- fn init(_ruby: &Ruby) -> Result<(), Error> {
380
- let module = define_module("SpellKit")?;
381
- let checker_class = module.define_class("Checker", class::object())?;
380
+ fn init(ruby: &Ruby) -> Result<(), Error> {
381
+ let module = ruby.define_module("SpellKit")?;
382
+ let checker_class = module.define_class("Checker", ruby.class_object())?;
382
383
 
383
384
  checker_class.define_singleton_method("new", function!(Checker::new, 0))?;
384
385
  checker_class.define_method("load!", method!(Checker::load_full, 1))?;
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SpellKit
4
- VERSION = "0.1.2"
4
+ VERSION = "0.3.0"
5
5
  end
data/lib/spellkit.rb CHANGED
@@ -4,10 +4,17 @@ require "net/http"
4
4
  require "openssl"
5
5
  require "fileutils"
6
6
 
7
+ # Load the compiled Rust extension. Precompiled (platform) gems install it into a
8
+ # Ruby-ABI-versioned subdir (lib/spellkit/<major.minor>/spellkit.{so,bundle}) so a
9
+ # single fat gem can carry a binary per Ruby version; source/dev builds place it flat
10
+ # at lib/spellkit/spellkit.{so,bundle}. Try the versioned path first, fall back to the
11
+ # flat one. Resolution goes through $LOAD_PATH (`require`, never `require_relative`)
12
+ # because RubyGems installs native extensions outside the gem's lib/ dir.
7
13
  begin
8
- require "spellkit/spellkit"
14
+ RUBY_VERSION =~ /(\d+\.\d+)/
15
+ require "spellkit/#{Regexp.last_match(1)}/spellkit"
9
16
  rescue LoadError
10
- require "spellkit.bundle"
17
+ require "spellkit/spellkit"
11
18
  end
12
19
 
13
20
  module SpellKit
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spellkit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Petersen
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2025-09-28 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: rb_sys
@@ -122,6 +121,20 @@ dependencies:
122
121
  - - ">="
123
122
  - !ruby/object:Gem::Version
124
123
  version: '0'
124
+ - !ruby/object:Gem::Dependency
125
+ name: benchmark
126
+ requirement: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - ">="
129
+ - !ruby/object:Gem::Version
130
+ version: '0'
131
+ type: :development
132
+ prerelease: false
133
+ version_requirements: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - ">="
136
+ - !ruby/object:Gem::Version
137
+ version: '0'
125
138
  - !ruby/object:Gem::Dependency
126
139
  name: benchmark-ips
127
140
  requirement: !ruby/object:Gem::Requirement
@@ -160,29 +173,11 @@ extensions:
160
173
  extra_rdoc_files: []
161
174
  files:
162
175
  - README.md
163
- - ext/spellkit/Cargo.lock
164
176
  - ext/spellkit/Cargo.toml
165
177
  - ext/spellkit/extconf.rb
166
178
  - ext/spellkit/src/guards.rs
167
179
  - ext/spellkit/src/lib.rs
168
180
  - ext/spellkit/src/symspell.rs
169
- - ext/spellkit/target/debug/build/clang-sys-051521a65ca8f402/out/common.rs
170
- - ext/spellkit/target/debug/build/clang-sys-051521a65ca8f402/out/dynamic.rs
171
- - ext/spellkit/target/debug/build/clang-sys-051521a65ca8f402/out/macros.rs
172
- - ext/spellkit/target/debug/build/rb-sys-4cf7db3819c4a6ed/out/bindings-0.9.117-mri-arm64-darwin24-3.3.0.rs
173
- - ext/spellkit/target/debug/build/rb-sys-ead65721880de65e/out/bindings-0.9.117-mri-arm64-darwin24-3.3.0.rs
174
- - ext/spellkit/target/debug/build/serde-b1b39c86cf577219/out/private.rs
175
- - ext/spellkit/target/debug/build/serde_core-7a7752261f0e4007/out/private.rs
176
- - ext/spellkit/target/debug/incremental/spellkit-07yduakb6espe/s-hbic3f250f-1cel1lt.lock
177
- - ext/spellkit/target/debug/incremental/spellkit-10n1yon0n2c8v/s-hbha7isu2i-02ly2uq.lock
178
- - ext/spellkit/target/debug/incremental/spellkit-1d3zzknqc98bj/s-hbic3f250l-011iykk.lock
179
- - ext/spellkit/target/debug/incremental/spellkit-1pt6om2w642b5/s-hbihepi6zy-1r3p88g.lock
180
- - ext/spellkit/target/debug/incremental/spellkit-2jusczkp089xp/s-hbhcyx6yob-0pqrnyt.lock
181
- - ext/spellkit/target/debug/incremental/spellkit-39nm03wp54lxw/s-hbhcyx6ynq-08lhwc0.lock
182
- - ext/spellkit/target/release/build/clang-sys-523e86284ef4dd76/out/common.rs
183
- - ext/spellkit/target/release/build/clang-sys-523e86284ef4dd76/out/dynamic.rs
184
- - ext/spellkit/target/release/build/clang-sys-523e86284ef4dd76/out/macros.rs
185
- - ext/spellkit/target/release/build/rb-sys-7d03ffe964952311/out/bindings-0.9.117-mri-arm64-darwin24-3.3.0.rs
186
181
  - lib/spellkit.rb
187
182
  - lib/spellkit/version.rb
188
183
  homepage: https://github.com/scientist-labs/spellkit
@@ -191,7 +186,6 @@ licenses:
191
186
  metadata:
192
187
  homepage_uri: https://github.com/scientist-labs/spellkit
193
188
  source_code_uri: https://github.com/scientist-labs/spellkit
194
- post_install_message:
195
189
  rdoc_options: []
196
190
  require_paths:
197
191
  - lib
@@ -207,8 +201,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
207
201
  version: '0'
208
202
  requirements:
209
203
  - Rust >= 1.85
210
- rubygems_version: 3.5.3
211
- signing_key:
204
+ rubygems_version: 3.6.9
212
205
  specification_version: 4
213
206
  summary: Fast, safe typo correction for search-term extraction
214
207
  test_files: []
@@ -1,345 +0,0 @@
1
- # This file is automatically @generated by Cargo.
2
- # It is not intended for manual editing.
3
- version = 4
4
-
5
- [[package]]
6
- name = "aho-corasick"
7
- version = "1.1.3"
8
- source = "registry+https://github.com/rust-lang/crates.io-index"
9
- checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
10
- dependencies = [
11
- "memchr",
12
- ]
13
-
14
- [[package]]
15
- name = "allocator-api2"
16
- version = "0.2.21"
17
- source = "registry+https://github.com/rust-lang/crates.io-index"
18
- checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923"
19
-
20
- [[package]]
21
- name = "bindgen"
22
- version = "0.69.5"
23
- source = "registry+https://github.com/rust-lang/crates.io-index"
24
- checksum = "271383c67ccabffb7381723dea0672a673f292304fcb45c01cc648c7a8d58088"
25
- dependencies = [
26
- "bitflags",
27
- "cexpr",
28
- "clang-sys",
29
- "itertools",
30
- "lazy_static",
31
- "lazycell",
32
- "proc-macro2",
33
- "quote",
34
- "regex",
35
- "rustc-hash",
36
- "shlex",
37
- "syn",
38
- ]
39
-
40
- [[package]]
41
- name = "bitflags"
42
- version = "2.9.4"
43
- source = "registry+https://github.com/rust-lang/crates.io-index"
44
- checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394"
45
-
46
- [[package]]
47
- name = "cexpr"
48
- version = "0.6.0"
49
- source = "registry+https://github.com/rust-lang/crates.io-index"
50
- checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
51
- dependencies = [
52
- "nom",
53
- ]
54
-
55
- [[package]]
56
- name = "cfg-if"
57
- version = "1.0.3"
58
- source = "registry+https://github.com/rust-lang/crates.io-index"
59
- checksum = "2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9"
60
-
61
- [[package]]
62
- name = "clang-sys"
63
- version = "1.8.1"
64
- source = "registry+https://github.com/rust-lang/crates.io-index"
65
- checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4"
66
- dependencies = [
67
- "glob",
68
- "libc",
69
- "libloading",
70
- ]
71
-
72
- [[package]]
73
- name = "either"
74
- version = "1.15.0"
75
- source = "registry+https://github.com/rust-lang/crates.io-index"
76
- checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719"
77
-
78
- [[package]]
79
- name = "equivalent"
80
- version = "1.0.2"
81
- source = "registry+https://github.com/rust-lang/crates.io-index"
82
- checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f"
83
-
84
- [[package]]
85
- name = "foldhash"
86
- version = "0.1.5"
87
- source = "registry+https://github.com/rust-lang/crates.io-index"
88
- checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2"
89
-
90
- [[package]]
91
- name = "glob"
92
- version = "0.3.3"
93
- source = "registry+https://github.com/rust-lang/crates.io-index"
94
- checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280"
95
-
96
- [[package]]
97
- name = "hashbrown"
98
- version = "0.15.5"
99
- source = "registry+https://github.com/rust-lang/crates.io-index"
100
- checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1"
101
- dependencies = [
102
- "allocator-api2",
103
- "equivalent",
104
- "foldhash",
105
- ]
106
-
107
- [[package]]
108
- name = "itertools"
109
- version = "0.12.1"
110
- source = "registry+https://github.com/rust-lang/crates.io-index"
111
- checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
112
- dependencies = [
113
- "either",
114
- ]
115
-
116
- [[package]]
117
- name = "lazy_static"
118
- version = "1.5.0"
119
- source = "registry+https://github.com/rust-lang/crates.io-index"
120
- checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
121
-
122
- [[package]]
123
- name = "lazycell"
124
- version = "1.3.0"
125
- source = "registry+https://github.com/rust-lang/crates.io-index"
126
- checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
127
-
128
- [[package]]
129
- name = "libc"
130
- version = "0.2.176"
131
- source = "registry+https://github.com/rust-lang/crates.io-index"
132
- checksum = "58f929b4d672ea937a23a1ab494143d968337a5f47e56d0815df1e0890ddf174"
133
-
134
- [[package]]
135
- name = "libloading"
136
- version = "0.8.9"
137
- source = "registry+https://github.com/rust-lang/crates.io-index"
138
- checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55"
139
- dependencies = [
140
- "cfg-if",
141
- "windows-link",
142
- ]
143
-
144
- [[package]]
145
- name = "magnus"
146
- version = "0.7.1"
147
- source = "registry+https://github.com/rust-lang/crates.io-index"
148
- checksum = "3d87ae53030f3a22e83879e666cb94e58a7bdf31706878a0ba48752994146dab"
149
- dependencies = [
150
- "magnus-macros",
151
- "rb-sys",
152
- "rb-sys-env",
153
- "seq-macro",
154
- ]
155
-
156
- [[package]]
157
- name = "magnus-macros"
158
- version = "0.6.0"
159
- source = "registry+https://github.com/rust-lang/crates.io-index"
160
- checksum = "5968c820e2960565f647819f5928a42d6e874551cab9d88d75e3e0660d7f71e3"
161
- dependencies = [
162
- "proc-macro2",
163
- "quote",
164
- "syn",
165
- ]
166
-
167
- [[package]]
168
- name = "memchr"
169
- version = "2.7.6"
170
- source = "registry+https://github.com/rust-lang/crates.io-index"
171
- checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273"
172
-
173
- [[package]]
174
- name = "minimal-lexical"
175
- version = "0.2.1"
176
- source = "registry+https://github.com/rust-lang/crates.io-index"
177
- checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
178
-
179
- [[package]]
180
- name = "nom"
181
- version = "7.1.3"
182
- source = "registry+https://github.com/rust-lang/crates.io-index"
183
- checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
184
- dependencies = [
185
- "memchr",
186
- "minimal-lexical",
187
- ]
188
-
189
- [[package]]
190
- name = "proc-macro2"
191
- version = "1.0.101"
192
- source = "registry+https://github.com/rust-lang/crates.io-index"
193
- checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de"
194
- dependencies = [
195
- "unicode-ident",
196
- ]
197
-
198
- [[package]]
199
- name = "quote"
200
- version = "1.0.40"
201
- source = "registry+https://github.com/rust-lang/crates.io-index"
202
- checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d"
203
- dependencies = [
204
- "proc-macro2",
205
- ]
206
-
207
- [[package]]
208
- name = "rb-sys"
209
- version = "0.9.117"
210
- source = "registry+https://github.com/rust-lang/crates.io-index"
211
- checksum = "f900d1ce4629a2ebffaf5de74bd8f9c1188d4c5ed406df02f97e22f77a006f44"
212
- dependencies = [
213
- "rb-sys-build",
214
- ]
215
-
216
- [[package]]
217
- name = "rb-sys-build"
218
- version = "0.9.117"
219
- source = "registry+https://github.com/rust-lang/crates.io-index"
220
- checksum = "ef1e9c857028f631056bcd6d88cec390c751e343ce2223ddb26d23eb4a151d59"
221
- dependencies = [
222
- "bindgen",
223
- "lazy_static",
224
- "proc-macro2",
225
- "quote",
226
- "regex",
227
- "shell-words",
228
- "syn",
229
- ]
230
-
231
- [[package]]
232
- name = "rb-sys-env"
233
- version = "0.1.2"
234
- source = "registry+https://github.com/rust-lang/crates.io-index"
235
- checksum = "a35802679f07360454b418a5d1735c89716bde01d35b1560fc953c1415a0b3bb"
236
-
237
- [[package]]
238
- name = "regex"
239
- version = "1.11.3"
240
- source = "registry+https://github.com/rust-lang/crates.io-index"
241
- checksum = "8b5288124840bee7b386bc413c487869b360b2b4ec421ea56425128692f2a82c"
242
- dependencies = [
243
- "aho-corasick",
244
- "memchr",
245
- "regex-automata",
246
- "regex-syntax",
247
- ]
248
-
249
- [[package]]
250
- name = "regex-automata"
251
- version = "0.4.11"
252
- source = "registry+https://github.com/rust-lang/crates.io-index"
253
- checksum = "833eb9ce86d40ef33cb1306d8accf7bc8ec2bfea4355cbdebb3df68b40925cad"
254
- dependencies = [
255
- "aho-corasick",
256
- "memchr",
257
- "regex-syntax",
258
- ]
259
-
260
- [[package]]
261
- name = "regex-syntax"
262
- version = "0.8.6"
263
- source = "registry+https://github.com/rust-lang/crates.io-index"
264
- checksum = "caf4aa5b0f434c91fe5c7f1ecb6a5ece2130b02ad2a590589dda5146df959001"
265
-
266
- [[package]]
267
- name = "rustc-hash"
268
- version = "1.1.0"
269
- source = "registry+https://github.com/rust-lang/crates.io-index"
270
- checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
271
-
272
- [[package]]
273
- name = "seq-macro"
274
- version = "0.3.6"
275
- source = "registry+https://github.com/rust-lang/crates.io-index"
276
- checksum = "1bc711410fbe7399f390ca1c3b60ad0f53f80e95c5eb935e52268a0e2cd49acc"
277
-
278
- [[package]]
279
- name = "shell-words"
280
- version = "1.1.0"
281
- source = "registry+https://github.com/rust-lang/crates.io-index"
282
- checksum = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde"
283
-
284
- [[package]]
285
- name = "shlex"
286
- version = "1.3.0"
287
- source = "registry+https://github.com/rust-lang/crates.io-index"
288
- checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
289
-
290
- [[package]]
291
- name = "spellkit"
292
- version = "0.1.0"
293
- dependencies = [
294
- "hashbrown",
295
- "magnus",
296
- "regex",
297
- "unicode-normalization",
298
- ]
299
-
300
- [[package]]
301
- name = "syn"
302
- version = "2.0.106"
303
- source = "registry+https://github.com/rust-lang/crates.io-index"
304
- checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6"
305
- dependencies = [
306
- "proc-macro2",
307
- "quote",
308
- "unicode-ident",
309
- ]
310
-
311
- [[package]]
312
- name = "tinyvec"
313
- version = "1.10.0"
314
- source = "registry+https://github.com/rust-lang/crates.io-index"
315
- checksum = "bfa5fdc3bce6191a1dbc8c02d5c8bffcf557bafa17c124c5264a458f1b0613fa"
316
- dependencies = [
317
- "tinyvec_macros",
318
- ]
319
-
320
- [[package]]
321
- name = "tinyvec_macros"
322
- version = "0.1.1"
323
- source = "registry+https://github.com/rust-lang/crates.io-index"
324
- checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
325
-
326
- [[package]]
327
- name = "unicode-ident"
328
- version = "1.0.19"
329
- source = "registry+https://github.com/rust-lang/crates.io-index"
330
- checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d"
331
-
332
- [[package]]
333
- name = "unicode-normalization"
334
- version = "0.1.24"
335
- source = "registry+https://github.com/rust-lang/crates.io-index"
336
- checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956"
337
- dependencies = [
338
- "tinyvec",
339
- ]
340
-
341
- [[package]]
342
- name = "windows-link"
343
- version = "0.2.0"
344
- source = "registry+https://github.com/rust-lang/crates.io-index"
345
- checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65"