From 822e0bc0f50120b25dfdb85d68b53202bb1bd588 Mon Sep 17 00:00:00 2001 From: fern-api <115122769+fern-api[bot]@users.noreply.github.com> Date: Wed, 26 Mar 2025 14:56:35 +0000 Subject: [PATCH 1/3] SDK regeneration --- poetry.lock | 14 +++++++------- pyproject.toml | 2 +- reference.md | 8 ++++++++ src/scrapybara/base_client.py | 8 ++++++++ src/scrapybara/core/client_wrapper.py | 2 +- 5 files changed, 25 insertions(+), 9 deletions(-) diff --git a/poetry.lock b/poetry.lock index 12b0f2c..b603c94 100644 --- a/poetry.lock +++ b/poetry.lock @@ -144,13 +144,13 @@ all = ["flake8 (>=7.1.1)", "mypy (>=1.11.2)", "pytest (>=8.3.2)", "ruff (>=0.6.2 [[package]] name = "iniconfig" -version = "2.0.0" +version = "2.1.0" description = "brain-dead simple config-ini parsing" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "iniconfig-2.0.0-py3-none-any.whl", hash = "sha256:b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"}, - {file = "iniconfig-2.0.0.tar.gz", hash = "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3"}, + {file = "iniconfig-2.1.0-py3-none-any.whl", hash = "sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760"}, + {file = "iniconfig-2.1.0.tar.gz", hash = "sha256:3abbd2e30b36733fee78f9c7f7308f2d0050e88f0087fd25c2645f63c773e1c7"}, ] [[package]] @@ -525,13 +525,13 @@ files = [ [[package]] name = "typing-extensions" -version = "4.12.2" +version = "4.13.0" description = "Backported and Experimental Type Hints for Python 3.8+" optional = false python-versions = ">=3.8" files = [ - {file = "typing_extensions-4.12.2-py3-none-any.whl", hash = "sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d"}, - {file = "typing_extensions-4.12.2.tar.gz", hash = "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"}, + {file = "typing_extensions-4.13.0-py3-none-any.whl", hash = "sha256:c8dd92cc0d6425a97c18fbb9d1954e5ff92c1ca881a309c45f06ebc0b79058e5"}, + {file = "typing_extensions-4.13.0.tar.gz", hash = "sha256:0a4ac55a5820789d87e297727d229866c9650f6521b64206413c4fbada24d95b"}, ] [metadata] diff --git a/pyproject.toml b/pyproject.toml index 25b78d7..84eda73 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,7 +3,7 @@ name = "scrapybara" [tool.poetry] name = "scrapybara" -version = "2.4.2" +version = "2.4.3" description = "" readme = "README.md" authors = [] diff --git a/reference.md b/reference.md index b2628fa..5cf384f 100644 --- a/reference.md +++ b/reference.md @@ -57,6 +57,14 @@ client.start()
+**resolution:** `typing.Optional[typing.Sequence[int]]` + +
+
+ +
+
+ **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
diff --git a/src/scrapybara/base_client.py b/src/scrapybara/base_client.py index d0edfa8..29e6ec6 100644 --- a/src/scrapybara/base_client.py +++ b/src/scrapybara/base_client.py @@ -108,6 +108,7 @@ def start( instance_type: typing.Optional[DeploymentConfigInstanceType] = OMIT, timeout_hours: typing.Optional[float] = OMIT, blocked_domains: typing.Optional[typing.Sequence[str]] = OMIT, + resolution: typing.Optional[typing.Sequence[int]] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> GetInstanceResponse: """ @@ -119,6 +120,8 @@ def start( blocked_domains : typing.Optional[typing.Sequence[str]] + resolution : typing.Optional[typing.Sequence[int]] + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -143,6 +146,7 @@ def start( "instance_type": instance_type, "timeout_hours": timeout_hours, "blocked_domains": blocked_domains, + "resolution": resolution, }, headers={ "content-type": "application/json", @@ -388,6 +392,7 @@ async def start( instance_type: typing.Optional[DeploymentConfigInstanceType] = OMIT, timeout_hours: typing.Optional[float] = OMIT, blocked_domains: typing.Optional[typing.Sequence[str]] = OMIT, + resolution: typing.Optional[typing.Sequence[int]] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> GetInstanceResponse: """ @@ -399,6 +404,8 @@ async def start( blocked_domains : typing.Optional[typing.Sequence[str]] + resolution : typing.Optional[typing.Sequence[int]] + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -431,6 +438,7 @@ async def main() -> None: "instance_type": instance_type, "timeout_hours": timeout_hours, "blocked_domains": blocked_domains, + "resolution": resolution, }, headers={ "content-type": "application/json", diff --git a/src/scrapybara/core/client_wrapper.py b/src/scrapybara/core/client_wrapper.py index 4bbd3e6..f03289d 100644 --- a/src/scrapybara/core/client_wrapper.py +++ b/src/scrapybara/core/client_wrapper.py @@ -16,7 +16,7 @@ def get_headers(self) -> typing.Dict[str, str]: headers: typing.Dict[str, str] = { "X-Fern-Language": "Python", "X-Fern-SDK-Name": "scrapybara", - "X-Fern-SDK-Version": "2.4.2", + "X-Fern-SDK-Version": "2.4.3", } headers["x-api-key"] = self.api_key return headers From ad1f8f37f9b35d52a0ec6157710b4527a18bacc7 Mon Sep 17 00:00:00 2001 From: Cooper Miller Date: Wed, 26 Mar 2025 10:18:25 -0500 Subject: [PATCH 2/3] feat: custom resolution --- src/scrapybara/client.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/scrapybara/client.py b/src/scrapybara/client.py index acca6f7..363dd08 100644 --- a/src/scrapybara/client.py +++ b/src/scrapybara/client.py @@ -1564,12 +1564,14 @@ def start_ubuntu( *, timeout_hours: Optional[float] = OMIT, blocked_domains: Optional[Sequence[str]] = OMIT, + resolution: typing.Optional[typing.Sequence[int]] = OMIT, request_options: Optional[RequestOptions] = None, ) -> UbuntuInstance: response = self._base_client.start( instance_type="ubuntu", timeout_hours=timeout_hours, blocked_domains=blocked_domains, + resolution=resolution, request_options=request_options, ) return UbuntuInstance( @@ -1584,12 +1586,14 @@ def start_browser( *, timeout_hours: Optional[float] = OMIT, blocked_domains: Optional[Sequence[str]] = OMIT, + resolution: typing.Optional[typing.Sequence[int]] = OMIT, request_options: Optional[RequestOptions] = None, ) -> BrowserInstance: response = self._base_client.start( instance_type="browser", timeout_hours=timeout_hours, blocked_domains=blocked_domains, + resolution=resolution, request_options=request_options, ) return BrowserInstance( @@ -2020,12 +2024,14 @@ async def start_ubuntu( *, timeout_hours: Optional[float] = OMIT, blocked_domains: Optional[Sequence[str]] = OMIT, + resolution: typing.Optional[typing.Sequence[int]] = OMIT, request_options: Optional[RequestOptions] = None, ) -> AsyncUbuntuInstance: response = await self._base_client.start( instance_type="ubuntu", timeout_hours=timeout_hours, blocked_domains=blocked_domains, + resolution=resolution, request_options=request_options, ) return AsyncUbuntuInstance( @@ -2040,12 +2046,14 @@ async def start_browser( *, timeout_hours: Optional[float] = OMIT, blocked_domains: Optional[Sequence[str]] = OMIT, + resolution: typing.Optional[typing.Sequence[int]] = OMIT, request_options: Optional[RequestOptions] = None, ) -> AsyncBrowserInstance: response = await self._base_client.start( instance_type="browser", timeout_hours=timeout_hours, blocked_domains=blocked_domains, + resolution=resolution, request_options=request_options, ) return AsyncBrowserInstance( From 743c5b7963ee7a7f53692a1bacd394821e094512 Mon Sep 17 00:00:00 2001 From: Cooper Miller Date: Wed, 26 Mar 2025 10:20:03 -0500 Subject: [PATCH 3/3] typo --- src/scrapybara/client.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/scrapybara/client.py b/src/scrapybara/client.py index 363dd08..74271ad 100644 --- a/src/scrapybara/client.py +++ b/src/scrapybara/client.py @@ -1564,7 +1564,7 @@ def start_ubuntu( *, timeout_hours: Optional[float] = OMIT, blocked_domains: Optional[Sequence[str]] = OMIT, - resolution: typing.Optional[typing.Sequence[int]] = OMIT, + resolution: Optional[Sequence[int]] = OMIT, request_options: Optional[RequestOptions] = None, ) -> UbuntuInstance: response = self._base_client.start( @@ -1586,7 +1586,7 @@ def start_browser( *, timeout_hours: Optional[float] = OMIT, blocked_domains: Optional[Sequence[str]] = OMIT, - resolution: typing.Optional[typing.Sequence[int]] = OMIT, + resolution: Optional[Sequence[int]] = OMIT, request_options: Optional[RequestOptions] = None, ) -> BrowserInstance: response = self._base_client.start( @@ -2024,7 +2024,7 @@ async def start_ubuntu( *, timeout_hours: Optional[float] = OMIT, blocked_domains: Optional[Sequence[str]] = OMIT, - resolution: typing.Optional[typing.Sequence[int]] = OMIT, + resolution: Optional[Sequence[int]] = OMIT, request_options: Optional[RequestOptions] = None, ) -> AsyncUbuntuInstance: response = await self._base_client.start( @@ -2046,7 +2046,7 @@ async def start_browser( *, timeout_hours: Optional[float] = OMIT, blocked_domains: Optional[Sequence[str]] = OMIT, - resolution: typing.Optional[typing.Sequence[int]] = OMIT, + resolution: Optional[Sequence[int]] = OMIT, request_options: Optional[RequestOptions] = None, ) -> AsyncBrowserInstance: response = await self._base_client.start(