From 25d653233632d95f7b5b831a04aa22c643a2e22b Mon Sep 17 00:00:00 2001 From: OpenTelemetry Bot <107717825+opentelemetrybot@users.noreply.github.com> Date: Thu, 12 Dec 2024 05:00:40 -0600 Subject: [PATCH 01/11] Update version to 1.30.0.dev/0.51b0.dev (#4348) * Update version to 1.30.0.dev/0.51b0.dev * Update CONTRIB_REPO_SHA to opentelemetrybot/update-version-to-1.30.0.dev-0.51b0.dev --------- Co-authored-by: Riccardo Magliocchetti --- .github/workflows/contrib.yml | 2 +- .github/workflows/lint_0.yml | 2 +- .github/workflows/misc_0.yml | 2 +- .github/workflows/test_0.yml | 2 +- .github/workflows/test_1.yml | 2 +- CHANGELOG.md | 2 ++ eachdist.ini | 4 ++-- exporter/opentelemetry-exporter-opencensus/pyproject.toml | 2 +- .../opentelemetry/exporter/opencensus/version/__init__.py | 2 +- .../opentelemetry-exporter-otlp-proto-common/pyproject.toml | 2 +- .../exporter/otlp/proto/common/version/__init__.py | 2 +- .../opentelemetry-exporter-otlp-proto-grpc/pyproject.toml | 6 +++--- .../exporter/otlp/proto/grpc/version/__init__.py | 2 +- .../opentelemetry-exporter-otlp-proto-http/pyproject.toml | 6 +++--- .../exporter/otlp/proto/http/version/__init__.py | 2 +- exporter/opentelemetry-exporter-otlp/pyproject.toml | 4 ++-- .../src/opentelemetry/exporter/otlp/version/__init__.py | 2 +- exporter/opentelemetry-exporter-prometheus/pyproject.toml | 2 +- .../opentelemetry/exporter/prometheus/version/__init__.py | 2 +- .../opentelemetry/exporter/zipkin/json/version/__init__.py | 2 +- .../opentelemetry-exporter-zipkin-proto-http/pyproject.toml | 2 +- .../exporter/zipkin/proto/http/version/__init__.py | 2 +- exporter/opentelemetry-exporter-zipkin/pyproject.toml | 4 ++-- .../src/opentelemetry/exporter/zipkin/version/__init__.py | 2 +- opentelemetry-api/src/opentelemetry/version/__init__.py | 2 +- .../src/opentelemetry/proto/version/__init__.py | 2 +- opentelemetry-sdk/pyproject.toml | 4 ++-- opentelemetry-sdk/src/opentelemetry/sdk/version/__init__.py | 2 +- opentelemetry-semantic-conventions/pyproject.toml | 2 +- .../src/opentelemetry/semconv/version/__init__.py | 2 +- .../src/opentelemetry/propagators/b3/version/__init__.py | 2 +- .../opentelemetry/propagators/jaeger/version/__init__.py | 2 +- .../src/opentelemetry/shim/opencensus/version/__init__.py | 2 +- .../opentelemetry/shim/opentracing_shim/version/__init__.py | 2 +- tests/opentelemetry-test-utils/pyproject.toml | 4 ++-- .../src/opentelemetry/test/version/__init__.py | 2 +- 36 files changed, 46 insertions(+), 44 deletions(-) diff --git a/.github/workflows/contrib.yml b/.github/workflows/contrib.yml index 5552d6fe04d..581ff27fdd4 100644 --- a/.github/workflows/contrib.yml +++ b/.github/workflows/contrib.yml @@ -11,4 +11,4 @@ jobs: uses: open-telemetry/opentelemetry-python-contrib/.github/workflows/core_contrib_test_0.yml@main with: CORE_REPO_SHA: ${{ github.sha }} - CONTRIB_REPO_SHA: main + CONTRIB_REPO_SHA: opentelemetrybot/update-version-to-1.30.0.dev-0.51b0.dev diff --git a/.github/workflows/lint_0.yml b/.github/workflows/lint_0.yml index 71b148c02d5..6c0da07dd74 100644 --- a/.github/workflows/lint_0.yml +++ b/.github/workflows/lint_0.yml @@ -11,7 +11,7 @@ on: env: CORE_REPO_SHA: main - CONTRIB_REPO_SHA: main + CONTRIB_REPO_SHA: opentelemetrybot/update-version-to-1.30.0.dev-0.51b0.dev PIP_EXISTS_ACTION: w jobs: diff --git a/.github/workflows/misc_0.yml b/.github/workflows/misc_0.yml index c1ea218fd65..f7d3a2c1240 100644 --- a/.github/workflows/misc_0.yml +++ b/.github/workflows/misc_0.yml @@ -11,7 +11,7 @@ on: env: CORE_REPO_SHA: main - CONTRIB_REPO_SHA: main + CONTRIB_REPO_SHA: opentelemetrybot/update-version-to-1.30.0.dev-0.51b0.dev PIP_EXISTS_ACTION: w jobs: diff --git a/.github/workflows/test_0.yml b/.github/workflows/test_0.yml index dfbced1b397..3d727948030 100644 --- a/.github/workflows/test_0.yml +++ b/.github/workflows/test_0.yml @@ -11,7 +11,7 @@ on: env: CORE_REPO_SHA: main - CONTRIB_REPO_SHA: main + CONTRIB_REPO_SHA: opentelemetrybot/update-version-to-1.30.0.dev-0.51b0.dev PIP_EXISTS_ACTION: w jobs: diff --git a/.github/workflows/test_1.yml b/.github/workflows/test_1.yml index 892039b33ec..6d5edc87690 100644 --- a/.github/workflows/test_1.yml +++ b/.github/workflows/test_1.yml @@ -11,7 +11,7 @@ on: env: CORE_REPO_SHA: main - CONTRIB_REPO_SHA: main + CONTRIB_REPO_SHA: opentelemetrybot/update-version-to-1.30.0.dev-0.51b0.dev PIP_EXISTS_ACTION: w jobs: diff --git a/CHANGELOG.md b/CHANGELOG.md index 09ad03d8258..f8b1a254db0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased +## Version 1.29.0/0.50b0 (2024-12-11) + - Fix crash exporting a log record with None body ([#4276](https://github.com/open-telemetry/opentelemetry-python/pull/4276)) - Fix metrics export with exemplar and no context and filtering observable instruments diff --git a/eachdist.ini b/eachdist.ini index ba48854a923..5e70715b3d7 100644 --- a/eachdist.ini +++ b/eachdist.ini @@ -11,7 +11,7 @@ sortfirst= exporter/* [stable] -version=1.29.0.dev +version=1.30.0.dev packages= opentelemetry-sdk @@ -27,7 +27,7 @@ packages= opentelemetry-api [prerelease] -version=0.50b0.dev +version=0.51b0.dev packages= opentelemetry-opentracing-shim diff --git a/exporter/opentelemetry-exporter-opencensus/pyproject.toml b/exporter/opentelemetry-exporter-opencensus/pyproject.toml index 2ee25fab539..d60d960d9fd 100644 --- a/exporter/opentelemetry-exporter-opencensus/pyproject.toml +++ b/exporter/opentelemetry-exporter-opencensus/pyproject.toml @@ -30,7 +30,7 @@ classifiers = [ dependencies = [ "grpcio >= 1.0.0, < 2.0.0", "opencensus-proto >= 0.1.0, < 1.0.0", - "opentelemetry-api >= 1.29.0.dev", + "opentelemetry-api >= 1.30.0.dev", "opentelemetry-sdk >= 1.15", "protobuf ~= 3.13", "setuptools >= 16.0", diff --git a/exporter/opentelemetry-exporter-opencensus/src/opentelemetry/exporter/opencensus/version/__init__.py b/exporter/opentelemetry-exporter-opencensus/src/opentelemetry/exporter/opencensus/version/__init__.py index 0559ba62275..6e2923f0db0 100644 --- a/exporter/opentelemetry-exporter-opencensus/src/opentelemetry/exporter/opencensus/version/__init__.py +++ b/exporter/opentelemetry-exporter-opencensus/src/opentelemetry/exporter/opencensus/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "0.50b0.dev" +__version__ = "0.51b0.dev" diff --git a/exporter/opentelemetry-exporter-otlp-proto-common/pyproject.toml b/exporter/opentelemetry-exporter-otlp-proto-common/pyproject.toml index b3c0765559f..1cfe4173d44 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-common/pyproject.toml +++ b/exporter/opentelemetry-exporter-otlp-proto-common/pyproject.toml @@ -27,7 +27,7 @@ classifiers = [ "Programming Language :: Python :: 3.12", ] dependencies = [ - "opentelemetry-proto == 1.29.0.dev", + "opentelemetry-proto == 1.30.0.dev", ] [project.urls] diff --git a/exporter/opentelemetry-exporter-otlp-proto-common/src/opentelemetry/exporter/otlp/proto/common/version/__init__.py b/exporter/opentelemetry-exporter-otlp-proto-common/src/opentelemetry/exporter/otlp/proto/common/version/__init__.py index 68e87f6e791..89f248675e4 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-common/src/opentelemetry/exporter/otlp/proto/common/version/__init__.py +++ b/exporter/opentelemetry-exporter-otlp-proto-common/src/opentelemetry/exporter/otlp/proto/common/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "1.29.0.dev" +__version__ = "1.30.0.dev" diff --git a/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml b/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml index 0e931b06c9c..75959c2de83 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml +++ b/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml @@ -31,9 +31,9 @@ dependencies = [ "googleapis-common-protos ~= 1.52", "grpcio >= 1.63.2, < 2.0.0", "opentelemetry-api ~= 1.15", - "opentelemetry-proto == 1.29.0.dev", - "opentelemetry-sdk ~= 1.29.0.dev", - "opentelemetry-exporter-otlp-proto-common == 1.29.0.dev", + "opentelemetry-proto == 1.30.0.dev", + "opentelemetry-sdk ~= 1.30.0.dev", + "opentelemetry-exporter-otlp-proto-common == 1.30.0.dev", ] [project.entry-points.opentelemetry_logs_exporter] diff --git a/exporter/opentelemetry-exporter-otlp-proto-grpc/src/opentelemetry/exporter/otlp/proto/grpc/version/__init__.py b/exporter/opentelemetry-exporter-otlp-proto-grpc/src/opentelemetry/exporter/otlp/proto/grpc/version/__init__.py index 68e87f6e791..89f248675e4 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-grpc/src/opentelemetry/exporter/otlp/proto/grpc/version/__init__.py +++ b/exporter/opentelemetry-exporter-otlp-proto-grpc/src/opentelemetry/exporter/otlp/proto/grpc/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "1.29.0.dev" +__version__ = "1.30.0.dev" diff --git a/exporter/opentelemetry-exporter-otlp-proto-http/pyproject.toml b/exporter/opentelemetry-exporter-otlp-proto-http/pyproject.toml index 3e71211e857..5dedbf86ad0 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-http/pyproject.toml +++ b/exporter/opentelemetry-exporter-otlp-proto-http/pyproject.toml @@ -30,9 +30,9 @@ dependencies = [ "Deprecated >= 1.2.6", "googleapis-common-protos ~= 1.52", "opentelemetry-api ~= 1.15", - "opentelemetry-proto == 1.29.0.dev", - "opentelemetry-sdk ~= 1.29.0.dev", - "opentelemetry-exporter-otlp-proto-common == 1.29.0.dev", + "opentelemetry-proto == 1.30.0.dev", + "opentelemetry-sdk ~= 1.30.0.dev", + "opentelemetry-exporter-otlp-proto-common == 1.30.0.dev", "requests ~= 2.7", ] diff --git a/exporter/opentelemetry-exporter-otlp-proto-http/src/opentelemetry/exporter/otlp/proto/http/version/__init__.py b/exporter/opentelemetry-exporter-otlp-proto-http/src/opentelemetry/exporter/otlp/proto/http/version/__init__.py index 68e87f6e791..89f248675e4 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-http/src/opentelemetry/exporter/otlp/proto/http/version/__init__.py +++ b/exporter/opentelemetry-exporter-otlp-proto-http/src/opentelemetry/exporter/otlp/proto/http/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "1.29.0.dev" +__version__ = "1.30.0.dev" diff --git a/exporter/opentelemetry-exporter-otlp/pyproject.toml b/exporter/opentelemetry-exporter-otlp/pyproject.toml index 3996f57dce3..3a6ae1127b4 100644 --- a/exporter/opentelemetry-exporter-otlp/pyproject.toml +++ b/exporter/opentelemetry-exporter-otlp/pyproject.toml @@ -28,8 +28,8 @@ classifiers = [ "Typing :: Typed", ] dependencies = [ - "opentelemetry-exporter-otlp-proto-grpc == 1.29.0.dev", - "opentelemetry-exporter-otlp-proto-http == 1.29.0.dev", + "opentelemetry-exporter-otlp-proto-grpc == 1.30.0.dev", + "opentelemetry-exporter-otlp-proto-http == 1.30.0.dev", ] [project.entry-points.opentelemetry_logs_exporter] diff --git a/exporter/opentelemetry-exporter-otlp/src/opentelemetry/exporter/otlp/version/__init__.py b/exporter/opentelemetry-exporter-otlp/src/opentelemetry/exporter/otlp/version/__init__.py index 68e87f6e791..89f248675e4 100644 --- a/exporter/opentelemetry-exporter-otlp/src/opentelemetry/exporter/otlp/version/__init__.py +++ b/exporter/opentelemetry-exporter-otlp/src/opentelemetry/exporter/otlp/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "1.29.0.dev" +__version__ = "1.30.0.dev" diff --git a/exporter/opentelemetry-exporter-prometheus/pyproject.toml b/exporter/opentelemetry-exporter-prometheus/pyproject.toml index 465115b8abb..b2fe51c3450 100644 --- a/exporter/opentelemetry-exporter-prometheus/pyproject.toml +++ b/exporter/opentelemetry-exporter-prometheus/pyproject.toml @@ -29,7 +29,7 @@ classifiers = [ dependencies = [ "opentelemetry-api ~= 1.12", # DONOTMERGE: confirm that this will becomes ~= 1.21 in the next release - "opentelemetry-sdk ~= 1.29.0.dev", + "opentelemetry-sdk ~= 1.30.0.dev", "prometheus_client >= 0.5.0, < 1.0.0", ] diff --git a/exporter/opentelemetry-exporter-prometheus/src/opentelemetry/exporter/prometheus/version/__init__.py b/exporter/opentelemetry-exporter-prometheus/src/opentelemetry/exporter/prometheus/version/__init__.py index 0559ba62275..6e2923f0db0 100644 --- a/exporter/opentelemetry-exporter-prometheus/src/opentelemetry/exporter/prometheus/version/__init__.py +++ b/exporter/opentelemetry-exporter-prometheus/src/opentelemetry/exporter/prometheus/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "0.50b0.dev" +__version__ = "0.51b0.dev" diff --git a/exporter/opentelemetry-exporter-zipkin-json/src/opentelemetry/exporter/zipkin/json/version/__init__.py b/exporter/opentelemetry-exporter-zipkin-json/src/opentelemetry/exporter/zipkin/json/version/__init__.py index 68e87f6e791..89f248675e4 100644 --- a/exporter/opentelemetry-exporter-zipkin-json/src/opentelemetry/exporter/zipkin/json/version/__init__.py +++ b/exporter/opentelemetry-exporter-zipkin-json/src/opentelemetry/exporter/zipkin/json/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "1.29.0.dev" +__version__ = "1.30.0.dev" diff --git a/exporter/opentelemetry-exporter-zipkin-proto-http/pyproject.toml b/exporter/opentelemetry-exporter-zipkin-proto-http/pyproject.toml index 51487a278e2..93f88de8697 100644 --- a/exporter/opentelemetry-exporter-zipkin-proto-http/pyproject.toml +++ b/exporter/opentelemetry-exporter-zipkin-proto-http/pyproject.toml @@ -29,7 +29,7 @@ classifiers = [ ] dependencies = [ "opentelemetry-api ~= 1.3", - "opentelemetry-exporter-zipkin-json == 1.29.0.dev", + "opentelemetry-exporter-zipkin-json == 1.30.0.dev", "opentelemetry-sdk ~= 1.11", "protobuf ~= 3.12", "requests ~= 2.7", diff --git a/exporter/opentelemetry-exporter-zipkin-proto-http/src/opentelemetry/exporter/zipkin/proto/http/version/__init__.py b/exporter/opentelemetry-exporter-zipkin-proto-http/src/opentelemetry/exporter/zipkin/proto/http/version/__init__.py index 68e87f6e791..89f248675e4 100644 --- a/exporter/opentelemetry-exporter-zipkin-proto-http/src/opentelemetry/exporter/zipkin/proto/http/version/__init__.py +++ b/exporter/opentelemetry-exporter-zipkin-proto-http/src/opentelemetry/exporter/zipkin/proto/http/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "1.29.0.dev" +__version__ = "1.30.0.dev" diff --git a/exporter/opentelemetry-exporter-zipkin/pyproject.toml b/exporter/opentelemetry-exporter-zipkin/pyproject.toml index ce5163f65e1..611cc2f4656 100644 --- a/exporter/opentelemetry-exporter-zipkin/pyproject.toml +++ b/exporter/opentelemetry-exporter-zipkin/pyproject.toml @@ -28,8 +28,8 @@ classifiers = [ "Typing :: Typed", ] dependencies = [ - "opentelemetry-exporter-zipkin-json == 1.29.0.dev", - "opentelemetry-exporter-zipkin-proto-http == 1.29.0.dev", + "opentelemetry-exporter-zipkin-json == 1.30.0.dev", + "opentelemetry-exporter-zipkin-proto-http == 1.30.0.dev", ] [project.entry-points.opentelemetry_traces_exporter] diff --git a/exporter/opentelemetry-exporter-zipkin/src/opentelemetry/exporter/zipkin/version/__init__.py b/exporter/opentelemetry-exporter-zipkin/src/opentelemetry/exporter/zipkin/version/__init__.py index 68e87f6e791..89f248675e4 100644 --- a/exporter/opentelemetry-exporter-zipkin/src/opentelemetry/exporter/zipkin/version/__init__.py +++ b/exporter/opentelemetry-exporter-zipkin/src/opentelemetry/exporter/zipkin/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "1.29.0.dev" +__version__ = "1.30.0.dev" diff --git a/opentelemetry-api/src/opentelemetry/version/__init__.py b/opentelemetry-api/src/opentelemetry/version/__init__.py index 68e87f6e791..89f248675e4 100644 --- a/opentelemetry-api/src/opentelemetry/version/__init__.py +++ b/opentelemetry-api/src/opentelemetry/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "1.29.0.dev" +__version__ = "1.30.0.dev" diff --git a/opentelemetry-proto/src/opentelemetry/proto/version/__init__.py b/opentelemetry-proto/src/opentelemetry/proto/version/__init__.py index 68e87f6e791..89f248675e4 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/version/__init__.py +++ b/opentelemetry-proto/src/opentelemetry/proto/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "1.29.0.dev" +__version__ = "1.30.0.dev" diff --git a/opentelemetry-sdk/pyproject.toml b/opentelemetry-sdk/pyproject.toml index 7d4f5cefba7..1d4f8072f6b 100644 --- a/opentelemetry-sdk/pyproject.toml +++ b/opentelemetry-sdk/pyproject.toml @@ -27,8 +27,8 @@ classifiers = [ "Typing :: Typed", ] dependencies = [ - "opentelemetry-api == 1.29.0.dev", - "opentelemetry-semantic-conventions == 0.50b0.dev", + "opentelemetry-api == 1.30.0.dev", + "opentelemetry-semantic-conventions == 0.51b0.dev", "typing-extensions >= 3.7.4", ] diff --git a/opentelemetry-sdk/src/opentelemetry/sdk/version/__init__.py b/opentelemetry-sdk/src/opentelemetry/sdk/version/__init__.py index 68e87f6e791..89f248675e4 100644 --- a/opentelemetry-sdk/src/opentelemetry/sdk/version/__init__.py +++ b/opentelemetry-sdk/src/opentelemetry/sdk/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "1.29.0.dev" +__version__ = "1.30.0.dev" diff --git a/opentelemetry-semantic-conventions/pyproject.toml b/opentelemetry-semantic-conventions/pyproject.toml index 279c368a273..c6da4234928 100644 --- a/opentelemetry-semantic-conventions/pyproject.toml +++ b/opentelemetry-semantic-conventions/pyproject.toml @@ -27,7 +27,7 @@ classifiers = [ ] dependencies = [ - "opentelemetry-api == 1.29.0.dev", + "opentelemetry-api == 1.30.0.dev", "Deprecated >= 1.2.6", ] diff --git a/opentelemetry-semantic-conventions/src/opentelemetry/semconv/version/__init__.py b/opentelemetry-semantic-conventions/src/opentelemetry/semconv/version/__init__.py index 0559ba62275..6e2923f0db0 100644 --- a/opentelemetry-semantic-conventions/src/opentelemetry/semconv/version/__init__.py +++ b/opentelemetry-semantic-conventions/src/opentelemetry/semconv/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "0.50b0.dev" +__version__ = "0.51b0.dev" diff --git a/propagator/opentelemetry-propagator-b3/src/opentelemetry/propagators/b3/version/__init__.py b/propagator/opentelemetry-propagator-b3/src/opentelemetry/propagators/b3/version/__init__.py index 68e87f6e791..89f248675e4 100644 --- a/propagator/opentelemetry-propagator-b3/src/opentelemetry/propagators/b3/version/__init__.py +++ b/propagator/opentelemetry-propagator-b3/src/opentelemetry/propagators/b3/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "1.29.0.dev" +__version__ = "1.30.0.dev" diff --git a/propagator/opentelemetry-propagator-jaeger/src/opentelemetry/propagators/jaeger/version/__init__.py b/propagator/opentelemetry-propagator-jaeger/src/opentelemetry/propagators/jaeger/version/__init__.py index 68e87f6e791..89f248675e4 100644 --- a/propagator/opentelemetry-propagator-jaeger/src/opentelemetry/propagators/jaeger/version/__init__.py +++ b/propagator/opentelemetry-propagator-jaeger/src/opentelemetry/propagators/jaeger/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "1.29.0.dev" +__version__ = "1.30.0.dev" diff --git a/shim/opentelemetry-opencensus-shim/src/opentelemetry/shim/opencensus/version/__init__.py b/shim/opentelemetry-opencensus-shim/src/opentelemetry/shim/opencensus/version/__init__.py index 0559ba62275..6e2923f0db0 100644 --- a/shim/opentelemetry-opencensus-shim/src/opentelemetry/shim/opencensus/version/__init__.py +++ b/shim/opentelemetry-opencensus-shim/src/opentelemetry/shim/opencensus/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "0.50b0.dev" +__version__ = "0.51b0.dev" diff --git a/shim/opentelemetry-opentracing-shim/src/opentelemetry/shim/opentracing_shim/version/__init__.py b/shim/opentelemetry-opentracing-shim/src/opentelemetry/shim/opentracing_shim/version/__init__.py index 0559ba62275..6e2923f0db0 100644 --- a/shim/opentelemetry-opentracing-shim/src/opentelemetry/shim/opentracing_shim/version/__init__.py +++ b/shim/opentelemetry-opentracing-shim/src/opentelemetry/shim/opentracing_shim/version/__init__.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "0.50b0.dev" +__version__ = "0.51b0.dev" diff --git a/tests/opentelemetry-test-utils/pyproject.toml b/tests/opentelemetry-test-utils/pyproject.toml index b2a7d50504b..94ce7798973 100644 --- a/tests/opentelemetry-test-utils/pyproject.toml +++ b/tests/opentelemetry-test-utils/pyproject.toml @@ -27,8 +27,8 @@ classifiers = [ ] dependencies = [ "asgiref ~= 3.0", - "opentelemetry-api == 1.29.0.dev", - "opentelemetry-sdk == 1.29.0.dev", + "opentelemetry-api == 1.30.0.dev", + "opentelemetry-sdk == 1.30.0.dev", ] [project.urls] diff --git a/tests/opentelemetry-test-utils/src/opentelemetry/test/version/__init__.py b/tests/opentelemetry-test-utils/src/opentelemetry/test/version/__init__.py index 9494b38d6de..2f75365f5d0 100644 --- a/tests/opentelemetry-test-utils/src/opentelemetry/test/version/__init__.py +++ b/tests/opentelemetry-test-utils/src/opentelemetry/test/version/__init__.py @@ -1 +1 @@ -__version__ = "0.50b0.dev" +__version__ = "0.51b0.dev" From d76a55c7103e7f42cbaf18a414910f4cd882ce4a Mon Sep 17 00:00:00 2001 From: Riccardo Magliocchetti Date: Thu, 12 Dec 2024 14:56:02 +0100 Subject: [PATCH 02/11] Move CONTRIB_REPO_SHA back to main (#4355) --- .github/workflows/contrib.yml | 2 +- .github/workflows/lint_0.yml | 2 +- .github/workflows/misc_0.yml | 2 +- .github/workflows/test_0.yml | 2 +- .github/workflows/test_1.yml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/contrib.yml b/.github/workflows/contrib.yml index 581ff27fdd4..5552d6fe04d 100644 --- a/.github/workflows/contrib.yml +++ b/.github/workflows/contrib.yml @@ -11,4 +11,4 @@ jobs: uses: open-telemetry/opentelemetry-python-contrib/.github/workflows/core_contrib_test_0.yml@main with: CORE_REPO_SHA: ${{ github.sha }} - CONTRIB_REPO_SHA: opentelemetrybot/update-version-to-1.30.0.dev-0.51b0.dev + CONTRIB_REPO_SHA: main diff --git a/.github/workflows/lint_0.yml b/.github/workflows/lint_0.yml index 6c0da07dd74..71b148c02d5 100644 --- a/.github/workflows/lint_0.yml +++ b/.github/workflows/lint_0.yml @@ -11,7 +11,7 @@ on: env: CORE_REPO_SHA: main - CONTRIB_REPO_SHA: opentelemetrybot/update-version-to-1.30.0.dev-0.51b0.dev + CONTRIB_REPO_SHA: main PIP_EXISTS_ACTION: w jobs: diff --git a/.github/workflows/misc_0.yml b/.github/workflows/misc_0.yml index f7d3a2c1240..c1ea218fd65 100644 --- a/.github/workflows/misc_0.yml +++ b/.github/workflows/misc_0.yml @@ -11,7 +11,7 @@ on: env: CORE_REPO_SHA: main - CONTRIB_REPO_SHA: opentelemetrybot/update-version-to-1.30.0.dev-0.51b0.dev + CONTRIB_REPO_SHA: main PIP_EXISTS_ACTION: w jobs: diff --git a/.github/workflows/test_0.yml b/.github/workflows/test_0.yml index 3d727948030..dfbced1b397 100644 --- a/.github/workflows/test_0.yml +++ b/.github/workflows/test_0.yml @@ -11,7 +11,7 @@ on: env: CORE_REPO_SHA: main - CONTRIB_REPO_SHA: opentelemetrybot/update-version-to-1.30.0.dev-0.51b0.dev + CONTRIB_REPO_SHA: main PIP_EXISTS_ACTION: w jobs: diff --git a/.github/workflows/test_1.yml b/.github/workflows/test_1.yml index 6d5edc87690..892039b33ec 100644 --- a/.github/workflows/test_1.yml +++ b/.github/workflows/test_1.yml @@ -11,7 +11,7 @@ on: env: CORE_REPO_SHA: main - CONTRIB_REPO_SHA: opentelemetrybot/update-version-to-1.30.0.dev-0.51b0.dev + CONTRIB_REPO_SHA: main PIP_EXISTS_ACTION: w jobs: From 35337ce6f58c28155ef31dbd44e6266671883c0c Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 12 Dec 2024 06:02:56 -0800 Subject: [PATCH 03/11] update weaver to 0.12.0 (#4354) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com> Co-authored-by: Riccardo Magliocchetti --- scripts/semconv/generate.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/semconv/generate.sh b/scripts/semconv/generate.sh index 637e077c85c..386fa0406af 100755 --- a/scripts/semconv/generate.sh +++ b/scripts/semconv/generate.sh @@ -7,7 +7,7 @@ ROOT_DIR="${SCRIPT_DIR}/../.." # freeze the spec version to make SemanticAttributes generation reproducible SEMCONV_VERSION=1.29.0 SEMCONV_VERSION_TAG=v$SEMCONV_VERSION -OTEL_WEAVER_IMG_VERSION=v0.10.0 +OTEL_WEAVER_IMG_VERSION=v0.12.0 INCUBATING_DIR=_incubating cd ${SCRIPT_DIR} From 2ea5d85aebd7bf02ff8d255e2dcaa6855de382bb Mon Sep 17 00:00:00 2001 From: Riccardo Magliocchetti Date: Tue, 17 Dec 2024 18:23:32 +0100 Subject: [PATCH 04/11] RELEASING: fix stable tag removal (#4351) --- RELEASING.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/RELEASING.md b/RELEASING.md index e6073455bf2..d92749f9c30 100644 --- a/RELEASING.md +++ b/RELEASING.md @@ -51,8 +51,8 @@ ```bash git tag -d stable git tag stable - git push --delete origin tagname - git push origin stable + git push --delete origin stable + git push origin tag stable ``` * ReadTheDocs will not automatically rebuild on tag changes, so manually kick-off a build of stable: https://readthedocs.org/projects/opentelemetry-python/builds/. From 17782492f5cec2e093fcd02e983d7f5e638b7cca Mon Sep 17 00:00:00 2001 From: Andrea Galbusera Date: Wed, 18 Dec 2024 14:38:53 +0100 Subject: [PATCH 05/11] Update package metadata adding "Repository" to project urls (#4363) Add "Repository" label to project urls pointing to the opentelemetry-python repo root url. Having within project urls one entry with the same value for all packages released by the project will help tools for automatic dependency management to suggest coherent upgrades for related packages. --- exporter/opentelemetry-exporter-opencensus/pyproject.toml | 1 + exporter/opentelemetry-exporter-otlp-proto-common/pyproject.toml | 1 + exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml | 1 + exporter/opentelemetry-exporter-otlp-proto-http/pyproject.toml | 1 + exporter/opentelemetry-exporter-otlp/pyproject.toml | 1 + exporter/opentelemetry-exporter-prometheus/pyproject.toml | 1 + exporter/opentelemetry-exporter-zipkin-json/pyproject.toml | 1 + exporter/opentelemetry-exporter-zipkin-proto-http/pyproject.toml | 1 + exporter/opentelemetry-exporter-zipkin/pyproject.toml | 1 + opentelemetry-api/pyproject.toml | 1 + opentelemetry-proto/pyproject.toml | 1 + opentelemetry-sdk/pyproject.toml | 1 + opentelemetry-semantic-conventions/pyproject.toml | 1 + propagator/opentelemetry-propagator-b3/pyproject.toml | 1 + propagator/opentelemetry-propagator-jaeger/pyproject.toml | 1 + shim/opentelemetry-opencensus-shim/pyproject.toml | 1 + shim/opentelemetry-opentracing-shim/pyproject.toml | 1 + tests/opentelemetry-test-utils/pyproject.toml | 1 + 18 files changed, 18 insertions(+) diff --git a/exporter/opentelemetry-exporter-opencensus/pyproject.toml b/exporter/opentelemetry-exporter-opencensus/pyproject.toml index d60d960d9fd..231bf6d72c1 100644 --- a/exporter/opentelemetry-exporter-opencensus/pyproject.toml +++ b/exporter/opentelemetry-exporter-opencensus/pyproject.toml @@ -41,6 +41,7 @@ opencensus = "opentelemetry.exporter.opencensus.trace_exporter:OpenCensusSpanExp [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/exporter/opentelemetry-exporter-opencensus" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/exporter/opencensus/version/__init__.py" diff --git a/exporter/opentelemetry-exporter-otlp-proto-common/pyproject.toml b/exporter/opentelemetry-exporter-otlp-proto-common/pyproject.toml index 1cfe4173d44..789ca4984b0 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-common/pyproject.toml +++ b/exporter/opentelemetry-exporter-otlp-proto-common/pyproject.toml @@ -32,6 +32,7 @@ dependencies = [ [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/exporter/opentelemetry-exporter-otlp-proto-common" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/exporter/otlp/proto/common/version/__init__.py" diff --git a/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml b/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml index 75959c2de83..0adf5d6624d 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml +++ b/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml @@ -47,6 +47,7 @@ otlp_proto_grpc = "opentelemetry.exporter.otlp.proto.grpc.trace_exporter:OTLPSpa [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/exporter/opentelemetry-exporter-otlp-proto-grpc" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/exporter/otlp/proto/grpc/version/__init__.py" diff --git a/exporter/opentelemetry-exporter-otlp-proto-http/pyproject.toml b/exporter/opentelemetry-exporter-otlp-proto-http/pyproject.toml index 5dedbf86ad0..b27b714690b 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-http/pyproject.toml +++ b/exporter/opentelemetry-exporter-otlp-proto-http/pyproject.toml @@ -47,6 +47,7 @@ otlp_proto_http = "opentelemetry.exporter.otlp.proto.http._log_exporter:OTLPLogE [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/exporter/opentelemetry-exporter-otlp-proto-http" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/exporter/otlp/proto/http/version/__init__.py" diff --git a/exporter/opentelemetry-exporter-otlp/pyproject.toml b/exporter/opentelemetry-exporter-otlp/pyproject.toml index 3a6ae1127b4..07a86cab0c3 100644 --- a/exporter/opentelemetry-exporter-otlp/pyproject.toml +++ b/exporter/opentelemetry-exporter-otlp/pyproject.toml @@ -43,6 +43,7 @@ otlp = "opentelemetry.exporter.otlp.proto.grpc.trace_exporter:OTLPSpanExporter" [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/exporter/opentelemetry-exporter-otlp" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/exporter/otlp/version/__init__.py" diff --git a/exporter/opentelemetry-exporter-prometheus/pyproject.toml b/exporter/opentelemetry-exporter-prometheus/pyproject.toml index b2fe51c3450..52817b00cac 100644 --- a/exporter/opentelemetry-exporter-prometheus/pyproject.toml +++ b/exporter/opentelemetry-exporter-prometheus/pyproject.toml @@ -38,6 +38,7 @@ prometheus = "opentelemetry.exporter.prometheus:_AutoPrometheusMetricReader" [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/exporter/opentelemetry-exporter-prometheus" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/exporter/prometheus/version/__init__.py" diff --git a/exporter/opentelemetry-exporter-zipkin-json/pyproject.toml b/exporter/opentelemetry-exporter-zipkin-json/pyproject.toml index 992f2471564..ca918883d5f 100644 --- a/exporter/opentelemetry-exporter-zipkin-json/pyproject.toml +++ b/exporter/opentelemetry-exporter-zipkin-json/pyproject.toml @@ -38,6 +38,7 @@ zipkin_json = "opentelemetry.exporter.zipkin.json:ZipkinExporter" [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/exporter/opentelemetry-exporter-zipkin-json" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/exporter/zipkin/json/version/__init__.py" diff --git a/exporter/opentelemetry-exporter-zipkin-proto-http/pyproject.toml b/exporter/opentelemetry-exporter-zipkin-proto-http/pyproject.toml index 93f88de8697..73aa457b95f 100644 --- a/exporter/opentelemetry-exporter-zipkin-proto-http/pyproject.toml +++ b/exporter/opentelemetry-exporter-zipkin-proto-http/pyproject.toml @@ -40,6 +40,7 @@ zipkin_proto = "opentelemetry.exporter.zipkin.proto.http:ZipkinExporter" [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/exporter/opentelemetry-exporter-zipkin-proto-http" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/exporter/zipkin/proto/http/version/__init__.py" diff --git a/exporter/opentelemetry-exporter-zipkin/pyproject.toml b/exporter/opentelemetry-exporter-zipkin/pyproject.toml index 611cc2f4656..06ffd7fa9aa 100644 --- a/exporter/opentelemetry-exporter-zipkin/pyproject.toml +++ b/exporter/opentelemetry-exporter-zipkin/pyproject.toml @@ -37,6 +37,7 @@ zipkin = "opentelemetry.exporter.zipkin.proto.http:ZipkinExporter" [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/exporter/opentelemetry-exporter-zipkin" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/exporter/zipkin/version/__init__.py" diff --git a/opentelemetry-api/pyproject.toml b/opentelemetry-api/pyproject.toml index 9ef400d85cd..0e4c4f2ac8f 100644 --- a/opentelemetry-api/pyproject.toml +++ b/opentelemetry-api/pyproject.toml @@ -53,6 +53,7 @@ default_tracer_provider = "opentelemetry.trace:NoOpTracerProvider" [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/opentelemetry-api" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/version/__init__.py" diff --git a/opentelemetry-proto/pyproject.toml b/opentelemetry-proto/pyproject.toml index 6bf212218ff..f59cdfc196a 100644 --- a/opentelemetry-proto/pyproject.toml +++ b/opentelemetry-proto/pyproject.toml @@ -31,6 +31,7 @@ dependencies = [ [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/opentelemetry-proto" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/proto/version/__init__.py" diff --git a/opentelemetry-sdk/pyproject.toml b/opentelemetry-sdk/pyproject.toml index 1d4f8072f6b..2bce3d99e37 100644 --- a/opentelemetry-sdk/pyproject.toml +++ b/opentelemetry-sdk/pyproject.toml @@ -72,6 +72,7 @@ host = "opentelemetry.sdk.resources:_HostResourceDetector" [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/opentelemetry-sdk" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/sdk/version/__init__.py" diff --git a/opentelemetry-semantic-conventions/pyproject.toml b/opentelemetry-semantic-conventions/pyproject.toml index c6da4234928..272e47df3bb 100644 --- a/opentelemetry-semantic-conventions/pyproject.toml +++ b/opentelemetry-semantic-conventions/pyproject.toml @@ -33,6 +33,7 @@ dependencies = [ [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/opentelemetry-semantic-conventions" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/semconv/version/__init__.py" diff --git a/propagator/opentelemetry-propagator-b3/pyproject.toml b/propagator/opentelemetry-propagator-b3/pyproject.toml index a4d2ce7e7e0..6641c712c5e 100644 --- a/propagator/opentelemetry-propagator-b3/pyproject.toml +++ b/propagator/opentelemetry-propagator-b3/pyproject.toml @@ -37,6 +37,7 @@ b3multi = "opentelemetry.propagators.b3:B3MultiFormat" [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/propagator/opentelemetry-propagator-b3" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/propagators/b3/version/__init__.py" diff --git a/propagator/opentelemetry-propagator-jaeger/pyproject.toml b/propagator/opentelemetry-propagator-jaeger/pyproject.toml index 42df05ed5d9..49e1df0cbe6 100644 --- a/propagator/opentelemetry-propagator-jaeger/pyproject.toml +++ b/propagator/opentelemetry-propagator-jaeger/pyproject.toml @@ -35,6 +35,7 @@ jaeger = "opentelemetry.propagators.jaeger:JaegerPropagator" [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/propagator/opentelemetry-propagator-jaeger" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/propagators/jaeger/version/__init__.py" diff --git a/shim/opentelemetry-opencensus-shim/pyproject.toml b/shim/opentelemetry-opencensus-shim/pyproject.toml index 1301f4b6692..bbe176d0140 100644 --- a/shim/opentelemetry-opencensus-shim/pyproject.toml +++ b/shim/opentelemetry-opencensus-shim/pyproject.toml @@ -37,6 +37,7 @@ dependencies = [ [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/shim/opentelemetry-opencensus-shim" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/shim/opencensus/version/__init__.py" diff --git a/shim/opentelemetry-opentracing-shim/pyproject.toml b/shim/opentelemetry-opentracing-shim/pyproject.toml index 69e4aa4b178..f0e5a546ea4 100644 --- a/shim/opentelemetry-opentracing-shim/pyproject.toml +++ b/shim/opentelemetry-opentracing-shim/pyproject.toml @@ -34,6 +34,7 @@ dependencies = [ [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/shim/opentelemetry-opentracing-shim" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/shim/opentracing_shim/version/__init__.py" diff --git a/tests/opentelemetry-test-utils/pyproject.toml b/tests/opentelemetry-test-utils/pyproject.toml index 94ce7798973..07bc20d47c8 100644 --- a/tests/opentelemetry-test-utils/pyproject.toml +++ b/tests/opentelemetry-test-utils/pyproject.toml @@ -33,6 +33,7 @@ dependencies = [ [project.urls] Homepage = "https://github.com/open-telemetry/opentelemetry-python/tests/opentelemetry-test-utils" +Repository = "https://github.com/open-telemetry/opentelemetry-python" [tool.hatch.version] path = "src/opentelemetry/test/version/__init__.py" From b48223561acfdffd1411ed7d015ddabe6f6eb801 Mon Sep 17 00:00:00 2001 From: Julien Danjou Date: Thu, 19 Dec 2024 14:45:09 +0100 Subject: [PATCH 06/11] fix: add missing typing on TracerProvider.shutdown (#4365) --- opentelemetry-sdk/src/opentelemetry/sdk/trace/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opentelemetry-sdk/src/opentelemetry/sdk/trace/__init__.py b/opentelemetry-sdk/src/opentelemetry/sdk/trace/__init__.py index b144e071a8a..c40a7a70702 100644 --- a/opentelemetry-sdk/src/opentelemetry/sdk/trace/__init__.py +++ b/opentelemetry-sdk/src/opentelemetry/sdk/trace/__init__.py @@ -1277,7 +1277,7 @@ def add_span_processor(self, span_processor: SpanProcessor) -> None: # SynchronousMultiSpanProcessor and ConcurrentMultiSpanProcessor. self._active_span_processor.add_span_processor(span_processor) - def shutdown(self): + def shutdown(self) -> None: """Shut down the span processors added to the tracer provider.""" self._active_span_processor.shutdown() if self._atexit_handler is not None: From 3ae113816d151af3320b8ce17816a91ebd20e44e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Em=C3=ADdio=20Neto?= <9735060+emdneto@users.noreply.github.com> Date: Thu, 19 Dec 2024 16:19:37 -0300 Subject: [PATCH 07/11] add python 3.13 support (#4353) --- .github/workflows/benchmarks.yml | 2 +- .github/workflows/generate_workflows.py | 1 + .github/workflows/test_0.yml | 827 +++++++++++++++--- .github/workflows/test_1.yml | 202 +---- CHANGELOG.md | 3 + CONTRIBUTING.md | 2 +- .../error_handler_0/pyproject.toml | 1 + .../error_handler_1/pyproject.toml | 1 + .../pyproject.toml | 1 + .../test-requirements.txt | 2 +- .../pyproject.toml | 1 + .../pyproject.toml | 1 + .../pyproject.toml | 1 + .../pyproject.toml | 1 + .../pyproject.toml | 1 + .../pyproject.toml | 1 + .../pyproject.toml | 1 + .../pyproject.toml | 1 + opentelemetry-api/pyproject.toml | 1 + opentelemetry-proto/pyproject.toml | 1 + opentelemetry-sdk/pyproject.toml | 1 + .../pyproject.toml | 1 + .../pyproject.toml | 1 + .../pyproject.toml | 1 + .../pyproject.toml | 1 + .../test-requirements.txt | 4 +- .../pyproject.toml | 1 + tests/opentelemetry-test-utils/pyproject.toml | 1 + tox.ini | 38 +- 29 files changed, 786 insertions(+), 315 deletions(-) diff --git a/.github/workflows/benchmarks.yml b/.github/workflows/benchmarks.yml index be9b44d8e2a..f3f586e68cf 100644 --- a/.github/workflows/benchmarks.yml +++ b/.github/workflows/benchmarks.yml @@ -13,7 +13,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v5 with: - python-version: "3.12" + python-version: "3.13" architecture: 'x64' - name: Install tox run: pip install tox diff --git a/.github/workflows/generate_workflows.py b/.github/workflows/generate_workflows.py index 54130195282..05c5d2305d8 100644 --- a/.github/workflows/generate_workflows.py +++ b/.github/workflows/generate_workflows.py @@ -53,6 +53,7 @@ def get_test_job_datas(tox_envs: list, operating_systems: list) -> list: "py310": "3.10", "py311": "3.11", "py312": "3.12", + "py313": "3.13", } test_job_datas = [] diff --git a/.github/workflows/test_0.yml b/.github/workflows/test_0.yml index dfbced1b397..d24d7325349 100644 --- a/.github/workflows/test_0.yml +++ b/.github/workflows/test_0.yml @@ -106,6 +106,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-api -- -ra + py313-test-opentelemetry-api_ubuntu-latest: + name: opentelemetry-api 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-api -- -ra + pypy3-test-opentelemetry-api_ubuntu-latest: name: opentelemetry-api pypy-3.8 Ubuntu runs-on: ubuntu-latest @@ -214,6 +232,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-proto-protobuf5 -- -ra + py313-test-opentelemetry-proto-protobuf5_ubuntu-latest: + name: opentelemetry-proto-protobuf5 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-proto-protobuf5 -- -ra + pypy3-test-opentelemetry-proto-protobuf5_ubuntu-latest: name: opentelemetry-proto-protobuf5 pypy-3.8 Ubuntu runs-on: ubuntu-latest @@ -322,6 +358,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-sdk -- -ra + py313-test-opentelemetry-sdk_ubuntu-latest: + name: opentelemetry-sdk 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-sdk -- -ra + pypy3-test-opentelemetry-sdk_ubuntu-latest: name: opentelemetry-sdk pypy-3.8 Ubuntu runs-on: ubuntu-latest @@ -430,6 +484,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-semantic-conventions -- -ra + py313-test-opentelemetry-semantic-conventions_ubuntu-latest: + name: opentelemetry-semantic-conventions 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-semantic-conventions -- -ra + pypy3-test-opentelemetry-semantic-conventions_ubuntu-latest: name: opentelemetry-semantic-conventions pypy-3.8 Ubuntu runs-on: ubuntu-latest @@ -538,6 +610,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-getting-started -- -ra + py313-test-opentelemetry-getting-started_ubuntu-latest: + name: opentelemetry-getting-started 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-getting-started -- -ra + py38-test-opentelemetry-opentracing-shim_ubuntu-latest: name: opentelemetry-opentracing-shim 3.8 Ubuntu runs-on: ubuntu-latest @@ -628,6 +718,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-opentracing-shim -- -ra + py313-test-opentelemetry-opentracing-shim_ubuntu-latest: + name: opentelemetry-opentracing-shim 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-opentracing-shim -- -ra + pypy3-test-opentelemetry-opentracing-shim_ubuntu-latest: name: opentelemetry-opentracing-shim pypy-3.8 Ubuntu runs-on: ubuntu-latest @@ -736,6 +844,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-opencensus-shim -- -ra + py313-test-opentelemetry-opencensus-shim_ubuntu-latest: + name: opentelemetry-opencensus-shim 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-opencensus-shim -- -ra + py38-test-opentelemetry-exporter-opencensus_ubuntu-latest: name: opentelemetry-exporter-opencensus 3.8 Ubuntu runs-on: ubuntu-latest @@ -826,6 +952,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-opencensus -- -ra + py313-test-opentelemetry-exporter-opencensus_ubuntu-latest: + name: opentelemetry-exporter-opencensus 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-opencensus -- -ra + py38-test-opentelemetry-exporter-otlp-proto-common_ubuntu-latest: name: opentelemetry-exporter-otlp-proto-common 3.8 Ubuntu runs-on: ubuntu-latest @@ -916,6 +1060,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-otlp-proto-common -- -ra + py313-test-opentelemetry-exporter-otlp-proto-common_ubuntu-latest: + name: opentelemetry-exporter-otlp-proto-common 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-otlp-proto-common -- -ra + pypy3-test-opentelemetry-exporter-otlp-proto-common_ubuntu-latest: name: opentelemetry-exporter-otlp-proto-common pypy-3.8 Ubuntu runs-on: ubuntu-latest @@ -1024,6 +1186,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-otlp-combined -- -ra + py313-test-opentelemetry-exporter-otlp-combined_ubuntu-latest: + name: opentelemetry-exporter-otlp-combined 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-otlp-combined -- -ra + py38-test-opentelemetry-exporter-otlp-proto-grpc_ubuntu-latest: name: opentelemetry-exporter-otlp-proto-grpc 3.8 Ubuntu runs-on: ubuntu-latest @@ -1114,6 +1294,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-otlp-proto-grpc -- -ra + py313-test-opentelemetry-exporter-otlp-proto-grpc_ubuntu-latest: + name: opentelemetry-exporter-otlp-proto-grpc 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-otlp-proto-grpc -- -ra + py38-test-opentelemetry-exporter-otlp-proto-http_ubuntu-latest: name: opentelemetry-exporter-otlp-proto-http 3.8 Ubuntu runs-on: ubuntu-latest @@ -1204,6 +1402,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-otlp-proto-http -- -ra + py313-test-opentelemetry-exporter-otlp-proto-http_ubuntu-latest: + name: opentelemetry-exporter-otlp-proto-http 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-otlp-proto-http -- -ra + pypy3-test-opentelemetry-exporter-otlp-proto-http_ubuntu-latest: name: opentelemetry-exporter-otlp-proto-http pypy-3.8 Ubuntu runs-on: ubuntu-latest @@ -1312,6 +1528,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-prometheus -- -ra + py313-test-opentelemetry-exporter-prometheus_ubuntu-latest: + name: opentelemetry-exporter-prometheus 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-prometheus -- -ra + pypy3-test-opentelemetry-exporter-prometheus_ubuntu-latest: name: opentelemetry-exporter-prometheus pypy-3.8 Ubuntu runs-on: ubuntu-latest @@ -1420,6 +1654,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-zipkin-combined -- -ra + py313-test-opentelemetry-exporter-zipkin-combined_ubuntu-latest: + name: opentelemetry-exporter-zipkin-combined 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-zipkin-combined -- -ra + pypy3-test-opentelemetry-exporter-zipkin-combined_ubuntu-latest: name: opentelemetry-exporter-zipkin-combined pypy-3.8 Ubuntu runs-on: ubuntu-latest @@ -1528,6 +1780,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-zipkin-proto-http -- -ra + py313-test-opentelemetry-exporter-zipkin-proto-http_ubuntu-latest: + name: opentelemetry-exporter-zipkin-proto-http 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-zipkin-proto-http -- -ra + pypy3-test-opentelemetry-exporter-zipkin-proto-http_ubuntu-latest: name: opentelemetry-exporter-zipkin-proto-http pypy-3.8 Ubuntu runs-on: ubuntu-latest @@ -1636,6 +1906,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-zipkin-json -- -ra + py313-test-opentelemetry-exporter-zipkin-json_ubuntu-latest: + name: opentelemetry-exporter-zipkin-json 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-zipkin-json -- -ra + pypy3-test-opentelemetry-exporter-zipkin-json_ubuntu-latest: name: opentelemetry-exporter-zipkin-json pypy-3.8 Ubuntu runs-on: ubuntu-latest @@ -1744,6 +2032,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-propagator-b3 -- -ra + py313-test-opentelemetry-propagator-b3_ubuntu-latest: + name: opentelemetry-propagator-b3 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-propagator-b3 -- -ra + pypy3-test-opentelemetry-propagator-b3_ubuntu-latest: name: opentelemetry-propagator-b3 pypy-3.8 Ubuntu runs-on: ubuntu-latest @@ -1852,6 +2158,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-propagator-jaeger -- -ra + py313-test-opentelemetry-propagator-jaeger_ubuntu-latest: + name: opentelemetry-propagator-jaeger 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-propagator-jaeger -- -ra + pypy3-test-opentelemetry-propagator-jaeger_ubuntu-latest: name: opentelemetry-propagator-jaeger pypy-3.8 Ubuntu runs-on: ubuntu-latest @@ -1960,6 +2284,24 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-test-utils -- -ra + py313-test-opentelemetry-test-utils_ubuntu-latest: + name: opentelemetry-test-utils 3.13 Ubuntu + runs-on: ubuntu-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Run tests + run: tox -e py313-test-opentelemetry-test-utils -- -ra + pypy3-test-opentelemetry-test-utils_ubuntu-latest: name: opentelemetry-test-utils pypy-3.8 Ubuntu runs-on: ubuntu-latest @@ -2083,17 +2425,17 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-api -- -ra - pypy3-test-opentelemetry-api_windows-latest: - name: opentelemetry-api pypy-3.8 Windows + py313-test-opentelemetry-api_windows-latest: + name: opentelemetry-api 3.13 Windows runs-on: windows-latest steps: - name: Checkout repo @ SHA - ${{ github.sha }} uses: actions/checkout@v4 - - name: Set up Python pypy-3.8 + - name: Set up Python 3.13 uses: actions/setup-python@v5 with: - python-version: "pypy-3.8" + python-version: "3.13" - name: Install tox run: pip install tox @@ -2102,10 +2444,31 @@ jobs: run: git config --system core.longpaths true - name: Run tests - run: tox -e pypy3-test-opentelemetry-api -- -ra + run: tox -e py313-test-opentelemetry-api -- -ra - py38-test-opentelemetry-proto-protobuf5_windows-latest: - name: opentelemetry-proto-protobuf5 3.8 Windows + pypy3-test-opentelemetry-api_windows-latest: + name: opentelemetry-api pypy-3.8 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python pypy-3.8 + uses: actions/setup-python@v5 + with: + python-version: "pypy-3.8" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e pypy3-test-opentelemetry-api -- -ra + + py38-test-opentelemetry-proto-protobuf5_windows-latest: + name: opentelemetry-proto-protobuf5 3.8 Windows runs-on: windows-latest steps: - name: Checkout repo @ SHA - ${{ github.sha }} @@ -2209,6 +2572,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-proto-protobuf5 -- -ra + py313-test-opentelemetry-proto-protobuf5_windows-latest: + name: opentelemetry-proto-protobuf5 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-proto-protobuf5 -- -ra + pypy3-test-opentelemetry-proto-protobuf5_windows-latest: name: opentelemetry-proto-protobuf5 pypy-3.8 Windows runs-on: windows-latest @@ -2335,6 +2719,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-sdk -- -ra + py313-test-opentelemetry-sdk_windows-latest: + name: opentelemetry-sdk 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-sdk -- -ra + pypy3-test-opentelemetry-sdk_windows-latest: name: opentelemetry-sdk pypy-3.8 Windows runs-on: windows-latest @@ -2461,6 +2866,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-semantic-conventions -- -ra + py313-test-opentelemetry-semantic-conventions_windows-latest: + name: opentelemetry-semantic-conventions 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-semantic-conventions -- -ra + pypy3-test-opentelemetry-semantic-conventions_windows-latest: name: opentelemetry-semantic-conventions pypy-3.8 Windows runs-on: windows-latest @@ -2587,6 +3013,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-getting-started -- -ra + py313-test-opentelemetry-getting-started_windows-latest: + name: opentelemetry-getting-started 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-getting-started -- -ra + py38-test-opentelemetry-opentracing-shim_windows-latest: name: opentelemetry-opentracing-shim 3.8 Windows runs-on: windows-latest @@ -2692,6 +3139,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-opentracing-shim -- -ra + py313-test-opentelemetry-opentracing-shim_windows-latest: + name: opentelemetry-opentracing-shim 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-opentracing-shim -- -ra + pypy3-test-opentelemetry-opentracing-shim_windows-latest: name: opentelemetry-opentracing-shim pypy-3.8 Windows runs-on: windows-latest @@ -2818,6 +3286,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-opencensus-shim -- -ra + py313-test-opentelemetry-opencensus-shim_windows-latest: + name: opentelemetry-opencensus-shim 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-opencensus-shim -- -ra + py38-test-opentelemetry-exporter-opencensus_windows-latest: name: opentelemetry-exporter-opencensus 3.8 Windows runs-on: windows-latest @@ -2923,6 +3412,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-opencensus -- -ra + py313-test-opentelemetry-exporter-opencensus_windows-latest: + name: opentelemetry-exporter-opencensus 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-opencensus -- -ra + py38-test-opentelemetry-exporter-otlp-proto-common_windows-latest: name: opentelemetry-exporter-otlp-proto-common 3.8 Windows runs-on: windows-latest @@ -3028,6 +3538,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-otlp-proto-common -- -ra + py313-test-opentelemetry-exporter-otlp-proto-common_windows-latest: + name: opentelemetry-exporter-otlp-proto-common 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-otlp-proto-common -- -ra + pypy3-test-opentelemetry-exporter-otlp-proto-common_windows-latest: name: opentelemetry-exporter-otlp-proto-common pypy-3.8 Windows runs-on: windows-latest @@ -3154,6 +3685,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-otlp-combined -- -ra + py313-test-opentelemetry-exporter-otlp-combined_windows-latest: + name: opentelemetry-exporter-otlp-combined 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-otlp-combined -- -ra + py38-test-opentelemetry-exporter-otlp-proto-grpc_windows-latest: name: opentelemetry-exporter-otlp-proto-grpc 3.8 Windows runs-on: windows-latest @@ -3259,6 +3811,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-otlp-proto-grpc -- -ra + py313-test-opentelemetry-exporter-otlp-proto-grpc_windows-latest: + name: opentelemetry-exporter-otlp-proto-grpc 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-otlp-proto-grpc -- -ra + py38-test-opentelemetry-exporter-otlp-proto-http_windows-latest: name: opentelemetry-exporter-otlp-proto-http 3.8 Windows runs-on: windows-latest @@ -3364,6 +3937,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-otlp-proto-http -- -ra + py313-test-opentelemetry-exporter-otlp-proto-http_windows-latest: + name: opentelemetry-exporter-otlp-proto-http 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-otlp-proto-http -- -ra + pypy3-test-opentelemetry-exporter-otlp-proto-http_windows-latest: name: opentelemetry-exporter-otlp-proto-http pypy-3.8 Windows runs-on: windows-latest @@ -3490,6 +4084,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-prometheus -- -ra + py313-test-opentelemetry-exporter-prometheus_windows-latest: + name: opentelemetry-exporter-prometheus 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-prometheus -- -ra + pypy3-test-opentelemetry-exporter-prometheus_windows-latest: name: opentelemetry-exporter-prometheus pypy-3.8 Windows runs-on: windows-latest @@ -3616,6 +4231,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-zipkin-combined -- -ra + py313-test-opentelemetry-exporter-zipkin-combined_windows-latest: + name: opentelemetry-exporter-zipkin-combined 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-zipkin-combined -- -ra + pypy3-test-opentelemetry-exporter-zipkin-combined_windows-latest: name: opentelemetry-exporter-zipkin-combined pypy-3.8 Windows runs-on: windows-latest @@ -3742,6 +4378,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-zipkin-proto-http -- -ra + py313-test-opentelemetry-exporter-zipkin-proto-http_windows-latest: + name: opentelemetry-exporter-zipkin-proto-http 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-zipkin-proto-http -- -ra + pypy3-test-opentelemetry-exporter-zipkin-proto-http_windows-latest: name: opentelemetry-exporter-zipkin-proto-http pypy-3.8 Windows runs-on: windows-latest @@ -3868,6 +4525,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-exporter-zipkin-json -- -ra + py313-test-opentelemetry-exporter-zipkin-json_windows-latest: + name: opentelemetry-exporter-zipkin-json 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-exporter-zipkin-json -- -ra + pypy3-test-opentelemetry-exporter-zipkin-json_windows-latest: name: opentelemetry-exporter-zipkin-json pypy-3.8 Windows runs-on: windows-latest @@ -3994,6 +4672,27 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-propagator-b3 -- -ra + py313-test-opentelemetry-propagator-b3_windows-latest: + name: opentelemetry-propagator-b3 3.13 Windows + runs-on: windows-latest + steps: + - name: Checkout repo @ SHA - ${{ github.sha }} + uses: actions/checkout@v4 + + - name: Set up Python 3.13 + uses: actions/setup-python@v5 + with: + python-version: "3.13" + + - name: Install tox + run: pip install tox + + - name: Configure git to support long filenames + run: git config --system core.longpaths true + + - name: Run tests + run: tox -e py313-test-opentelemetry-propagator-b3 -- -ra + pypy3-test-opentelemetry-propagator-b3_windows-latest: name: opentelemetry-propagator-b3 pypy-3.8 Windows runs-on: windows-latest @@ -4120,80 +4819,17 @@ jobs: - name: Run tests run: tox -e py312-test-opentelemetry-propagator-jaeger -- -ra - pypy3-test-opentelemetry-propagator-jaeger_windows-latest: - name: opentelemetry-propagator-jaeger pypy-3.8 Windows - runs-on: windows-latest - steps: - - name: Checkout repo @ SHA - ${{ github.sha }} - uses: actions/checkout@v4 - - - name: Set up Python pypy-3.8 - uses: actions/setup-python@v5 - with: - python-version: "pypy-3.8" - - - name: Install tox - run: pip install tox - - - name: Configure git to support long filenames - run: git config --system core.longpaths true - - - name: Run tests - run: tox -e pypy3-test-opentelemetry-propagator-jaeger -- -ra - - py38-test-opentelemetry-test-utils_windows-latest: - name: opentelemetry-test-utils 3.8 Windows - runs-on: windows-latest - steps: - - name: Checkout repo @ SHA - ${{ github.sha }} - uses: actions/checkout@v4 - - - name: Set up Python 3.8 - uses: actions/setup-python@v5 - with: - python-version: "3.8" - - - name: Install tox - run: pip install tox - - - name: Configure git to support long filenames - run: git config --system core.longpaths true - - - name: Run tests - run: tox -e py38-test-opentelemetry-test-utils -- -ra - - py39-test-opentelemetry-test-utils_windows-latest: - name: opentelemetry-test-utils 3.9 Windows - runs-on: windows-latest - steps: - - name: Checkout repo @ SHA - ${{ github.sha }} - uses: actions/checkout@v4 - - - name: Set up Python 3.9 - uses: actions/setup-python@v5 - with: - python-version: "3.9" - - - name: Install tox - run: pip install tox - - - name: Configure git to support long filenames - run: git config --system core.longpaths true - - - name: Run tests - run: tox -e py39-test-opentelemetry-test-utils -- -ra - - py310-test-opentelemetry-test-utils_windows-latest: - name: opentelemetry-test-utils 3.10 Windows + py313-test-opentelemetry-propagator-jaeger_windows-latest: + name: opentelemetry-propagator-jaeger 3.13 Windows runs-on: windows-latest steps: - name: Checkout repo @ SHA - ${{ github.sha }} uses: actions/checkout@v4 - - name: Set up Python 3.10 + - name: Set up Python 3.13 uses: actions/setup-python@v5 with: - python-version: "3.10" + python-version: "3.13" - name: Install tox run: pip install tox @@ -4202,40 +4838,19 @@ jobs: run: git config --system core.longpaths true - name: Run tests - run: tox -e py310-test-opentelemetry-test-utils -- -ra + run: tox -e py313-test-opentelemetry-propagator-jaeger -- -ra - py311-test-opentelemetry-test-utils_windows-latest: - name: opentelemetry-test-utils 3.11 Windows - runs-on: windows-latest - steps: - - name: Checkout repo @ SHA - ${{ github.sha }} - uses: actions/checkout@v4 - - - name: Set up Python 3.11 - uses: actions/setup-python@v5 - with: - python-version: "3.11" - - - name: Install tox - run: pip install tox - - - name: Configure git to support long filenames - run: git config --system core.longpaths true - - - name: Run tests - run: tox -e py311-test-opentelemetry-test-utils -- -ra - - py312-test-opentelemetry-test-utils_windows-latest: - name: opentelemetry-test-utils 3.12 Windows + pypy3-test-opentelemetry-propagator-jaeger_windows-latest: + name: opentelemetry-propagator-jaeger pypy-3.8 Windows runs-on: windows-latest steps: - name: Checkout repo @ SHA - ${{ github.sha }} uses: actions/checkout@v4 - - name: Set up Python 3.12 + - name: Set up Python pypy-3.8 uses: actions/setup-python@v5 with: - python-version: "3.12" + python-version: "pypy-3.8" - name: Install tox run: pip install tox @@ -4244,19 +4859,19 @@ jobs: run: git config --system core.longpaths true - name: Run tests - run: tox -e py312-test-opentelemetry-test-utils -- -ra + run: tox -e pypy3-test-opentelemetry-propagator-jaeger -- -ra - pypy3-test-opentelemetry-test-utils_windows-latest: - name: opentelemetry-test-utils pypy-3.8 Windows + py38-test-opentelemetry-test-utils_windows-latest: + name: opentelemetry-test-utils 3.8 Windows runs-on: windows-latest steps: - name: Checkout repo @ SHA - ${{ github.sha }} uses: actions/checkout@v4 - - name: Set up Python pypy-3.8 + - name: Set up Python 3.8 uses: actions/setup-python@v5 with: - python-version: "pypy-3.8" + python-version: "3.8" - name: Install tox run: pip install tox @@ -4265,4 +4880,4 @@ jobs: run: git config --system core.longpaths true - name: Run tests - run: tox -e pypy3-test-opentelemetry-test-utils -- -ra + run: tox -e py38-test-opentelemetry-test-utils -- -ra diff --git a/.github/workflows/test_1.yml b/.github/workflows/test_1.yml index 892039b33ec..49d34716c58 100644 --- a/.github/workflows/test_1.yml +++ b/.github/workflows/test_1.yml @@ -16,71 +16,8 @@ env: jobs: - py312-test-opentelemetry-propagator-b3_windows-latest: - name: opentelemetry-propagator-b3 3.12 Windows - runs-on: windows-latest - steps: - - name: Checkout repo @ SHA - ${{ github.sha }} - uses: actions/checkout@v4 - - - name: Set up Python 3.12 - uses: actions/setup-python@v5 - with: - python-version: "3.12" - - - name: Install tox - run: pip install tox - - - name: Configure git to support long filenames - run: git config --system core.longpaths true - - - name: Run tests - run: tox -e py312-test-opentelemetry-propagator-b3 -- -ra - - pypy3-test-opentelemetry-propagator-b3_windows-latest: - name: opentelemetry-propagator-b3 pypy-3.8 Windows - runs-on: windows-latest - steps: - - name: Checkout repo @ SHA - ${{ github.sha }} - uses: actions/checkout@v4 - - - name: Set up Python pypy-3.8 - uses: actions/setup-python@v5 - with: - python-version: "pypy-3.8" - - - name: Install tox - run: pip install tox - - - name: Configure git to support long filenames - run: git config --system core.longpaths true - - - name: Run tests - run: tox -e pypy3-test-opentelemetry-propagator-b3 -- -ra - - py38-test-opentelemetry-propagator-jaeger_windows-latest: - name: opentelemetry-propagator-jaeger 3.8 Windows - runs-on: windows-latest - steps: - - name: Checkout repo @ SHA - ${{ github.sha }} - uses: actions/checkout@v4 - - - name: Set up Python 3.8 - uses: actions/setup-python@v5 - with: - python-version: "3.8" - - - name: Install tox - run: pip install tox - - - name: Configure git to support long filenames - run: git config --system core.longpaths true - - - name: Run tests - run: tox -e py38-test-opentelemetry-propagator-jaeger -- -ra - - py39-test-opentelemetry-propagator-jaeger_windows-latest: - name: opentelemetry-propagator-jaeger 3.9 Windows + py39-test-opentelemetry-test-utils_windows-latest: + name: opentelemetry-test-utils 3.9 Windows runs-on: windows-latest steps: - name: Checkout repo @ SHA - ${{ github.sha }} @@ -98,10 +35,10 @@ jobs: run: git config --system core.longpaths true - name: Run tests - run: tox -e py39-test-opentelemetry-propagator-jaeger -- -ra + run: tox -e py39-test-opentelemetry-test-utils -- -ra - py310-test-opentelemetry-propagator-jaeger_windows-latest: - name: opentelemetry-propagator-jaeger 3.10 Windows + py310-test-opentelemetry-test-utils_windows-latest: + name: opentelemetry-test-utils 3.10 Windows runs-on: windows-latest steps: - name: Checkout repo @ SHA - ${{ github.sha }} @@ -119,10 +56,10 @@ jobs: run: git config --system core.longpaths true - name: Run tests - run: tox -e py310-test-opentelemetry-propagator-jaeger -- -ra + run: tox -e py310-test-opentelemetry-test-utils -- -ra - py311-test-opentelemetry-propagator-jaeger_windows-latest: - name: opentelemetry-propagator-jaeger 3.11 Windows + py311-test-opentelemetry-test-utils_windows-latest: + name: opentelemetry-test-utils 3.11 Windows runs-on: windows-latest steps: - name: Checkout repo @ SHA - ${{ github.sha }} @@ -140,10 +77,10 @@ jobs: run: git config --system core.longpaths true - name: Run tests - run: tox -e py311-test-opentelemetry-propagator-jaeger -- -ra + run: tox -e py311-test-opentelemetry-test-utils -- -ra - py312-test-opentelemetry-propagator-jaeger_windows-latest: - name: opentelemetry-propagator-jaeger 3.12 Windows + py312-test-opentelemetry-test-utils_windows-latest: + name: opentelemetry-test-utils 3.12 Windows runs-on: windows-latest steps: - name: Checkout repo @ SHA - ${{ github.sha }} @@ -161,124 +98,19 @@ jobs: run: git config --system core.longpaths true - name: Run tests - run: tox -e py312-test-opentelemetry-propagator-jaeger -- -ra - - pypy3-test-opentelemetry-propagator-jaeger_windows-latest: - name: opentelemetry-propagator-jaeger pypy-3.8 Windows - runs-on: windows-latest - steps: - - name: Checkout repo @ SHA - ${{ github.sha }} - uses: actions/checkout@v4 - - - name: Set up Python pypy-3.8 - uses: actions/setup-python@v5 - with: - python-version: "pypy-3.8" - - - name: Install tox - run: pip install tox - - - name: Configure git to support long filenames - run: git config --system core.longpaths true - - - name: Run tests - run: tox -e pypy3-test-opentelemetry-propagator-jaeger -- -ra - - py38-test-opentelemetry-test-utils_windows-latest: - name: opentelemetry-test-utils 3.8 Windows - runs-on: windows-latest - steps: - - name: Checkout repo @ SHA - ${{ github.sha }} - uses: actions/checkout@v4 - - - name: Set up Python 3.8 - uses: actions/setup-python@v5 - with: - python-version: "3.8" - - - name: Install tox - run: pip install tox - - - name: Configure git to support long filenames - run: git config --system core.longpaths true - - - name: Run tests - run: tox -e py38-test-opentelemetry-test-utils -- -ra - - py39-test-opentelemetry-test-utils_windows-latest: - name: opentelemetry-test-utils 3.9 Windows - runs-on: windows-latest - steps: - - name: Checkout repo @ SHA - ${{ github.sha }} - uses: actions/checkout@v4 - - - name: Set up Python 3.9 - uses: actions/setup-python@v5 - with: - python-version: "3.9" - - - name: Install tox - run: pip install tox - - - name: Configure git to support long filenames - run: git config --system core.longpaths true - - - name: Run tests - run: tox -e py39-test-opentelemetry-test-utils -- -ra - - py310-test-opentelemetry-test-utils_windows-latest: - name: opentelemetry-test-utils 3.10 Windows - runs-on: windows-latest - steps: - - name: Checkout repo @ SHA - ${{ github.sha }} - uses: actions/checkout@v4 - - - name: Set up Python 3.10 - uses: actions/setup-python@v5 - with: - python-version: "3.10" - - - name: Install tox - run: pip install tox - - - name: Configure git to support long filenames - run: git config --system core.longpaths true - - - name: Run tests - run: tox -e py310-test-opentelemetry-test-utils -- -ra - - py311-test-opentelemetry-test-utils_windows-latest: - name: opentelemetry-test-utils 3.11 Windows - runs-on: windows-latest - steps: - - name: Checkout repo @ SHA - ${{ github.sha }} - uses: actions/checkout@v4 - - - name: Set up Python 3.11 - uses: actions/setup-python@v5 - with: - python-version: "3.11" - - - name: Install tox - run: pip install tox - - - name: Configure git to support long filenames - run: git config --system core.longpaths true - - - name: Run tests - run: tox -e py311-test-opentelemetry-test-utils -- -ra + run: tox -e py312-test-opentelemetry-test-utils -- -ra - py312-test-opentelemetry-test-utils_windows-latest: - name: opentelemetry-test-utils 3.12 Windows + py313-test-opentelemetry-test-utils_windows-latest: + name: opentelemetry-test-utils 3.13 Windows runs-on: windows-latest steps: - name: Checkout repo @ SHA - ${{ github.sha }} uses: actions/checkout@v4 - - name: Set up Python 3.12 + - name: Set up Python 3.13 uses: actions/setup-python@v5 with: - python-version: "3.12" + python-version: "3.13" - name: Install tox run: pip install tox @@ -287,7 +119,7 @@ jobs: run: git config --system core.longpaths true - name: Run tests - run: tox -e py312-test-opentelemetry-test-utils -- -ra + run: tox -e py313-test-opentelemetry-test-utils -- -ra pypy3-test-opentelemetry-test-utils_windows-latest: name: opentelemetry-test-utils pypy-3.8 Windows diff --git a/CHANGELOG.md b/CHANGELOG.md index f8b1a254db0..6a38aa90e2c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased +- Add Python 3.13 support + ([#4353](https://github.com/open-telemetry/opentelemetry-python/pull/4353)) + ## Version 1.29.0/0.50b0 (2024-12-11) - Fix crash exporting a log record with None body diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 658f0d20265..ed9951b6a2c 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -54,7 +54,7 @@ You can run `tox` with the following arguments: under multiple Python versions - `tox -e docs` to regenerate the API docs - `tox -e opentelemetry-api` and `tox -e opentelemetry-sdk` to run the API and SDK unit tests -- `tox -e py312-opentelemetry-api` to e.g. run the API unit tests under a specific +- `tox -e py313-opentelemetry-api` to e.g. run the API unit tests under a specific Python version - `tox -e spellcheck` to run a spellcheck on all the code - `tox -e lint-some-package` to run lint checks on `some-package` diff --git a/docs/examples/error_handler/error_handler_0/pyproject.toml b/docs/examples/error_handler/error_handler_0/pyproject.toml index f2b9d6b0d30..a8588c06690 100644 --- a/docs/examples/error_handler/error_handler_0/pyproject.toml +++ b/docs/examples/error_handler/error_handler_0/pyproject.toml @@ -23,6 +23,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dependencies = [ "opentelemetry-sdk ~= 1.3", diff --git a/docs/examples/error_handler/error_handler_1/pyproject.toml b/docs/examples/error_handler/error_handler_1/pyproject.toml index 31fb80f4c39..c747b4243d0 100644 --- a/docs/examples/error_handler/error_handler_1/pyproject.toml +++ b/docs/examples/error_handler/error_handler_1/pyproject.toml @@ -23,6 +23,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dependencies = [ "opentelemetry-sdk ~= 1.3", diff --git a/exporter/opentelemetry-exporter-opencensus/pyproject.toml b/exporter/opentelemetry-exporter-opencensus/pyproject.toml index 231bf6d72c1..25a84e5830b 100644 --- a/exporter/opentelemetry-exporter-opencensus/pyproject.toml +++ b/exporter/opentelemetry-exporter-opencensus/pyproject.toml @@ -25,6 +25,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Typing :: Typed", ] dependencies = [ diff --git a/exporter/opentelemetry-exporter-opencensus/test-requirements.txt b/exporter/opentelemetry-exporter-opencensus/test-requirements.txt index aad1363f39d..9240593a0d0 100644 --- a/exporter/opentelemetry-exporter-opencensus/test-requirements.txt +++ b/exporter/opentelemetry-exporter-opencensus/test-requirements.txt @@ -1,6 +1,6 @@ asgiref==3.7.2 Deprecated==1.2.14 -grpcio==1.62.0 +grpcio==1.66.2 importlib-metadata==6.11.0 iniconfig==2.0.0 opencensus-proto==0.1.0 diff --git a/exporter/opentelemetry-exporter-otlp-proto-common/pyproject.toml b/exporter/opentelemetry-exporter-otlp-proto-common/pyproject.toml index 789ca4984b0..ba510b4b1a7 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-common/pyproject.toml +++ b/exporter/opentelemetry-exporter-otlp-proto-common/pyproject.toml @@ -25,6 +25,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dependencies = [ "opentelemetry-proto == 1.30.0.dev", diff --git a/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml b/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml index 0adf5d6624d..8eef7343705 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml +++ b/exporter/opentelemetry-exporter-otlp-proto-grpc/pyproject.toml @@ -25,6 +25,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dependencies = [ "Deprecated >= 1.2.6", diff --git a/exporter/opentelemetry-exporter-otlp-proto-http/pyproject.toml b/exporter/opentelemetry-exporter-otlp-proto-http/pyproject.toml index b27b714690b..454fecf3cdd 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-http/pyproject.toml +++ b/exporter/opentelemetry-exporter-otlp-proto-http/pyproject.toml @@ -25,6 +25,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dependencies = [ "Deprecated >= 1.2.6", diff --git a/exporter/opentelemetry-exporter-otlp/pyproject.toml b/exporter/opentelemetry-exporter-otlp/pyproject.toml index 07a86cab0c3..d4e582a792d 100644 --- a/exporter/opentelemetry-exporter-otlp/pyproject.toml +++ b/exporter/opentelemetry-exporter-otlp/pyproject.toml @@ -25,6 +25,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Typing :: Typed", ] dependencies = [ diff --git a/exporter/opentelemetry-exporter-prometheus/pyproject.toml b/exporter/opentelemetry-exporter-prometheus/pyproject.toml index 52817b00cac..43501748213 100644 --- a/exporter/opentelemetry-exporter-prometheus/pyproject.toml +++ b/exporter/opentelemetry-exporter-prometheus/pyproject.toml @@ -25,6 +25,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dependencies = [ "opentelemetry-api ~= 1.12", diff --git a/exporter/opentelemetry-exporter-zipkin-json/pyproject.toml b/exporter/opentelemetry-exporter-zipkin-json/pyproject.toml index ca918883d5f..001a99b89d6 100644 --- a/exporter/opentelemetry-exporter-zipkin-json/pyproject.toml +++ b/exporter/opentelemetry-exporter-zipkin-json/pyproject.toml @@ -25,6 +25,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Typing :: Typed", ] dependencies = [ diff --git a/exporter/opentelemetry-exporter-zipkin-proto-http/pyproject.toml b/exporter/opentelemetry-exporter-zipkin-proto-http/pyproject.toml index 73aa457b95f..70d1dc24516 100644 --- a/exporter/opentelemetry-exporter-zipkin-proto-http/pyproject.toml +++ b/exporter/opentelemetry-exporter-zipkin-proto-http/pyproject.toml @@ -25,6 +25,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Typing :: Typed", ] dependencies = [ diff --git a/exporter/opentelemetry-exporter-zipkin/pyproject.toml b/exporter/opentelemetry-exporter-zipkin/pyproject.toml index 06ffd7fa9aa..b0351f04833 100644 --- a/exporter/opentelemetry-exporter-zipkin/pyproject.toml +++ b/exporter/opentelemetry-exporter-zipkin/pyproject.toml @@ -25,6 +25,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Typing :: Typed", ] dependencies = [ diff --git a/opentelemetry-api/pyproject.toml b/opentelemetry-api/pyproject.toml index 0e4c4f2ac8f..ae1344329f0 100644 --- a/opentelemetry-api/pyproject.toml +++ b/opentelemetry-api/pyproject.toml @@ -23,6 +23,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Typing :: Typed", ] dependencies = [ diff --git a/opentelemetry-proto/pyproject.toml b/opentelemetry-proto/pyproject.toml index f59cdfc196a..0afdbf9110d 100644 --- a/opentelemetry-proto/pyproject.toml +++ b/opentelemetry-proto/pyproject.toml @@ -24,6 +24,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dependencies = [ "protobuf>=5.0, < 6.0", diff --git a/opentelemetry-sdk/pyproject.toml b/opentelemetry-sdk/pyproject.toml index 2bce3d99e37..2489211d889 100644 --- a/opentelemetry-sdk/pyproject.toml +++ b/opentelemetry-sdk/pyproject.toml @@ -24,6 +24,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Typing :: Typed", ] dependencies = [ diff --git a/opentelemetry-semantic-conventions/pyproject.toml b/opentelemetry-semantic-conventions/pyproject.toml index 272e47df3bb..3a934862690 100644 --- a/opentelemetry-semantic-conventions/pyproject.toml +++ b/opentelemetry-semantic-conventions/pyproject.toml @@ -24,6 +24,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dependencies = [ diff --git a/propagator/opentelemetry-propagator-b3/pyproject.toml b/propagator/opentelemetry-propagator-b3/pyproject.toml index 6641c712c5e..50851b141b5 100644 --- a/propagator/opentelemetry-propagator-b3/pyproject.toml +++ b/propagator/opentelemetry-propagator-b3/pyproject.toml @@ -24,6 +24,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Typing :: Typed", ] dependencies = [ diff --git a/propagator/opentelemetry-propagator-jaeger/pyproject.toml b/propagator/opentelemetry-propagator-jaeger/pyproject.toml index 49e1df0cbe6..0930c590c71 100644 --- a/propagator/opentelemetry-propagator-jaeger/pyproject.toml +++ b/propagator/opentelemetry-propagator-jaeger/pyproject.toml @@ -24,6 +24,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Typing :: Typed", ] dependencies = [ diff --git a/shim/opentelemetry-opencensus-shim/pyproject.toml b/shim/opentelemetry-opencensus-shim/pyproject.toml index bbe176d0140..3a35b624b5f 100644 --- a/shim/opentelemetry-opencensus-shim/pyproject.toml +++ b/shim/opentelemetry-opencensus-shim/pyproject.toml @@ -24,6 +24,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Typing :: Typed", ] dependencies = [ diff --git a/shim/opentelemetry-opencensus-shim/test-requirements.txt b/shim/opentelemetry-opencensus-shim/test-requirements.txt index 22810bf4d6c..90e24cfa223 100644 --- a/shim/opentelemetry-opencensus-shim/test-requirements.txt +++ b/shim/opentelemetry-opencensus-shim/test-requirements.txt @@ -5,8 +5,8 @@ charset-normalizer==3.3.2 Deprecated==1.2.14 google-api-core==2.17.1 google-auth==2.28.1 -googleapis-common-protos==1.62.0 -grpcio==1.62.0 +googleapis-common-protos==1.63.2 +grpcio==1.66.2 idna==3.7 importlib-metadata==6.11.0 iniconfig==2.0.0 diff --git a/shim/opentelemetry-opentracing-shim/pyproject.toml b/shim/opentelemetry-opentracing-shim/pyproject.toml index f0e5a546ea4..c39003b0a27 100644 --- a/shim/opentelemetry-opentracing-shim/pyproject.toml +++ b/shim/opentelemetry-opentracing-shim/pyproject.toml @@ -24,6 +24,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Typing :: Typed", ] dependencies = [ diff --git a/tests/opentelemetry-test-utils/pyproject.toml b/tests/opentelemetry-test-utils/pyproject.toml index 07bc20d47c8..42aebc5424a 100644 --- a/tests/opentelemetry-test-utils/pyproject.toml +++ b/tests/opentelemetry-test-utils/pyproject.toml @@ -24,6 +24,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dependencies = [ "asgiref ~= 3.0", diff --git a/tox.ini b/tox.ini index f9a4c8e0919..84c9420494e 100644 --- a/tox.ini +++ b/tox.ini @@ -6,83 +6,83 @@ envlist = ; Environments are organized by individual package, allowing ; for specifying supported Python versions per package. - py3{8,9,10,11,12}-test-opentelemetry-api + py3{8,9,10,11,12,13}-test-opentelemetry-api pypy3-test-opentelemetry-api lint-opentelemetry-api - py3{8,9,10,11,12}-test-opentelemetry-proto-protobuf5 + py3{8,9,10,11,12,13}-test-opentelemetry-proto-protobuf5 pypy3-test-opentelemetry-proto-protobuf5 lint-opentelemetry-proto-protobuf5 - py3{8,9,10,11,12}-test-opentelemetry-sdk + py3{8,9,10,11,12,13}-test-opentelemetry-sdk pypy3-test-opentelemetry-sdk lint-opentelemetry-sdk benchmark-opentelemetry-sdk - py3{8,9,10,11,12}-test-opentelemetry-semantic-conventions + py3{8,9,10,11,12,13}-test-opentelemetry-semantic-conventions pypy3-test-opentelemetry-semantic-conventions lint-opentelemetry-semantic-conventions - py3{8,9,10,11,12}-test-opentelemetry-getting-started + py3{8,9,10,11,12,13}-test-opentelemetry-getting-started lint-opentelemetry-getting-started - py3{8,9,10,11,12}-test-opentelemetry-opentracing-shim + py3{8,9,10,11,12,13}-test-opentelemetry-opentracing-shim pypy3-test-opentelemetry-opentracing-shim lint-opentelemetry-opentracing-shim - py3{8,9,10,11,12}-test-opentelemetry-opencensus-shim + py3{8,9,10,11,12,13}-test-opentelemetry-opencensus-shim ; opencensus-shim intentionally excluded from pypy3 (grpcio install fails) lint-opentelemetry-opencensus-shim - py3{8,9,10,11,12}-test-opentelemetry-exporter-opencensus + py3{8,9,10,11,12,13}-test-opentelemetry-exporter-opencensus ; exporter-opencensus intentionally excluded from pypy3 lint-opentelemetry-exporter-opencensus - py3{8,9,10,11,12}-test-opentelemetry-exporter-otlp-proto-common + py3{8,9,10,11,12,13}-test-opentelemetry-exporter-otlp-proto-common pypy3-test-opentelemetry-exporter-otlp-proto-common lint-opentelemetry-exporter-otlp-proto-common ; opentelemetry-exporter-otlp - py3{8,9,10,11,12}-test-opentelemetry-exporter-otlp-combined + py3{8,9,10,11,12,13}-test-opentelemetry-exporter-otlp-combined ; intentionally excluded from pypy3 lint-opentelemetry-exporter-otlp-combined - py3{8,9,10,11,12}-test-opentelemetry-exporter-otlp-proto-grpc + py3{8,9,10,11,12,13}-test-opentelemetry-exporter-otlp-proto-grpc ; intentionally excluded from pypy3 lint-opentelemetry-exporter-otlp-proto-grpc benchmark-opentelemetry-exporter-otlp-proto-grpc - py3{8,9,10,11,12}-test-opentelemetry-exporter-otlp-proto-http + py3{8,9,10,11,12,13}-test-opentelemetry-exporter-otlp-proto-http pypy3-test-opentelemetry-exporter-otlp-proto-http lint-opentelemetry-exporter-otlp-proto-http - py3{8,9,10,11,12}-test-opentelemetry-exporter-prometheus + py3{8,9,10,11,12,13}-test-opentelemetry-exporter-prometheus pypy3-test-opentelemetry-exporter-prometheus lint-opentelemetry-exporter-prometheus ; opentelemetry-exporter-zipkin - py3{8,9,10,11,12}-test-opentelemetry-exporter-zipkin-combined + py3{8,9,10,11,12,13}-test-opentelemetry-exporter-zipkin-combined pypy3-test-opentelemetry-exporter-zipkin-combined lint-opentelemetry-exporter-zipkin-combined - py3{8,9,10,11,12}-test-opentelemetry-exporter-zipkin-proto-http + py3{8,9,10,11,12,13}-test-opentelemetry-exporter-zipkin-proto-http pypy3-test-opentelemetry-exporter-zipkin-proto-http lint-opentelemetry-exporter-zipkin-proto-http - py3{8,9,10,11,12}-test-opentelemetry-exporter-zipkin-json + py3{8,9,10,11,12,13}-test-opentelemetry-exporter-zipkin-json pypy3-test-opentelemetry-exporter-zipkin-json lint-opentelemetry-exporter-zipkin-json - py3{8,9,10,11,12}-test-opentelemetry-propagator-b3 + py3{8,9,10,11,12,13}-test-opentelemetry-propagator-b3 pypy3-test-opentelemetry-propagator-b3 lint-opentelemetry-propagator-b3 benchmark-opentelemetry-propagator-b3 - py3{8,9,10,11,12}-test-opentelemetry-propagator-jaeger + py3{8,9,10,11,12,13}-test-opentelemetry-propagator-jaeger pypy3-test-opentelemetry-propagator-jaeger lint-opentelemetry-propagator-jaeger - py3{8,9,10,11,12}-test-opentelemetry-test-utils + py3{8,9,10,11,12,13}-test-opentelemetry-test-utils pypy3-test-opentelemetry-test-utils lint-opentelemetry-test-utils From 9e94fd2650a1567f1f3a3d72247d0bf1525c4a17 Mon Sep 17 00:00:00 2001 From: David Ashpole Date: Thu, 19 Dec 2024 16:35:08 -0500 Subject: [PATCH 08/11] update links to openmetrics to reference the v1.0.0 release (#4356) --- .../src/opentelemetry/proto/metrics/v1/metrics_pb2.pyi | 6 +++--- .../opentelemetry/semconv/_incubating/metrics/hw_metrics.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/opentelemetry-proto/src/opentelemetry/proto/metrics/v1/metrics_pb2.pyi b/opentelemetry-proto/src/opentelemetry/proto/metrics/v1/metrics_pb2.pyi index 7bb4d95b102..b3e3e4d04d9 100644 --- a/opentelemetry-proto/src/opentelemetry/proto/metrics/v1/metrics_pb2.pyi +++ b/opentelemetry-proto/src/opentelemetry/proto/metrics/v1/metrics_pb2.pyi @@ -959,7 +959,7 @@ class HistogramDataPoint(google.protobuf.message.Message): events, and is assumed to be monotonic over the values of these events. Negative events *can* be recorded, but sum should not be filled out when doing so. This is specifically to enforce compatibility w/ OpenMetrics, - see: https://github.com/OpenObservability/OpenMetrics/blob/main/specification/OpenMetrics.md#histogram + see: https://github.com/prometheus/OpenMetrics/blob/v1.0.0/specification/OpenMetrics.md#histogram """ @property def bucket_counts( @@ -1205,7 +1205,7 @@ class ExponentialHistogramDataPoint(google.protobuf.message.Message): events, and is assumed to be monotonic over the values of these events. Negative events *can* be recorded, but sum should not be filled out when doing so. This is specifically to enforce compatibility w/ OpenMetrics, - see: https://github.com/OpenObservability/OpenMetrics/blob/main/specification/OpenMetrics.md#histogram + see: https://github.com/prometheus/OpenMetrics/blob/v1.0.0/specification/OpenMetrics.md#histogram """ scale: builtins.int """scale describes the resolution of the histogram. Boundaries are @@ -1451,7 +1451,7 @@ class SummaryDataPoint(google.protobuf.message.Message): events, and is assumed to be monotonic over the values of these events. Negative events *can* be recorded, but sum should not be filled out when doing so. This is specifically to enforce compatibility w/ OpenMetrics, - see: https://github.com/OpenObservability/OpenMetrics/blob/main/specification/OpenMetrics.md#summary + see: https://github.com/prometheus/OpenMetrics/blob/v1.0.0/specification/OpenMetrics.md#summary """ @property def quantile_values( diff --git a/opentelemetry-semantic-conventions/src/opentelemetry/semconv/_incubating/metrics/hw_metrics.py b/opentelemetry-semantic-conventions/src/opentelemetry/semconv/_incubating/metrics/hw_metrics.py index ca615236e7a..78199c68ad2 100644 --- a/opentelemetry-semantic-conventions/src/opentelemetry/semconv/_incubating/metrics/hw_metrics.py +++ b/opentelemetry-semantic-conventions/src/opentelemetry/semconv/_incubating/metrics/hw_metrics.py @@ -98,7 +98,7 @@ def create_hw_power( Operational status: `1` (true) or `0` (false) for each of the possible states Instrument: updowncounter Unit: 1 -Note: `hw.status` is currently specified as an *UpDownCounter* but would ideally be represented using a [*StateSet* as defined in OpenMetrics](https://github.com/OpenObservability/OpenMetrics/blob/main/specification/OpenMetrics.md#stateset). This semantic convention will be updated once *StateSet* is specified in OpenTelemetry. This planned change is not expected to have any consequence on the way users query their timeseries backend to retrieve the values of `hw.status` over time. +Note: `hw.status` is currently specified as an *UpDownCounter* but would ideally be represented using a [*StateSet* as defined in OpenMetrics](https://github.com/prometheus/OpenMetrics/blob/v1.0.0/specification/OpenMetrics.md#stateset). This semantic convention will be updated once *StateSet* is specified in OpenTelemetry. This planned change is not expected to have any consequence on the way users query their timeseries backend to retrieve the values of `hw.status` over time. """ From 33acdf3ba7c0fe43958754c103edc1b132364fd1 Mon Sep 17 00:00:00 2001 From: Maxi Fernandez <45922974+Maxi91f@users.noreply.github.com> Date: Fri, 20 Dec 2024 17:33:35 -0300 Subject: [PATCH 09/11] fix: add attributes to get_meter wrapper (#4364) --- CHANGELOG.md | 2 ++ .../metrics/_internal/__init__.py | 3 ++- .../tests/metrics/test_meter_provider.py | 25 ++++++++++++++++++- 3 files changed, 28 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6a38aa90e2c..ad1d754bd87 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased +- Add `attributes` field in `metrics.get_meter` wrapper function + ([#4364](https://github.com/open-telemetry/opentelemetry-python/pull/4364)) - Add Python 3.13 support ([#4353](https://github.com/open-telemetry/opentelemetry-python/pull/4353)) diff --git a/opentelemetry-api/src/opentelemetry/metrics/_internal/__init__.py b/opentelemetry-api/src/opentelemetry/metrics/_internal/__init__.py index 8ee3c1e6b99..84b4a6a8747 100644 --- a/opentelemetry-api/src/opentelemetry/metrics/_internal/__init__.py +++ b/opentelemetry-api/src/opentelemetry/metrics/_internal/__init__.py @@ -764,6 +764,7 @@ def get_meter( version: str = "", meter_provider: Optional[MeterProvider] = None, schema_url: Optional[str] = None, + attributes: Optional[Attributes] = None, ) -> "Meter": """Returns a `Meter` for use by the given instrumentation library. @@ -774,7 +775,7 @@ def get_meter( """ if meter_provider is None: meter_provider = get_meter_provider() - return meter_provider.get_meter(name, version, schema_url) + return meter_provider.get_meter(name, version, schema_url, attributes) def _set_meter_provider(meter_provider: MeterProvider, log: bool) -> None: diff --git a/opentelemetry-api/tests/metrics/test_meter_provider.py b/opentelemetry-api/tests/metrics/test_meter_provider.py index a570d47624f..6f1989e208a 100644 --- a/opentelemetry-api/tests/metrics/test_meter_provider.py +++ b/opentelemetry-api/tests/metrics/test_meter_provider.py @@ -29,7 +29,11 @@ get_meter_provider, set_meter_provider, ) -from opentelemetry.metrics._internal import _ProxyMeter, _ProxyMeterProvider +from opentelemetry.metrics._internal import ( + _ProxyMeter, + _ProxyMeterProvider, + get_meter, +) from opentelemetry.metrics._internal.instrument import ( _ProxyCounter, _ProxyGauge, @@ -141,6 +145,25 @@ def test_invalid_name(self): self.assertEqual(meter.name, None) + def test_get_meter_wrapper(self): + """ + `metrics._internal.get_meter` called with valid parameters and a NoOpMeterProvider + should return a NoOpMeter with the same parameters. + """ + + meter = get_meter( + "name", + version="version", + meter_provider=NoOpMeterProvider(), + schema_url="schema_url", + attributes={"key": "value", "key2": 5, "key3": "value3"}, + ) + + self.assertIsInstance(meter, NoOpMeter) + self.assertEqual(meter.name, "name") + self.assertEqual(meter.version, "version") + self.assertEqual(meter.schema_url, "schema_url") + class TestProxy(MetricsGlobalsTest, TestCase): def test_global_proxy_meter_provider(self): From 92f221c7fcb6573195673df935b179597cfb4b6e Mon Sep 17 00:00:00 2001 From: Riccardo Magliocchetti Date: Mon, 23 Dec 2024 20:25:17 +0100 Subject: [PATCH 10/11] opentelemetry-sdk: clarify Resource.create usage (#4372) * opentelemetry-sdk: clarify Resource.create usage After #3181 ResourceDetector instances cannot call Resource.create otherwise when using auto-instrumentation you'll go into an infinite loop trying to load resource detectors. * Update opentelemetry-sdk/src/opentelemetry/sdk/resources/__init__.py Co-authored-by: Aaron Abbott * Update opentelemetry-sdk/src/opentelemetry/sdk/resources/__init__.py Co-authored-by: Aaron Abbott * More precise instructions --------- Co-authored-by: Aaron Abbott --- .../src/opentelemetry/sdk/resources/__init__.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/opentelemetry-sdk/src/opentelemetry/sdk/resources/__init__.py b/opentelemetry-sdk/src/opentelemetry/sdk/resources/__init__.py index a52573ac1c9..2f95652de77 100644 --- a/opentelemetry-sdk/src/opentelemetry/sdk/resources/__init__.py +++ b/opentelemetry-sdk/src/opentelemetry/sdk/resources/__init__.py @@ -23,7 +23,8 @@ these attributes can be included in the Resource.* Resource objects are created with `Resource.create`, which accepts attributes -(key-values). Resources should NOT be created via constructor, and working with +(key-values). Resources should NOT be created via constructor except by `ResourceDetector` +instances which can't use `Resource.create` to avoid infinite loops. Working with `Resource` objects should only be done via the Resource API methods. Resource attributes can also be passed at process invocation in the :envvar:`OTEL_RESOURCE_ATTRIBUTES` environment variable. You should register @@ -175,6 +176,8 @@ def create( ) -> "Resource": """Creates a new `Resource` from attributes. + `ResourceDetector` instances should not call this method. + Args: attributes: Optional zero or more key-value pairs. schema_url: Optional URL pointing to the schema @@ -316,6 +319,7 @@ def __init__(self, raise_on_error: bool = False) -> None: @abc.abstractmethod def detect(self) -> "Resource": + """Don't call `Resource.create` here to avoid an infinite loop, instead instantiate `Resource` directly""" raise NotImplementedError() From 29aad2efa30a35757ea78d90e4d3fd517bc00468 Mon Sep 17 00:00:00 2001 From: Riccardo Magliocchetti Date: Tue, 24 Dec 2024 10:12:37 +0100 Subject: [PATCH 11/11] opentelemetry-sdk: don't print warnings if SDK is disabled (#4371) * opentelemetry-sdk: don't print warnings if SDK is disabled * Add changelog --- CHANGELOG.md | 2 ++ .../src/opentelemetry/sdk/_logs/_internal/__init__.py | 1 - .../src/opentelemetry/sdk/metrics/_internal/__init__.py | 1 - opentelemetry-sdk/src/opentelemetry/sdk/trace/__init__.py | 1 - opentelemetry-sdk/tests/logs/test_handler.py | 7 +------ opentelemetry-sdk/tests/logs/test_logs.py | 6 +----- 6 files changed, 4 insertions(+), 14 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ad1d754bd87..e71d5a7b6a8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ([#4364](https://github.com/open-telemetry/opentelemetry-python/pull/4364)) - Add Python 3.13 support ([#4353](https://github.com/open-telemetry/opentelemetry-python/pull/4353)) +- sdk: don't log or print warnings when the SDK has been disabled + ([#4371](https://github.com/open-telemetry/opentelemetry-python/pull/4371)) ## Version 1.29.0/0.50b0 (2024-12-11) diff --git a/opentelemetry-sdk/src/opentelemetry/sdk/_logs/_internal/__init__.py b/opentelemetry-sdk/src/opentelemetry/sdk/_logs/_internal/__init__.py index c2db81687a2..d277b5cae09 100644 --- a/opentelemetry-sdk/src/opentelemetry/sdk/_logs/_internal/__init__.py +++ b/opentelemetry-sdk/src/opentelemetry/sdk/_logs/_internal/__init__.py @@ -670,7 +670,6 @@ def get_logger( attributes: Optional[Attributes] = None, ) -> Logger: if self._disabled: - warnings.warn("SDK is disabled.") return NoOpLogger( name, version=version, diff --git a/opentelemetry-sdk/src/opentelemetry/sdk/metrics/_internal/__init__.py b/opentelemetry-sdk/src/opentelemetry/sdk/metrics/_internal/__init__.py index 1ef8dcfaa6c..334dd01b10a 100644 --- a/opentelemetry-sdk/src/opentelemetry/sdk/metrics/_internal/__init__.py +++ b/opentelemetry-sdk/src/opentelemetry/sdk/metrics/_internal/__init__.py @@ -537,7 +537,6 @@ def get_meter( attributes: Optional[Attributes] = None, ) -> Meter: if self._disabled: - _logger.warning("SDK is disabled.") return NoOpMeter(name, version=version, schema_url=schema_url) if self._shutdown: diff --git a/opentelemetry-sdk/src/opentelemetry/sdk/trace/__init__.py b/opentelemetry-sdk/src/opentelemetry/sdk/trace/__init__.py index c40a7a70702..2e4448387c1 100644 --- a/opentelemetry-sdk/src/opentelemetry/sdk/trace/__init__.py +++ b/opentelemetry-sdk/src/opentelemetry/sdk/trace/__init__.py @@ -1228,7 +1228,6 @@ def get_tracer( attributes: typing.Optional[types.Attributes] = None, ) -> "trace_api.Tracer": if self._disabled: - logger.warning("SDK is disabled.") return NoOpTracer() if not instrumenting_module_name: # Reject empty strings too. instrumenting_module_name = "" diff --git a/opentelemetry-sdk/tests/logs/test_handler.py b/opentelemetry-sdk/tests/logs/test_handler.py index f6daa1b22cf..7f8763bb008 100644 --- a/opentelemetry-sdk/tests/logs/test_handler.py +++ b/opentelemetry-sdk/tests/logs/test_handler.py @@ -15,7 +15,6 @@ import logging import os import unittest -import warnings from unittest.mock import Mock, patch from opentelemetry._logs import NoOpLoggerProvider, SeverityNumber @@ -290,11 +289,7 @@ def test_handler_root_logger_with_disabled_sdk_does_not_go_into_recursion_error( processor, logger = set_up_test_logging( logging.NOTSET, root_logger=True ) - with warnings.catch_warnings(record=True) as cw: - logger.warning("hello") - - self.assertEqual(len(cw), 1) - self.assertEqual("SDK is disabled.", str(cw[0].message)) + logger.warning("hello") self.assertEqual(processor.emit_count(), 0) diff --git a/opentelemetry-sdk/tests/logs/test_logs.py b/opentelemetry-sdk/tests/logs/test_logs.py index 0590669653b..92daf4d40b3 100644 --- a/opentelemetry-sdk/tests/logs/test_logs.py +++ b/opentelemetry-sdk/tests/logs/test_logs.py @@ -15,7 +15,6 @@ # pylint: disable=protected-access import unittest -import warnings from unittest.mock import Mock, patch from opentelemetry.sdk._logs import LoggerProvider @@ -70,12 +69,9 @@ def test_get_logger(self): @patch.dict("os.environ", {OTEL_SDK_DISABLED: "true"}) def test_get_logger_with_sdk_disabled(self): - with warnings.catch_warnings(record=True) as cw: - logger = LoggerProvider().get_logger(Mock()) + logger = LoggerProvider().get_logger(Mock()) self.assertIsInstance(logger, NoOpLogger) - self.assertEqual(len(cw), 1) - self.assertEqual("SDK is disabled.", str(cw[0].message)) @patch.object(Resource, "create") def test_logger_provider_init(self, resource_patch):