Skip to content

Commit 96ef3d6

Browse files
release: 7.2.0 (#115)
* chore: update lockfile * chore(docs): use environment variables for authentication in code snippets * fix(client): fix duplicate Go struct resulting from name derivations schema * feat: Add event_ids field to Notification schema * release: 7.2.0 --------- Co-authored-by: stainless-app[bot] <142633134+stainless-app[bot]@users.noreply.github.com>
1 parent b72f541 commit 96ef3d6

19 files changed

Lines changed: 168 additions & 129 deletions

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "7.1.1"
2+
".": "7.2.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: 77
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/courier%2Fcourier-b232056686e3541154faff791bd660463ba8564947f9c01b8eedea6b6f606f65.yml
3-
openapi_spec_hash: d5992a85e943a1bc21f81d70b86109c9
4-
config_hash: 3ec521d062b05b81c22bc1a25bfe3d02
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/courier%2Fcourier-5be11a3b4798c4039b34a39efe7bb1a25be6fea2293ba67f7c0d9eecec1b8ba4.yml
3+
openapi_spec_hash: ee9ccd5743306a2df39447def1b43017
4+
config_hash: c549fe8ed531041c8cc28ae9645b80dd

CHANGELOG.md

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

3+
## 7.2.0 (2025-12-08)
4+
5+
Full Changelog: [v7.1.1...v7.2.0](https://github.com/trycourier/courier-python/compare/v7.1.1...v7.2.0)
6+
7+
### Features
8+
9+
* Add event_ids field to Notification schema ([02bb30d](https://github.com/trycourier/courier-python/commit/02bb30db537aca01f146a165ddf08d561cea1244))
10+
11+
12+
### Bug Fixes
13+
14+
* **client:** fix duplicate Go struct resulting from name derivations schema ([f2f7fc4](https://github.com/trycourier/courier-python/commit/f2f7fc498132b1ca3d39a90d178ab01ca372e6c9))
15+
16+
17+
### Chores
18+
19+
* **docs:** use environment variables for authentication in code snippets ([f393857](https://github.com/trycourier/courier-python/commit/f393857a8d91fdeb8eecb649033de72b8adbee9f))
20+
* update lockfile ([15713ee](https://github.com/trycourier/courier-python/commit/15713ee6c246e5d1a7388718b9d09303eebeb541))
21+
322
## 7.1.1 (2025-12-02)
423

524
Full Changelog: [v7.1.0...v7.1.1](https://github.com/trycourier/courier-python/compare/v7.1.0...v7.1.1)

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,14 +91,15 @@ pip install trycourier[aiohttp]
9191
Then you can enable it by instantiating the client with `http_client=DefaultAioHttpClient()`:
9292

9393
```python
94+
import os
9495
import asyncio
9596
from courier import DefaultAioHttpClient
9697
from courier import AsyncCourier
9798

9899

99100
async def main() -> None:
100101
async with AsyncCourier(
101-
api_key="My API Key",
102+
api_key=os.environ.get("COURIER_API_KEY"), # This is the default and can be omitted
102103
http_client=DefaultAioHttpClient(),
103104
) as client:
104105
response = await client.send.message(

api.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ from courier.types import (
2424
Paging,
2525
Preference,
2626
PreferenceStatus,
27+
ProfilePreferences,
2728
Recipient,
2829
RecipientPreferences,
2930
Rule,

pyproject.toml

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,22 @@
11
[project]
22
name = "trycourier"
3-
version = "7.1.1"
3+
version = "7.2.0"
44
description = "The official Python library for the Courier API"
55
dynamic = ["readme"]
66
license = "Apache-2.0"
77
authors = [
88
{ name = "Courier", email = "support@courier.com" },
99
]
10+
1011
dependencies = [
11-
"httpx>=0.23.0, <1",
12-
"pydantic>=1.9.0, <3",
13-
"typing-extensions>=4.10, <5",
14-
"anyio>=3.5.0, <5",
15-
"distro>=1.7.0, <2",
16-
"sniffio",
12+
"httpx>=0.23.0, <1",
13+
"pydantic>=1.9.0, <3",
14+
"typing-extensions>=4.10, <5",
15+
"anyio>=3.5.0, <5",
16+
"distro>=1.7.0, <2",
17+
"sniffio",
1718
]
19+
1820
requires-python = ">= 3.9"
1921
classifiers = [
2022
"Typing :: Typed",

requirements-dev.lock

Lines changed: 59 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -12,40 +12,45 @@
1212
-e file:.
1313
aiohappyeyeballs==2.6.1
1414
# via aiohttp
15-
aiohttp==3.12.8
15+
aiohttp==3.13.2
1616
# via httpx-aiohttp
1717
# via trycourier
18-
aiosignal==1.3.2
18+
aiosignal==1.4.0
1919
# via aiohttp
20-
annotated-types==0.6.0
20+
annotated-types==0.7.0
2121
# via pydantic
22-
anyio==4.4.0
22+
anyio==4.12.0
2323
# via httpx
2424
# via trycourier
25-
argcomplete==3.1.2
25+
argcomplete==3.6.3
2626
# via nox
2727
async-timeout==5.0.1
2828
# via aiohttp
29-
attrs==25.3.0
29+
attrs==25.4.0
3030
# via aiohttp
31-
certifi==2023.7.22
31+
# via nox
32+
backports-asyncio-runner==1.2.0
33+
# via pytest-asyncio
34+
certifi==2025.11.12
3235
# via httpcore
3336
# via httpx
34-
colorlog==6.7.0
37+
colorlog==6.10.1
38+
# via nox
39+
dependency-groups==1.3.1
3540
# via nox
36-
dirty-equals==0.6.0
37-
distlib==0.3.7
41+
dirty-equals==0.11
42+
distlib==0.4.0
3843
# via virtualenv
39-
distro==1.8.0
44+
distro==1.9.0
4045
# via trycourier
41-
exceptiongroup==1.2.2
46+
exceptiongroup==1.3.1
4247
# via anyio
4348
# via pytest
44-
execnet==2.1.1
49+
execnet==2.1.2
4550
# via pytest-xdist
46-
filelock==3.12.4
51+
filelock==3.19.1
4752
# via virtualenv
48-
frozenlist==1.6.2
53+
frozenlist==1.8.0
4954
# via aiohttp
5055
# via aiosignal
5156
h11==0.16.0
@@ -58,82 +63,87 @@ httpx==0.28.1
5863
# via trycourier
5964
httpx-aiohttp==0.1.9
6065
# via trycourier
61-
idna==3.4
66+
humanize==4.13.0
67+
# via nox
68+
idna==3.11
6269
# via anyio
6370
# via httpx
6471
# via yarl
65-
importlib-metadata==7.0.0
66-
iniconfig==2.0.0
72+
importlib-metadata==8.7.0
73+
iniconfig==2.1.0
6774
# via pytest
6875
markdown-it-py==3.0.0
6976
# via rich
7077
mdurl==0.1.2
7178
# via markdown-it-py
72-
multidict==6.4.4
79+
multidict==6.7.0
7380
# via aiohttp
7481
# via yarl
7582
mypy==1.17.0
76-
mypy-extensions==1.0.0
83+
mypy-extensions==1.1.0
7784
# via mypy
78-
nodeenv==1.8.0
85+
nodeenv==1.9.1
7986
# via pyright
80-
nox==2023.4.22
81-
packaging==23.2
87+
nox==2025.11.12
88+
packaging==25.0
89+
# via dependency-groups
8290
# via nox
8391
# via pytest
8492
pathspec==0.12.1
8593
# via mypy
86-
platformdirs==3.11.0
94+
platformdirs==4.4.0
8795
# via virtualenv
88-
pluggy==1.5.0
96+
pluggy==1.6.0
8997
# via pytest
90-
propcache==0.3.1
98+
propcache==0.4.1
9199
# via aiohttp
92100
# via yarl
93-
pydantic==2.11.9
101+
pydantic==2.12.5
94102
# via trycourier
95-
pydantic-core==2.33.2
103+
pydantic-core==2.41.5
96104
# via pydantic
97-
pygments==2.18.0
105+
pygments==2.19.2
106+
# via pytest
98107
# via rich
99108
pyright==1.1.399
100-
pytest==8.3.3
109+
pytest==8.4.2
101110
# via pytest-asyncio
102111
# via pytest-xdist
103-
pytest-asyncio==0.24.0
104-
pytest-xdist==3.7.0
105-
python-dateutil==2.8.2
112+
pytest-asyncio==1.2.0
113+
pytest-xdist==3.8.0
114+
python-dateutil==2.9.0.post0
106115
# via time-machine
107-
pytz==2023.3.post1
108-
# via dirty-equals
109116
respx==0.22.0
110-
rich==13.7.1
111-
ruff==0.9.4
112-
setuptools==68.2.2
113-
# via nodeenv
114-
six==1.16.0
117+
rich==14.2.0
118+
ruff==0.14.7
119+
six==1.17.0
115120
# via python-dateutil
116-
sniffio==1.3.0
117-
# via anyio
121+
sniffio==1.3.1
118122
# via trycourier
119-
time-machine==2.9.0
120-
tomli==2.0.2
123+
time-machine==2.19.0
124+
tomli==2.3.0
125+
# via dependency-groups
121126
# via mypy
127+
# via nox
122128
# via pytest
123-
typing-extensions==4.12.2
129+
typing-extensions==4.15.0
130+
# via aiosignal
124131
# via anyio
132+
# via exceptiongroup
125133
# via multidict
126134
# via mypy
127135
# via pydantic
128136
# via pydantic-core
129137
# via pyright
138+
# via pytest-asyncio
130139
# via trycourier
131140
# via typing-inspection
132-
typing-inspection==0.4.1
141+
# via virtualenv
142+
typing-inspection==0.4.2
133143
# via pydantic
134-
virtualenv==20.24.5
144+
virtualenv==20.35.4
135145
# via nox
136-
yarl==1.20.0
146+
yarl==1.22.0
137147
# via aiohttp
138-
zipp==3.17.0
148+
zipp==3.23.0
139149
# via importlib-metadata

requirements.lock

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -12,28 +12,28 @@
1212
-e file:.
1313
aiohappyeyeballs==2.6.1
1414
# via aiohttp
15-
aiohttp==3.12.8
15+
aiohttp==3.13.2
1616
# via httpx-aiohttp
1717
# via trycourier
18-
aiosignal==1.3.2
18+
aiosignal==1.4.0
1919
# via aiohttp
20-
annotated-types==0.6.0
20+
annotated-types==0.7.0
2121
# via pydantic
22-
anyio==4.4.0
22+
anyio==4.12.0
2323
# via httpx
2424
# via trycourier
2525
async-timeout==5.0.1
2626
# via aiohttp
27-
attrs==25.3.0
27+
attrs==25.4.0
2828
# via aiohttp
29-
certifi==2023.7.22
29+
certifi==2025.11.12
3030
# via httpcore
3131
# via httpx
32-
distro==1.8.0
32+
distro==1.9.0
3333
# via trycourier
34-
exceptiongroup==1.2.2
34+
exceptiongroup==1.3.1
3535
# via anyio
36-
frozenlist==1.6.2
36+
frozenlist==1.8.0
3737
# via aiohttp
3838
# via aiosignal
3939
h11==0.16.0
@@ -45,31 +45,32 @@ httpx==0.28.1
4545
# via trycourier
4646
httpx-aiohttp==0.1.9
4747
# via trycourier
48-
idna==3.4
48+
idna==3.11
4949
# via anyio
5050
# via httpx
5151
# via yarl
52-
multidict==6.4.4
52+
multidict==6.7.0
5353
# via aiohttp
5454
# via yarl
55-
propcache==0.3.1
55+
propcache==0.4.1
5656
# via aiohttp
5757
# via yarl
5858
pydantic==2.12.5
5959
# via trycourier
6060
pydantic-core==2.41.5
6161
# via pydantic
62-
sniffio==1.3.0
63-
# via anyio
62+
sniffio==1.3.1
6463
# via trycourier
6564
typing-extensions==4.15.0
65+
# via aiosignal
6666
# via anyio
67+
# via exceptiongroup
6768
# via multidict
6869
# via pydantic
6970
# via pydantic-core
7071
# via trycourier
7172
# via typing-inspection
7273
typing-inspection==0.4.2
7374
# via pydantic
74-
yarl==1.20.0
75+
yarl==1.22.0
7576
# via aiohttp

src/courier/_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__ = "courier"
4-
__version__ = "7.1.1" # x-release-please-version
4+
__version__ = "7.2.0" # x-release-please-version

src/courier/types/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
PreferenceStatus as PreferenceStatus,
2626
ChannelPreference as ChannelPreference,
2727
ElementalBaseNode as ElementalBaseNode,
28+
ProfilePreferences as ProfilePreferences,
2829
ElementalChannelNode as ElementalChannelNode,
2930
RecipientPreferences as RecipientPreferences,
3031
ChannelClassification as ChannelClassification,

0 commit comments

Comments
 (0)