Skip to content

Commit a8c0285

Browse files
authored
Merge pull request #80 from imagekit-developer/release-please--branches--master--changes--next
release: 5.3.0
2 parents da0a8be + 51907a7 commit a8c0285

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+1192
-759
lines changed

.github/workflows/ci.yml

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
name: CI
22
on:
33
push:
4-
branches-ignore:
5-
- 'generated'
6-
- 'codegen/**'
7-
- 'integrated/**'
8-
- 'stl-preview-head/**'
9-
- 'stl-preview-base/**'
4+
branches:
5+
- '**'
6+
- '!integrated/**'
7+
- '!stl-preview-head/**'
8+
- '!stl-preview-base/**'
9+
- '!generated'
10+
- '!codegen/**'
11+
- 'codegen/stl/**'
1012
pull_request:
1113
branches-ignore:
1214
- 'stl-preview-head/**'
@@ -17,7 +19,7 @@ jobs:
1719
timeout-minutes: 10
1820
name: lint
1921
runs-on: ${{ github.repository == 'stainless-sdks/imagekit-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
20-
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
22+
if: (github.event_name == 'push' || github.event.pull_request.head.repo.fork) && (github.event_name != 'push' || github.event.head_commit.message != 'codegen metadata')
2123
steps:
2224
- uses: actions/checkout@v6
2325

@@ -36,7 +38,7 @@ jobs:
3638
run: ./scripts/lint
3739

3840
build:
39-
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
41+
if: (github.event_name == 'push' || github.event.pull_request.head.repo.fork) && (github.event_name != 'push' || github.event.head_commit.message != 'codegen metadata')
4042
timeout-minutes: 10
4143
name: build
4244
permissions:
@@ -61,14 +63,18 @@ jobs:
6163
run: rye build
6264

6365
- name: Get GitHub OIDC Token
64-
if: github.repository == 'stainless-sdks/imagekit-python'
66+
if: |-
67+
github.repository == 'stainless-sdks/imagekit-python' &&
68+
!startsWith(github.ref, 'refs/heads/stl/')
6569
id: github-oidc
6670
uses: actions/github-script@v8
6771
with:
6872
script: core.setOutput('github_token', await core.getIDToken());
6973

7074
- name: Upload tarball
71-
if: github.repository == 'stainless-sdks/imagekit-python'
75+
if: |-
76+
github.repository == 'stainless-sdks/imagekit-python' &&
77+
!startsWith(github.ref, 'refs/heads/stl/')
7278
env:
7379
URL: https://pkg.stainless.com/s
7480
AUTH: ${{ steps.github-oidc.outputs.github_token }}

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
.prism.log
2+
.stdy.log
23
_dev
34

45
__pycache__

.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.2.0"
2+
".": "5.3.0"
33
}

.stats.yml

Lines changed: 2 additions & 2 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-13fc3d7cafdea492f62eef7c1d63424d6d9d8adbff74b9f6ca6fd3fc12a36840.yml
3-
openapi_spec_hash: a1fe6fa48207791657a1ea2d60a6dfcc
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/imagekit-inc%2Fimagekit-63aff1629530786015da3c86131afa8a9b60545d488884b77641f1d4b89c6e9d.yml
3+
openapi_spec_hash: 586d357bd7e5217d240a99e0d83c6d1f
44
config_hash: 47cb702ee2cb52c58d803ae39ade9b44

CHANGELOG.md

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

3+
## 5.3.0 (2026-04-06)
4+
5+
Full Changelog: [v5.2.0...v5.3.0](https://github.com/imagekit-developer/imagekit-python/compare/v5.2.0...v5.3.0)
6+
7+
### Features
8+
9+
* **api:** dpr type update ([39d38db](https://github.com/imagekit-developer/imagekit-python/commit/39d38dbd0ca1e81dc84771e6a98a629f90e8dba9))
10+
* **api:** Introduce lxc, lyc, lap parameters in overlays. ([5c9a08b](https://github.com/imagekit-developer/imagekit-python/commit/5c9a08b40db8734d022ff4670b8cf9204b2841fd))
11+
* **api:** revert dpr breaking change ([7301276](https://github.com/imagekit-developer/imagekit-python/commit/73012764930ba8b461f98bbfd0349b395e46a7a4))
12+
* **client:** import HelperResource and AsyncHelperResource in TYPE_CHECKING block ([22fc9cb](https://github.com/imagekit-developer/imagekit-python/commit/22fc9cb33d8c5724b0a042cc014ed6bdd54f7113))
13+
* **internal:** implement indices array format for query and form serialization ([4533c28](https://github.com/imagekit-developer/imagekit-python/commit/4533c2831ad26cf5ef53da37c8d4fe095bb67bd8))
14+
* **overlay:** support camelCase and snake_case for position properties in overlays ([5dd43b9](https://github.com/imagekit-developer/imagekit-python/commit/5dd43b9d84722fa62ffff4b8985282489003aa13))
15+
16+
17+
### Bug Fixes
18+
19+
* **deps:** bump minimum typing-extensions version ([393174d](https://github.com/imagekit-developer/imagekit-python/commit/393174d253a106393b888aed50f9ca7623c9c06e))
20+
* **pydantic:** do not pass `by_alias` unless set ([fda01e4](https://github.com/imagekit-developer/imagekit-python/commit/fda01e45e315c192d24a6183cd24fd43cbcb0722))
21+
* sanitize endpoint path params ([fa1972c](https://github.com/imagekit-developer/imagekit-python/commit/fa1972cd605c2a7a81ad069161cc687d0ec4193d))
22+
23+
24+
### Chores
25+
26+
* **ci:** skip lint on metadata-only changes ([5e9e6f3](https://github.com/imagekit-developer/imagekit-python/commit/5e9e6f35ba227e2fda57cb343f26f0ad0bcbb584))
27+
* **ci:** skip uploading artifacts on stainless-internal branches ([15805f5](https://github.com/imagekit-developer/imagekit-python/commit/15805f5e6b642f0cebfbc8131f99f886e8e72e99))
28+
* **dependencies:** require standardwebhooks 1.0.1 ([f7c4465](https://github.com/imagekit-developer/imagekit-python/commit/f7c44652ef95cfa1aefef380d280036158519007))
29+
* format all `api.md` files ([09cbb17](https://github.com/imagekit-developer/imagekit-python/commit/09cbb17e722d374477b13fd4045201ab75ddcc7e))
30+
* **internal:** add request options to SSE classes ([c0dee43](https://github.com/imagekit-developer/imagekit-python/commit/c0dee43afe3bc1f6ea35649532594e59fb4b8953))
31+
* **internal:** bump dependencies ([6702b4b](https://github.com/imagekit-developer/imagekit-python/commit/6702b4bcd12af1d670a4b73a7d9bedd68ccc5560))
32+
* **internal:** fix lint error on Python 3.14 ([89d503b](https://github.com/imagekit-developer/imagekit-python/commit/89d503b2a885f57edbbd6ffded3d1cddac61a53e))
33+
* **internal:** make `test_proxy_environment_variables` more resilient ([821dd3f](https://github.com/imagekit-developer/imagekit-python/commit/821dd3f61db9b2be3297dc1b8a9e63d257df9ed1))
34+
* **internal:** make `test_proxy_environment_variables` more resilient to env ([487887e](https://github.com/imagekit-developer/imagekit-python/commit/487887eb0e4c405c0f8294e6a82ef6c7a2187c5c))
35+
* **internal:** remove mock server code ([978ed61](https://github.com/imagekit-developer/imagekit-python/commit/978ed611a909e2d616b322e23bfe3d14e8f256f4))
36+
* **internal:** tweak CI branches ([369ff73](https://github.com/imagekit-developer/imagekit-python/commit/369ff736880f83ac7196411241801fe9b04a7dfb))
37+
* **internal:** update gitignore ([ab04623](https://github.com/imagekit-developer/imagekit-python/commit/ab04623fdceb9337d9519b119ead7949f1d4ed2f))
38+
* **tests:** update webhook tests ([d94ada8](https://github.com/imagekit-developer/imagekit-python/commit/d94ada85d3c70d8f896fe276d73afd6c3fb17326))
39+
* update mock server docs ([54f47c6](https://github.com/imagekit-developer/imagekit-python/commit/54f47c663b48f2b6a88bf05ba26a0f2a139ee752))
40+
* update placeholder string ([d06cdca](https://github.com/imagekit-developer/imagekit-python/commit/d06cdca52df17c23df1d9cd8a468b8184bde219a))
41+
342
## 5.2.0 (2026-02-02)
443

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

CONTRIBUTING.md

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -85,13 +85,6 @@ $ pip install ./path-to-wheel-file.whl
8585

8686
## Running tests
8787

88-
Most tests require you to [set up a mock server](https://github.com/stoplightio/prism) against the OpenAPI spec to run the tests.
89-
90-
```sh
91-
# you will need npm installed
92-
$ npx prism mock path/to/your/openapi.yml
93-
```
94-
9588
```sh
9689
$ ./scripts/test
9790
```

pyproject.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "imagekitio"
3-
version = "5.2.0"
3+
version = "5.3.0"
44
description = "The official Python library for the ImageKit API"
55
dynamic = ["readme"]
66
license = "Apache-2.0"
@@ -11,7 +11,7 @@ authors = [
1111
dependencies = [
1212
"httpx>=0.23.0, <1",
1313
"pydantic>=1.9.0, <3",
14-
"typing-extensions>=4.10, <5",
14+
"typing-extensions>=4.14, <5",
1515
"anyio>=3.5.0, <5",
1616
"distro>=1.7.0, <2",
1717
"sniffio",
@@ -42,7 +42,7 @@ Repository = "https://github.com/imagekit-developer/imagekit-python"
4242

4343
[project.optional-dependencies]
4444
aiohttp = ["aiohttp", "httpx_aiohttp>=0.1.9"]
45-
webhooks = ["standardwebhooks"]
45+
webhooks = ["standardwebhooks >= 1.0.1, < 2"]
4646

4747
[tool.rye]
4848
managed = true
@@ -70,7 +70,7 @@ format = { chain = [
7070
# run formatting again to fix any inconsistencies when imports are stripped
7171
"format:ruff",
7272
]}
73-
"format:docs" = "python scripts/utils/ruffen-docs.py README.md api.md"
73+
"format:docs" = "bash -c 'python scripts/utils/ruffen-docs.py README.md $(find . -type f -name api.md)'"
7474
"format:ruff" = "ruff format"
7575

7676
"lint" = { chain = [

requirements-dev.lock

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,14 @@
1212
-e file:.
1313
aiohappyeyeballs==2.6.1
1414
# via aiohttp
15-
aiohttp==3.13.2
15+
aiohttp==3.13.3
1616
# via httpx-aiohttp
1717
# via imagekitio
1818
aiosignal==1.4.0
1919
# via aiohttp
2020
annotated-types==0.7.0
2121
# via pydantic
22-
anyio==4.12.0
22+
anyio==4.12.1
2323
# via httpx
2424
# via imagekitio
2525
argcomplete==3.6.3
@@ -32,7 +32,7 @@ attrs==25.4.0
3232
# via standardwebhooks
3333
backports-asyncio-runner==1.2.0
3434
# via pytest-asyncio
35-
certifi==2025.11.12
35+
certifi==2026.1.4
3636
# via httpcore
3737
# via httpx
3838
colorlog==6.10.1
@@ -65,15 +65,15 @@ httpx==0.28.1
6565
# via imagekitio
6666
# via respx
6767
# via standardwebhooks
68-
httpx-aiohttp==0.1.9
68+
httpx-aiohttp==0.1.12
6969
# via imagekitio
7070
humanize==4.13.0
7171
# via nox
7272
idna==3.11
7373
# via anyio
7474
# via httpx
7575
# via yarl
76-
importlib-metadata==8.7.0
76+
importlib-metadata==8.7.1
7777
iniconfig==2.1.0
7878
# via pytest
7979
markdown-it-py==3.0.0
@@ -86,14 +86,14 @@ multidict==6.7.0
8686
mypy==1.17.0
8787
mypy-extensions==1.1.0
8888
# via mypy
89-
nodeenv==1.9.1
89+
nodeenv==1.10.0
9090
# via pyright
9191
nox==2025.11.12
9292
packaging==25.0
9393
# via dependency-groups
9494
# via nox
9595
# via pytest
96-
pathspec==0.12.1
96+
pathspec==1.0.3
9797
# via mypy
9898
platformdirs==4.4.0
9999
# via virtualenv
@@ -120,15 +120,15 @@ python-dateutil==2.9.0.post0
120120
# via time-machine
121121
respx==0.22.0
122122
rich==14.2.0
123-
ruff==0.14.7
123+
ruff==0.14.13
124124
six==1.17.0
125125
# via python-dateutil
126126
sniffio==1.3.1
127127
# via imagekitio
128-
standardwebhooks==1.0.0
128+
standardwebhooks==1.0.1
129129
# via imagekitio
130130
time-machine==2.19.0
131-
tomli==2.3.0
131+
tomli==2.4.0
132132
# via dependency-groups
133133
# via mypy
134134
# via nox
@@ -152,7 +152,7 @@ typing-extensions==4.15.0
152152
# via virtualenv
153153
typing-inspection==0.4.2
154154
# via pydantic
155-
virtualenv==20.35.4
155+
virtualenv==20.36.1
156156
# via nox
157157
wrapt==2.0.1
158158
# via deprecated

requirements.lock

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,22 +12,22 @@
1212
-e file:.
1313
aiohappyeyeballs==2.6.1
1414
# via aiohttp
15-
aiohttp==3.13.2
15+
aiohttp==3.13.3
1616
# via httpx-aiohttp
1717
# via imagekitio
1818
aiosignal==1.4.0
1919
# via aiohttp
2020
annotated-types==0.7.0
2121
# via pydantic
22-
anyio==4.12.0
22+
anyio==4.12.1
2323
# via httpx
2424
# via imagekitio
2525
async-timeout==5.0.1
2626
# via aiohttp
2727
attrs==25.4.0
2828
# via aiohttp
2929
# via standardwebhooks
30-
certifi==2025.11.12
30+
certifi==2026.1.4
3131
# via httpcore
3232
# via httpx
3333
deprecated==1.3.1
@@ -47,7 +47,7 @@ httpx==0.28.1
4747
# via httpx-aiohttp
4848
# via imagekitio
4949
# via standardwebhooks
50-
httpx-aiohttp==0.1.9
50+
httpx-aiohttp==0.1.12
5151
# via imagekitio
5252
idna==3.11
5353
# via anyio
@@ -69,7 +69,7 @@ six==1.17.0
6969
# via python-dateutil
7070
sniffio==1.3.1
7171
# via imagekitio
72-
standardwebhooks==1.0.0
72+
standardwebhooks==1.0.1
7373
# via imagekitio
7474
types-deprecated==1.3.1.20251101
7575
# via standardwebhooks

scripts/mock

Lines changed: 0 additions & 41 deletions
This file was deleted.

0 commit comments

Comments
 (0)