Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 4 additions & 5 deletions packages/bigframes/bigframes/core/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,20 +16,19 @@
import re
import typing
import warnings
from typing import Hashable, Iterable, List
from typing import Hashable, Iterable, List, TypeGuard
Comment thread
parthea marked this conversation as resolved.

import bigframes_vendored.pandas.io.common as vendored_pandas_io_common
import numpy as np
import pandas as pd
import typing_extensions

import bigframes.exceptions as bfe

UNNAMED_COLUMN_ID = "bigframes_unnamed_column"
UNNAMED_INDEX_ID = "bigframes_unnamed_index"


def is_gcs_path(value) -> typing_extensions.TypeGuard[str]:
def is_gcs_path(value) -> TypeGuard[str]:
return isinstance(value, str) and value.startswith("gs://")


Expand All @@ -43,11 +42,11 @@ def get_axis_number(axis: typing.Union[str, int]) -> typing.Literal[0, 1]:

def is_list_like(
obj: typing.Any, allow_sets: bool = True
) -> typing_extensions.TypeGuard[typing.Sequence]:
) -> TypeGuard[typing.Sequence]:
return pd.api.types.is_list_like(obj, allow_sets=allow_sets)


def is_dict_like(obj: typing.Any) -> typing_extensions.TypeGuard[typing.Mapping]:
def is_dict_like(obj: typing.Any) -> TypeGuard[typing.Mapping]:
return pd.api.types.is_dict_like(obj)


Expand Down
4 changes: 2 additions & 2 deletions packages/bigframes/bigframes/series.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
Optional,
Sequence,
Tuple,
TypeGuard,
TypeVar,
Union,
cast,
Comment thread
parthea marked this conversation as resolved.
Expand All @@ -45,7 +46,6 @@
import numpy
import pandas
import pyarrow as pa
import typing_extensions
from pandas.api import extensions as pd_ext
Comment thread
parthea marked this conversation as resolved.

import bigframes.core
Expand Down Expand Up @@ -2825,5 +2825,5 @@ def _throw_if_null_index(self, opname: __builtins__.str):
)


def _is_list_like(obj: typing.Any) -> typing_extensions.TypeGuard[typing.Sequence]:
def _is_list_like(obj: typing.Any) -> TypeGuard[typing.Sequence]:
return pandas.api.types.is_list_like(obj)
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,18 @@
from __future__ import annotations

import collections.abc
import sys
from abc import abstractmethod
from typing import TYPE_CHECKING, Any
from weakref import WeakValueDictionary

if TYPE_CHECKING:
from collections.abc import Mapping

from typing_extensions import Self
if sys.version_info >= (3, 11):
from typing import Self
else:
from typing_extensions import Self


class AbstractMeta(type):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
from __future__ import annotations

import collections.abc
import sys
from abc import abstractmethod
from itertools import tee
from typing import TYPE_CHECKING, Any, Generic, TypeVar
Expand All @@ -12,7 +13,10 @@
from public import public

if TYPE_CHECKING:
from typing_extensions import Self
if sys.version_info >= (3, 11):
from typing import Self
else:
from typing_extensions import Self

K = TypeVar("K", bound=collections.abc.Hashable)
V = TypeVar("V")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
from __future__ import annotations

import itertools
import sys
from abc import abstractmethod
from collections import deque
from collections.abc import Callable, Iterable, Iterator, KeysView, Mapping, Sequence
Expand All @@ -16,7 +17,10 @@
from bigframes_vendored.ibis.util import experimental, promote_list

if TYPE_CHECKING:
from typing_extensions import Self
if sys.version_info >= (3, 11):
from typing import Self
else:
from typing_extensions import Self

N = TypeVar("N")

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
from __future__ import annotations

import contextlib
import sys
from copy import copy
from typing import Any, ClassVar, Union, get_origin

Expand All @@ -23,7 +24,11 @@
from bigframes_vendored.ibis.common.collections import FrozenDict # noqa: TCH001
from bigframes_vendored.ibis.common.patterns import Pattern
from bigframes_vendored.ibis.common.typing import evaluate_annotations
from typing_extensions import Self, dataclass_transform

if sys.version_info >= (3, 11):
from typing import Self, dataclass_transform
else:
from typing_extensions import Self, dataclass_transform


class AnnotableMeta(AbstractMeta):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,26 +7,23 @@
import sys
from abc import abstractmethod
from itertools import zip_longest
from typing import TYPE_CHECKING, Any, Optional, TypeVar, Union, get_args, get_origin
from typing import TYPE_CHECKING, Any, Optional, TypeVar, get_args, get_origin
from typing import get_type_hints as _get_type_hints

from bigframes_vendored.ibis.common.bases import Abstract
from bigframes_vendored.ibis.common.caching import memoize

if TYPE_CHECKING:
from typing_extensions import Self

if sys.version_info >= (3, 10):
from types import UnionType
from typing import TypeAlias
if sys.version_info >= (3, 11):
from typing import Self
else:
from typing_extensions import Self

# Keep this alias in sync with unittest.case._ClassInfo
_ClassInfo: TypeAlias = type | UnionType | tuple["_ClassInfo", ...]
else:
from typing_extensions import TypeAlias
from types import UnionType
from typing import TypeAlias

UnionType = object()
_ClassInfo: TypeAlias = Union[type, tuple["_ClassInfo", ...]]
# Keep this alias in sync with unittest.case._ClassInfo
_ClassInfo: TypeAlias = type | UnionType | tuple["_ClassInfo", ...]
Comment thread
parthea marked this conversation as resolved.


T = TypeVar("T")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
from __future__ import annotations

import math
import sys
from typing import TYPE_CHECKING, Any, Literal, Optional, Union

import bigframes_vendored.ibis
Expand All @@ -19,7 +20,10 @@
from bigframes_vendored.ibis.common.typing import VarTuple # noqa: TCH001

if TYPE_CHECKING:
from typing_extensions import Self
if sys.version_info >= (3, 11):
from typing import Self
else:
from typing_extensions import Self


class Builder(Concrete):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import datetime as pydatetime
import decimal as pydecimal
import numbers
import sys
import uuid as pyuuid
from abc import abstractmethod
from collections.abc import Iterable, Iterator, Mapping, Sequence
Expand All @@ -29,7 +30,11 @@
from bigframes_vendored.ibis.common.patterns import Coercible, CoercionError
from bigframes_vendored.ibis.common.temporal import IntervalUnit, TimestampUnit
from public import public
from typing_extensions import Self

if sys.version_info >= (3, 11):
from typing import Self
else:
from typing_extensions import Self


@lazy_singledispatch
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,9 @@

from __future__ import annotations

import sys
from abc import abstractmethod
from typing import Generic, Optional
from typing import Any, Generic, Optional

import bigframes_vendored.ibis.expr.datashape as ds
import bigframes_vendored.ibis.expr.datatypes as dt
Expand All @@ -15,7 +16,12 @@
from bigframes_vendored.ibis.common.typing import DefaultTypeVars
from bigframes_vendored.ibis.util import is_iterable
from public import public
from typing_extensions import Any, Self, TypeVar
from typing_extensions import TypeVar

if sys.version_info >= (3, 11):
from typing import Self
else:
from typing_extensions import Self


@public
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,10 +65,7 @@
# Name "npt._ArrayLikeInt_co" is not defined [name-defined]
NumpySorter = Optional[npt._ArrayLikeInt_co] # type: ignore[name-defined]

if sys.version_info >= (3, 10):
from typing import TypeGuard
else:
from typing_extensions import TypeGuard # pyright: reportUnusedImport = false
from typing import TypeGuard

if sys.version_info >= (3, 11):
from typing import Self
Comment thread
parthea marked this conversation as resolved.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,11 @@
if t.TYPE_CHECKING:
from bigframes_vendored.sqlglot._typing import E, Lit
from bigframes_vendored.sqlglot.dialects.dialect import DialectType
from typing_extensions import Self

if sys.version_info >= (3, 11):
from typing import Self
else:
from typing_extensions import Self

Q = t.TypeVar("Q", bound="Query")
S = t.TypeVar("S", bound="SetOperation")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,7 @@ import google.protobuf.message
import sys
import typing

if sys.version_info >= (3, 10):
import typing as typing_extensions
else:
import typing_extensions
import typing as typing_extensions
Comment thread
parthea marked this conversation as resolved.

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@
TYPE_CHECKING,
)

import sys
import time
import functools

Expand All @@ -40,10 +39,7 @@
from google.api_core.retry import RetryFailureReason

if TYPE_CHECKING:
if sys.version_info >= (3, 10):
from typing import ParamSpec
else:
from typing_extensions import ParamSpec
from typing import ParamSpec
Comment thread
parthea marked this conversation as resolved.

_P = ParamSpec("_P") # target function call parameters
_Y = TypeVar("_Y") # yielded values
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,10 +43,7 @@


if TYPE_CHECKING:
if sys.version_info >= (3, 10):
from typing import ParamSpec
else:
from typing_extensions import ParamSpec
from typing import ParamSpec
Comment thread
parthea marked this conversation as resolved.

_P = ParamSpec("_P") # target function call parameters
_Y = TypeVar("_Y") # yielded values
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,6 @@ def check_if_exists():
from __future__ import annotations

import functools
import sys
import time
import inspect
import warnings
Expand All @@ -71,10 +70,7 @@ def check_if_exists():


if TYPE_CHECKING:
if sys.version_info >= (3, 10):
from typing import ParamSpec
else:
from typing_extensions import ParamSpec
from typing import ParamSpec
Comment thread
parthea marked this conversation as resolved.

_P = ParamSpec("_P") # target function call parameters
_R = TypeVar("_R") # target function returned value
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,12 +76,7 @@ async def check_if_exists():
from google.api_core.retry.retry_base import if_transient_error # noqa

if TYPE_CHECKING:
import sys

if sys.version_info >= (3, 10):
from typing import ParamSpec
else:
from typing_extensions import ParamSpec
from typing import ParamSpec
Comment thread
parthea marked this conversation as resolved.

_P = ParamSpec("_P") # target function call parameters
_R = TypeVar("_R") # target function returned value
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ async def async_func(self, arg: int) -> int:
from ._mapping_meta import MappingMeta

if TYPE_CHECKING:
from typing_extensions import TypeAlias
from typing import TypeAlias
Comment thread
parthea marked this conversation as resolved.

T = TypeVar("T")

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ async def async_func(self, arg: int) -> int:
from ._mapping_meta import MappingMeta

if TYPE_CHECKING:
from typing_extensions import TypeAlias
from typing import TypeAlias
Comment thread
parthea marked this conversation as resolved.

T = TypeVar("T")

Expand Down
Loading