Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
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
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.31.0"
".": "0.32.0"
}
6 changes: 3 additions & 3 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 645
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/gcore%2Fgcore-58d9afa7f8342ead022bd8fa12bb8abbeb9c0fb1e16f052ee6c4a59fae373e27.yml
openapi_spec_hash: 2ae4db03cfc907be71d44288503838d7
config_hash: 8d4711ed72633b7443249124a49781da
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/gcore%2Fgcore-afac9651736e871ab5942174b1c2b741d31f17c1f4ac61e78f0000f1b3fd8d09.yml
openapi_spec_hash: 9c57a763b4c6b82b581defdcaf5f52df
config_hash: 7552912a8ca7c67b43b97f51b67a5ae7
28 changes: 28 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,33 @@
# Changelog

## 0.32.0 (2026-02-11)

Full Changelog: [v0.31.0...v0.32.0](https://github.com/G-Core/gcore-python/compare/v0.31.0...v0.32.0)

### Features

* **api:** aggregated API specs update ([a87437e](https://github.com/G-Core/gcore-python/commit/a87437e0d582d22c1f4f29bd585c7f757dcb4021))
* **api:** aggregated API specs update ([c9079e1](https://github.com/G-Core/gcore-python/commit/c9079e1461f0e43df0bae0150a37c48febe557aa))
* **api:** aggregated API specs update ([d0391a2](https://github.com/G-Core/gcore-python/commit/d0391a2bc77db00787ab6ebdaa46540f0a09fb4f))
* **api:** aggregated API specs update ([65973ea](https://github.com/G-Core/gcore-python/commit/65973ea8e16ca432498ef3772e47e9927c92a03d))
* **api:** aggregated API specs update ([732e36f](https://github.com/G-Core/gcore-python/commit/732e36f7509e3036b7800a809f14f364d47d9138))
* **api:** aggregated API specs update ([3b5292a](https://github.com/G-Core/gcore-python/commit/3b5292a5403a6cfa880072fbbb8dde2ca311f0bd))
* **api:** aggregated API specs update ([9bf5580](https://github.com/G-Core/gcore-python/commit/9bf55800ab1b90ac5f82e406b31fd61a5225afd9))


### Bug Fixes

* **cloud:** fix type in create_and_poll signature of load balancer listeners ([#146](https://github.com/G-Core/gcore-python/issues/146)) ([f99858a](https://github.com/G-Core/gcore-python/commit/f99858a1864e0142781c51f877c080a3b3f417cd))
* **fastedge:** remove readOnly name from app_store required fields ([b373e1a](https://github.com/G-Core/gcore-python/commit/b373e1a1b1dcc27962f61af8fc11047f79938801))
* **types:** correctly define false enum ([d5b033c](https://github.com/G-Core/gcore-python/commit/d5b033ca9bd2e52d248b979f739124b5a5c4de72))


### Chores

* **api:** minor updates ([b999f2c](https://github.com/G-Core/gcore-python/commit/b999f2c9623fa690a14fbc826aa51cb030121e47))
* **internal:** bump dependencies ([e5a7288](https://github.com/G-Core/gcore-python/commit/e5a7288a0957da491df6c2cedb2275cbe7d99e11))
* **internal:** fix lint error on Python 3.14 ([60245d0](https://github.com/G-Core/gcore-python/commit/60245d056b32bc23783f135102fe2acfe6627f88))

## 0.31.0 (2026-01-30)

Full Changelog: [v0.30.0...v0.31.0](https://github.com/G-Core/gcore-python/compare/v0.30.0...v0.31.0)
Expand Down
12 changes: 3 additions & 9 deletions api.md
Original file line number Diff line number Diff line change
Expand Up @@ -1658,21 +1658,15 @@ Methods:
Types:

```python
from gcore.types.fastedge import (
KvStore,
KvStoreShort,
KvStoreStats,
KvStoreListResponse,
KvStoreGetResponse,
)
from gcore.types.fastedge import KvStore, KvStoreShort, KvStoreCreateResponse, KvStoreListResponse
```

Methods:

- <code title="post /fastedge/v1/kv">client.fastedge.kv_stores.<a href="./src/gcore/resources/fastedge/kv_stores.py">create</a>(\*\*<a href="src/gcore/types/fastedge/kv_store_create_params.py">params</a>) -> <a href="./src/gcore/types/fastedge/kv_store.py">KvStore</a></code>
- <code title="post /fastedge/v1/kv">client.fastedge.kv_stores.<a href="./src/gcore/resources/fastedge/kv_stores.py">create</a>(\*\*<a href="src/gcore/types/fastedge/kv_store_create_params.py">params</a>) -> <a href="./src/gcore/types/fastedge/kv_store_create_response.py">KvStoreCreateResponse</a></code>
- <code title="get /fastedge/v1/kv">client.fastedge.kv_stores.<a href="./src/gcore/resources/fastedge/kv_stores.py">list</a>(\*\*<a href="src/gcore/types/fastedge/kv_store_list_params.py">params</a>) -> <a href="./src/gcore/types/fastedge/kv_store_list_response.py">KvStoreListResponse</a></code>
- <code title="delete /fastedge/v1/kv/{id}">client.fastedge.kv_stores.<a href="./src/gcore/resources/fastedge/kv_stores.py">delete</a>(id) -> None</code>
- <code title="get /fastedge/v1/kv/{id}">client.fastedge.kv_stores.<a href="./src/gcore/resources/fastedge/kv_stores.py">get</a>(id) -> <a href="./src/gcore/types/fastedge/kv_store_get_response.py">KvStoreGetResponse</a></code>
- <code title="get /fastedge/v1/kv/{id}">client.fastedge.kv_stores.<a href="./src/gcore/resources/fastedge/kv_stores.py">get</a>(id) -> <a href="./src/gcore/types/fastedge/kv_store.py">KvStore</a></code>
- <code title="put /fastedge/v1/kv/{id}">client.fastedge.kv_stores.<a href="./src/gcore/resources/fastedge/kv_stores.py">replace</a>(id, \*\*<a href="src/gcore/types/fastedge/kv_store_replace_params.py">params</a>) -> <a href="./src/gcore/types/fastedge/kv_store.py">KvStore</a></code>

# Streaming
Expand Down
2 changes: 1 addition & 1 deletion examples/cloud/load_balancers.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ def get_load_balancer(*, client: Gcore, load_balancer_id: str) -> None:

def update_load_balancer(*, client: Gcore, load_balancer_id: str) -> None:
print("\n=== UPDATE LOAD BALANCER ===")
lb = client.cloud.load_balancers.update(load_balancer_id=load_balancer_id, name="gcore-go-example-updated")
lb = client.cloud.load_balancers.update(load_balancer_id=load_balancer_id, name="gcore-go-example-updated") # pyright: ignore[reportDeprecated]
print(f"Updated load balancer: ID={lb.id}, name={lb.name}")
print("========================")

Expand Down
2 changes: 1 addition & 1 deletion examples/cloud/load_balancers_async.py
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ async def get_load_balancer(*, client: AsyncGcore, load_balancer_id: str) -> Non

async def update_load_balancer(*, client: AsyncGcore, load_balancer_id: str) -> None:
print("\n=== UPDATE LOAD BALANCER ===")
lb = await client.cloud.load_balancers.update(load_balancer_id=load_balancer_id, name="gcore-go-example-updated")
lb = await client.cloud.load_balancers.update(load_balancer_id=load_balancer_id, name="gcore-go-example-updated") # pyright: ignore[reportDeprecated]
print(f"Updated load balancer: ID={lb.id}, name={lb.name}")
print("========================")

Expand Down
2 changes: 1 addition & 1 deletion examples/cloud/networks.py
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ def get_router(*, client: Gcore, router_id: str) -> None:

def update_router(*, client: Gcore, router_id: str) -> None:
print("\n=== UPDATE ROUTER ===")
router = client.cloud.networks.routers.update(router_id=router_id, name="gcore-go-example-updated")
router = client.cloud.networks.routers.update(router_id=router_id, name="gcore-go-example-updated") # pyright: ignore[reportDeprecated]
print(f"Updated router: ID={router.id}, name={router.name}")
print("========================")

Expand Down
2 changes: 1 addition & 1 deletion examples/cloud/networks_async.py
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ async def get_router(*, client: AsyncGcore, router_id: str) -> None:

async def update_router(*, client: AsyncGcore, router_id: str) -> None:
print("\n=== UPDATE ROUTER ===")
router = await client.cloud.networks.routers.update(router_id=router_id, name="gcore-go-example-updated")
router = await client.cloud.networks.routers.update(router_id=router_id, name="gcore-go-example-updated") # pyright: ignore[reportDeprecated]
print(f"Updated router: ID={router.id}, name={router.name}")
print("========================")

Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "gcore"
version = "0.31.0"
version = "0.32.0"
description = "The official Python library for the gcore API"
dynamic = ["readme"]
license = "Apache-2.0"
Expand Down
20 changes: 10 additions & 10 deletions requirements-dev.lock
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,14 @@
-e file:.
aiohappyeyeballs==2.6.1
# via aiohttp
aiohttp==3.13.2
aiohttp==3.13.3
# via gcore
# via httpx-aiohttp
aiosignal==1.4.0
# via aiohttp
annotated-types==0.7.0
# via pydantic
anyio==4.12.0
anyio==4.12.1
# via gcore
# via httpx
argcomplete==3.6.3
Expand All @@ -31,7 +31,7 @@ attrs==25.4.0
# via nox
backports-asyncio-runner==1.2.0
# via pytest-asyncio
certifi==2025.11.12
certifi==2026.1.4
# via httpcore
# via httpx
colorama==0.4.6
Expand Down Expand Up @@ -64,15 +64,15 @@ httpx==0.28.1
# via gcore
# via httpx-aiohttp
# via respx
httpx-aiohttp==0.1.9
httpx-aiohttp==0.1.12
# via gcore
humanize==4.13.0
# via nox
idna==3.11
# via anyio
# via httpx
# via yarl
importlib-metadata==8.7.0
importlib-metadata==8.7.1
iniconfig==2.1.0
# via pytest
markdown-it-py==3.0.0
Expand All @@ -85,14 +85,14 @@ multidict==6.7.0
mypy==1.17.0
mypy-extensions==1.1.0
# via mypy
nodeenv==1.9.1
nodeenv==1.10.0
# via pyright
nox==2025.11.12
packaging==25.0
# via dependency-groups
# via nox
# via pytest
pathspec==0.12.1
pathspec==1.0.3
# via mypy
platformdirs==4.4.0
# via virtualenv
Expand Down Expand Up @@ -121,13 +121,13 @@ pytz==2023.3.post1
# via dirty-equals
respx==0.22.0
rich==14.2.0
ruff==0.14.7
ruff==0.14.13
six==1.17.0
# via python-dateutil
sniffio==1.3.1
# via gcore
time-machine==2.19.0
tomli==2.3.0
tomli==2.4.0
# via dependency-groups
# via mypy
# via nox
Expand All @@ -147,7 +147,7 @@ typing-extensions==4.15.0
# via virtualenv
typing-inspection==0.4.2
# via pydantic
virtualenv==20.35.4
virtualenv==20.36.1
# via nox
yarl==1.22.0
# via aiohttp
Expand Down
8 changes: 4 additions & 4 deletions requirements.lock
Original file line number Diff line number Diff line change
Expand Up @@ -12,21 +12,21 @@
-e file:.
aiohappyeyeballs==2.6.1
# via aiohttp
aiohttp==3.13.2
aiohttp==3.13.3
# via gcore
# via httpx-aiohttp
aiosignal==1.4.0
# via aiohttp
annotated-types==0.7.0
# via pydantic
anyio==4.12.0
anyio==4.12.1
# via gcore
# via httpx
async-timeout==5.0.1
# via aiohttp
attrs==25.4.0
# via aiohttp
certifi==2025.11.12
certifi==2026.1.4
# via httpcore
# via httpx
distro==1.9.0
Expand All @@ -43,7 +43,7 @@ httpcore==1.0.9
httpx==0.28.1
# via gcore
# via httpx-aiohttp
httpx-aiohttp==0.1.9
httpx-aiohttp==0.1.12
# via gcore
idna==3.11
# via anyio
Expand Down
2 changes: 1 addition & 1 deletion src/gcore/_utils/_compat.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ def is_union(tp: Optional[Type[Any]]) -> bool:
else:
import types

return tp is Union or tp is types.UnionType
return tp is Union or tp is types.UnionType # type: ignore[comparison-overlap]


def is_typeddict(tp: Type[Any]) -> bool:
Expand Down
2 changes: 1 addition & 1 deletion src/gcore/_version.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

__title__ = "gcore"
__version__ = "0.31.0" # x-release-please-version
__version__ = "0.32.0" # x-release-please-version
Loading
Loading