turbopuffer 1.4.0 → 1.6.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.
@@ -5,7 +5,10 @@ module Turbopuffer
5
5
  approx_logical_bytes: Integer,
6
6
  approx_row_count: Integer,
7
7
  created_at: Time,
8
- schema: ::Hash[Symbol, Turbopuffer::AttributeSchemaConfig]
8
+ encryption: Turbopuffer::Models::NamespaceMetadata::encryption,
9
+ index: Turbopuffer::Models::NamespaceMetadata::index,
10
+ schema: ::Hash[Symbol, Turbopuffer::AttributeSchemaConfig],
11
+ updated_at: Time
9
12
  }
10
13
 
11
14
  class NamespaceMetadata < Turbopuffer::Internal::Type::BaseModel
@@ -15,21 +18,110 @@ module Turbopuffer
15
18
 
16
19
  attr_accessor created_at: Time
17
20
 
21
+ attr_accessor encryption: Turbopuffer::Models::NamespaceMetadata::encryption
22
+
23
+ attr_accessor index: Turbopuffer::Models::NamespaceMetadata::index
24
+
18
25
  attr_accessor schema: ::Hash[Symbol, Turbopuffer::AttributeSchemaConfig]
19
26
 
27
+ attr_accessor updated_at: Time
28
+
20
29
  def initialize: (
21
30
  approx_logical_bytes: Integer,
22
31
  approx_row_count: Integer,
23
32
  created_at: Time,
24
- schema: ::Hash[Symbol, Turbopuffer::AttributeSchemaConfig]
33
+ encryption: Turbopuffer::Models::NamespaceMetadata::encryption,
34
+ index: Turbopuffer::Models::NamespaceMetadata::index,
35
+ schema: ::Hash[Symbol, Turbopuffer::AttributeSchemaConfig],
36
+ updated_at: Time
25
37
  ) -> void
26
38
 
27
39
  def to_hash: -> {
28
40
  approx_logical_bytes: Integer,
29
41
  approx_row_count: Integer,
30
42
  created_at: Time,
31
- schema: ::Hash[Symbol, Turbopuffer::AttributeSchemaConfig]
43
+ encryption: Turbopuffer::Models::NamespaceMetadata::encryption,
44
+ index: Turbopuffer::Models::NamespaceMetadata::index,
45
+ schema: ::Hash[Symbol, Turbopuffer::AttributeSchemaConfig],
46
+ updated_at: Time
32
47
  }
48
+
49
+ type encryption =
50
+ Turbopuffer::NamespaceMetadata::Encryption::Sse
51
+ | Turbopuffer::NamespaceMetadata::Encryption::Cmek
52
+
53
+ module Encryption
54
+ extend Turbopuffer::Internal::Type::Union
55
+
56
+ type sse = { sse: bool }
57
+
58
+ class Sse < Turbopuffer::Internal::Type::BaseModel
59
+ attr_accessor sse: bool
60
+
61
+ def initialize: (sse: bool) -> void
62
+
63
+ def to_hash: -> { sse: bool }
64
+ end
65
+
66
+ type cmek =
67
+ { cmek: Turbopuffer::NamespaceMetadata::Encryption::Cmek::Cmek }
68
+
69
+ class Cmek < Turbopuffer::Internal::Type::BaseModel
70
+ attr_accessor cmek: Turbopuffer::NamespaceMetadata::Encryption::Cmek::Cmek
71
+
72
+ def initialize: (
73
+ cmek: Turbopuffer::NamespaceMetadata::Encryption::Cmek::Cmek
74
+ ) -> void
75
+
76
+ def to_hash: -> {
77
+ cmek: Turbopuffer::NamespaceMetadata::Encryption::Cmek::Cmek
78
+ }
79
+
80
+ type cmek = { key_name: String }
81
+
82
+ class Cmek < Turbopuffer::Internal::Type::BaseModel
83
+ attr_accessor key_name: String
84
+
85
+ def initialize: (key_name: String) -> void
86
+
87
+ def to_hash: -> { key_name: String }
88
+ end
89
+ end
90
+
91
+ def self?.variants: -> ::Array[Turbopuffer::Models::NamespaceMetadata::encryption]
92
+ end
93
+
94
+ type index =
95
+ Turbopuffer::NamespaceMetadata::Index::IndexUpToDate
96
+ | Turbopuffer::NamespaceMetadata::Index::IndexUpdating
97
+
98
+ module Index
99
+ extend Turbopuffer::Internal::Type::Union
100
+
101
+ type index_up_to_date = { status: :"up-to-date" }
102
+
103
+ class IndexUpToDate < Turbopuffer::Internal::Type::BaseModel
104
+ attr_accessor status: :"up-to-date"
105
+
106
+ def initialize: (?status: :"up-to-date") -> void
107
+
108
+ def to_hash: -> { status: :"up-to-date" }
109
+ end
110
+
111
+ type index_updating = { status: :updating, unindexed_bytes: Integer }
112
+
113
+ class IndexUpdating < Turbopuffer::Internal::Type::BaseModel
114
+ attr_accessor status: :updating
115
+
116
+ attr_accessor unindexed_bytes: Integer
117
+
118
+ def initialize: (unindexed_bytes: Integer, ?status: :updating) -> void
119
+
120
+ def to_hash: -> { status: :updating, unindexed_bytes: Integer }
121
+ end
122
+
123
+ def self?.variants: -> ::Array[Turbopuffer::Models::NamespaceMetadata::index]
124
+ end
33
125
  end
34
126
  end
35
127
  end
@@ -10,6 +10,7 @@ module Turbopuffer
10
10
  disable_backpressure: bool,
11
11
  distance_metric: Turbopuffer::Models::distance_metric,
12
12
  encryption: Turbopuffer::NamespaceWriteParams::Encryption,
13
+ patch_by_filter: Turbopuffer::NamespaceWriteParams::PatchByFilter,
13
14
  patch_columns: Turbopuffer::Columns,
14
15
  patch_condition: top,
15
16
  patch_rows: ::Array[Turbopuffer::Row],
@@ -62,6 +63,12 @@ module Turbopuffer
62
63
  Turbopuffer::NamespaceWriteParams::Encryption
63
64
  ) -> Turbopuffer::NamespaceWriteParams::Encryption
64
65
 
66
+ attr_reader patch_by_filter: Turbopuffer::NamespaceWriteParams::PatchByFilter?
67
+
68
+ def patch_by_filter=: (
69
+ Turbopuffer::NamespaceWriteParams::PatchByFilter
70
+ ) -> Turbopuffer::NamespaceWriteParams::PatchByFilter
71
+
65
72
  attr_reader patch_columns: Turbopuffer::Columns?
66
73
 
67
74
  def patch_columns=: (Turbopuffer::Columns) -> Turbopuffer::Columns
@@ -101,6 +108,7 @@ module Turbopuffer
101
108
  ?disable_backpressure: bool,
102
109
  ?distance_metric: Turbopuffer::Models::distance_metric,
103
110
  ?encryption: Turbopuffer::NamespaceWriteParams::Encryption,
111
+ ?patch_by_filter: Turbopuffer::NamespaceWriteParams::PatchByFilter,
104
112
  ?patch_columns: Turbopuffer::Columns,
105
113
  ?patch_condition: top,
106
114
  ?patch_rows: ::Array[Turbopuffer::Row],
@@ -120,6 +128,7 @@ module Turbopuffer
120
128
  disable_backpressure: bool,
121
129
  distance_metric: Turbopuffer::Models::distance_metric,
122
130
  encryption: Turbopuffer::NamespaceWriteParams::Encryption,
131
+ patch_by_filter: Turbopuffer::NamespaceWriteParams::PatchByFilter,
123
132
  patch_columns: Turbopuffer::Columns,
124
133
  patch_condition: top,
125
134
  patch_rows: ::Array[Turbopuffer::Row],
@@ -158,6 +167,18 @@ module Turbopuffer
158
167
  def to_hash: -> { key_name: String }
159
168
  end
160
169
  end
170
+
171
+ type patch_by_filter = { filters: top, patch: ::Hash[Symbol, top] }
172
+
173
+ class PatchByFilter < Turbopuffer::Internal::Type::BaseModel
174
+ attr_accessor filters: top
175
+
176
+ attr_accessor patch: ::Hash[Symbol, top]
177
+
178
+ def initialize: (filters: top, patch: ::Hash[Symbol, top]) -> void
179
+
180
+ def to_hash: -> { filters: top, patch: ::Hash[Symbol, top] }
181
+ end
161
182
  end
162
183
  end
163
184
  end
@@ -84,6 +84,7 @@ module Turbopuffer
84
84
  ?disable_backpressure: bool,
85
85
  ?distance_metric: Turbopuffer::Models::distance_metric,
86
86
  ?encryption: Turbopuffer::NamespaceWriteParams::Encryption,
87
+ ?patch_by_filter: Turbopuffer::NamespaceWriteParams::PatchByFilter,
87
88
  ?patch_columns: Turbopuffer::Columns,
88
89
  ?patch_condition: top,
89
90
  ?patch_rows: ::Array[Turbopuffer::Row],
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.4.0
4
+ version: 1.6.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-10-15 00:00:00.000000000 Z
11
+ date: 2025-11-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: connection_pool