Skip to content

Commit f4e3878

Browse files
committed
Merge branch 'main' into merge_main_4
2 parents fe18372 + a002f7a commit f4e3878

File tree

37 files changed

+120
-47
lines changed

37 files changed

+120
-47
lines changed

.github/workflows/test.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ env:
1010
# Otherwise, set variable to the commit of your branch on
1111
# opentelemetry-python-contrib which is compatible with these Core repo
1212
# changes.
13-
CONTRIB_REPO_SHA: c2e674983a265e54c5eb14e376459a992498aae6
13+
CONTRIB_REPO_SHA: a7c054b257225948c68a9dccb3f2973537d9b4ec
1414
# This is needed because we do not clone the core repo in contrib builds anymore.
1515
# When running contrib builds as part of core builds, we use actions/checkout@v2 which
1616
# does not set an environment variable (simply just runs tox), which is different when

CHANGELOG.md

+13-1
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,14 @@ All notable changes to this project will be documented in this file.
44
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
55
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
66

7-
## [Unreleased](https://github.com/open-telemetry/opentelemetry-python/compare/v1.6.0-0.25b0...HEAD)
7+
## [Unreleased](https://github.com/open-telemetry/opentelemetry-python/compare/v1.6.1-0.25b1...HEAD)
88

9+
## [1.6.2-0.25b2](https://github.com/open-telemetry/opentelemetry-python/releases/tag/v1.6.2-0.25b2) - 2021-10-19
10+
11+
## [1.6.1-0.25b1](https://github.com/open-telemetry/opentelemetry-python/releases/tag/v1.6.1-0.25b1) - 2021-10-18
12+
13+
- Fix ReadableSpan property types attempting to create a mapping from a list
14+
([#2215](https://github.com/open-telemetry/opentelemetry-python/pull/2215))
915
- Upgrade GRPC/protobuf related dependency and regenerate otlp protobufs
1016
([#2201](https://github.com/open-telemetry/opentelemetry-python/pull/2201))
1117
- Propagation: only warn about oversized baggage headers when headers exist
@@ -16,6 +22,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1622
([#2153](https://github.com/open-telemetry/opentelemetry-python/pull/2153))
1723
- Add metrics API
1824
([#1887](https://github.com/open-telemetry/opentelemetry-python/pull/1887))
25+
- Fix parental trace relationship for opentracing `follows_from` reference
26+
([#2180](https://github.com/open-telemetry/opentelemetry-python/pull/2180))
1927

2028
## [1.6.0-0.25b0](https://github.com/open-telemetry/opentelemetry-python/releases/tag/v1.6.0-0.25b0) - 2021-10-13
2129

@@ -31,6 +39,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
3139
([#2071](https://github.com/open-telemetry/opentelemetry-python/pull/2071))
3240
- Add entry point for exporters with default protocol
3341
([#2093](https://github.com/open-telemetry/opentelemetry-python/pull/2093))
42+
- Renamed entrypoints `otlp_proto_http_span`, `otlp_proto_grpc_span`, `console_span` to remove
43+
redundant `_span` suffix.
44+
([#2093](https://github.com/open-telemetry/opentelemetry-python/pull/2093))
3445
- Do not skip sequence attribute on decode error
3546
([#2097](https://github.com/open-telemetry/opentelemetry-python/pull/2097))
3647
- `opentelemetry-test`: Add `HttpTestBase` to allow tests with actual TCP sockets
@@ -52,6 +63,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
5263
- Add name to `BatchSpanProcessor` worker thread
5364
([#2186](https://github.com/open-telemetry/opentelemetry-python/pull/2186))
5465

66+
5567
## [1.5.0-0.24b0](https://github.com/open-telemetry/opentelemetry-python/releases/tag/v1.5.0-0.24b0) - 2021-08-26
5668

5769

eachdist.ini

+2-2
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ sortfirst=
1111
exporter/*
1212

1313
[stable]
14-
version=1.6.0
14+
version=1.6.2
1515

1616
packages=
1717
opentelemetry-sdk
@@ -30,7 +30,7 @@ packages=
3030
opentelemetry-api
3131

3232
[prerelease]
33-
version=0.25b0
33+
version=0.25b2
3434

3535
packages=
3636
opentelemetry-opentracing-shim

exporter/opentelemetry-exporter-jaeger-proto-grpc/src/opentelemetry/exporter/jaeger/proto/grpc/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@
1313
# See the License for the specific language governing permissions and
1414
# limitations under the License.
1515

16-
__version__ = "1.6.0"
16+
__version__ = "1.6.2"

exporter/opentelemetry-exporter-jaeger-thrift/src/opentelemetry/exporter/jaeger/thrift/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@
1313
# See the License for the specific language governing permissions and
1414
# limitations under the License.
1515

16-
__version__ = "1.6.0"
16+
__version__ = "1.6.2"

exporter/opentelemetry-exporter-jaeger/setup.cfg

+2-2
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,8 @@ python_requires = >=3.6
3939

4040
packages=find_namespace:
4141
install_requires =
42-
opentelemetry-exporter-jaeger-proto-grpc == 1.6.0
43-
opentelemetry-exporter-jaeger-thrift == 1.6.0
42+
opentelemetry-exporter-jaeger-proto-grpc == 1.6.2
43+
opentelemetry-exporter-jaeger-thrift == 1.6.2
4444

4545
[options.extras_require]
4646
test =

exporter/opentelemetry-exporter-jaeger/src/opentelemetry/exporter/jaeger/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@
1313
# See the License for the specific language governing permissions and
1414
# limitations under the License.
1515

16-
__version__ = "1.6.0"
16+
__version__ = "1.6.2"

exporter/opentelemetry-exporter-opencensus/src/opentelemetry/exporter/opencensus/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.25b0"
15+
__version__ = "0.25b2"

exporter/opentelemetry-exporter-otlp-proto-grpc/setup.cfg

+1-1
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ install_requires =
4343
googleapis-common-protos ~= 1.52
4444
opentelemetry-api ~= 1.3
4545
opentelemetry-sdk ~= 1.3
46-
opentelemetry-proto == 1.6.0
46+
opentelemetry-proto == 1.6.2
4747
backoff ~= 1.10.0
4848

4949
[options.extras_require]

exporter/opentelemetry-exporter-otlp-proto-grpc/src/opentelemetry/exporter/otlp/proto/grpc/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "1.6.0"
15+
__version__ = "1.6.2"

exporter/opentelemetry-exporter-otlp-proto-http/setup.cfg

+1-1
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ install_requires =
4343
googleapis-common-protos ~= 1.52
4444
opentelemetry-api ~= 1.3
4545
opentelemetry-sdk ~= 1.3
46-
opentelemetry-proto == 1.6.0
46+
opentelemetry-proto == 1.6.2
4747
backoff ~= 1.10.0
4848

4949
[options.extras_require]

exporter/opentelemetry-exporter-otlp-proto-http/src/opentelemetry/exporter/otlp/proto/http/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "1.6.0"
15+
__version__ = "1.6.2"

exporter/opentelemetry-exporter-otlp/setup.cfg

+2-2
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@ classifiers =
3838
python_requires = >=3.6
3939
packages=find_namespace:
4040
install_requires =
41-
opentelemetry-exporter-otlp-proto-grpc == 1.6.0
42-
opentelemetry-exporter-otlp-proto-http == 1.6.0
41+
opentelemetry-exporter-otlp-proto-grpc == 1.6.2
42+
opentelemetry-exporter-otlp-proto-http == 1.6.2
4343

4444
[options.entry_points]
4545
opentelemetry_traces_exporter =

exporter/opentelemetry-exporter-otlp/src/opentelemetry/exporter/otlp/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "1.6.0"
15+
__version__ = "1.6.2"

exporter/opentelemetry-exporter-zipkin-json/src/opentelemetry/exporter/zipkin/json/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "1.6.0"
15+
__version__ = "1.6.2"

exporter/opentelemetry-exporter-zipkin-proto-http/setup.cfg

+1-1
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ install_requires =
4545
requests ~= 2.7
4646
opentelemetry-api ~= 1.3
4747
opentelemetry-sdk ~= 1.3
48-
opentelemetry-exporter-zipkin-json == 1.6.0
48+
opentelemetry-exporter-zipkin-json == 1.6.2
4949

5050
[options.packages.find]
5151
where = src

exporter/opentelemetry-exporter-zipkin-proto-http/src/opentelemetry/exporter/zipkin/proto/http/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "1.6.0"
15+
__version__ = "1.6.2"

exporter/opentelemetry-exporter-zipkin/setup.cfg

+2-2
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@ classifiers =
3838
python_requires = >=3.6
3939
packages=find_namespace:
4040
install_requires =
41-
opentelemetry-exporter-zipkin-json == 1.6.0
42-
opentelemetry-exporter-zipkin-proto-http == 1.6.0
41+
opentelemetry-exporter-zipkin-json == 1.6.2
42+
opentelemetry-exporter-zipkin-proto-http == 1.6.2
4343

4444
[options.extras_require]
4545
test =

exporter/opentelemetry-exporter-zipkin/src/opentelemetry/exporter/zipkin/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "1.6.0"
15+
__version__ = "1.6.2"

opentelemetry-api/src/opentelemetry/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "1.6.0"
15+
__version__ = "1.6.2"

opentelemetry-proto/README.rst

+5
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,11 @@ OpenTelemetry Python Proto
66
.. |pypi| image:: https://badge.fury.io/py/opentelemetry-proto.svg
77
:target: https://pypi.org/project/opentelemetry-proto/
88

9+
This library contains the generated code for OpenTelemetry protobuf data model. The code in the current
10+
package was generated using the v0.9.0 release_ of opentelemetry-proto.
11+
12+
.. _release: https://github.com/open-telemetry/opentelemetry-proto/releases/tag/v0.9.0
13+
914
Installation
1015
------------
1116

opentelemetry-proto/src/opentelemetry/proto/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "1.6.0"
15+
__version__ = "1.6.2"

opentelemetry-sdk/setup.cfg

+2-2
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,8 @@ packages=find_namespace:
4242
zip_safe = False
4343
include_package_data = True
4444
install_requires =
45-
opentelemetry-api == 1.6.0
46-
opentelemetry-semantic-conventions == 0.25b0
45+
opentelemetry-api == 1.6.2
46+
opentelemetry-semantic-conventions == 0.25b2
4747

4848
[options.packages.find]
4949
where = src

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

+1-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
from opentelemetry.sdk.trace.id_generator import IdGenerator
3434

3535
_EXPORTER_OTLP = "otlp"
36-
_EXPORTER_OTLP_SPAN = "otlp_proto_grpc_span"
36+
_EXPORTER_OTLP_SPAN = "otlp_proto_grpc"
3737

3838
_RANDOM_ID_GENERATOR = "random"
3939
_DEFAULT_ID_GENERATOR = _RANDOM_ID_GENERATOR

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

+3-3
Original file line numberDiff line numberDiff line change
@@ -350,7 +350,7 @@ def __init__(
350350
parent: Optional[trace_api.SpanContext] = None,
351351
resource: Resource = Resource.create({}),
352352
attributes: types.Attributes = None,
353-
events: Sequence[Event] = None,
353+
events: Sequence[Event] = (),
354354
links: Sequence[trace_api.Link] = (),
355355
kind: trace_api.SpanKind = trace_api.SpanKind.INTERNAL,
356356
instrumentation_info: InstrumentationInfo = None,
@@ -426,11 +426,11 @@ def attributes(self) -> types.Attributes:
426426

427427
@property
428428
def events(self) -> Sequence[Event]:
429-
return MappingProxyType(self._events)
429+
return tuple(event for event in self._events)
430430

431431
@property
432432
def links(self) -> Sequence[trace_api.Link]:
433-
return MappingProxyType(self._links)
433+
return tuple(link for link in self._links)
434434

435435
@property
436436
def resource(self) -> Resource:

opentelemetry-sdk/src/opentelemetry/sdk/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "1.6.0"
15+
__version__ = "1.6.2"

opentelemetry-sdk/tests/trace/test_trace.py

+23
Original file line numberDiff line numberDiff line change
@@ -569,6 +569,29 @@ def test_surplus_span_attributes(self):
569569
self.assertEqual(len(root.attributes), max_attrs)
570570

571571

572+
class TestReadableSpan(unittest.TestCase):
573+
def test_links(self):
574+
span = trace.ReadableSpan()
575+
self.assertEqual(span.links, ())
576+
577+
span = trace.ReadableSpan(
578+
links=[trace_api.Link(context=trace_api.INVALID_SPAN_CONTEXT)] * 2,
579+
)
580+
self.assertEqual(len(span.links), 2)
581+
for link in span.links:
582+
self.assertFalse(link.context.is_valid)
583+
584+
def test_events(self):
585+
span = trace.ReadableSpan()
586+
self.assertEqual(span.events, ())
587+
events = [
588+
trace.Event("foo1", {"bar1": "baz1"}),
589+
trace.Event("foo2", {"bar2": "baz2"}),
590+
]
591+
span = trace.ReadableSpan(events=events)
592+
self.assertEqual(span.events, tuple(events))
593+
594+
572595
class TestSpan(unittest.TestCase):
573596
# pylint: disable=too-many-public-methods
574597

opentelemetry-semantic-conventions/src/opentelemetry/semconv/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.25b0"
15+
__version__ = "0.25b2"

propagator/opentelemetry-propagator-b3/src/opentelemetry/propagators/b3/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "1.6.0"
15+
__version__ = "1.6.2"

propagator/opentelemetry-propagator-jaeger/src/opentelemetry/propagators/jaeger/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "1.6.0"
15+
__version__ = "1.6.2"

scripts/proto_codegen.sh

+2
Original file line numberDiff line numberDiff line change
@@ -70,3 +70,5 @@ python -m grpc_tools.protoc \
7070
--mypy_out=. \
7171
--grpc_python_out=. \
7272
$service_protos
73+
74+
echo "Please update ./opentelemetry-proto/README.rst to include the updated version."

shim/opentelemetry-opentracing-shim/setup.cfg

+1-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ install_requires =
4646

4747
[options.extras_require]
4848
test =
49-
opentelemetry-test == 0.25b0
49+
opentelemetry-test == 0.25b2
5050
opentracing ~= 2.2.0
5151

5252
[options.packages.find]

shim/opentelemetry-opentracing-shim/src/opentelemetry/shim/opentracing_shim/__init__.py

+13-6
Original file line numberDiff line numberDiff line change
@@ -592,7 +592,10 @@ def start_active_span(
592592

593593
current_span = get_current_span()
594594

595-
if child_of is None and current_span is not INVALID_SPAN_CONTEXT:
595+
if (
596+
child_of is None
597+
and current_span.get_span_context() is not INVALID_SPAN_CONTEXT
598+
):
596599
child_of = SpanShim(None, None, current_span)
597600

598601
span = self.start_span(
@@ -649,12 +652,16 @@ def start_span(
649652
if isinstance(parent, OtelSpanContext):
650653
parent = NonRecordingSpan(parent)
651654

652-
parent_span_context = set_span_in_context(parent)
653-
654-
links = []
655+
valid_links = []
655656
if references:
656657
for ref in references:
657-
links.append(Link(ref.referenced_context.unwrap()))
658+
if ref.referenced_context.unwrap() is not INVALID_SPAN_CONTEXT:
659+
valid_links.append(Link(ref.referenced_context.unwrap()))
660+
661+
if valid_links and parent is None:
662+
parent = NonRecordingSpan(valid_links[0].context)
663+
664+
parent_span_context = set_span_in_context(parent)
658665

659666
# The OpenTracing API expects time values to be `float` values which
660667
# represent the number of seconds since the epoch. OpenTelemetry
@@ -666,7 +673,7 @@ def start_span(
666673
span = self._otel_tracer.start_span(
667674
operation_name,
668675
context=parent_span_context,
669-
links=links,
676+
links=valid_links,
670677
attributes=tags,
671678
start_time=start_time_ns,
672679
)

shim/opentelemetry-opentracing-shim/src/opentelemetry/shim/opentracing_shim/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.25b0"
15+
__version__ = "0.25b2"

shim/opentelemetry-opentracing-shim/tests/test_shim.py

+18
Original file line numberDiff line numberDiff line change
@@ -389,6 +389,24 @@ def test_references(self):
389389
parent.context.unwrap(),
390390
)
391391

392+
def test_follows_from_references(self):
393+
"""Test span creation using the `references` argument with a follows from relationship."""
394+
395+
with self.shim.start_span("ParentSpan") as parent:
396+
ref = opentracing.follows_from(parent.context)
397+
398+
with self.shim.start_active_span(
399+
"FollowingSpan", references=[ref]
400+
) as child:
401+
self.assertEqual(
402+
child.span.unwrap().links[0].context,
403+
parent.context.unwrap(),
404+
)
405+
self.assertEqual(
406+
child.span.unwrap().parent,
407+
parent.context.unwrap(),
408+
)
409+
392410
def test_set_operation_name(self):
393411
"""Test `set_operation_name()` method."""
394412

0 commit comments

Comments
 (0)