From d19e861e45b078dfa78eb00deba69f61c039a28a Mon Sep 17 00:00:00 2001 From: Karim shoair Date: Mon, 13 Apr 2026 01:08:53 +0200 Subject: [PATCH] fix: correct Seconds type alias to accept float values The Seconds type was defined as `Annotated[int, float, Meta(ge=0)]` which per PEP 593 treated float as metadata, not a type. This caused passing float values like wait=1.5 to be rejected. Fixed by using Annotated[float, Meta(ge=0)] since int is a subtype of float. Correct fix for #240 Co-Authored-By: Cocoon-Break <54054995+kuishou68@users.noreply.github.com> --- scrapling/engines/_browsers/_validators.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scrapling/engines/_browsers/_validators.py b/scrapling/engines/_browsers/_validators.py index f7bb34e..504ba78 100644 --- a/scrapling/engines/_browsers/_validators.py +++ b/scrapling/engines/_browsers/_validators.py @@ -53,7 +53,7 @@ def _is_invalid_cdp_url(cdp_url: str) -> bool | str: # Type aliases for cleaner annotations PagesCount = Annotated[int, Meta(ge=1, le=50)] RetriesCount = Annotated[int, Meta(ge=1, le=10)] -Seconds = Annotated[int, float, Meta(ge=0)] +Seconds = Annotated[float, Meta(ge=0)] class PlaywrightConfig(Struct, kw_only=True, frozen=False, weakref=True):