liter_llm 1.7.4 → 1.7.5

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 209435fcaf1c310b1dc1b0f015dafc639848b7cb1723c205c062d2e2bf33c796
4
- data.tar.gz: 73288cb9341d6ee460bb7e1069508b73706a8dab0f1ac27b00a8be76aa688063
3
+ metadata.gz: c1f7d147b5f87f63dd7da114072999e577ec49688e392428dfb8d04c8404fc27
4
+ data.tar.gz: 65fd91d05836fbc9f0dc1e9a971abc0a14bdeab9a1ec3545d34cdf8262d74eb8
5
5
  SHA512:
6
- metadata.gz: 7427974fe40e6ba5f662e576a5ed297cd3fbf66d7cf23375a4d6f547ddf2c1b7aa5ec686b0ea9da3e99abad63c06b21ebb95f2111a25b890924f32a881ecace3
7
- data.tar.gz: 297736e14e830325818f164173964a8e8c76b7f9dd5699484f4f682117e2fd18646f3fcd5a308e19e7bacf198ddd3d52df3ca8d038512fd11a77f483627e3a57
6
+ metadata.gz: 4497322f21d5930d0c880c61d55ad4f56ac584e64077ae45578fdcd16d7d84631852d687736b63b3a526954664e16d981f58343aacbf95b31c6e821a1b8bdba2
7
+ data.tar.gz: 79f0aef8a1ce1aaa304631226f33ad6c86889946c2e4d1f9771c75a12ec48488ced1274508e1ac41a59dc25ad7508a31a5cf0941c2c39a4db3ced3a8875ca1e9
data/README.md CHANGED
@@ -12,8 +12,8 @@
12
12
  <a href="https://pypi.org/project/liter-llm/">
13
13
  <img src="https://img.shields.io/pypi/v/liter-llm?label=Python&color=007ec6" alt="Python" />
14
14
  </a>
15
- <a href="https://www.npmjs.com/package/@kreuzberg/liter-llm-node">
16
- <img src="https://img.shields.io/npm/v/@kreuzberg/liter-llm-node?label=Node.js&color=007ec6" alt="Node.js" />
15
+ <a href="https://www.npmjs.com/package/@kreuzberg/liter-llm">
16
+ <img src="https://img.shields.io/npm/v/@kreuzberg/liter-llm?label=Node.js&color=007ec6" alt="Node.js" />
17
17
  </a>
18
18
  <a href="https://www.npmjs.com/package/@kreuzberg/liter-llm-wasm">
19
19
  <img src="https://img.shields.io/npm/v/@kreuzberg/liter-llm-wasm?label=WASM&color=007ec6" alt="WASM" />
@@ -1875,9 +1875,9 @@ checksum = "92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0"
1875
1875
 
1876
1876
  [[package]]
1877
1877
  name = "liter-llm"
1878
- version = "1.7.4"
1878
+ version = "1.7.5"
1879
1879
  source = "registry+https://github.com/rust-lang/crates.io-index"
1880
- checksum = "189e319fa070debd09940024d6f54976c86552d631408761cac07675b5144414"
1880
+ checksum = "02fcb7fb3b9516e13ec8671d9483f79a098e797e17f2e6b91a7686cc099a02a9"
1881
1881
  dependencies = [
1882
1882
  "ahash 0.8.12",
1883
1883
  "async-trait",
@@ -1917,7 +1917,7 @@ dependencies = [
1917
1917
 
1918
1918
  [[package]]
1919
1919
  name = "liter-llm-rb"
1920
- version = "1.7.4"
1920
+ version = "1.7.5"
1921
1921
  dependencies = [
1922
1922
  "futures",
1923
1923
  "liter-llm",
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "liter-llm-rb"
3
- version = "1.7.4"
3
+ version = "1.7.5"
4
4
  edition = "2024"
5
5
  license = "MIT"
6
6
  description = "Universal LLM API client with Rust-powered polyglot bindings."
@@ -24,7 +24,7 @@ wasm-http = ["liter-llm/wasm-http"]
24
24
 
25
25
  [dependencies]
26
26
  futures = "0.3"
27
- liter-llm = { version = "1.7.4", features = ["native-http", "full"] }
27
+ liter-llm = { version = "1.7.5", features = ["native-http", "full"] }
28
28
  magnus = "0.8"
29
29
  rb-sys = ">=0.9, <0.9.128"
30
30
  serde = { version = "1", features = ["derive"] }
@@ -1,5 +1,5 @@
1
1
  // This file is auto-generated by alef. DO NOT EDIT.
2
- // alef:hash:718a9bb2066b4d98f177745b5c3db63c834a58163b5677360c01f624add6c233
2
+ // alef:hash:5f17ebe676822cfa77ea15c5d293e0cac18cf5c5fd2e4c3c2b8974a130abfd16
3
3
  // Re-generate with: alef generate
4
4
  #![allow(dead_code, unused_imports, unused_variables)]
5
5
  #![allow(
@@ -6493,6 +6493,7 @@ unsafe impl TryConvertOwned for DefaultClient {}
6493
6493
 
6494
6494
  impl DefaultClient {
6495
6495
  fn chat_async(&self, req: ChatCompletionRequest) -> Result<ChatCompletionResponse, Error> {
6496
+ let req_core: liter_llm::ChatCompletionRequest = req.into();
6496
6497
  let inner = self.inner.clone();
6497
6498
  let rt = tokio::runtime::Runtime::new().map_err(|e| {
6498
6499
  magnus::Error::new(
@@ -6500,7 +6501,7 @@ impl DefaultClient {
6500
6501
  e.to_string(),
6501
6502
  )
6502
6503
  })?;
6503
- let result = rt.block_on(async { inner.chat(req.into()).await }).map_err(|e| {
6504
+ let result = rt.block_on(async { inner.chat(req_core).await }).map_err(|e| {
6504
6505
  magnus::Error::new(
6505
6506
  unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
6506
6507
  e.to_string(),
@@ -6510,6 +6511,7 @@ impl DefaultClient {
6510
6511
  }
6511
6512
 
6512
6513
  fn embed_async(&self, req: EmbeddingRequest) -> Result<EmbeddingResponse, Error> {
6514
+ let req_core: liter_llm::EmbeddingRequest = req.into();
6513
6515
  let inner = self.inner.clone();
6514
6516
  let rt = tokio::runtime::Runtime::new().map_err(|e| {
6515
6517
  magnus::Error::new(
@@ -6517,7 +6519,7 @@ impl DefaultClient {
6517
6519
  e.to_string(),
6518
6520
  )
6519
6521
  })?;
6520
- let result = rt.block_on(async { inner.embed(req.into()).await }).map_err(|e| {
6522
+ let result = rt.block_on(async { inner.embed(req_core).await }).map_err(|e| {
6521
6523
  magnus::Error::new(
6522
6524
  unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
6523
6525
  e.to_string(),
@@ -6544,6 +6546,7 @@ impl DefaultClient {
6544
6546
  }
6545
6547
 
6546
6548
  fn image_generate_async(&self, req: CreateImageRequest) -> Result<ImagesResponse, Error> {
6549
+ let req_core: liter_llm::CreateImageRequest = req.into();
6547
6550
  let inner = self.inner.clone();
6548
6551
  let rt = tokio::runtime::Runtime::new().map_err(|e| {
6549
6552
  magnus::Error::new(
@@ -6552,7 +6555,7 @@ impl DefaultClient {
6552
6555
  )
6553
6556
  })?;
6554
6557
  let result = rt
6555
- .block_on(async { inner.image_generate(req.into()).await })
6558
+ .block_on(async { inner.image_generate(req_core).await })
6556
6559
  .map_err(|e| {
6557
6560
  magnus::Error::new(
6558
6561
  unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
@@ -6563,6 +6566,7 @@ impl DefaultClient {
6563
6566
  }
6564
6567
 
6565
6568
  fn speech_async(&self, req: CreateSpeechRequest) -> Result<Vec<u8>, Error> {
6569
+ let req_core: liter_llm::CreateSpeechRequest = req.into();
6566
6570
  let inner = self.inner.clone();
6567
6571
  let rt = tokio::runtime::Runtime::new().map_err(|e| {
6568
6572
  magnus::Error::new(
@@ -6570,7 +6574,7 @@ impl DefaultClient {
6570
6574
  e.to_string(),
6571
6575
  )
6572
6576
  })?;
6573
- let result = rt.block_on(async { inner.speech(req.into()).await }).map_err(|e| {
6577
+ let result = rt.block_on(async { inner.speech(req_core).await }).map_err(|e| {
6574
6578
  magnus::Error::new(
6575
6579
  unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
6576
6580
  e.to_string(),
@@ -6580,6 +6584,7 @@ impl DefaultClient {
6580
6584
  }
6581
6585
 
6582
6586
  fn transcribe_async(&self, req: CreateTranscriptionRequest) -> Result<TranscriptionResponse, Error> {
6587
+ let req_core: liter_llm::CreateTranscriptionRequest = req.into();
6583
6588
  let inner = self.inner.clone();
6584
6589
  let rt = tokio::runtime::Runtime::new().map_err(|e| {
6585
6590
  magnus::Error::new(
@@ -6587,7 +6592,7 @@ impl DefaultClient {
6587
6592
  e.to_string(),
6588
6593
  )
6589
6594
  })?;
6590
- let result = rt.block_on(async { inner.transcribe(req.into()).await }).map_err(|e| {
6595
+ let result = rt.block_on(async { inner.transcribe(req_core).await }).map_err(|e| {
6591
6596
  magnus::Error::new(
6592
6597
  unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
6593
6598
  e.to_string(),
@@ -6597,6 +6602,7 @@ impl DefaultClient {
6597
6602
  }
6598
6603
 
6599
6604
  fn moderate_async(&self, req: ModerationRequest) -> Result<ModerationResponse, Error> {
6605
+ let req_core: liter_llm::ModerationRequest = req.into();
6600
6606
  let inner = self.inner.clone();
6601
6607
  let rt = tokio::runtime::Runtime::new().map_err(|e| {
6602
6608
  magnus::Error::new(
@@ -6604,7 +6610,7 @@ impl DefaultClient {
6604
6610
  e.to_string(),
6605
6611
  )
6606
6612
  })?;
6607
- let result = rt.block_on(async { inner.moderate(req.into()).await }).map_err(|e| {
6613
+ let result = rt.block_on(async { inner.moderate(req_core).await }).map_err(|e| {
6608
6614
  magnus::Error::new(
6609
6615
  unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
6610
6616
  e.to_string(),
@@ -6614,6 +6620,7 @@ impl DefaultClient {
6614
6620
  }
6615
6621
 
6616
6622
  fn rerank_async(&self, req: RerankRequest) -> Result<RerankResponse, Error> {
6623
+ let req_core: liter_llm::RerankRequest = req.into();
6617
6624
  let inner = self.inner.clone();
6618
6625
  let rt = tokio::runtime::Runtime::new().map_err(|e| {
6619
6626
  magnus::Error::new(
@@ -6621,7 +6628,7 @@ impl DefaultClient {
6621
6628
  e.to_string(),
6622
6629
  )
6623
6630
  })?;
6624
- let result = rt.block_on(async { inner.rerank(req.into()).await }).map_err(|e| {
6631
+ let result = rt.block_on(async { inner.rerank(req_core).await }).map_err(|e| {
6625
6632
  magnus::Error::new(
6626
6633
  unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
6627
6634
  e.to_string(),
@@ -6631,6 +6638,7 @@ impl DefaultClient {
6631
6638
  }
6632
6639
 
6633
6640
  fn search_async(&self, req: SearchRequest) -> Result<SearchResponse, Error> {
6641
+ let req_core: liter_llm::SearchRequest = req.into();
6634
6642
  let inner = self.inner.clone();
6635
6643
  let rt = tokio::runtime::Runtime::new().map_err(|e| {
6636
6644
  magnus::Error::new(
@@ -6638,7 +6646,7 @@ impl DefaultClient {
6638
6646
  e.to_string(),
6639
6647
  )
6640
6648
  })?;
6641
- let result = rt.block_on(async { inner.search(req.into()).await }).map_err(|e| {
6649
+ let result = rt.block_on(async { inner.search(req_core).await }).map_err(|e| {
6642
6650
  magnus::Error::new(
6643
6651
  unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
6644
6652
  e.to_string(),
@@ -6648,6 +6656,7 @@ impl DefaultClient {
6648
6656
  }
6649
6657
 
6650
6658
  fn ocr_async(&self, req: OcrRequest) -> Result<OcrResponse, Error> {
6659
+ let req_core: liter_llm::OcrRequest = req.into();
6651
6660
  let inner = self.inner.clone();
6652
6661
  let rt = tokio::runtime::Runtime::new().map_err(|e| {
6653
6662
  magnus::Error::new(
@@ -6655,7 +6664,7 @@ impl DefaultClient {
6655
6664
  e.to_string(),
6656
6665
  )
6657
6666
  })?;
6658
- let result = rt.block_on(async { inner.ocr(req.into()).await }).map_err(|e| {
6667
+ let result = rt.block_on(async { inner.ocr(req_core).await }).map_err(|e| {
6659
6668
  magnus::Error::new(
6660
6669
  unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
6661
6670
  e.to_string(),
@@ -6665,6 +6674,7 @@ impl DefaultClient {
6665
6674
  }
6666
6675
 
6667
6676
  fn create_file_async(&self, req: CreateFileRequest) -> Result<FileObject, Error> {
6677
+ let req_core: liter_llm::CreateFileRequest = req.into();
6668
6678
  let inner = self.inner.clone();
6669
6679
  let rt = tokio::runtime::Runtime::new().map_err(|e| {
6670
6680
  magnus::Error::new(
@@ -6672,14 +6682,12 @@ impl DefaultClient {
6672
6682
  e.to_string(),
6673
6683
  )
6674
6684
  })?;
6675
- let result = rt
6676
- .block_on(async { inner.create_file(req.into()).await })
6677
- .map_err(|e| {
6678
- magnus::Error::new(
6679
- unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
6680
- e.to_string(),
6681
- )
6682
- })?;
6685
+ let result = rt.block_on(async { inner.create_file(req_core).await }).map_err(|e| {
6686
+ magnus::Error::new(
6687
+ unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
6688
+ e.to_string(),
6689
+ )
6690
+ })?;
6683
6691
  Ok(result.into())
6684
6692
  }
6685
6693
 
@@ -6720,6 +6728,7 @@ impl DefaultClient {
6720
6728
  }
6721
6729
 
6722
6730
  fn list_files_async(&self, query: Option<FileListQuery>) -> Result<FileListResponse, Error> {
6731
+ let query_core: Option<liter_llm::FileListQuery> = query.map(Into::into);
6723
6732
  let inner = self.inner.clone();
6724
6733
  let rt = tokio::runtime::Runtime::new().map_err(|e| {
6725
6734
  magnus::Error::new(
@@ -6727,14 +6736,12 @@ impl DefaultClient {
6727
6736
  e.to_string(),
6728
6737
  )
6729
6738
  })?;
6730
- let result = rt
6731
- .block_on(async { inner.list_files(query.map(Into::into)).await })
6732
- .map_err(|e| {
6733
- magnus::Error::new(
6734
- unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
6735
- e.to_string(),
6736
- )
6737
- })?;
6739
+ let result = rt.block_on(async { inner.list_files(query_core).await }).map_err(|e| {
6740
+ magnus::Error::new(
6741
+ unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
6742
+ e.to_string(),
6743
+ )
6744
+ })?;
6738
6745
  Ok(result.into())
6739
6746
  }
6740
6747
 
@@ -6756,6 +6763,7 @@ impl DefaultClient {
6756
6763
  }
6757
6764
 
6758
6765
  fn create_batch_async(&self, req: CreateBatchRequest) -> Result<BatchObject, Error> {
6766
+ let req_core: liter_llm::CreateBatchRequest = req.into();
6759
6767
  let inner = self.inner.clone();
6760
6768
  let rt = tokio::runtime::Runtime::new().map_err(|e| {
6761
6769
  magnus::Error::new(
@@ -6763,14 +6771,12 @@ impl DefaultClient {
6763
6771
  e.to_string(),
6764
6772
  )
6765
6773
  })?;
6766
- let result = rt
6767
- .block_on(async { inner.create_batch(req.into()).await })
6768
- .map_err(|e| {
6769
- magnus::Error::new(
6770
- unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
6771
- e.to_string(),
6772
- )
6773
- })?;
6774
+ let result = rt.block_on(async { inner.create_batch(req_core).await }).map_err(|e| {
6775
+ magnus::Error::new(
6776
+ unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
6777
+ e.to_string(),
6778
+ )
6779
+ })?;
6774
6780
  Ok(result.into())
6775
6781
  }
6776
6782
 
@@ -6794,6 +6800,7 @@ impl DefaultClient {
6794
6800
  }
6795
6801
 
6796
6802
  fn list_batches_async(&self, query: Option<BatchListQuery>) -> Result<BatchListResponse, Error> {
6803
+ let query_core: Option<liter_llm::BatchListQuery> = query.map(Into::into);
6797
6804
  let inner = self.inner.clone();
6798
6805
  let rt = tokio::runtime::Runtime::new().map_err(|e| {
6799
6806
  magnus::Error::new(
@@ -6802,7 +6809,7 @@ impl DefaultClient {
6802
6809
  )
6803
6810
  })?;
6804
6811
  let result = rt
6805
- .block_on(async { inner.list_batches(query.map(Into::into)).await })
6812
+ .block_on(async { inner.list_batches(query_core).await })
6806
6813
  .map_err(|e| {
6807
6814
  magnus::Error::new(
6808
6815
  unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
@@ -6851,6 +6858,7 @@ impl DefaultClient {
6851
6858
  }
6852
6859
 
6853
6860
  fn wait_for_batch_async(&self, batch_id: String, config: WaitForBatchConfig) -> Result<BatchObject, Error> {
6861
+ let config_core: liter_llm::WaitForBatchConfig = config.into();
6854
6862
  let inner = self.inner.clone();
6855
6863
  let rt = tokio::runtime::Runtime::new().map_err(|e| {
6856
6864
  magnus::Error::new(
@@ -6859,7 +6867,7 @@ impl DefaultClient {
6859
6867
  )
6860
6868
  })?;
6861
6869
  let result = rt
6862
- .block_on(async { inner.wait_for_batch(&batch_id, config.into()).await })
6870
+ .block_on(async { inner.wait_for_batch(&batch_id, config_core).await })
6863
6871
  .map_err(|e| {
6864
6872
  magnus::Error::new(
6865
6873
  unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
@@ -6870,6 +6878,7 @@ impl DefaultClient {
6870
6878
  }
6871
6879
 
6872
6880
  fn create_response_async(&self, req: CreateResponseRequest) -> Result<ResponseObject, Error> {
6881
+ let req_core: liter_llm::CreateResponseRequest = req.into();
6873
6882
  let inner = self.inner.clone();
6874
6883
  let rt = tokio::runtime::Runtime::new().map_err(|e| {
6875
6884
  magnus::Error::new(
@@ -6878,7 +6887,7 @@ impl DefaultClient {
6878
6887
  )
6879
6888
  })?;
6880
6889
  let result = rt
6881
- .block_on(async { inner.create_response(req.into()).await })
6890
+ .block_on(async { inner.create_response(req_core).await })
6882
6891
  .map_err(|e| {
6883
6892
  magnus::Error::new(
6884
6893
  unsafe { Ruby::get_unchecked() }.exception_runtime_error(),
@@ -9188,12 +9197,10 @@ fn check_bound(context: String, current_len: usize, incoming: usize, limit: usiz
9188
9197
  Ok(result)
9189
9198
  }
9190
9199
 
9191
- #[cfg(all(feature = "native-http", not(target_os = "windows")))]
9192
- fn ensure_crypto_provider() -> () {
9193
- liter_llm::ensure_crypto_provider()
9194
- }
9195
-
9196
- #[cfg(all(feature = "native-http", target_os = "windows"))]
9200
+ #[cfg(any(
9201
+ all(feature = "native-http", not(target_os = "windows")),
9202
+ all(feature = "native-http", target_os = "windows")
9203
+ ))]
9197
9204
  fn ensure_crypto_provider() -> () {
9198
9205
  liter_llm::ensure_crypto_provider()
9199
9206
  }
@@ -12853,8 +12860,6 @@ fn ruby_init(ruby: &Ruby) -> Result<(), Error> {
12853
12860
 
12854
12861
  module.define_module_function("ensure_crypto_provider", function!(ensure_crypto_provider, 0))?;
12855
12862
 
12856
- module.define_module_function("ensure_crypto_provider", function!(ensure_crypto_provider, 0))?;
12857
-
12858
12863
  module.define_module_function("chat_stream", function!(chat_stream, 2))?;
12859
12864
 
12860
12865
  let liter_llm_error_info_class = module.define_class("LiterLlmErrorInfo", ruby.class_object())?;
@@ -1,5 +1,5 @@
1
1
  # This file is auto-generated by alef — DO NOT EDIT.
2
- # alef:hash:718a9bb2066b4d98f177745b5c3db63c834a58163b5677360c01f624add6c233
2
+ # alef:hash:5f17ebe676822cfa77ea15c5d293e0cac18cf5c5fd2e4c3c2b8974a130abfd16
3
3
  # To regenerate: alef generate
4
4
  # To verify freshness: alef verify --exit-code
5
5
  # frozen_string_literal: true
@@ -1,10 +1,10 @@
1
1
  # This file is auto-generated by alef — DO NOT EDIT.
2
- # alef:hash:718a9bb2066b4d98f177745b5c3db63c834a58163b5677360c01f624add6c233
2
+ # alef:hash:5f17ebe676822cfa77ea15c5d293e0cac18cf5c5fd2e4c3c2b8974a130abfd16
3
3
  # To regenerate: alef generate
4
4
  # To verify freshness: alef verify --exit-code
5
5
  # frozen_string_literal: true
6
6
 
7
7
  module LiterLlm
8
8
  ## The version string for this package.
9
- VERSION = "1.7.4"
9
+ VERSION = "1.7.5"
10
10
  end
data/lib/liter_llm.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # This file is auto-generated by alef — DO NOT EDIT.
2
- # alef:hash:718a9bb2066b4d98f177745b5c3db63c834a58163b5677360c01f624add6c233
2
+ # alef:hash:5f17ebe676822cfa77ea15c5d293e0cac18cf5c5fd2e4c3c2b8974a130abfd16
3
3
  # To regenerate: alef generate
4
4
  # To verify freshness: alef verify --exit-code
5
5
  # frozen_string_literal: true
data/sig/types.rbs CHANGED
@@ -1,5 +1,5 @@
1
1
  # This file is auto-generated by alef — DO NOT EDIT.
2
- # alef:hash:718a9bb2066b4d98f177745b5c3db63c834a58163b5677360c01f624add6c233
2
+ # alef:hash:5f17ebe676822cfa77ea15c5d293e0cac18cf5c5fd2e4c3c2b8974a130abfd16
3
3
  # To regenerate: alef generate
4
4
  # To verify freshness: alef verify --exit-code
5
5
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: liter_llm
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.4
4
+ version: 1.7.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Na'aman Hirschfeld
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-06-19 00:00:00.000000000 Z
11
+ date: 2026-06-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rb_sys