Skip to content

Commit 096b9f8

Browse files
committed
Merge remote-tracking branch 'origin/main' into retry2
2 parents f42ecd3 + b85775c commit 096b9f8

File tree

16 files changed

+73
-134
lines changed

16 files changed

+73
-134
lines changed

.github/workflows/misc_0.yml

Lines changed: 0 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -66,44 +66,6 @@ jobs:
6666
- name: Run tests
6767
run: tox -e tracecontext
6868

69-
mypy:
70-
name: mypy
71-
runs-on: ubuntu-latest
72-
timeout-minutes: 30
73-
steps:
74-
- name: Checkout repo @ SHA - ${{ github.sha }}
75-
uses: actions/checkout@v4
76-
77-
- name: Set up Python 3.11
78-
uses: actions/setup-python@v5
79-
with:
80-
python-version: "3.11"
81-
82-
- name: Install tox
83-
run: pip install tox
84-
85-
- name: Run tests
86-
run: tox -e mypy
87-
88-
mypyinstalled:
89-
name: mypyinstalled
90-
runs-on: ubuntu-latest
91-
timeout-minutes: 30
92-
steps:
93-
- name: Checkout repo @ SHA - ${{ github.sha }}
94-
uses: actions/checkout@v4
95-
96-
- name: Set up Python 3.11
97-
uses: actions/setup-python@v5
98-
with:
99-
python-version: "3.11"
100-
101-
- name: Install tox
102-
run: pip install tox
103-
104-
- name: Run tests
105-
run: tox -e mypyinstalled
106-
10769
typecheck:
10870
name: typecheck
10971
runs-on: ubuntu-latest

CHANGELOG.md

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## Unreleased
99

10+
- typecheck: add sdk/resources and drop mypy
11+
([#4578](https://github.com/open-telemetry/opentelemetry-python/pull/4578))
1012
- Refactor `BatchLogRecordProcessor` to simplify code and make the control flow more
1113
clear ([#4562](https://github.com/open-telemetry/opentelemetry-python/pull/4562/)
1214
and [#4535](https://github.com/open-telemetry/opentelemetry-python/pull/4535)).
1315
- Update OTLP gRPC/HTTP exporters: the export timeout is now inclusive of all retries and backoffs,
14-
and an unnecessary 32 second sleep that occurred after all retries had completed/failed was removed
16+
and an unnecessary 32 second sleep that occurred after all retries had completed/failed was removed.
17+
Update gRPC OTLP Exporters to use official gRPC retry policy config. The `RetryInfo` proto in the error
18+
response will now be ignored, and server's should now use the gRPC supported header `grpc-retry-pushback-ms`.
1519
([#4564](https://github.com/open-telemetry/opentelemetry-python/pull/4564)).
16-
20+
- Remove log messages from `BatchLogRecordProcessor.emit`, this caused the program
21+
to crash at shutdown with a max recursion error ([#4586](https://github.com/open-telemetry/opentelemetry-python/pull/4586)).
22+
- Configurable max retry timeout for grpc exporter
23+
([#4333](https://github.com/open-telemetry/opentelemetry-python/pull/4333))
24+
- opentelemetry-api: allow importlib-metadata 8.7.0
25+
([#4593](https://github.com/open-telemetry/opentelemetry-python/pull/4593))
1726

1827
## Version 1.33.0/0.54b0 (2025-05-09)
1928

@@ -95,8 +104,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
95104
([#4353](https://github.com/open-telemetry/opentelemetry-python/pull/4353))
96105
- sdk: don't log or print warnings when the SDK has been disabled
97106
([#4371](https://github.com/open-telemetry/opentelemetry-python/pull/4371))
98-
- Configurable max retry timeout for grpc exporter
99-
([#4333](https://github.com/open-telemetry/opentelemetry-python/pull/4333))
100107
- Fix span context manager typing by using ParamSpec from typing_extensions
101108
([#4389](https://github.com/open-telemetry/opentelemetry-python/pull/4389))
102109
- Fix serialization of None values in logs body to match 1.31.0+ data model

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ For additional exporter and instrumentation packages, see the
9191

9292
For information about contributing to OpenTelemetry Python, see [CONTRIBUTING.md](CONTRIBUTING.md).
9393

94-
We meet weekly on Thursdays at 9AM PST. The meeting is subject to change depending on contributors' availability. Check the [OpenTelemetry community calendar](https://calendar.google.com/calendar/embed?src=google.com_b79e3e90j7bbsa2n2p5an5lf60%40group.calendar.google.com) for specific dates and Zoom meeting links.
94+
We meet weekly on Thursdays at 9AM PST. The meeting is subject to change depending on contributors' availability. Check the [OpenTelemetry community calendar](https://calendar.google.com/calendar/embed?src=c_2bf73e3b6b530da4babd444e72b76a6ad893a5c3f43cf40467abc7a9a897f977%40group.calendar.google.com) for specific dates and Zoom meeting links.
9595

9696
Meeting notes are available as a public [Google doc](https://docs.google.com/document/d/1CIMGoIOZ-c3-igzbd6_Pnxx1SjAkjwqoYSUWxPY8XIs/edit).
9797

RELEASING.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,8 @@
99
(otherwise the workflow will pick up the version from `main` and just remove the `.dev` suffix).
1010
* Review the two pull requests that it creates.
1111
(one is targeted to the release branch and one is targeted to `main`).
12-
* The builds will fail for both the `main` and release pr because of validation rules. Follow the [release workflow](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/RELEASING.md) for the contrib repo up until this same point.
13-
* Change the CONTRIB_REPO_SHA of core PRs to point to their counterpart in contrib.
14-
* Change the CORE_REPO_SHA of contrib PRs to point to their counterpart in core.
12+
* The builds will fail for the release PR because of validation rules. Follow the [release workflow](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/RELEASING.md) for the contrib repo up until this same point.
13+
* Close and reopen the PR so that the workflow will take into account the label automation we have in place
1514
* Release builds now should pass.
1615
* Merge the release PR.
1716
* Merge the PR to main (this can be done separately from [making the release](#making-the-release))

dev-requirements.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
pylint==3.3.4
22
httpretty==1.1.4
33
pyright==1.1.396
4-
mypy==1.9.0
54
sphinx==7.1.2
65
sphinx-rtd-theme==2.0.0rc4
76
sphinx-autodoc-typehints==1.25.2

mypy-relaxed.ini

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

mypy.ini

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

opentelemetry-api/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ dependencies = [
3030
"Deprecated >= 1.2.6",
3131
# FIXME This should be able to be removed after 3.12 is released if there is a reliable API
3232
# in importlib.metadata.
33-
"importlib-metadata >= 6.0, < 8.7.0",
33+
"importlib-metadata >= 6.0, < 8.8.0",
3434
]
3535
dynamic = [
3636
"version",

opentelemetry-api/test-requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
asgiref==3.7.2
22
Deprecated==1.2.14
33
importlib-metadata==8.5.0 ; python_version < "3.9"
4-
importlib-metadata==8.6.1 ; python_version >= "3.9"
4+
importlib-metadata==8.7.0 ; python_version >= "3.9"
55
iniconfig==2.0.0
66
packaging==24.0
77
pluggy==1.5.0

opentelemetry-sdk/src/opentelemetry/sdk/_shared_internal/__init__.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -167,15 +167,15 @@ def _export(self, batch_strategy: BatchExportStrategy) -> None:
167167
)
168168
detach(token)
169169

170+
# Do not add any logging.log statements to this function, they can be being routed back to this `emit` function,
171+
# resulting in endless recursive calls that crash the program.
172+
# See https://github.com/open-telemetry/opentelemetry-python/issues/4261
170173
def emit(self, data: Telemetry) -> None:
171174
if self._shutdown:
172-
self._logger.info("Shutdown called, ignoring %s.", self._exporting)
173175
return
174176
if self._pid != os.getpid():
175177
self._bsp_reset_once.do_once(self._at_fork_reinit)
176-
177-
if len(self._queue) == self._max_queue_size:
178-
self._logger.warning("Queue full, dropping %s.", self._exporting)
178+
# This will drop a log from the right side if the queue is at _max_queue_length.
179179
self._queue.appendleft(data)
180180
if len(self._queue) >= self._max_export_batch_size:
181181
self._worker_awaken.set()

0 commit comments

Comments
 (0)