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 b18bf50216c..6e67c36b29c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,8 +6,10 @@ 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) -## [1.6.2-0.25b2](https://github.com/open-telemetry/opentelemetry-python/releases/tag/v1.6.2-0.25b2) - 2021-10-19 +- Add support for Python 3.10 + ([#2207](https://github.com/open-telemetry/opentelemetry-python/pull/2207)) +## [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 @@ -21,7 +23,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Fix parental trace relationship for opentracing `follows_from` reference ([#2180](https://github.com/open-telemetry/opentelemetry-python/pull/2180)) - ## [1.6.0-0.25b0](https://github.com/open-telemetry/opentelemetry-python/releases/tag/v1.6.0-0.25b0) - 2021-10-13 - Fix race in `set_tracer_provider()` 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-distro/setup.cfg b/opentelemetry-distro/setup.cfg new file mode 100644 index 00000000000..22dbe1c5255 --- /dev/null +++ b/opentelemetry-distro/setup.cfg @@ -0,0 +1,62 @@ +# Copyright The OpenTelemetry Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +[metadata] +name = opentelemetry-distro +description = OpenTelemetry Python Distro +long_description = file: README.rst +long_description_content_type = text/x-rst +author = OpenTelemetry Authors +author_email = cncf-opentelemetry-contributors@lists.cncf.io +url = https://github.com/open-telemetry/opentelemetry-python/tree/main/opentelemetry-distro +platforms = any +license = Apache-2.0 +classifiers = + Development Status :: 4 - Beta + Intended Audience :: Developers + License :: OSI Approved :: Apache Software License + Programming Language :: Python + Programming Language :: Python :: 3 + Programming Language :: Python :: 3.6 + Programming Language :: Python :: 3.7 + Programming Language :: Python :: 3.8 + Programming Language :: Python :: 3.9 + Programming Language :: Python :: 3.10 + Typing :: Typed + +[options] +python_requires = >=3.6 +package_dir= + =src +packages=find_namespace: +zip_safe = False +include_package_data = True +install_requires = + opentelemetry-api ~= 1.3 + opentelemetry-instrumentation == 0.24b0 + opentelemetry-sdk == 1.5.0 + +[options.packages.find] +where = src + +[options.entry_points] +opentelemetry_distro = + distro = opentelemetry.distro:OpenTelemetryDistro +opentelemetry_configurator = + configurator = opentelemetry.distro:OpenTelemetryConfigurator + +[options.extras_require] +test = +otlp = + opentelemetry-exporter-otlp == 1.5.0 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-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