diff --git a/integrations/elasticsearch/pyproject.toml b/integrations/elasticsearch/pyproject.toml index 72bd12548d..027e8c75ee 100644 --- a/integrations/elasticsearch/pyproject.toml +++ b/integrations/elasticsearch/pyproject.toml @@ -85,6 +85,7 @@ line-length = 120 [tool.ruff.lint] select = [ "A", + "ANN", "ARG", "B", "C", @@ -125,6 +126,8 @@ ignore = [ "PLR0912", "PLR0913", "PLR0915", + # Allow `Any` - used legitimately for dynamic types and SDK boundaries + "ANN401", ] [tool.ruff.lint.isort] @@ -134,8 +137,8 @@ known-first-party = ["haystack_integrations"] ban-relative-imports = "parents" [tool.ruff.lint.per-file-ignores] -# Tests can use magic values, assertions, and relative imports -"tests/**/*" = ["PLR2004", "S101", "TID252"] +# Tests can use magic values, assertions, relative imports, and don't need type annotations +"tests/**/*" = ["PLR2004", "S101", "TID252", "ANN"] [tool.coverage.run] source = ["haystack_integrations"] diff --git a/integrations/elasticsearch/src/haystack_integrations/components/retrievers/elasticsearch/bm25_retriever.py b/integrations/elasticsearch/src/haystack_integrations/components/retrievers/elasticsearch/bm25_retriever.py index 7eb632ce50..534bf393db 100644 --- a/integrations/elasticsearch/src/haystack_integrations/components/retrievers/elasticsearch/bm25_retriever.py +++ b/integrations/elasticsearch/src/haystack_integrations/components/retrievers/elasticsearch/bm25_retriever.py @@ -52,7 +52,7 @@ def __init__( top_k: int = 10, scale_score: bool = False, filter_policy: str | FilterPolicy = FilterPolicy.REPLACE, - ): + ) -> None: """ Initialize ElasticsearchBM25Retriever with an instance ElasticsearchDocumentStore. diff --git a/integrations/elasticsearch/src/haystack_integrations/components/retrievers/elasticsearch/embedding_retriever.py b/integrations/elasticsearch/src/haystack_integrations/components/retrievers/elasticsearch/embedding_retriever.py index b53fc851ea..93a6df4787 100644 --- a/integrations/elasticsearch/src/haystack_integrations/components/retrievers/elasticsearch/embedding_retriever.py +++ b/integrations/elasticsearch/src/haystack_integrations/components/retrievers/elasticsearch/embedding_retriever.py @@ -53,7 +53,7 @@ def __init__( top_k: int = 10, num_candidates: int | None = None, filter_policy: str | FilterPolicy = FilterPolicy.REPLACE, - ): + ) -> None: """ Create the ElasticsearchEmbeddingRetriever component. diff --git a/integrations/elasticsearch/src/haystack_integrations/components/retrievers/elasticsearch/sql_retriever.py b/integrations/elasticsearch/src/haystack_integrations/components/retrievers/elasticsearch/sql_retriever.py index e0a25baa62..d94baf2399 100644 --- a/integrations/elasticsearch/src/haystack_integrations/components/retrievers/elasticsearch/sql_retriever.py +++ b/integrations/elasticsearch/src/haystack_integrations/components/retrievers/elasticsearch/sql_retriever.py @@ -42,7 +42,7 @@ def __init__( document_store: ElasticsearchDocumentStore, raise_on_failure: bool = True, fetch_size: int | None = None, - ): + ) -> None: """ Creates the ElasticsearchSQLRetriever component. diff --git a/integrations/elasticsearch/src/haystack_integrations/document_stores/elasticsearch/document_store.py b/integrations/elasticsearch/src/haystack_integrations/document_stores/elasticsearch/document_store.py index f35dca8d0c..945942c25a 100644 --- a/integrations/elasticsearch/src/haystack_integrations/document_stores/elasticsearch/document_store.py +++ b/integrations/elasticsearch/src/haystack_integrations/document_stores/elasticsearch/document_store.py @@ -86,7 +86,7 @@ def __init__( api_key_id: Secret | str | None = Secret.from_env_var("ELASTIC_API_KEY_ID", strict=False), embedding_similarity_function: Literal["cosine", "dot_product", "l2_norm", "max_inner_product"] = "cosine", **kwargs: Any, - ): + ) -> None: """ Creates a new ElasticsearchDocumentStore instance. @@ -156,7 +156,7 @@ def __init__( ], } - def _ensure_initialized(self): + def _ensure_initialized(self) -> None: """ Ensures both sync and async clients are initialized and the index exists. """