From 4bff3e240b1837ecccb812376c61ee6732d61a4a Mon Sep 17 00:00:00 2001 From: Nikita Sobolev Date: Sun, 6 Nov 2022 22:45:25 +0300 Subject: [PATCH] Remove `annoy` from pyright excludelist (#9114) --- pyrightconfig.stricter.json | 1 - stubs/annoy/annoy/__init__.pyi | 45 ++----------------------- stubs/annoy/annoy/annoylib.pyi | 60 ++++++++++++++++++++++++---------- 3 files changed, 45 insertions(+), 61 deletions(-) diff --git a/pyrightconfig.stricter.json b/pyrightconfig.stricter.json index 562ee3613..d075fab6c 100644 --- a/pyrightconfig.stricter.json +++ b/pyrightconfig.stricter.json @@ -21,7 +21,6 @@ "stdlib/xml/dom/minidom.pyi", "stdlib/xml/dom/pulldom.pyi", "stdlib/xml/sax", - "stubs/annoy/annoy/annoylib.pyi", "stubs/aws-xray-sdk", "stubs/babel", "stubs/backports.ssl_match_hostname", diff --git a/stubs/annoy/annoy/__init__.pyi b/stubs/annoy/annoy/__init__.pyi index 2a0bb263a..8a1ced3e7 100644 --- a/stubs/annoy/annoy/__init__.pyi +++ b/stubs/annoy/annoy/__init__.pyi @@ -1,44 +1,5 @@ -from _typeshed import SupportsLenAndGetItem -from typing import overload -from typing_extensions import Literal, TypeAlias +from typing_extensions import TypeAlias -_Vector: TypeAlias = SupportsLenAndGetItem[float] +from .annoylib import Annoy -class AnnoyIndex: - f: int - def __init__(self, f: int, metric: Literal["angular", "euclidean", "manhattan", "hamming", "dot"]) -> None: ... - def load(self, fn: str, prefault: bool = ...) -> Literal[True]: ... - def save(self, fn: str, prefault: bool = ...) -> Literal[True]: ... - @overload - def get_nns_by_item(self, i: int, n: int, search_k: int = ..., include_distances: Literal[False] = ...) -> list[int]: ... - @overload - def get_nns_by_item( - self, i: int, n: int, search_k: int, include_distances: Literal[True] - ) -> tuple[list[int], list[float]]: ... - @overload - def get_nns_by_item( - self, i: int, n: int, search_k: int = ..., *, include_distances: Literal[True] - ) -> tuple[list[int], list[float]]: ... - @overload - def get_nns_by_vector( - self, vector: _Vector, n: int, search_k: int = ..., include_distances: Literal[False] = ... - ) -> list[int]: ... - @overload - def get_nns_by_vector( - self, vector: _Vector, n: int, search_k: int, include_distances: Literal[True] - ) -> tuple[list[int], list[float]]: ... - @overload - def get_nns_by_vector( - self, vector: _Vector, n: int, search_k: int = ..., *, include_distances: Literal[True] - ) -> tuple[list[int], list[float]]: ... - def get_item_vector(self, __i: int) -> list[float]: ... - def add_item(self, i: int, vector: _Vector) -> None: ... - def on_disk_build(self, fn: str) -> Literal[True]: ... - def build(self, n_trees: int, n_jobs: int = ...) -> Literal[True]: ... - def unbuild(self) -> Literal[True]: ... - def unload(self) -> Literal[True]: ... - def get_distance(self, __i: int, __j: int) -> float: ... - def get_n_items(self) -> int: ... - def get_n_trees(self) -> int: ... - def verbose(self, __v: bool) -> Literal[True]: ... - def set_seed(self, __s: int) -> None: ... +AnnoyIndex: TypeAlias = Annoy diff --git a/stubs/annoy/annoy/annoylib.pyi b/stubs/annoy/annoy/annoylib.pyi index 41d2fe2ae..cae6dd244 100644 --- a/stubs/annoy/annoy/annoylib.pyi +++ b/stubs/annoy/annoy/annoylib.pyi @@ -1,20 +1,44 @@ -from _typeshed import Incomplete +from _typeshed import SupportsLenAndGetItem +from typing import overload +from typing_extensions import Literal, TypeAlias + +_Vector: TypeAlias = SupportsLenAndGetItem[float] class Annoy: - f: Incomplete - def __init__(self, *args, **kwargs) -> None: ... - def add_item(self, *args, **kwargs): ... - def build(self, *args, **kwargs): ... - def get_distance(self, *args, **kwargs): ... - def get_item_vector(self, *args, **kwargs): ... - def get_n_items(self, *args, **kwargs): ... - def get_n_trees(self, *args, **kwargs): ... - def get_nns_by_item(self, *args, **kwargs): ... - def get_nns_by_vector(self, *args, **kwargs): ... - def load(self, *args, **kwargs): ... - def on_disk_build(self, *args, **kwargs): ... - def save(self, *args, **kwargs): ... - def set_seed(self, *args, **kwargs): ... - def unbuild(self, *args, **kwargs): ... - def unload(self, *args, **kwargs): ... - def verbose(self, *args, **kwargs): ... + f: int + def __init__(self, f: int, metric: Literal["angular", "euclidean", "manhattan", "hamming", "dot"]) -> None: ... + def load(self, fn: str, prefault: bool = ...) -> Literal[True]: ... + def save(self, fn: str, prefault: bool = ...) -> Literal[True]: ... + @overload + def get_nns_by_item(self, i: int, n: int, search_k: int = ..., include_distances: Literal[False] = ...) -> list[int]: ... + @overload + def get_nns_by_item( + self, i: int, n: int, search_k: int, include_distances: Literal[True] + ) -> tuple[list[int], list[float]]: ... + @overload + def get_nns_by_item( + self, i: int, n: int, search_k: int = ..., *, include_distances: Literal[True] + ) -> tuple[list[int], list[float]]: ... + @overload + def get_nns_by_vector( + self, vector: _Vector, n: int, search_k: int = ..., include_distances: Literal[False] = ... + ) -> list[int]: ... + @overload + def get_nns_by_vector( + self, vector: _Vector, n: int, search_k: int, include_distances: Literal[True] + ) -> tuple[list[int], list[float]]: ... + @overload + def get_nns_by_vector( + self, vector: _Vector, n: int, search_k: int = ..., *, include_distances: Literal[True] + ) -> tuple[list[int], list[float]]: ... + def get_item_vector(self, __i: int) -> list[float]: ... + def add_item(self, i: int, vector: _Vector) -> None: ... + def on_disk_build(self, fn: str) -> Literal[True]: ... + def build(self, n_trees: int, n_jobs: int = ...) -> Literal[True]: ... + def unbuild(self) -> Literal[True]: ... + def unload(self) -> Literal[True]: ... + def get_distance(self, __i: int, __j: int) -> float: ... + def get_n_items(self) -> int: ... + def get_n_trees(self) -> int: ... + def verbose(self, __v: bool) -> Literal[True]: ... + def set_seed(self, __s: int) -> None: ...