Skip to content

Commit d9d8799

Browse files
author
getsentry-bot
committed
Merge branch 'release/1.45.0'
2 parents e22abb6 + 51a906c commit d9d8799

File tree

4 files changed

+97
-3
lines changed

4 files changed

+97
-3
lines changed

CHANGELOG.md

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

3+
## 1.45.0
4+
5+
This is the final 1.x release for the forseeable future. Development will continue on the 2.x release line. The first 2.x version will be available in the next few weeks.
6+
7+
### Various fixes & improvements
8+
9+
- Allow to upsert monitors (#2929) by @sentrivana
10+
11+
It's now possible to provide `monitor_config` to the `monitor` decorator/context manager directly:
12+
13+
```python
14+
from sentry_sdk.crons import monitor
15+
16+
# All keys except `schedule` are optional
17+
monitor_config = {
18+
"schedule": {"type": "crontab", "value": "0 0 * * *"},
19+
"timezone": "Europe/Vienna",
20+
"checkin_margin": 10,
21+
"max_runtime": 10,
22+
"failure_issue_threshold": 5,
23+
"recovery_threshold": 5,
24+
}
25+
26+
@monitor(monitor_slug='<monitor-slug>', monitor_config=monitor_config)
27+
def tell_the_world():
28+
print('My scheduled task...')
29+
```
30+
31+
Check out [the cron docs](https://docs.sentry.io/platforms/python/crons/) for details.
32+
33+
- Add Django `signals_denylist` to filter signals that are attached to by `signals_spans` (#2758) by @lieryan
34+
35+
If you want to exclude some Django signals from performance tracking, you can use the new `signals_denylist` Django option:
36+
37+
```python
38+
import django.db.models.signals
39+
import sentry_sdk
40+
41+
sentry_sdk.init(
42+
...
43+
integrations=[
44+
DjangoIntegration(
45+
...
46+
signals_denylist=[
47+
django.db.models.signals.pre_init,
48+
django.db.models.signals.post_init,
49+
],
50+
),
51+
],
52+
)
53+
```
54+
55+
- `increment` for metrics (#2588) by @mitsuhiko
56+
57+
`increment` and `inc` are equivalent, so you can pick whichever you like more.
58+
59+
- Add `value`, `unit` to `before_emit_metric` (#2958) by @sentrivana
60+
61+
If you add a custom `before_emit_metric`, it'll now accept 4 arguments (the `key`, `value`, `unit` and `tags`) instead of just `key` and `tags`.
62+
63+
```python
64+
def before_emit(key, value, unit, tags):
65+
if key == "removed-metric":
66+
return False
67+
tags["extra"] = "foo"
68+
del tags["release"]
69+
return True
70+
71+
sentry_sdk.init(
72+
...
73+
_experiments={
74+
"before_emit_metric": before_emit,
75+
}
76+
)
77+
```
78+
79+
- Remove experimental metric summary options (#2957) by @sentrivana
80+
81+
The `_experiments` options `metrics_summary_sample_rate` and `should_summarize_metric` have been removed.
82+
83+
- New normalization rules for metric keys, names, units, tags (#2946) by @sentrivana
84+
- Change `data_category` from `statsd` to `metric_bucket` (#2954) by @cleptric
85+
- Accessing `__mro__` might throw a `ValueError` (#2952) by @sentrivana
86+
- Suppress prompt spawned by subprocess when using `pythonw` (#2936) by @collinbanko
87+
- Handle `None` in GraphQL query #2715 (#2762) by @czyber
88+
- Do not send "quiet" Sanic exceptions to Sentry (#2821) by @hamedsh
89+
- Implement `metric_bucket` rate limits (#2933) by @cleptric
90+
- Fix type hints for `monitor` decorator (#2944) by @szokeasaurusrex
91+
- Remove deprecated `typing` imports in crons (#2945) by @szokeasaurusrex
92+
- Make `monitor_config` a `TypedDict` (#2931) by @sentrivana
93+
- Add `devenv-requirements.txt` and update env setup instructions (#2761) by @arr-ee
94+
- Bump `types-protobuf` from `4.24.0.20240311` to `4.24.0.20240408` (#2941) by @dependabot
95+
- Disable Codecov check run annotations (#2537) by @eliatcodecov
96+
397
## 1.44.1
498

599
### Various fixes & improvements

docs/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
copyright = "2019-{}, Sentry Team and Contributors".format(datetime.now().year)
3131
author = "Sentry Team and Contributors"
3232

33-
release = "1.44.1"
33+
release = "1.45.0"
3434
version = ".".join(release.split(".")[:2]) # The short X.Y version.
3535

3636

sentry_sdk/consts.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -335,4 +335,4 @@ def _get_default_options():
335335
del _get_default_options
336336

337337

338-
VERSION = "1.44.1"
338+
VERSION = "1.45.0"

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ def get_file_text(file_name):
2121

2222
setup(
2323
name="sentry-sdk",
24-
version="1.44.1",
24+
version="1.45.0",
2525
author="Sentry Team and Contributors",
2626
author_email="[email protected]",
2727
url="https://github.com/getsentry/sentry-python",

0 commit comments

Comments
 (0)