activerecord-turbopuffer-adapter 0.1.5 → 0.1.6

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: 8bb295502835167a50a215f96707b208574ac3e6641b3cd9d02c50646b2335b6
4
- data.tar.gz: '09c4fcdaf392f394619a7a1b786a0be832e248edd7449a5d49e804908fd4d94d'
3
+ metadata.gz: 735feec18b7fd1ae5ded62e4ed1be93fc11c72c7f26e4297cdad2959e364f5ae
4
+ data.tar.gz: 463e7962478cac322980777e1af86edd02ccf6109e4114afcbdf0738cb1ec635
5
5
  SHA512:
6
- metadata.gz: d822446b93294cbca0db8d9cb13a373588e160805d6dc1f1d8e9e88b3d6695ebff58e3cb94fae1715bf0e42850cafb6b88b807b369cc48d174dbeab893e7c35a
7
- data.tar.gz: a22568481e63de3ca8a83a7367a59ac9b1e57853ed2315873c2948cd17a0bf4d4a348e77188e8d2f9deefcc25484b8e128e028948dbe11c4064adbc1909e1ffe
6
+ metadata.gz: 961a01ae0f07741adf56396ef8df18ddb94896627d9ccee153b3f191ff34fda091136133ecc52e3c8e09b3726e9a45d70cde91957f1d9241f2cf5c122caabd38
7
+ data.tar.gz: ed62e9af80fd247549aecfe079f9d45f05037411dc631e310ef1faae981ba2581682335be96bfee6b3877cad4b8ae2d59936637a9179525349c375e9596671df
@@ -272,7 +272,7 @@ module ActiveRecord
272
272
 
273
273
  def turbopuffer_select(namespace, query)
274
274
  fields = if query.include_attributes == [ "*" ]
275
- column_definitions(query.namespace).map(&:name)
275
+ column_definitions(query.namespace).reject(&:vector?).map(&:name)
276
276
  else
277
277
  query.include_attributes
278
278
  end
@@ -3,6 +3,7 @@ module Turbopuffer
3
3
  module Schema
4
4
  class Attribute
5
5
  TYPES = %r{\A(?:\[\])?(?:string|uuid|int|uint|float|bool|datetime)\z|\Abytes\z|\A\[\d+\](?:f16|f32|i8)\z|\A\{\}f16\z}
6
+ VECTOR_TYPES = %r{\A\[\d+\]|\A\{\}}
6
7
 
7
8
  attr_reader :name, :type, :filterable, :full_text_search, :ann, :glob, :regex, :notnull
8
9
 
@@ -24,6 +25,8 @@ module Turbopuffer
24
25
 
25
26
  @notnull = not_null
26
27
  end
28
+
29
+ def vector? = VECTOR_TYPES.match?(type)
27
30
  end
28
31
  end
29
32
  end
@@ -78,6 +78,10 @@ module Turbopuffer
78
78
  order(::Arel::Nodes::RankByNode.new(expression))
79
79
  end
80
80
 
81
+ def with_vectors
82
+ select(*turbopuffer_attributes.map(&:name))
83
+ end
84
+
81
85
  def glob(pattern, case_sensitive: true)
82
86
  ::Turbopuffer::ActiveRecord::Glob.new(pattern, case_sensitive:)
83
87
  end
@@ -1,5 +1,5 @@
1
1
  module Turbopuffer
2
2
  module ActiveRecord
3
- VERSION = "0.1.5"
3
+ VERSION = "0.1.6"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activerecord-turbopuffer-adapter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Monette
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2026-09-23 00:00:00.000000000 Z
10
+ date: 2026-09-24 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: activerecord