Skip to content

Commit d679975

Browse files
fix(supabase): fix mypy type errors - CountMethod and union-attr
1 parent 5be352e commit d679975

1 file changed

Lines changed: 10 additions & 8 deletions

File tree

integrations/supabase/src/haystack_integrations/document_stores/supabase/groonga_document_store.py

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
from haystack.document_stores.errors import DuplicateDocumentError
1010
from haystack.document_stores.types import DocumentStore, DuplicatePolicy
1111
from haystack.utils.auth import Secret, deserialize_secrets_inplace
12+
from postgrest import CountMethod
1213

1314
from supabase import Client, create_client
1415

@@ -123,7 +124,7 @@ def count_documents(self) -> int:
123124
if self._client is None:
124125
msg = "Call warm_up() before using the document store."
125126
raise RuntimeError(msg)
126-
result = self._client.table(self.table_name).select("*", count="exact").execute()
127+
result = self._client.table(self.table_name).select("*", count=CountMethod.exact).execute()
127128
return int(result.count) if result.count is not None else 0
128129

129130
def filter_documents(self, filters: dict[str, Any] | None = None) -> list[Document]:
@@ -170,12 +171,12 @@ def _apply_filters(self, query: Any, filters: dict[str, Any]) -> Any:
170171
query = query.eq(f"meta->>'{meta_key}'", value)
171172
elif op == "!=":
172173
query = query.neq(f"meta->>'{meta_key}'", value)
173-
elif op == "==":
174-
query = query.eq(field, value)
175-
elif op == "!=":
176-
query = query.neq(field, value)
177-
elif op == "in":
178-
query = query.in_(field, value)
174+
elif op == "==":
175+
query = query.eq(field, value)
176+
elif op == "!=":
177+
query = query.neq(field, value)
178+
elif op == "in":
179+
query = query.in_(field, value)
179180

180181
return query
181182

@@ -264,7 +265,8 @@ def _groonga_retrieval(
264265
{"query_text": query, "table": self.table_name, "top_k": top_k},
265266
).execute()
266267

267-
documents = [self._to_haystack_document(row) for row in (result.data or []) if isinstance(row, dict)]
268+
data = result.data if isinstance(result.data, list) else []
269+
documents = [self._to_haystack_document(row) for row in data if isinstance(row, dict)]
268270

269271
# Apply filters post-retrieval if provided
270272
if filters:

0 commit comments

Comments
 (0)