Skip to content

Commit c9e40a5

Browse files
committed
Merge branch 'main' into sync_gauge_2279
2 parents f84a896 + 5e62859 commit c9e40a5

File tree

222 files changed

+2759
-1400
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

222 files changed

+2759
-1400
lines changed

.clang-tidy

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,12 @@ Checks: >
3131
-misc-unused-alias-decls,
3232
-misc-use-anonymous-namespace,
3333
cppcoreguidelines-*,
34+
-cppcoreguidelines-owning-memory,
35+
-cppcoreguidelines-avoid-do-while,
3436
-cppcoreguidelines-avoid-c-arrays,
3537
-cppcoreguidelines-avoid-magic-numbers,
3638
-cppcoreguidelines-init-variables,
3739
-cppcoreguidelines-macro-usage,
3840
-cppcoreguidelines-non-private-member-variables-in-classes,
41+
-cppcoreguidelines-avoid-non-const-global-variables,
3942
-cppcoreguidelines-pro-*

.github/workflows/clang-tidy.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ jobs:
6868
- name: Run clang-tidy
6969
run: |
7070
cd build
71-
make -j$(nproc) 2>&1 | tee -a clang-tidy.log || exit 1
71+
make 2>&1 | tee -a clang-tidy.log || exit 1
7272
7373
- uses: actions/upload-artifact@v4
7474
with:

.iwyu.imp

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,16 @@
77
# Work around for C++ STL
88
{ "include": ["<bits/chrono.h>", "private", "<chrono>", "public"] },
99

10-
# Local opentelemetry-cpp
10+
# Local opentelemetry-cpp style
1111

12+
# We prefer to include <gtest/gtest.h> for simplicity
13+
{ "include": ["<gtest/gtest-message.h>", "private", "<gtest/gtest.h>", "public"] },
14+
{ "include": ["<gtest/gtest-test-part.h>", "private", "<gtest/gtest.h>", "public"] },
15+
{ "include": ["<gtest/gtest-param-test.h>", "private", "<gtest/gtest.h>", "public"] },
16+
{ "include": ["<gtest/gtest_pred_impl.h>", "private", "<gtest/gtest.h>", "public"] },
17+
18+
# We prefer to include <gmock/gmock.h> for simplicity
19+
{ "include": ["<gmock/gmock-function-mocker.h>", "private", "<gmock/gmock.h>", "public"] },
20+
{ "include": ["<gmock/gmock-spec-builders.h>", "private", "<gmock/gmock.h>", "public"] },
1221
]
1322

CHANGELOG.md

Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,118 @@ Increment the:
1515

1616
## [Unreleased]
1717

18+
* [API] Jaeger Propagator should not be deprecated
19+
[#3086](https://github.com/open-telemetry/opentelemetry-cpp/pull/3086)
20+
21+
Important changes:
22+
23+
* [API] Jaeger Propagator should not be deprecated
24+
[#3086](https://github.com/open-telemetry/opentelemetry-cpp/pull/3086)
25+
26+
* Deprecation of the Jaeger propagator, as announced on 2023-01-31
27+
in version 1.8.2, is now reverted.
28+
* This deprecation turned out to be not justified,
29+
as the Jaeger propagator can be used without the (now removed)
30+
Jaeger exporter.
31+
32+
## [1.17 2024-10-07]
33+
1834
* [CI] Add a clang-tidy build
1935
[#3001](https://github.com/open-telemetry/opentelemetry-cpp/pull/3001)
2036

37+
* [BUILD] Upgrade to opentelemetry-proto 1.3.2
38+
[#2991](https://github.com/open-telemetry/opentelemetry-cpp/pull/2991)
39+
2140
* [REMOVAL] Remove build option `WITH_DEPRECATED_SDK_FACTORY`
2241
[#2717](https://github.com/open-telemetry/opentelemetry-cpp/pull/2717)
2342

43+
* [EXPORTER] ForceFlush before canceling the running requests on shutdown
44+
[#2727](https://github.com/open-telemetry/opentelemetry-cpp/pull/2727)
45+
46+
* [SDK] Fix crash in PeriodicExportingMetricReader
47+
[#2983](https://github.com/open-telemetry/opentelemetry-cpp/pull/2983)
48+
49+
* [SDK] Fix memory leak in TlsRandomNumberGenerator() constructor
50+
[#2661](https://github.com/open-telemetry/opentelemetry-cpp/pull/2661)
51+
52+
* [EXPORTER] Ignore exception when create thread in OTLP file exporter
53+
[#3012](https://github.com/open-telemetry/opentelemetry-cpp/pull/3012)
54+
55+
* [BUILD] Update the version in MODULE.bazel
56+
[#3015](https://github.com/open-telemetry/opentelemetry-cpp/pull/3015)
57+
58+
* [BUILD] Fix build without vcpkg on Windows when gRPC is disabled
59+
[#3016](https://github.com/open-telemetry/opentelemetry-cpp/pull/3016)
60+
61+
* [BUILD] Add abi_version_no bazel flag
62+
[#3020](https://github.com/open-telemetry/opentelemetry-cpp/pull/3020)
63+
64+
* [Code health] Expand iwyu coverage to include unit tests
65+
[#3022](https://github.com/open-telemetry/opentelemetry-cpp/pull/3022)
66+
67+
* [BUILD] Version opentelemetry_proto/proto_grpc shared libraries
68+
[#2992](https://github.com/open-telemetry/opentelemetry-cpp/pull/2992)
69+
70+
* [SEMANTIC CONVENTIONS] Upgrade semantic conventions to 1.27.0
71+
[#3023](https://github.com/open-telemetry/opentelemetry-cpp/pull/3023)
72+
73+
* [SDK] Support empty histogram buckets
74+
[#3027](https://github.com/open-telemetry/opentelemetry-cpp/pull/3027)
75+
76+
* [TEST] Fix sync problems in OTLP File exporter tests
77+
[#3031](https://github.com/open-telemetry/opentelemetry-cpp/pull/3031)
78+
79+
* [SDK] PeriodicExportingMetricReader: future is never set, blocks until timeout
80+
[#3030](https://github.com/open-telemetry/opentelemetry-cpp/pull/3030)
81+
82+
* [Code Health] Clang Tidy cleanup, Part 2
83+
[#3038](https://github.com/open-telemetry/opentelemetry-cpp/pull/3038)
84+
85+
* [Code Health] include-what-you-use cleanup, part 3
86+
[#3004](https://github.com/open-telemetry/opentelemetry-cpp/pull/3004)
87+
88+
* [SDK] Fix overflow in timeout logic
89+
[#3046](https://github.com/open-telemetry/opentelemetry-cpp/pull/3046)
90+
91+
* [TEST] Add missing tests to Bazel build
92+
[#3045](https://github.com/open-telemetry/opentelemetry-cpp/pull/3045)
93+
94+
* [TEST] update collector tests with debug exporter
95+
[#3050](https://github.com/open-telemetry/opentelemetry-cpp/pull/3050)
96+
97+
* [EXAMPLE] update collector example with debug exporter
98+
[#3049](https://github.com/open-telemetry/opentelemetry-cpp/pull/3049)
99+
100+
* [TEST] update references to logging exporter
101+
[#3053](https://github.com/open-telemetry/opentelemetry-cpp/pull/3053)
102+
103+
* [EXAMPLE] Clean the tracer initialization in OStream example
104+
[#3051](https://github.com/open-telemetry/opentelemetry-cpp/pull/3051)
105+
106+
* [EXPORTER] Fix the format of SpanLink for ETW
107+
[#3054](https://github.com/open-telemetry/opentelemetry-cpp/pull/3054)
108+
109+
* [EXPORTER] Add in-memory metric exporter
110+
[#3043](https://github.com/open-telemetry/opentelemetry-cpp/pull/3043)
111+
112+
* [Code Health] include-what-you-use cleanup, part 4
113+
[#3040](https://github.com/open-telemetry/opentelemetry-cpp/pull/3040)
114+
115+
* [BUILD] add loongarch info
116+
[#3052](https://github.com/open-telemetry/opentelemetry-cpp/pull/3052)
117+
118+
* [CI] Update otel-collector version
119+
[#3067](https://github.com/open-telemetry/opentelemetry-cpp/pull/3067)
120+
121+
* [SDK] Update MetricProducer interface to match spec
122+
[#3044](https://github.com/open-telemetry/opentelemetry-cpp/pull/3044)
123+
124+
* [EXPORTER] Fix URL in ES exporter, fix ipv6 supporting for http client
125+
[#3081](https://github.com/open-telemetry/opentelemetry-cpp/pull/3081)
126+
127+
* [EXPORTER] Add HttpHeaders in ElasticsearchLogRecordExporter
128+
[#3083](https://github.com/open-telemetry/opentelemetry-cpp/pull/3083)
129+
24130
Breaking changes:
25131

26132
* [REMOVAL] Remove build option `WITH_DEPRECATED_SDK_FACTORY`

CMakeLists.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,8 @@ else()
7777
set(ARCH s390x)
7878
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(sparc.*|SPARC.*)")
7979
set(ARCH sparc)
80+
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^(loongarch.*|LOONGARCH.*)")
81+
set(ARCH loongarch)
8082
else()
8183
message(
8284
FATAL_ERROR
@@ -285,6 +287,10 @@ option(WITH_ASYNC_EXPORT_PREVIEW "Whether to enable async export" OFF)
285287
option(WITH_METRICS_EXEMPLAR_PREVIEW
286288
"Whether to enable exemplar within metrics" OFF)
287289

290+
option(OPENTELEMETRY_SKIP_DYNAMIC_LOADING_TESTS
291+
"Whether to build test libraries that are always linked as shared libs"
292+
OFF)
293+
288294
#
289295
# Verify options dependencies
290296
#

DEPRECATED.md

Lines changed: 1 addition & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -46,45 +46,7 @@ N/A
4646

4747
## [opentelemetry-cpp API]
4848

49-
### Jaeger propagator
50-
51-
#### Announcement (Jaeger)
52-
53-
* Version: 1.8.2
54-
* Date: 2023-01-31
55-
* PR: [DEPRECATION] Deprecate the Jaeger exporter
56-
[#1923](https://github.com/open-telemetry/opentelemetry-cpp/pull/1923)
57-
58-
This PR also listed the Jaeger propagator as deprecated.
59-
60-
#### Motivation (Jaeger)
61-
62-
The Jaeger Exporter is now (July 2023) removed from the OpenTelemetry specification.
63-
64-
The Jaeger Propagator remains, because changing propagation is a longer
65-
process compared to changing an export format.
66-
67-
New deployments however are encouraged to use a W3C compliant propagator,
68-
and avoid the Jaeger propagator, which is now deprecated.
69-
70-
#### Scope (Jaeger)
71-
72-
The following are deprecated and planned for removal:
73-
74-
* the API header `opentelemetry/trace/propagation/jaeger.h`, including:
75-
* the C++ class `JaegerPropagator`
76-
77-
#### Mitigation (Jaeger)
78-
79-
Use a W3C compliant propagator instead.
80-
81-
That is, use class HttpTraceContext and "traceparent" tags.
82-
83-
Do not use class JaegerPropagator and "uber-trace-id" tags.
84-
85-
#### Planned removal (Jaeger)
86-
87-
No date set yet for the Jaeger Propagator.
49+
N/A
8850

8951
## [opentelemetry-cpp SDK]
9052

MODULE.bazel

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
module(
55
name = "opentelemetry-cpp",
6-
version = "1.16.1",
6+
version = "1.17.0",
77
compatibility_level = 0,
88
repo_name = "io_opentelemetry_cpp",
99
)

api/include/opentelemetry/baggage/propagation/baggage_propagator.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,15 @@
33

44
#pragma once
55

6+
#include <memory>
7+
#include <string>
8+
69
#include "opentelemetry/baggage/baggage.h"
710
#include "opentelemetry/baggage/baggage_context.h"
11+
#include "opentelemetry/context/context.h"
812
#include "opentelemetry/context/propagation/text_map_propagator.h"
13+
#include "opentelemetry/nostd/function_ref.h"
14+
#include "opentelemetry/nostd/string_view.h"
915
#include "opentelemetry/version.h"
1016

1117
OPENTELEMETRY_BEGIN_NAMESPACE

api/include/opentelemetry/common/key_value_iterable_view.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,14 @@
33

44
#pragma once
55

6+
#include <stddef.h>
7+
#include <initializer_list>
68
#include <iterator>
9+
#include <type_traits>
710
#include <utility>
11+
#include <vector>
812

13+
#include "opentelemetry/common/attribute_value.h"
914
#include "opentelemetry/common/key_value_iterable.h"
1015
#include "opentelemetry/nostd/function_ref.h"
1116
#include "opentelemetry/nostd/span.h"

api/include/opentelemetry/context/context.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,12 @@
44
#pragma once
55

66
#include <cstring>
7+
#include <utility>
8+
79
#include "opentelemetry/context/context_value.h"
810
#include "opentelemetry/nostd/shared_ptr.h"
911
#include "opentelemetry/nostd/string_view.h"
12+
#include "opentelemetry/nostd/variant.h"
1013
#include "opentelemetry/version.h"
1114

1215
OPENTELEMETRY_BEGIN_NAMESPACE

0 commit comments

Comments
 (0)