turbopuffer 1.2.0 → 1.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f74c1ea6246584d6e391d41a0a1389cf2258bd6d47a36db1f93ed0b1722efb24
4
- data.tar.gz: 754d17967417cd4767bd94563c99bb6b6eea2625d2d1ba440d49dd9ca19ee7c1
3
+ metadata.gz: a44d9957aa604246bc7493029cce8afe362db53c55f1f81d95eb69b39c5ff7ac
4
+ data.tar.gz: 7a948b08d3604d1e2be35ad9cf1311d17bbad416836fa28678e6e8b4710b817b
5
5
  SHA512:
6
- metadata.gz: 91baba24abe1f1a02347206aea162b5ac024f5cc82a7fc37282e7d074258e0c4eaeeff1d8929597c5a1c2a6078dcfd24343fdb22a8df9d22bd3dcde418f790d8
7
- data.tar.gz: 8a30736b4f51cf69ad85ec23736d08138025f198dc5d97b73e4f7baeb75625ca02701a38029af28294421fff747d18b1cad5f78262d69a75ab92833aca818a97
6
+ metadata.gz: 0cfc63859cdd9ac68a24317c05adffdbd914c3cb9123e93a33630b717f67396d693034c81bea328edf595aef47e0189aa78cf1389702c5685027a5c04bbc96bf
7
+ data.tar.gz: c7f529a49e1866494cd4660505864ce6d0aeb075416643c32642377ca560986c9f1f30abab1cb2565e406fed7f4e9462f23a6a2dd453898ecc7af1e1ba8161f0
data/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.3.0 (2025-09-19)
4
+
5
+ Full Changelog: [v1.2.0...v1.3.0](https://github.com/turbopuffer/turbopuffer-ruby/compare/v1.2.0...v1.3.0)
6
+
7
+ ### Features
8
+
9
+ * add WithParams variant to BM25 and ContainsAllTokens ([77c2acc](https://github.com/turbopuffer/turbopuffer-ruby/commit/77c2accb00d21ffa454dddd3e381c99082358098))
10
+
11
+
12
+ ### Chores
13
+
14
+ * do not install brew dependencies in ./scripts/bootstrap by default ([923bcb0](https://github.com/turbopuffer/turbopuffer-ruby/commit/923bcb05ff927173b23edc446b075f456df4b332))
15
+
3
16
  ## 1.2.0 (2025-09-17)
4
17
 
5
18
  Full Changelog: [v1.1.0...v1.2.0](https://github.com/turbopuffer/turbopuffer-ruby/compare/v1.1.0...v1.2.0)
data/README.md CHANGED
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
17
17
  <!-- x-release-please-start-version -->
18
18
 
19
19
  ```ruby
20
- gem "turbopuffer", "~> 1.2.0"
20
+ gem "turbopuffer", "~> 1.3.0"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Turbopuffer
4
+ module Models
5
+ class Bm25ClauseParams < Turbopuffer::Internal::Type::BaseModel
6
+ # @!attribute last_as_prefix
7
+ # Whether to treat the last token in the query input as a literal prefix.
8
+ #
9
+ # @return [Boolean, nil]
10
+ optional :last_as_prefix, Turbopuffer::Internal::Type::Boolean
11
+
12
+ # @!method initialize(last_as_prefix: nil)
13
+ # Additional (optional) parameters for a single BM25 query clause.
14
+ #
15
+ # @param last_as_prefix [Boolean] Whether to treat the last token in the query input as a literal prefix.
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Turbopuffer
4
+ module Models
5
+ class ContainsAllTokensFilterParams < Turbopuffer::Internal::Type::BaseModel
6
+ # @!attribute last_as_prefix
7
+ # Whether to treat the last token in the query input as a literal prefix.
8
+ #
9
+ # @return [Boolean, nil]
10
+ optional :last_as_prefix, Turbopuffer::Internal::Type::Boolean
11
+
12
+ # @!method initialize(last_as_prefix: nil)
13
+ # Additional (optional) parameters for the ContainsAllTokens filter.
14
+ #
15
+ # @param last_as_prefix [Boolean] Whether to treat the last token in the query input as a literal prefix.
16
+ end
17
+ end
18
+ end
@@ -48,10 +48,14 @@ module Turbopuffer
48
48
 
49
49
  AttributeType = Turbopuffer::Models::AttributeType
50
50
 
51
+ Bm25ClauseParams = Turbopuffer::Models::Bm25ClauseParams
52
+
51
53
  ClientNamespacesParams = Turbopuffer::Models::ClientNamespacesParams
52
54
 
53
55
  Columns = Turbopuffer::Models::Columns
54
56
 
57
+ ContainsAllTokensFilterParams = Turbopuffer::Models::ContainsAllTokensFilterParams
58
+
55
59
  DistanceMetric = Turbopuffer::Models::DistanceMetric
56
60
 
57
61
  FullTextSearch = Turbopuffer::Models::FullTextSearch
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Turbopuffer
4
- VERSION = "1.2.0"
4
+ VERSION = "1.3.0"
5
5
  end
data/lib/turbopuffer.rb CHANGED
@@ -55,8 +55,10 @@ require_relative "turbopuffer/models/aggregation_group"
55
55
  require_relative "turbopuffer/models/attribute_schema"
56
56
  require_relative "turbopuffer/models/attribute_schema_config"
57
57
  require_relative "turbopuffer/models/attribute_type"
58
+ require_relative "turbopuffer/models/bm25_clause_params"
58
59
  require_relative "turbopuffer/models/client_namespaces_params"
59
60
  require_relative "turbopuffer/models/columns"
61
+ require_relative "turbopuffer/models/contains_all_tokens_filter_params"
60
62
  require_relative "turbopuffer/models/distance_metric"
61
63
  require_relative "turbopuffer/models/full_text_search"
62
64
  require_relative "turbopuffer/models/full_text_search_config"
@@ -0,0 +1,31 @@
1
+ # typed: strong
2
+
3
+ module Turbopuffer
4
+ module Models
5
+ class Bm25ClauseParams < Turbopuffer::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Turbopuffer::Bm25ClauseParams, Turbopuffer::Internal::AnyHash)
9
+ end
10
+
11
+ # Whether to treat the last token in the query input as a literal prefix.
12
+ sig { returns(T.nilable(T::Boolean)) }
13
+ attr_reader :last_as_prefix
14
+
15
+ sig { params(last_as_prefix: T::Boolean).void }
16
+ attr_writer :last_as_prefix
17
+
18
+ # Additional (optional) parameters for a single BM25 query clause.
19
+ sig { params(last_as_prefix: T::Boolean).returns(T.attached_class) }
20
+ def self.new(
21
+ # Whether to treat the last token in the query input as a literal prefix.
22
+ last_as_prefix: nil
23
+ )
24
+ end
25
+
26
+ sig { override.returns({ last_as_prefix: T::Boolean }) }
27
+ def to_hash
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,34 @@
1
+ # typed: strong
2
+
3
+ module Turbopuffer
4
+ module Models
5
+ class ContainsAllTokensFilterParams < Turbopuffer::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Turbopuffer::ContainsAllTokensFilterParams,
10
+ Turbopuffer::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Whether to treat the last token in the query input as a literal prefix.
15
+ sig { returns(T.nilable(T::Boolean)) }
16
+ attr_reader :last_as_prefix
17
+
18
+ sig { params(last_as_prefix: T::Boolean).void }
19
+ attr_writer :last_as_prefix
20
+
21
+ # Additional (optional) parameters for the ContainsAllTokens filter.
22
+ sig { params(last_as_prefix: T::Boolean).returns(T.attached_class) }
23
+ def self.new(
24
+ # Whether to treat the last token in the query input as a literal prefix.
25
+ last_as_prefix: nil
26
+ )
27
+ end
28
+
29
+ sig { override.returns({ last_as_prefix: T::Boolean }) }
30
+ def to_hash
31
+ end
32
+ end
33
+ end
34
+ end
@@ -13,10 +13,15 @@ module Turbopuffer
13
13
 
14
14
  AttributeType = Turbopuffer::Models::AttributeType
15
15
 
16
+ Bm25ClauseParams = Turbopuffer::Models::Bm25ClauseParams
17
+
16
18
  ClientNamespacesParams = Turbopuffer::Models::ClientNamespacesParams
17
19
 
18
20
  Columns = Turbopuffer::Models::Columns
19
21
 
22
+ ContainsAllTokensFilterParams =
23
+ Turbopuffer::Models::ContainsAllTokensFilterParams
24
+
20
25
  DistanceMetric = Turbopuffer::Models::DistanceMetric
21
26
 
22
27
  FullTextSearch = Turbopuffer::Models::FullTextSearch
@@ -0,0 +1,15 @@
1
+ module Turbopuffer
2
+ module Models
3
+ type bm25_clause_params = { last_as_prefix: bool }
4
+
5
+ class Bm25ClauseParams < Turbopuffer::Internal::Type::BaseModel
6
+ attr_reader last_as_prefix: bool?
7
+
8
+ def last_as_prefix=: (bool) -> bool
9
+
10
+ def initialize: (?last_as_prefix: bool) -> void
11
+
12
+ def to_hash: -> { last_as_prefix: bool }
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ module Turbopuffer
2
+ module Models
3
+ type contains_all_tokens_filter_params = { last_as_prefix: bool }
4
+
5
+ class ContainsAllTokensFilterParams < Turbopuffer::Internal::Type::BaseModel
6
+ attr_reader last_as_prefix: bool?
7
+
8
+ def last_as_prefix=: (bool) -> bool
9
+
10
+ def initialize: (?last_as_prefix: bool) -> void
11
+
12
+ def to_hash: -> { last_as_prefix: bool }
13
+ end
14
+ end
15
+ end
@@ -7,10 +7,14 @@ module Turbopuffer
7
7
 
8
8
  class AttributeType = Turbopuffer::Models::AttributeType
9
9
 
10
+ class Bm25ClauseParams = Turbopuffer::Models::Bm25ClauseParams
11
+
10
12
  class ClientNamespacesParams = Turbopuffer::Models::ClientNamespacesParams
11
13
 
12
14
  class Columns = Turbopuffer::Models::Columns
13
15
 
16
+ class ContainsAllTokensFilterParams = Turbopuffer::Models::ContainsAllTokensFilterParams
17
+
14
18
  module DistanceMetric = Turbopuffer::Models::DistanceMetric
15
19
 
16
20
  module FullTextSearch = Turbopuffer::Models::FullTextSearch
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: turbopuffer
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Turbopuffer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-09-17 00:00:00.000000000 Z
11
+ date: 2025-09-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: connection_pool
@@ -60,8 +60,10 @@ files:
60
60
  - lib/turbopuffer/models/attribute_schema.rb
61
61
  - lib/turbopuffer/models/attribute_schema_config.rb
62
62
  - lib/turbopuffer/models/attribute_type.rb
63
+ - lib/turbopuffer/models/bm25_clause_params.rb
63
64
  - lib/turbopuffer/models/client_namespaces_params.rb
64
65
  - lib/turbopuffer/models/columns.rb
66
+ - lib/turbopuffer/models/contains_all_tokens_filter_params.rb
65
67
  - lib/turbopuffer/models/distance_metric.rb
66
68
  - lib/turbopuffer/models/full_text_search.rb
67
69
  - lib/turbopuffer/models/full_text_search_config.rb
@@ -126,8 +128,10 @@ files:
126
128
  - rbi/turbopuffer/models/attribute_schema.rbi
127
129
  - rbi/turbopuffer/models/attribute_schema_config.rbi
128
130
  - rbi/turbopuffer/models/attribute_type.rbi
131
+ - rbi/turbopuffer/models/bm25_clause_params.rbi
129
132
  - rbi/turbopuffer/models/client_namespaces_params.rbi
130
133
  - rbi/turbopuffer/models/columns.rbi
134
+ - rbi/turbopuffer/models/contains_all_tokens_filter_params.rbi
131
135
  - rbi/turbopuffer/models/distance_metric.rbi
132
136
  - rbi/turbopuffer/models/full_text_search.rbi
133
137
  - rbi/turbopuffer/models/full_text_search_config.rbi
@@ -191,8 +195,10 @@ files:
191
195
  - sig/turbopuffer/models/attribute_schema.rbs
192
196
  - sig/turbopuffer/models/attribute_schema_config.rbs
193
197
  - sig/turbopuffer/models/attribute_type.rbs
198
+ - sig/turbopuffer/models/bm25_clause_params.rbs
194
199
  - sig/turbopuffer/models/client_namespaces_params.rbs
195
200
  - sig/turbopuffer/models/columns.rbs
201
+ - sig/turbopuffer/models/contains_all_tokens_filter_params.rbs
196
202
  - sig/turbopuffer/models/distance_metric.rbs
197
203
  - sig/turbopuffer/models/full_text_search.rbs
198
204
  - sig/turbopuffer/models/full_text_search_config.rbs