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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +33 -0
- data/README.md +1 -1
- data/lib/turbopuffer/internal/transport/base_client.rb +7 -1
- data/lib/turbopuffer/internal/transport/pooled_net_requester.rb +36 -26
- data/lib/turbopuffer/internal/type/union.rb +1 -1
- data/lib/turbopuffer/models/attribute_schema_config.rb +44 -14
- data/lib/turbopuffer/models/namespace_metadata.rb +124 -1
- data/lib/turbopuffer/models/namespace_write_params.rb +29 -1
- data/lib/turbopuffer/resources/namespaces.rb +3 -1
- data/lib/turbopuffer/version.rb +1 -1
- data/lib/turbopuffer.rb +1 -0
- data/manifest.yaml +1 -0
- data/rbi/turbopuffer/internal/transport/base_client.rbi +5 -0
- data/rbi/turbopuffer/internal/transport/pooled_net_requester.rbi +6 -2
- data/rbi/turbopuffer/internal/type/base_model.rbi +8 -4
- data/rbi/turbopuffer/models/attribute_schema_config.rbi +109 -24
- data/rbi/turbopuffer/models/namespace_metadata.rbi +225 -3
- data/rbi/turbopuffer/models/namespace_write_params.rbi +58 -0
- data/rbi/turbopuffer/resources/namespaces.rbi +4 -0
- data/sig/turbopuffer/internal/transport/base_client.rbs +2 -0
- data/sig/turbopuffer/internal/transport/pooled_net_requester.rbs +4 -1
- data/sig/turbopuffer/models/attribute_schema_config.rbs +42 -15
- data/sig/turbopuffer/models/namespace_metadata.rbs +95 -3
- data/sig/turbopuffer/models/namespace_write_params.rbs +21 -0
- data/sig/turbopuffer/resources/namespaces.rbs +1 -0
- metadata +2 -2
|
@@ -5,7 +5,10 @@ module Turbopuffer
|
|
|
5
5
|
approx_logical_bytes: Integer,
|
|
6
6
|
approx_row_count: Integer,
|
|
7
7
|
created_at: Time,
|
|
8
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
+
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-
|
|
11
|
+
date: 2025-11-06 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: connection_pool
|