From aff87a72d51759661887ea4ca971137c583fc4f5 Mon Sep 17 00:00:00 2001 From: Aaron Abbott Date: Fri, 29 Oct 2021 13:33:19 -0400 Subject: [PATCH] Merge main into metrics_new (#2250) * updating changelogs and version to 1.6.1-0.25b1 (#2223) * default value is invalid, was renamed (#2226) * Website: support GH page links to canonical src, and aliases (#2224) * Fix opentracing shim references (#2180) * Prepare release v1.6.2 and 0.25b2 (#2230) * update changelog to note the rename of entrypoints in 1.6.0 (#2228) * add note about proto version to README.rst (#2232) * ReadableSpan events and links now return a tuple (#2215) * ReadableSpan events and links now return a tuple Removed MappingProxy since events and links are not mappings Signed-off-by: Ted Kern * fix lint Signed-off-by: Ted Kern * fix lint * fix lint Co-authored-by: Diego Hurtado Co-authored-by: Leighton Chen * adding CI testing for python 3.10 (#2207) * remove `X-B3-ParentSpanId` for B3 propagator as per OpenTelemetry Specification (#2237) * remove X-B3-ParentSpanId for B3 propagator as per OpenTelemetry specification * revert changes - run tests * re-commit changes * add entry to CHANGELOG * remove ParentSpanId in B3SingleFormat * Remove lingering distro pkg files (#2241) Co-authored-by: Leighton Chen Co-authored-by: alrex Co-authored-by: Patrice Chalin Co-authored-by: Ben Roberts Co-authored-by: Owais Lone Co-authored-by: Ted Kern Co-authored-by: Diego Hurtado Co-authored-by: James <45812677+JamesJHPark@users.noreply.github.com> Co-authored-by: (Eliseo) Nathaniel Ruiz Nowell --- .github/workflows/test.yml | 3 +- CHANGELOG.md | 17 ++++++--- .../error_handler/error_handler_0/setup.cfg | 1 + .../error_handler/error_handler_1/setup.cfg | 1 + .../setup.cfg | 1 + .../jaeger/proto/grpc/gen/collector_pb2.py | 2 +- .../setup.cfg | 1 + .../opentelemetry-exporter-jaeger/setup.cfg | 1 + .../setup.cfg | 1 + .../setup.cfg | 1 + .../setup.cfg | 1 + .../opentelemetry-exporter-otlp/setup.cfg | 1 + .../setup.cfg | 1 + .../setup.cfg | 1 + .../opentelemetry-exporter-zipkin/setup.cfg | 1 + opentelemetry-api/setup.cfg | 1 + opentelemetry-proto/setup.cfg | 1 + opentelemetry-sdk/setup.cfg | 1 + opentelemetry-semantic-conventions/setup.cfg | 1 + .../opentelemetry-propagator-b3/setup.cfg | 1 + .../opentelemetry/propagators/b3/__init__.py | 13 ------- .../propagation/test_benchmark_b3_format.py | 3 +- .../tests/test_b3_format.py | 6 +-- .../opentelemetry-propagator-jaeger/setup.cfg | 1 + shim/opentelemetry-opentracing-shim/setup.cfg | 1 + tests/util/setup.cfg | 1 + tox.ini | 38 +++++++++---------- 27 files changed, 55 insertions(+), 47 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index fe3dc016994..2abba7c24ab 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -27,13 +27,14 @@ jobs: py37: 3.7 py38: 3.8 py39: 3.9 + py310: "3.10" pypy3: pypy-3.7 RUN_MATRIX_COMBINATION: ${{ matrix.python-version }}-${{ matrix.package }}-${{ matrix.os }} runs-on: ${{ matrix.os }} strategy: fail-fast: false # ensures the entire test matrix is run, even if one permutation fails matrix: - python-version: [ py36, py37, py38, py39, pypy3 ] + python-version: [ py36, py37, py38, py39, py310, pypy3 ] package: ["api", "sdk", "semantic", "getting", "shim", "exporter", "protobuf", "propagator"] os: [ ubuntu-20.04, windows-2019 ] steps: diff --git a/CHANGELOG.md b/CHANGELOG.md index 088bdb90ca4..7f9abb66d6d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased](https://github.com/open-telemetry/opentelemetry-python/compare/v1.6.1-0.25b1...HEAD) +- Add support for Python 3.10 + ([#2207](https://github.com/open-telemetry/opentelemetry-python/pull/2207)) +- remove `X-B3-ParentSpanId` for B3 propagator as per OpenTelemetry specification + ([#2237](https://github.com/open-telemetry/opentelemetry-python/pull/2237)) +- Return proxy instruments from ProxyMeter + ([#2169](https://github.com/open-telemetry/opentelemetry-python/pull/2169)) +- Make Measurement a concrete class + ([#2153](https://github.com/open-telemetry/opentelemetry-python/pull/2153)) +- Add metrics API + ([#1887](https://github.com/open-telemetry/opentelemetry-python/pull/1887)) + ## [1.6.2-0.25b2](https://github.com/open-telemetry/opentelemetry-python/releases/tag/v1.6.2-0.25b2) - 2021-10-19 ## [1.6.1-0.25b1](https://github.com/open-telemetry/opentelemetry-python/releases/tag/v1.6.1-0.25b1) - 2021-10-18 @@ -16,12 +27,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ([#2201](https://github.com/open-telemetry/opentelemetry-python/pull/2201)) - Propagation: only warn about oversized baggage headers when headers exist ([#2212](https://github.com/open-telemetry/opentelemetry-python/pull/2212)) -- Return proxy instruments from ProxyMeter - ([#2169](https://github.com/open-telemetry/opentelemetry-python/pull/2169)) -- Make Measurement a concrete class - ([#2153](https://github.com/open-telemetry/opentelemetry-python/pull/2153)) -- Add metrics API - ([#1887](https://github.com/open-telemetry/opentelemetry-python/pull/1887)) - Fix parental trace relationship for opentracing `follows_from` reference ([#2180](https://github.com/open-telemetry/opentelemetry-python/pull/2180)) diff --git a/docs/examples/error_handler/error_handler_0/setup.cfg b/docs/examples/error_handler/error_handler_0/setup.cfg index 919ece78d6c..9eced88d7c3 100644 --- a/docs/examples/error_handler/error_handler_0/setup.cfg +++ b/docs/examples/error_handler/error_handler_0/setup.cfg @@ -29,6 +29,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 [options] python_requires = >=3.6 diff --git a/docs/examples/error_handler/error_handler_1/setup.cfg b/docs/examples/error_handler/error_handler_1/setup.cfg index 2012fd81b14..8d09f423db1 100644 --- a/docs/examples/error_handler/error_handler_1/setup.cfg +++ b/docs/examples/error_handler/error_handler_1/setup.cfg @@ -29,6 +29,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 [options] python_requires = >=3.6 diff --git a/exporter/opentelemetry-exporter-jaeger-proto-grpc/setup.cfg b/exporter/opentelemetry-exporter-jaeger-proto-grpc/setup.cfg index 4f4228f9c76..dc4ff16c245 100644 --- a/exporter/opentelemetry-exporter-jaeger-proto-grpc/setup.cfg +++ b/exporter/opentelemetry-exporter-jaeger-proto-grpc/setup.cfg @@ -32,6 +32,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 Typing :: Typed [options] diff --git a/exporter/opentelemetry-exporter-jaeger-proto-grpc/src/opentelemetry/exporter/jaeger/proto/grpc/gen/collector_pb2.py b/exporter/opentelemetry-exporter-jaeger-proto-grpc/src/opentelemetry/exporter/jaeger/proto/grpc/gen/collector_pb2.py index 87dffbbc6d8..cdb8562a945 100644 --- a/exporter/opentelemetry-exporter-jaeger-proto-grpc/src/opentelemetry/exporter/jaeger/proto/grpc/gen/collector_pb2.py +++ b/exporter/opentelemetry-exporter-jaeger-proto-grpc/src/opentelemetry/exporter/jaeger/proto/grpc/gen/collector_pb2.py @@ -13,7 +13,7 @@ _sym_db = _symbol_database.Default() -import model_pb2 as model__pb2 +from opentelemetry.exporter.jaeger.proto.grpc.gen import model_pb2 as model__pb2 from gogoproto import gogo_pb2 as gogoproto_dot_gogo__pb2 from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 from protoc_gen_swagger.options import annotations_pb2 as protoc__gen__swagger_dot_options_dot_annotations__pb2 diff --git a/exporter/opentelemetry-exporter-jaeger-thrift/setup.cfg b/exporter/opentelemetry-exporter-jaeger-thrift/setup.cfg index e2c98a48096..7885c053a9c 100644 --- a/exporter/opentelemetry-exporter-jaeger-thrift/setup.cfg +++ b/exporter/opentelemetry-exporter-jaeger-thrift/setup.cfg @@ -32,6 +32,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 Typing :: Typed [options] diff --git a/exporter/opentelemetry-exporter-jaeger/setup.cfg b/exporter/opentelemetry-exporter-jaeger/setup.cfg index 82b795d60ee..2cb1b10a3b7 100644 --- a/exporter/opentelemetry-exporter-jaeger/setup.cfg +++ b/exporter/opentelemetry-exporter-jaeger/setup.cfg @@ -32,6 +32,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 Typing :: Typed [options] diff --git a/exporter/opentelemetry-exporter-opencensus/setup.cfg b/exporter/opentelemetry-exporter-opencensus/setup.cfg index 1e10bc7b968..b9dcdbc8202 100644 --- a/exporter/opentelemetry-exporter-opencensus/setup.cfg +++ b/exporter/opentelemetry-exporter-opencensus/setup.cfg @@ -32,6 +32,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 Typing :: Typed [options] diff --git a/exporter/opentelemetry-exporter-otlp-proto-grpc/setup.cfg b/exporter/opentelemetry-exporter-otlp-proto-grpc/setup.cfg index 1be2ddf6932..004be68f685 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-grpc/setup.cfg +++ b/exporter/opentelemetry-exporter-otlp-proto-grpc/setup.cfg @@ -32,6 +32,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 [options] python_requires = >=3.6 diff --git a/exporter/opentelemetry-exporter-otlp-proto-http/setup.cfg b/exporter/opentelemetry-exporter-otlp-proto-http/setup.cfg index 6d62341ff85..5470386391d 100644 --- a/exporter/opentelemetry-exporter-otlp-proto-http/setup.cfg +++ b/exporter/opentelemetry-exporter-otlp-proto-http/setup.cfg @@ -32,6 +32,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 [options] python_requires = >=3.6 diff --git a/exporter/opentelemetry-exporter-otlp/setup.cfg b/exporter/opentelemetry-exporter-otlp/setup.cfg index 3e0887e2dab..746ebc96d4a 100644 --- a/exporter/opentelemetry-exporter-otlp/setup.cfg +++ b/exporter/opentelemetry-exporter-otlp/setup.cfg @@ -32,6 +32,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 Typing :: Typed [options] diff --git a/exporter/opentelemetry-exporter-zipkin-json/setup.cfg b/exporter/opentelemetry-exporter-zipkin-json/setup.cfg index 2517b523261..99d5e3327ad 100644 --- a/exporter/opentelemetry-exporter-zipkin-json/setup.cfg +++ b/exporter/opentelemetry-exporter-zipkin-json/setup.cfg @@ -33,6 +33,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 Typing :: Typed [options] diff --git a/exporter/opentelemetry-exporter-zipkin-proto-http/setup.cfg b/exporter/opentelemetry-exporter-zipkin-proto-http/setup.cfg index 0d5c7b8a8c6..4198f69b10a 100644 --- a/exporter/opentelemetry-exporter-zipkin-proto-http/setup.cfg +++ b/exporter/opentelemetry-exporter-zipkin-proto-http/setup.cfg @@ -33,6 +33,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 Typing :: Typed [options] diff --git a/exporter/opentelemetry-exporter-zipkin/setup.cfg b/exporter/opentelemetry-exporter-zipkin/setup.cfg index d5bdf2110ae..f448f6c8d66 100644 --- a/exporter/opentelemetry-exporter-zipkin/setup.cfg +++ b/exporter/opentelemetry-exporter-zipkin/setup.cfg @@ -32,6 +32,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 Typing :: Typed [options] diff --git a/opentelemetry-api/setup.cfg b/opentelemetry-api/setup.cfg index 91a38ac9278..21ae69460b2 100644 --- a/opentelemetry-api/setup.cfg +++ b/opentelemetry-api/setup.cfg @@ -32,6 +32,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 Typing :: Typed [options] diff --git a/opentelemetry-proto/setup.cfg b/opentelemetry-proto/setup.cfg index 0eaef7cfc5e..6f19ae8fd3a 100644 --- a/opentelemetry-proto/setup.cfg +++ b/opentelemetry-proto/setup.cfg @@ -32,6 +32,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 [options] python_requires = >=3.6 diff --git a/opentelemetry-sdk/setup.cfg b/opentelemetry-sdk/setup.cfg index b66f1e46046..19962495739 100644 --- a/opentelemetry-sdk/setup.cfg +++ b/opentelemetry-sdk/setup.cfg @@ -32,6 +32,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 Typing :: Typed [options] diff --git a/opentelemetry-semantic-conventions/setup.cfg b/opentelemetry-semantic-conventions/setup.cfg index 81565ec00bc..377bb6ffdf7 100644 --- a/opentelemetry-semantic-conventions/setup.cfg +++ b/opentelemetry-semantic-conventions/setup.cfg @@ -32,6 +32,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 [options] python_requires = >=3.6 diff --git a/propagator/opentelemetry-propagator-b3/setup.cfg b/propagator/opentelemetry-propagator-b3/setup.cfg index 1c879987fd6..ee9dbc4d155 100644 --- a/propagator/opentelemetry-propagator-b3/setup.cfg +++ b/propagator/opentelemetry-propagator-b3/setup.cfg @@ -32,6 +32,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 Typing :: Typed [options] diff --git a/propagator/opentelemetry-propagator-b3/src/opentelemetry/propagators/b3/__init__.py b/propagator/opentelemetry-propagator-b3/src/opentelemetry/propagators/b3/__init__.py index 81c8167d74a..1254bfeac0a 100644 --- a/propagator/opentelemetry-propagator-b3/src/opentelemetry/propagators/b3/__init__.py +++ b/propagator/opentelemetry-propagator-b3/src/opentelemetry/propagators/b3/__init__.py @@ -40,7 +40,6 @@ class B3MultiFormat(TextMapPropagator): SINGLE_HEADER_KEY = "b3" TRACE_ID_KEY = "x-b3-traceid" SPAN_ID_KEY = "x-b3-spanid" - PARENT_SPAN_ID_KEY = "x-b3-parentspanid" SAMPLED_KEY = "x-b3-sampled" FLAGS_KEY = "x-b3-flags" _SAMPLE_PROPAGATE_VALUES = set(["1", "True", "true", "d"]) @@ -149,13 +148,6 @@ def inject( setter.set( carrier, self.SPAN_ID_KEY, format_span_id(span_context.span_id) ) - span_parent = getattr(span, "parent", None) - if span_parent is not None: - setter.set( - carrier, - self.PARENT_SPAN_ID_KEY, - format_span_id(span_parent.span_id), - ) setter.set(carrier, self.SAMPLED_KEY, "1" if sampled else "0") @property @@ -163,7 +155,6 @@ def fields(self) -> typing.Set[str]: return { self.TRACE_ID_KEY, self.SPAN_ID_KEY, - self.PARENT_SPAN_ID_KEY, self.SAMPLED_KEY, } @@ -195,10 +186,6 @@ def inject( "1" if sampled else "0", ] - span_parent = getattr(span, "parent", None) - if span_parent: - fields.append(format_span_id(span_parent.span_id)) - setter.set(carrier, self.SINGLE_HEADER_KEY, "-".join(fields)) @property diff --git a/propagator/opentelemetry-propagator-b3/tests/performance/benchmarks/trace/propagation/test_benchmark_b3_format.py b/propagator/opentelemetry-propagator-b3/tests/performance/benchmarks/trace/propagation/test_benchmark_b3_format.py index 3a7a251ad88..23cbf773eda 100644 --- a/propagator/opentelemetry-propagator-b3/tests/performance/benchmarks/trace/propagation/test_benchmark_b3_format.py +++ b/propagator/opentelemetry-propagator-b3/tests/performance/benchmarks/trace/propagation/test_benchmark_b3_format.py @@ -22,7 +22,7 @@ def test_extract_single_header(benchmark): benchmark( FORMAT.extract, { - FORMAT.SINGLE_HEADER_KEY: "bdb5b63237ed38aea578af665aa5aa60-c32d953d73ad2251-1-11fd79a30b0896cd285b396ae102dd76" + FORMAT.SINGLE_HEADER_KEY: "bdb5b63237ed38aea578af665aa5aa60-c32d953d73ad2251-1" }, ) @@ -36,7 +36,6 @@ def test_inject_empty_context(benchmark): { FORMAT.TRACE_ID_KEY: "bdb5b63237ed38aea578af665aa5aa60", FORMAT.SPAN_ID_KEY: "00000000000000000c32d953d73ad225", - FORMAT.PARENT_SPAN_ID_KEY: "11fd79a30b0896cd285b396ae102dd76", FORMAT.SAMPLED_KEY: "1", }, ) diff --git a/propagator/opentelemetry-propagator-b3/tests/test_b3_format.py b/propagator/opentelemetry-propagator-b3/tests/test_b3_format.py index f8c9b0e8825..a4c51b90c13 100644 --- a/propagator/opentelemetry-propagator-b3/tests/test_b3_format.py +++ b/propagator/opentelemetry-propagator-b3/tests/test_b3_format.py @@ -65,9 +65,6 @@ def setUpClass(cls): cls.serialized_span_id = trace_api.format_span_id( generator.generate_span_id() ) - cls.serialized_parent_id = trace_api.format_span_id( - generator.generate_span_id() - ) def setUp(self) -> None: tracer_provider = trace.TracerProvider() @@ -103,7 +100,6 @@ def test_extract_multi_header(self): context = { propagator.TRACE_ID_KEY: self.serialized_trace_id, propagator.SPAN_ID_KEY: self.serialized_span_id, - propagator.PARENT_SPAN_ID_KEY: self.serialized_parent_id, propagator.SAMPLED_KEY: "1", } child, parent, _ = self.get_child_parent_new_carrier(context) @@ -142,7 +138,7 @@ def test_extract_single_header(self): child, parent, _ = self.get_child_parent_new_carrier( { - propagator.SINGLE_HEADER_KEY: f"{self.serialized_trace_id}-{self.serialized_span_id}-1-{self.serialized_parent_id}" + propagator.SINGLE_HEADER_KEY: f"{self.serialized_trace_id}-{self.serialized_span_id}-1" } ) diff --git a/propagator/opentelemetry-propagator-jaeger/setup.cfg b/propagator/opentelemetry-propagator-jaeger/setup.cfg index 639a07d3d92..0f6c8fe2493 100644 --- a/propagator/opentelemetry-propagator-jaeger/setup.cfg +++ b/propagator/opentelemetry-propagator-jaeger/setup.cfg @@ -32,6 +32,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 Typing :: Typed [options] diff --git a/shim/opentelemetry-opentracing-shim/setup.cfg b/shim/opentelemetry-opentracing-shim/setup.cfg index 45a622f7995..5d857a571c7 100644 --- a/shim/opentelemetry-opentracing-shim/setup.cfg +++ b/shim/opentelemetry-opentracing-shim/setup.cfg @@ -32,6 +32,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 Typing :: Typed [options] diff --git a/tests/util/setup.cfg b/tests/util/setup.cfg index 5bc0f699485..5274a2d876e 100644 --- a/tests/util/setup.cfg +++ b/tests/util/setup.cfg @@ -30,6 +30,7 @@ classifiers = Programming Language :: Python :: 3.7 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 [options] python_requires = >=3.6 diff --git a/tox.ini b/tox.ini index 5398bdd80e0..75772516d72 100644 --- a/tox.ini +++ b/tox.ini @@ -4,58 +4,58 @@ skip_missing_interpreters = True envlist = ; Environments are organized by individual package, allowing ; for specifying supported Python versions per package. - py3{6,7,8,9}-opentelemetry-api + py3{6,7,8,9,10}-opentelemetry-api pypy3-opentelemetry-api - py3{6,7,8,9}-opentelemetry-protobuf + py3{6,7,8,9,10}-opentelemetry-protobuf pypy3-opentelemetry-protobuf - py3{6,7,8,9}-opentelemetry-sdk + py3{6,7,8,9,10}-opentelemetry-sdk pypy3-opentelemetry-sdk - py3{6,7,8,9}-opentelemetry-semantic-conventions + py3{6,7,8,9,10}-opentelemetry-semantic-conventions pypy3-opentelemetry-semantic-conventions ; docs/getting-started - py3{6,7,8,9}-opentelemetry-getting-started + py3{6,7,8,9,10}-opentelemetry-getting-started pypy3-opentelemetry-getting-started - py3{6,7,8,9}-opentelemetry-opentracing-shim + py3{6,7,8,9,10}-opentelemetry-opentracing-shim pypy3-opentelemetry-opentracing-shim - py3{6,7,8,9}-opentelemetry-exporter-jaeger-combined + py3{6,7,8,9,10}-opentelemetry-exporter-jaeger-combined - py3{6,7,8,9}-opentelemetry-exporter-jaeger-proto-grpc + py3{6,7,8,9,10}-opentelemetry-exporter-jaeger-proto-grpc - py3{6,7,8,9}-opentelemetry-exporter-jaeger-thrift + py3{6,7,8,9,10}-opentelemetry-exporter-jaeger-thrift - py3{6,7,8,9}-opentelemetry-exporter-opencensus + py3{6,7,8,9,10}-opentelemetry-exporter-opencensus ; exporter-opencensus intentionally excluded from pypy3 ; opentelemetry-exporter-otlp - py3{6,7,8,9}-opentelemetry-exporter-otlp-combined + py3{6,7,8,9,10}-opentelemetry-exporter-otlp-combined ; intentionally excluded from pypy3 - py3{6,7,8,9}-opentelemetry-exporter-otlp-proto-grpc + py3{6,7,8,9,10}-opentelemetry-exporter-otlp-proto-grpc ; intentionally excluded from pypy3 - py3{6,7,8,9}-opentelemetry-exporter-otlp-proto-http + py3{6,7,8,9,10}-opentelemetry-exporter-otlp-proto-http pypy3-opentelemetry-exporter-otlp-proto-http ; opentelemetry-exporter-zipkin - py3{6,7,8,9}-opentelemetry-exporter-zipkin-combined + py3{6,7,8,9,10}-opentelemetry-exporter-zipkin-combined pypy3-opentelemetry-exporter-zipkin-combined - py3{6,7,8,9}-opentelemetry-exporter-zipkin-proto-http + py3{6,7,8,9,10}-opentelemetry-exporter-zipkin-proto-http pypy3-opentelemetry-exporter-zipkin-proto-http - py3{6,7,8,9}-opentelemetry-exporter-zipkin-json + py3{6,7,8,9,10}-opentelemetry-exporter-zipkin-json pypy3-opentelemetry-exporter-zipkin-json - py3{6,7,8,9}-opentelemetry-propagator-b3 + py3{6,7,8,9,10}-opentelemetry-propagator-b3 pypy3-opentelemetry-propagator-b3 - py3{6,7,8,9}-opentelemetry-propagator-jaeger + py3{6,7,8,9,10}-opentelemetry-propagator-jaeger pypy3-opentelemetry-propagator-jaeger lint @@ -105,7 +105,7 @@ changedir = commands_pre = ; Install without -e to test the actual installation - py3{6,7,8,9}: python -m pip install -U pip setuptools wheel + py3{6,7,8,9,10}: python -m pip install -U pip setuptools wheel ; Install common packages for all the tests. These are not needed in all the ; cases but it saves a lot of boilerplate in this file. opentelemetry: pip install {toxinidir}/opentelemetry-api {toxinidir}/opentelemetry-semantic-conventions {toxinidir}/opentelemetry-sdk {toxinidir}/tests/util