diff --git a/findmy/__init__.py b/findmy/__init__.py index 7431bad..9cc82e2 100644 --- a/findmy/__init__.py +++ b/findmy/__init__.py @@ -5,10 +5,10 @@ from .accessory import FindMyAccessory from .keys import KeyPair __all__ = ( + "FindMyAccessory", + "KeyPair", + "errors", "keys", "reports", "scanner", - "errors", - "FindMyAccessory", - "KeyPair", ) diff --git a/findmy/accessory.py b/findmy/accessory.py index a51f683..f06cd14 100644 --- a/findmy/accessory.py +++ b/findmy/accessory.py @@ -9,15 +9,17 @@ from __future__ import annotations import logging import plistlib from abc import ABC, abstractmethod -from collections.abc import Generator from datetime import datetime, timedelta, timezone -from typing import IO, overload +from typing import IO, TYPE_CHECKING, overload from typing_extensions import override from .keys import KeyGenerator, KeyPair, KeyType from .util import crypto +if TYPE_CHECKING: + from collections.abc import Generator + logging.getLogger(__name__) diff --git a/findmy/keys.py b/findmy/keys.py index 5263695..072c326 100644 --- a/findmy/keys.py +++ b/findmy/keys.py @@ -6,15 +6,17 @@ import base64 import hashlib import secrets from abc import ABC, abstractmethod -from collections.abc import Generator from enum import Enum -from typing import Generic, TypeVar, overload +from typing import TYPE_CHECKING, Generic, TypeVar, overload from cryptography.hazmat.primitives.asymmetric import ec from typing_extensions import override from .util import crypto, parsers +if TYPE_CHECKING: + from collections.abc import Generator + class KeyType(Enum): """Enum of possible key types.""" diff --git a/findmy/reports/__init__.py b/findmy/reports/__init__.py index dfba250..730ff68 100644 --- a/findmy/reports/__init__.py +++ b/findmy/reports/__init__.py @@ -8,8 +8,8 @@ from .twofactor import SmsSecondFactorMethod, TrustedDeviceSecondFactorMethod __all__ = ( "AppleAccount", "AsyncAppleAccount", - "LoginState", "BaseAnisetteProvider", + "LoginState", "RemoteAnisetteProvider", "SmsSecondFactorMethod", "TrustedDeviceSecondFactorMethod", diff --git a/findmy/reports/account.py b/findmy/reports/account.py index 18b3ada..4c3b10d 100644 --- a/findmy/reports/account.py +++ b/findmy/reports/account.py @@ -9,7 +9,6 @@ import logging import plistlib import uuid from abc import ABC, abstractmethod -from collections.abc import Sequence from datetime import datetime, timedelta, timezone from functools import wraps from typing import ( @@ -49,6 +48,8 @@ from .twofactor import ( ) if TYPE_CHECKING: + from collections.abc import Sequence + from findmy.accessory import RollingKeyPairSource from findmy.keys import HasHashedPublicKey from findmy.util.types import MaybeCoro diff --git a/findmy/reports/reports.py b/findmy/reports/reports.py index 7124e5b..76af893 100644 --- a/findmy/reports/reports.py +++ b/findmy/reports/reports.py @@ -303,9 +303,9 @@ class LocationReportsFetcher: res: dict[HasHashedPublicKey, list[LocationReport]] = {key: [] for key in keys} for report in reports: - for key in res: + for key, reports in res.items(): if key.hashed_adv_key_bytes == report.hashed_adv_key_bytes: - res[key].append(report) + reports.append(report) break return res diff --git a/findmy/scanner/__init__.py b/findmy/scanner/__init__.py index b2c0954..de8a0b5 100644 --- a/findmy/scanner/__init__.py +++ b/findmy/scanner/__init__.py @@ -7,7 +7,7 @@ from .scanner import ( ) __all__ = ( - "OfflineFindingScanner", "NearbyOfflineFindingDevice", + "OfflineFindingScanner", "SeparatedOfflineFindingDevice", ) diff --git a/findmy/scanner/scanner.py b/findmy/scanner/scanner.py index ca0d834..1f7af22 100644 --- a/findmy/scanner/scanner.py +++ b/findmy/scanner/scanner.py @@ -6,7 +6,6 @@ import asyncio import logging import time from abc import ABC, abstractmethod -from collections.abc import AsyncGenerator from datetime import datetime, timedelta from typing import TYPE_CHECKING, Any @@ -17,6 +16,8 @@ from findmy.accessory import RollingKeyPairSource from findmy.keys import HasPublicKey if TYPE_CHECKING: + from collections.abc import AsyncGenerator + from bleak.backends.device import BLEDevice from bleak.backends.scanner import AdvertisementData diff --git a/findmy/util/__init__.py b/findmy/util/__init__.py index 3f4b47c..f3a5e88 100644 --- a/findmy/util/__init__.py +++ b/findmy/util/__init__.py @@ -3,4 +3,4 @@ from .http import HttpResponse, HttpSession from .parsers import decode_plist -__all__ = ("HttpSession", "HttpResponse", "decode_plist") +__all__ = ("HttpResponse", "HttpSession", "decode_plist") diff --git a/pyproject.toml b/pyproject.toml index 7023ccd..8f8c478 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -53,8 +53,6 @@ select = [ "ALL", ] ignore = [ - "ANN101", # annotations on `self` - "ANN102", # annotations on `cls` "FIX002", # resolving TODOs "D203", # one blank line before class docstring