Skip to content

Commit d6f4b43

Browse files
authored
Merge branch 'master' into getsentryGH-3106-add-deprecation-warning-to-propagate-traces-option
2 parents ecb8dd7 + 98d0415 commit d6f4b43

Some content is hidden

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

59 files changed

+712
-338
lines changed

.github/workflows/ci.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ on:
55
branches:
66
- master
77
- release/**
8-
- sentry-sdk-2.0
8+
- potel-base
99

1010
pull_request:
1111

.github/workflows/codeql-analysis.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ on:
1515
push:
1616
branches:
1717
- master
18-
- sentry-sdk-2.0
18+
- potel-base
1919
pull_request:
2020
schedule:
2121
- cron: '18 18 * * 3'

.github/workflows/enforce-license-compliance.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ on:
66
- master
77
- main
88
- release/*
9-
- sentry-sdk-2.0
9+
- potel-base
1010
pull_request:
1111

1212
# Cancel in progress workflows on pull_requests.

.github/workflows/test-integrations-ai.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
branches:
99
- master
1010
- release/**
11-
- sentry-sdk-2.0
11+
- potel-base
1212
pull_request:
1313
# Cancel in progress workflows on pull_requests.
1414
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-a-fallback-value

.github/workflows/test-integrations-aws.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
branches:
99
- master
1010
- release/**
11-
- sentry-sdk-2.0
11+
- potel-base
1212
# XXX: We are using `pull_request_target` instead of `pull_request` because we want
1313
# this to run on forks with access to the secrets necessary to run the test suite.
1414
# Prefer to use `pull_request` when possible.

.github/workflows/test-integrations-cloud.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
branches:
99
- master
1010
- release/**
11-
- sentry-sdk-2.0
11+
- potel-base
1212
pull_request:
1313
# Cancel in progress workflows on pull_requests.
1414
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-a-fallback-value

.github/workflows/test-integrations-common.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
branches:
99
- master
1010
- release/**
11-
- sentry-sdk-2.0
11+
- potel-base
1212
pull_request:
1313
# Cancel in progress workflows on pull_requests.
1414
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-a-fallback-value

.github/workflows/test-integrations-dbs.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
branches:
99
- master
1010
- release/**
11-
- sentry-sdk-2.0
11+
- potel-base
1212
pull_request:
1313
# Cancel in progress workflows on pull_requests.
1414
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-a-fallback-value
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,163 @@
1+
# Do not edit this YAML file. This file is generated automatically by executing
2+
# python scripts/split_tox_gh_actions/split_tox_gh_actions.py
3+
# The template responsible for it is in
4+
# scripts/split_tox_gh_actions/templates/base.jinja
5+
name: Test Flags
6+
on:
7+
push:
8+
branches:
9+
- master
10+
- release/**
11+
- potel-base
12+
pull_request:
13+
# Cancel in progress workflows on pull_requests.
14+
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-a-fallback-value
15+
concurrency:
16+
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
17+
cancel-in-progress: true
18+
permissions:
19+
contents: read
20+
env:
21+
BUILD_CACHE_KEY: ${{ github.sha }}
22+
CACHED_BUILD_PATHS: |
23+
${{ github.workspace }}/dist-serverless
24+
jobs:
25+
test-flags-latest:
26+
name: Flags (latest)
27+
timeout-minutes: 30
28+
runs-on: ${{ matrix.os }}
29+
strategy:
30+
fail-fast: false
31+
matrix:
32+
python-version: ["3.8","3.12","3.13"]
33+
# python3.6 reached EOL and is no longer being supported on
34+
# new versions of hosted runners on Github Actions
35+
# ubuntu-20.04 is the last version that supported python3.6
36+
# see https://github.com/actions/setup-python/issues/544#issuecomment-1332535877
37+
os: [ubuntu-20.04]
38+
steps:
39+
- uses: actions/[email protected]
40+
- uses: actions/setup-python@v5
41+
with:
42+
python-version: ${{ matrix.python-version }}
43+
allow-prereleases: true
44+
- name: Setup Test Env
45+
run: |
46+
pip install "coverage[toml]" tox
47+
- name: Erase coverage
48+
run: |
49+
coverage erase
50+
- name: Test launchdarkly latest
51+
run: |
52+
set -x # print commands that are executed
53+
./scripts/runtox.sh "py${{ matrix.python-version }}-launchdarkly-latest"
54+
- name: Test openfeature latest
55+
run: |
56+
set -x # print commands that are executed
57+
./scripts/runtox.sh "py${{ matrix.python-version }}-openfeature-latest"
58+
- name: Test unleash latest
59+
run: |
60+
set -x # print commands that are executed
61+
./scripts/runtox.sh "py${{ matrix.python-version }}-unleash-latest"
62+
- name: Generate coverage XML (Python 3.6)
63+
if: ${{ !cancelled() && matrix.python-version == '3.6' }}
64+
run: |
65+
export COVERAGE_RCFILE=.coveragerc36
66+
coverage combine .coverage-sentry-*
67+
coverage xml --ignore-errors
68+
- name: Generate coverage XML
69+
if: ${{ !cancelled() && matrix.python-version != '3.6' }}
70+
run: |
71+
coverage combine .coverage-sentry-*
72+
coverage xml
73+
- name: Upload coverage to Codecov
74+
if: ${{ !cancelled() }}
75+
uses: codecov/[email protected]
76+
with:
77+
token: ${{ secrets.CODECOV_TOKEN }}
78+
files: coverage.xml
79+
# make sure no plugins alter our coverage reports
80+
plugin: noop
81+
verbose: true
82+
- name: Upload test results to Codecov
83+
if: ${{ !cancelled() }}
84+
uses: codecov/test-results-action@v1
85+
with:
86+
token: ${{ secrets.CODECOV_TOKEN }}
87+
files: .junitxml
88+
verbose: true
89+
test-flags-pinned:
90+
name: Flags (pinned)
91+
timeout-minutes: 30
92+
runs-on: ${{ matrix.os }}
93+
strategy:
94+
fail-fast: false
95+
matrix:
96+
python-version: ["3.8","3.12","3.13"]
97+
# python3.6 reached EOL and is no longer being supported on
98+
# new versions of hosted runners on Github Actions
99+
# ubuntu-20.04 is the last version that supported python3.6
100+
# see https://github.com/actions/setup-python/issues/544#issuecomment-1332535877
101+
os: [ubuntu-20.04]
102+
steps:
103+
- uses: actions/[email protected]
104+
- uses: actions/setup-python@v5
105+
with:
106+
python-version: ${{ matrix.python-version }}
107+
allow-prereleases: true
108+
- name: Setup Test Env
109+
run: |
110+
pip install "coverage[toml]" tox
111+
- name: Erase coverage
112+
run: |
113+
coverage erase
114+
- name: Test launchdarkly pinned
115+
run: |
116+
set -x # print commands that are executed
117+
./scripts/runtox.sh --exclude-latest "py${{ matrix.python-version }}-launchdarkly"
118+
- name: Test openfeature pinned
119+
run: |
120+
set -x # print commands that are executed
121+
./scripts/runtox.sh --exclude-latest "py${{ matrix.python-version }}-openfeature"
122+
- name: Test unleash pinned
123+
run: |
124+
set -x # print commands that are executed
125+
./scripts/runtox.sh --exclude-latest "py${{ matrix.python-version }}-unleash"
126+
- name: Generate coverage XML (Python 3.6)
127+
if: ${{ !cancelled() && matrix.python-version == '3.6' }}
128+
run: |
129+
export COVERAGE_RCFILE=.coveragerc36
130+
coverage combine .coverage-sentry-*
131+
coverage xml --ignore-errors
132+
- name: Generate coverage XML
133+
if: ${{ !cancelled() && matrix.python-version != '3.6' }}
134+
run: |
135+
coverage combine .coverage-sentry-*
136+
coverage xml
137+
- name: Upload coverage to Codecov
138+
if: ${{ !cancelled() }}
139+
uses: codecov/[email protected]
140+
with:
141+
token: ${{ secrets.CODECOV_TOKEN }}
142+
files: coverage.xml
143+
# make sure no plugins alter our coverage reports
144+
plugin: noop
145+
verbose: true
146+
- name: Upload test results to Codecov
147+
if: ${{ !cancelled() }}
148+
uses: codecov/test-results-action@v1
149+
with:
150+
token: ${{ secrets.CODECOV_TOKEN }}
151+
files: .junitxml
152+
verbose: true
153+
check_required_tests:
154+
name: All pinned Flags tests passed
155+
needs: test-flags-pinned
156+
# Always run this, even if a dependent job failed
157+
if: always()
158+
runs-on: ubuntu-20.04
159+
steps:
160+
- name: Check for failures
161+
if: contains(needs.test-flags-pinned.result, 'failure') || contains(needs.test-flags-pinned.result, 'skipped')
162+
run: |
163+
echo "One of the dependent jobs has failed. You may need to re-run it." && exit 1

.github/workflows/test-integrations-graphql.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
branches:
99
- master
1010
- release/**
11-
- sentry-sdk-2.0
11+
- potel-base
1212
pull_request:
1313
# Cancel in progress workflows on pull_requests.
1414
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-a-fallback-value

.github/workflows/test-integrations-misc.yml

+1-17
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
branches:
99
- master
1010
- release/**
11-
- sentry-sdk-2.0
11+
- potel-base
1212
pull_request:
1313
# Cancel in progress workflows on pull_requests.
1414
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-a-fallback-value
@@ -47,18 +47,10 @@ jobs:
4747
- name: Erase coverage
4848
run: |
4949
coverage erase
50-
- name: Test launchdarkly latest
51-
run: |
52-
set -x # print commands that are executed
53-
./scripts/runtox.sh "py${{ matrix.python-version }}-launchdarkly-latest"
5450
- name: Test loguru latest
5551
run: |
5652
set -x # print commands that are executed
5753
./scripts/runtox.sh "py${{ matrix.python-version }}-loguru-latest"
58-
- name: Test openfeature latest
59-
run: |
60-
set -x # print commands that are executed
61-
./scripts/runtox.sh "py${{ matrix.python-version }}-openfeature-latest"
6254
- name: Test opentelemetry latest
6355
run: |
6456
set -x # print commands that are executed
@@ -131,18 +123,10 @@ jobs:
131123
- name: Erase coverage
132124
run: |
133125
coverage erase
134-
- name: Test launchdarkly pinned
135-
run: |
136-
set -x # print commands that are executed
137-
./scripts/runtox.sh --exclude-latest "py${{ matrix.python-version }}-launchdarkly"
138126
- name: Test loguru pinned
139127
run: |
140128
set -x # print commands that are executed
141129
./scripts/runtox.sh --exclude-latest "py${{ matrix.python-version }}-loguru"
142-
- name: Test openfeature pinned
143-
run: |
144-
set -x # print commands that are executed
145-
./scripts/runtox.sh --exclude-latest "py${{ matrix.python-version }}-openfeature"
146130
- name: Test opentelemetry pinned
147131
run: |
148132
set -x # print commands that are executed

.github/workflows/test-integrations-network.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
branches:
99
- master
1010
- release/**
11-
- sentry-sdk-2.0
11+
- potel-base
1212
pull_request:
1313
# Cancel in progress workflows on pull_requests.
1414
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-a-fallback-value

.github/workflows/test-integrations-tasks.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
branches:
99
- master
1010
- release/**
11-
- sentry-sdk-2.0
11+
- potel-base
1212
pull_request:
1313
# Cancel in progress workflows on pull_requests.
1414
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-a-fallback-value

.github/workflows/test-integrations-web-1.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
branches:
99
- master
1010
- release/**
11-
- sentry-sdk-2.0
11+
- potel-base
1212
pull_request:
1313
# Cancel in progress workflows on pull_requests.
1414
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-a-fallback-value

.github/workflows/test-integrations-web-2.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
branches:
99
- master
1010
- release/**
11-
- sentry-sdk-2.0
11+
- potel-base
1212
pull_request:
1313
# Cancel in progress workflows on pull_requests.
1414
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-a-fallback-value
@@ -29,7 +29,7 @@ jobs:
2929
strategy:
3030
fail-fast: false
3131
matrix:
32-
python-version: ["3.6","3.7","3.8","3.11","3.12","3.13"]
32+
python-version: ["3.6","3.7","3.8","3.9","3.11","3.12","3.13"]
3333
# python3.6 reached EOL and is no longer being supported on
3434
# new versions of hosted runners on Github Actions
3535
# ubuntu-20.04 is the last version that supported python3.6

CHANGELOG.md

+37
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,34 @@
11
# Changelog
22

3+
## 2.20.0
4+
5+
- **New integration:** Add [Typer](https://typer.tiangolo.com/) integration (#3869) by @patrick91
6+
7+
For more information, see the documentation for the [TyperIntegration](https://docs.sentry.io/platforms/python/integrations/typer/).
8+
9+
- **New integration:** Add [Unleash](https://www.getunleash.io/) feature flagging integration (#3888) by @aliu39
10+
11+
For more information, see the documentation for the [UnleashIntegration](https://docs.sentry.io/platforms/python/integrations/unleash/).
12+
13+
- Add custom tracking of feature flag evaluations (#3860) by @aliu39
14+
- Feature Flags: Register LD hook in setup instead of init, and don't check for initialization (#3890) by @aliu39
15+
- Feature Flags: Moved adding of `flags` context into Scope (#3917) by @antonpirker
16+
- Create a separate group for feature flag test suites (#3911) by @sentrivana
17+
- Fix flaky LaunchDarkly tests (#3896) by @aliu39
18+
- Fix LRU cache copying (#3883) by @ffelixg
19+
- Fix cache pollution from mutable reference (#3887) by @cmanallen
20+
- Centralize minimum version checking (#3910) by @sentrivana
21+
- Support SparkIntegration activation after SparkContext created (#3411) by @seyoon-lim
22+
- Preserve ARQ enqueue_job __kwdefaults__ after patching (#3903) by @danmr
23+
- Add Github workflow to comment on issues when a fix was released (#3866) by @antonpirker
24+
- Update test matrix for Sanic (#3904) by @antonpirker
25+
- Rename scripts (#3885) by @sentrivana
26+
- Fix CI (#3878) by @sentrivana
27+
- Treat `potel-base` as release branch in CI (#3912) by @sentrivana
28+
- build(deps): bump actions/create-github-app-token from 1.11.0 to 1.11.1 (#3893) by @dependabot
29+
- build(deps): bump codecov/codecov-action from 5.0.7 to 5.1.1 (#3867) by @dependabot
30+
- build(deps): bump codecov/codecov-action from 5.1.1 to 5.1.2 (#3892) by @dependabot
31+
332
## 2.19.2
433

534
### Various fixes & improvements
@@ -55,6 +84,14 @@
5584

5685
### Various fixes & improvements
5786

87+
- **New integration:** Add [LaunchDarkly](https://launchdarkly.com/) integration (#3648) by @cmanallen
88+
89+
For more information, see the documentation for the [LaunchDarklyIntegration](https://docs.sentry.io/platforms/python/integrations/launchdarkly/).
90+
91+
- **New integration:** Add [OpenFeature](https://openfeature.dev/) feature flagging integration (#3648) by @cmanallen
92+
93+
For more information, see the documentation for the [OpenFeatureIntegration](https://docs.sentry.io/platforms/python/integrations/openfeature/).
94+
5895
- Add LaunchDarkly and OpenFeature integration (#3648) by @cmanallen
5996
- Correct typo in a comment (#3726) by @szokeasaurusrex
6097
- End `http.client` span on timeout (#3723) by @Zylphrex

CONTRIBUTING.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ pytest -rs tests/integrations/flask/ # Replace "flask" with the specific integr
126126

127127
## Releasing a New Version
128128

129-
_(only relevant for Sentry employees)_
129+
_(only relevant for Python SDK core team)_
130130

131131
### Prerequisites
132132

0 commit comments

Comments
 (0)