Skip to content

Commit baf3387

Browse files
authored
Merge pull request #81 from imagekit-developer/release-please--branches--master--changes--next
release: 5.4.0
2 parents a8c0285 + 9b7347c commit baf3387

25 files changed

+312
-45
lines changed

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "5.3.0"
2+
".": "5.4.0"
33
}

.stats.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 48
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/imagekit-inc%2Fimagekit-63aff1629530786015da3c86131afa8a9b60545d488884b77641f1d4b89c6e9d.yml
3-
openapi_spec_hash: 586d357bd7e5217d240a99e0d83c6d1f
4-
config_hash: 47cb702ee2cb52c58d803ae39ade9b44
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/imagekit-inc%2Fimagekit-70c42eda2bee929830b2537f758400a58dded1f1ef5686a286e2469c35a041a0.yml
3+
openapi_spec_hash: cdaeed824e91657b45092765cf55eb42
4+
config_hash: e3c2679d25f6235381dfb11962fbf3d9

CHANGELOG.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,35 @@
11
# Changelog
22

3+
## 5.4.0 (2026-04-13)
4+
5+
Full Changelog: [v5.3.0...v5.4.0](https://github.com/imagekit-developer/imagekit-python/compare/v5.3.0...v5.4.0)
6+
7+
### Features
8+
9+
* **api:** dam related webhook events ([8803680](https://github.com/imagekit-developer/imagekit-python/commit/8803680ae4bb3ea801d71520cc1354b7a1558bc6))
10+
* **api:** fix spec indentation ([1a2417d](https://github.com/imagekit-developer/imagekit-python/commit/1a2417d4336d1b9403eb1bc2b65187209fe833c7))
11+
* **api:** indentation fix ([6ad7341](https://github.com/imagekit-developer/imagekit-python/commit/6ad7341af30e43252519a3c44826be408323cbbe))
12+
* **api:** merge with main to bring back missing parameters ([a07e952](https://github.com/imagekit-developer/imagekit-python/commit/a07e95275e50dcd975f3ec816420eee7645ce223))
13+
* **api:** update webhook event names and remove DAM prefix ([bf9e082](https://github.com/imagekit-developer/imagekit-python/commit/bf9e082da50cea2f983b5bd88caca825e5039ec5))
14+
15+
16+
### Bug Fixes
17+
18+
* **api:** extract shared schemas to prevent Go webhook union breaking changes ([9dcc234](https://github.com/imagekit-developer/imagekit-python/commit/9dcc234c1a5cd387a0989806819ced1b823277c0))
19+
* **api:** rename DamFile events to File for consistency ([16b113f](https://github.com/imagekit-developer/imagekit-python/commit/16b113f1e6f42b4ac1af43c4cf0567cae55f6ecf))
20+
* **client:** preserve hardcoded query params when merging with user params ([cbdc71f](https://github.com/imagekit-developer/imagekit-python/commit/cbdc71fee37ce26c0a05cabc55cb03b46c29b216))
21+
* ensure file data are only sent as 1 parameter ([aa0272a](https://github.com/imagekit-developer/imagekit-python/commit/aa0272a8fe212b1a841031d25fddaa49359ec9d9))
22+
23+
24+
### Documentation
25+
26+
* improve examples ([bc9d18e](https://github.com/imagekit-developer/imagekit-python/commit/bc9d18e102e37ad28dfe7181cbc3b8323ed79cb2))
27+
28+
29+
### Refactors
30+
31+
* AITags to singular AITag schema with array items pattern ([96ad1bb](https://github.com/imagekit-developer/imagekit-python/commit/96ad1bb10dbfdad7112d82f5b6cc7199429e0fe3))
32+
333
## 5.3.0 (2026-04-06)
434

535
Full Changelog: [v5.2.0...v5.3.0](https://github.com/imagekit-developer/imagekit-python/compare/v5.2.0...v5.3.0)

api.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,11 @@ Types:
265265
```python
266266
from imagekitio.types import (
267267
BaseWebhookEvent,
268+
FileCreateEvent,
269+
FileDeleteEvent,
270+
FileUpdateEvent,
271+
FileVersionCreateEvent,
272+
FileVersionDeleteEvent,
268273
UploadPostTransformErrorEvent,
269274
UploadPostTransformSuccessEvent,
270275
UploadPreTransformErrorEvent,

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "imagekitio"
3-
version = "5.3.0"
3+
version = "5.4.0"
44
description = "The official Python library for the ImageKit API"
55
dynamic = ["readme"]
66
license = "Apache-2.0"

src/imagekitio/_base_client.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -540,6 +540,10 @@ def _build_request(
540540
files = cast(HttpxRequestFiles, ForceMultipartDict())
541541

542542
prepared_url = self._prepare_url(options.url)
543+
# preserve hard-coded query params from the url
544+
if params and prepared_url.query:
545+
params = {**dict(prepared_url.params.items()), **params}
546+
prepared_url = prepared_url.copy_with(raw_path=prepared_url.raw_path.split(b"?", 1)[0])
543547
if "_" in prepared_url.host:
544548
# work around https://github.com/encode/httpx/discussions/2880
545549
kwargs["extensions"] = {"sni_hostname": prepared_url.host.replace("_", "-")}

src/imagekitio/_utils/_utils.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,8 +86,9 @@ def _extract_items(
8686
index += 1
8787
if is_dict(obj):
8888
try:
89-
# We are at the last entry in the path so we must remove the field
90-
if (len(path)) == index:
89+
# Remove the field if there are no more dict keys in the path,
90+
# only "<array>" traversal markers or end.
91+
if all(p == "<array>" for p in path[index:]):
9192
item = obj.pop(key)
9293
else:
9394
item = obj[key]

src/imagekitio/_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
22

33
__title__ = "imagekitio"
4-
__version__ = "5.3.0" # x-release-please-version
4+
__version__ = "5.4.0" # x-release-please-version

src/imagekitio/types/__init__.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@
3333
from .file_copy_params import FileCopyParams as FileCopyParams
3434
from .file_move_params import FileMoveParams as FileMoveParams
3535
from .asset_list_params import AssetListParams as AssetListParams
36+
from .file_create_event import FileCreateEvent as FileCreateEvent
37+
from .file_delete_event import FileDeleteEvent as FileDeleteEvent
38+
from .file_update_event import FileUpdateEvent as FileUpdateEvent
3639
from .base_webhook_event import BaseWebhookEvent as BaseWebhookEvent
3740
from .file_copy_response import FileCopyResponse as FileCopyResponse
3841
from .file_move_response import FileMoveResponse as FileMoveResponse
@@ -56,6 +59,8 @@
5659
from .folder_create_response import FolderCreateResponse as FolderCreateResponse
5760
from .folder_delete_response import FolderDeleteResponse as FolderDeleteResponse
5861
from .folder_rename_response import FolderRenameResponse as FolderRenameResponse
62+
from .file_version_create_event import FileVersionCreateEvent as FileVersionCreateEvent
63+
from .file_version_delete_event import FileVersionDeleteEvent as FileVersionDeleteEvent
5964
from .update_file_request_param import UpdateFileRequestParam as UpdateFileRequestParam
6065
from .unsafe_unwrap_webhook_event import UnsafeUnwrapWebhookEvent as UnsafeUnwrapWebhookEvent
6166
from .saved_extension_create_params import SavedExtensionCreateParams as SavedExtensionCreateParams

src/imagekitio/types/beta/v2/file_upload_response.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,17 +12,21 @@
1212

1313

1414
class AITag(BaseModel):
15+
"""AI-generated tag associated with an image.
16+
17+
These tags can be added using the `google-auto-tagging` or `aws-auto-tagging` extensions.
18+
"""
19+
1520
confidence: Optional[float] = None
1621
"""Confidence score of the tag."""
1722

1823
name: Optional[str] = None
1924
"""Name of the tag."""
2025

2126
source: Optional[str] = None
22-
"""Array of `AITags` associated with the image.
27+
"""Source of the tag.
2328
24-
If no `AITags` are set, it will be null. These tags can be added using the
25-
`google-auto-tagging` or `aws-auto-tagging` extensions.
29+
Possible values are `google-auto-tagging` and `aws-auto-tagging`.
2630
"""
2731

2832

0 commit comments

Comments
 (0)