Skip to content

Commit e4b0920

Browse files
authored
Merge branch 'main' into refactor-es-exporter
2 parents b72c41b + fb6fde8 commit e4b0920

File tree

51 files changed

+653
-246
lines changed

Some content is hidden

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

51 files changed

+653
-246
lines changed

.github/workflows/iwyu.yml

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,16 @@ jobs:
6262

6363
- name: count warnings
6464
run: |
65+
set +e
6566
cd build
66-
COUNT=`grep -c "Warning:" iwyu.log`
67-
echo "include-what-you-use reported ${COUNT} warning(s)"
68-
67+
readonly WARNING_COUNT=`grep -c "include-what-you-use reported diagnostics:" iwyu.log`
68+
echo "include-what-you-use reported ${WARNING_COUNT} warning(s)"
69+
# Acceptable limit, to decrease over time down to 0
70+
readonly WARNING_LIMIT=10
71+
# FAIL the build if WARNING_COUNT > WARNING_LIMIT
72+
if [ $WARNING_COUNT -gt $WARNING_LIMIT ] ; then
73+
exit 1
74+
# WARN in annotations if WARNING_COUNT > 0
75+
elif [ $WARNING_COUNT -gt 0 ] ; then
76+
echo "::warning::include-what-you-use reported ${WARNING_COUNT} warning(s)"
77+
fi

.iwyu.imp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@
66
[
77
# Work around for C++ STL
88
{ "include": ["<bits/chrono.h>", "private", "<chrono>", "public"] },
9+
{ "include": ["<bits/std_abs.h>", "private", "<cstdlib>", "public"] },
10+
{ "include": ["<ext/alloc_traits.h>", "private", "<memory>", "public"] },
11+
{ "include": ["<bits/types/struct_tm.h>", "private", "<time.h>", "public"] },
12+
{ "include": ["<bits/types/struct_FILE.h>", "private", "<stdio.h>", "public"] },
913

1014
# Local opentelemetry-cpp style
1115

@@ -14,6 +18,7 @@
1418
{ "include": ["<gtest/gtest-test-part.h>", "private", "<gtest/gtest.h>", "public"] },
1519
{ "include": ["<gtest/gtest-param-test.h>", "private", "<gtest/gtest.h>", "public"] },
1620
{ "include": ["<gtest/gtest_pred_impl.h>", "private", "<gtest/gtest.h>", "public"] },
21+
{ "include": ["<gtest/gtest-typed-test.h>", "private", "<gtest/gtest.h>", "public"] },
1722

1823
# We prefer to include <gmock/gmock.h> for simplicity
1924
{ "include": ["<gmock/gmock-function-mocker.h>", "private", "<gmock/gmock.h>", "public"] },

CHANGELOG.md

Lines changed: 127 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,21 +15,140 @@ Increment the:
1515

1616
## [Unreleased]
1717

18-
* [API] Comply with W3C Trace Context
19-
[#3115](https://github.com/open-telemetry/opentelemetry-cpp/pull/3115)
18+
## [1.18 2024-11-25]
19+
20+
* [EXPORTER] Fix crash in ElasticsearchLogRecordExporter
21+
[#3082](https://github.com/open-telemetry/opentelemetry-cpp/pull/3082)
22+
23+
* [BUILD] Avoid buggy warning with gcc <= 8
24+
[#3087](https://github.com/open-telemetry/opentelemetry-cpp/pull/3087)
2025

2126
* [API] Jaeger Propagator should not be deprecated
2227
[#3086](https://github.com/open-telemetry/opentelemetry-cpp/pull/3086)
2328

24-
* Upgrade to prometheus 1.3.0
29+
* Update bzlmod version
30+
[#3093](https://github.com/open-telemetry/opentelemetry-cpp/pull/3093)
31+
32+
* [BUILD] Remove std::make_unique
33+
[#3098](https://github.com/open-telemetry/opentelemetry-cpp/pull/3098)
34+
35+
* [BUILD] Fix compiling problems for gcc 4.8
36+
[#3100](https://github.com/open-telemetry/opentelemetry-cpp/pull/3100)
37+
38+
* [TEST] Fix linking order and gmock linking
39+
[#3106](https://github.com/open-telemetry/opentelemetry-cpp/pull/3106)
40+
41+
* [EXPORTER] Add config options to prometheus exporter
42+
[#3104](https://github.com/open-telemetry/opentelemetry-cpp/pull/3104)
43+
44+
* [BUILD] Add a CMake option to disable shared libs
45+
[#3095](https://github.com/open-telemetry/opentelemetry-cpp/pull/3095)
46+
47+
* [EXPORTER] Remove out of date ETW exporter doc
48+
[#3103](https://github.com/open-telemetry/opentelemetry-cpp/pull/3103)
49+
50+
* [EXPORTER] Add logging for async gRPC errors
51+
[#3108](https://github.com/open-telemetry/opentelemetry-cpp/pull/3108)
52+
53+
* [BUILD] Remove aligned_storage from nostd
54+
[#3112](https://github.com/open-telemetry/opentelemetry-cpp/pull/3112)
55+
56+
* [EXPORTER] Elastic Search exporter follow ECS guidelines
57+
[#3107](https://github.com/open-telemetry/opentelemetry-cpp/pull/3107)
58+
59+
* [INSTALL] Resolve dependencies in opentelemetry-cpp-config.cmake
60+
[#3094](https://github.com/open-telemetry/opentelemetry-cpp/pull/3094)
61+
62+
* [API] Add synchronous gauge
63+
[#3029](https://github.com/open-telemetry/opentelemetry-cpp/pull/3029)
64+
65+
* [BUILD] allow building with -DWITH_OTLP_HTTP_COMPRESSION=OFF without zlib
66+
[#3120](https://github.com/open-telemetry/opentelemetry-cpp/pull/3120)
67+
68+
* [CI] Comment the arm64 CI
69+
[#3125](https://github.com/open-telemetry/opentelemetry-cpp/pull/3125)
70+
71+
* [API] Comply with W3C Trace Context
72+
[#3115](https://github.com/open-telemetry/opentelemetry-cpp/pull/3115)
73+
74+
* [EXPORTER] bump prometheus to v1.3.0
2575
[#3122](https://github.com/open-telemetry/opentelemetry-cpp/pull/3122)
2676

77+
* [EXPORTER] Log SSL Connection Information
78+
[#3113](https://github.com/open-telemetry/opentelemetry-cpp/pull/3113)
79+
80+
* [BUILD] Improve how to handle yield() in ARM
81+
[#3129](https://github.com/open-telemetry/opentelemetry-cpp/pull/3129)
82+
83+
* [BUILD] Fix -Wmissing-template-arg-list-after-template-kw warning
84+
[#3133](https://github.com/open-telemetry/opentelemetry-cpp/pull/3133)
85+
86+
* [EXPORTER]: Elasticsearch exporter put log resource in root instead of under 'resources'
87+
[#3131](https://github.com/open-telemetry/opentelemetry-cpp/pull/3131)
88+
89+
* [TEST] Rename w3c_tracecontext_test to w3c_tracecontext_http_test_server
90+
[#3132](https://github.com/open-telemetry/opentelemetry-cpp/pull/3132)
91+
92+
* [BUILD] Patches for building on AIX
93+
[#3127](https://github.com/open-telemetry/opentelemetry-cpp/pull/3127)
94+
2795
* [SEMANTIC CONVENTIONS] Migration to weaver
2896
[#3105](https://github.com/open-telemetry/opentelemetry-cpp/pull/3105)
2997

30-
* [EXPORTER] Allow to share gRPC clients between OTLP exporters.
98+
* [SEMANTIC CONVENTIONS] Upgrade to semantic conventions 1.28.0
99+
[#3139](https://github.com/open-telemetry/opentelemetry-cpp/pull/3139)
100+
101+
* [EXPORTER] handling of invalid ports in UrlParser
102+
[#3142](https://github.com/open-telemetry/opentelemetry-cpp/pull/3142)
103+
104+
* [CI] speed up clang-tidy workflow
105+
[#3148](https://github.com/open-telemetry/opentelemetry-cpp/pull/3148)
106+
107+
* [EXPORTER] Allow to share gRPC clients between OTLP exporters
31108
[#3041](https://github.com/open-telemetry/opentelemetry-cpp/pull/3041)
32109

110+
* Bump codecov/codecov-action from 4 to 5
111+
[#3143](https://github.com/open-telemetry/opentelemetry-cpp/pull/3143)
112+
113+
* [CI] Add cppcheck in the build
114+
[#3151](https://github.com/open-telemetry/opentelemetry-cpp/pull/3151)
115+
116+
* [BUILD] Fix error message
117+
[#3152](https://github.com/open-telemetry/opentelemetry-cpp/pull/3152)
118+
119+
* [EXPORTER] fix clang-tidy warnings in UrlParser
120+
[#3146](https://github.com/open-telemetry/opentelemetry-cpp/pull/3146)
121+
122+
* [EXPORTER] Upgrade to opentelemetry-proto 1.4.0
123+
[#3157](https://github.com/open-telemetry/opentelemetry-cpp/pull/3157)
124+
125+
* [TEST] refactor UrlParser tests to use value-paramterized tests
126+
[#3153](https://github.com/open-telemetry/opentelemetry-cpp/pull/3153)
127+
128+
* [TEST] add a test for ElasticSearchRecordable
129+
[#3154](https://github.com/open-telemetry/opentelemetry-cpp/pull/3154)
130+
131+
* [BUILD] Fix missing dependency on protoc compiler
132+
[#3159](https://github.com/open-telemetry/opentelemetry-cpp/pull/3159)
133+
134+
* [bazel] Update prometheus-cpp in MODULE.bazel
135+
[#3162](https://github.com/open-telemetry/opentelemetry-cpp/pull/3162)
136+
137+
* [bazel] Enable --incompatible_disallow_empty_glob
138+
[#2642](https://github.com/open-telemetry/opentelemetry-cpp/pull/2642)
139+
140+
* [INSTALL] Fix cmake/opentelemetry-cpp-config.cmake.in
141+
[#3165](https://github.com/open-telemetry/opentelemetry-cpp/pull/3165)
142+
143+
* [BUILD] Do not set OTELCPP_PROTO_PATH in the CMake cache
144+
[#3160](https://github.com/open-telemetry/opentelemetry-cpp/pull/3160)
145+
146+
* [BUILD] Fix build for esp32
147+
[#3155](https://github.com/open-telemetry/opentelemetry-cpp/pull/3155)
148+
149+
* [bazel] Update opentelemetry-proto in MODULE.bazel
150+
[#3163](https://github.com/open-telemetry/opentelemetry-cpp/pull/3163)
151+
33152
Important changes:
34153

35154
* [API] Jaeger Propagator should not be deprecated
@@ -54,6 +173,10 @@ Important changes:
54173
for each `xxx` semantic attribute group.
55174
* See file DEPRECATED.md for details.
56175

176+
Deprecations:
177+
178+
* This release contains deprecations, see file DEPRECATED.md for details.
179+
57180
## [1.17 2024-10-07]
58181

59182
* [CI] Add a clang-tidy build

CMakeLists.txt

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,30 @@
11
# Copyright The OpenTelemetry Authors
22
# SPDX-License-Identifier: Apache-2.0
33

4-
cmake_minimum_required(VERSION 3.9)
4+
cmake_minimum_required(VERSION 3.10)
55

6-
# See https://cmake.org/cmake/help/v3.3/policy/CMP0057.html required by certain
7-
# versions of gtest
8-
cmake_policy(SET CMP0057 NEW)
9-
10-
# See https://cmake.org/cmake/help/v3.12/policy/CMP0074.html required by certain
11-
# version of zlib which CURL depends on.
6+
# See https://cmake.org/cmake/help/latest/policy/CMP0074.html required by
7+
# certain version of zlib which CURL depends on.
128
if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.12")
139
cmake_policy(SET CMP0074 NEW)
1410
endif()
1511

12+
# Allow to use normal variable for option()
13+
if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.13")
14+
cmake_policy(SET CMP0077 NEW)
15+
endif()
16+
1617
# Prefer CMAKE_MSVC_RUNTIME_LIBRARY if possible
1718
if(POLICY CMP0091)
1819
cmake_policy(SET CMP0091 NEW)
1920
endif()
2021

22+
# MSVC RTTI flag /GR should not be not added to CMAKE_CXX_FLAGS by default. @see
23+
# https://cmake.org/cmake/help/latest/policy/CMP0117.html
24+
if(CMAKE_VERSION VERSION_GREATER_EQUAL "3.20.0")
25+
cmake_policy(SET CMP0117 NEW)
26+
endif()
27+
2128
project(opentelemetry-cpp)
2229

2330
# Mark variables as used so cmake doesn't complain about them

MODULE.bazel

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ bazel_dep(name = "bazel_skylib", version = "1.5.0")
1313
bazel_dep(name = "curl", version = "8.8.0")
1414
bazel_dep(name = "grpc", version = "1.63.1.bcr.1", repo_name = "com_github_grpc_grpc")
1515
bazel_dep(name = "nlohmann_json", version = "3.11.3", repo_name = "github_nlohmann_json")
16-
bazel_dep(name = "opentelemetry-proto", version = "1.3.2", repo_name = "com_github_opentelemetry_proto")
16+
bazel_dep(name = "opentelemetry-proto", version = "1.4.0", repo_name = "com_github_opentelemetry_proto")
1717
bazel_dep(name = "opentracing-cpp", version = "1.6.0", repo_name = "com_github_opentracing")
1818
bazel_dep(name = "platforms", version = "0.0.8")
1919
bazel_dep(name = "prometheus-cpp", version = "1.3.0", repo_name = "com_github_jupp0r_prometheus_cpp")

api/include/opentelemetry/nostd/variant.h

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,19 @@ OPENTELEMETRY_END_NAMESPACE
5454
# ifdef HAVE_ABSEIL
5555
# include "absl/types/variant.h"
5656
# else
57+
# include "opentelemetry/nostd/internal/absl/base/options.h"
58+
59+
namespace absl
60+
{
61+
namespace OTABSL_OPTION_NAMESPACE_NAME
62+
{
63+
template <class T>
64+
struct variant_size;
65+
template <typename... Ts>
66+
class variant;
67+
} // namespace OTABSL_OPTION_NAMESPACE_NAME
68+
} // namespace absl
69+
5770
# include "opentelemetry/nostd/internal/absl/types/variant.h"
5871
# endif
5972

api/include/opentelemetry/version.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@
1010
# define OPENTELEMETRY_ABI_VERSION_NO 1
1111
#endif
1212

13-
#define OPENTELEMETRY_VERSION "1.17.0"
13+
#define OPENTELEMETRY_VERSION "1.18.0"
1414
#define OPENTELEMETRY_VERSION_MAJOR 1
15-
#define OPENTELEMETRY_VERSION_MINOR 17
15+
#define OPENTELEMETRY_VERSION_MINOR 18
1616
#define OPENTELEMETRY_VERSION_PATCH 0
1717

1818
#define OPENTELEMETRY_ABI_VERSION OPENTELEMETRY_STRINGIFY(OPENTELEMETRY_ABI_VERSION_NO)

api/test/trace/propagation/detail/string_test.cc

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,12 @@
22
// SPDX-License-Identifier: Apache-2.0
33

44
#include <gtest/gtest.h>
5-
#include <opentelemetry/trace/propagation/b3_propagator.h>
6-
#include <string>
5+
#include <stddef.h>
6+
#include <ostream>
7+
#include <vector>
78

89
#include "opentelemetry/nostd/string_view.h"
10+
#include "opentelemetry/trace/propagation/detail/string.h"
911

1012
using namespace opentelemetry;
1113

docs/public/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
author = 'OpenTelemetry authors'
2525

2626
# The full version, including alpha/beta/rc tags
27-
release = "1.17.0"
27+
release = "1.18.0"
2828

2929
# Run sphinx on subprojects and copy output
3030
# -----------------------------------------

exporters/memory/include/opentelemetry/exporters/memory/in_memory_metric_data.h

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,18 @@
33

44
#pragma once
55

6+
#include <stddef.h>
67
#include <map>
78
#include <memory>
89
#include <string>
910
#include <tuple>
1011

1112
#include "opentelemetry/exporters/memory/in_memory_data.h"
1213
#include "opentelemetry/sdk/metrics/data/metric_data.h"
14+
#include "opentelemetry/sdk/metrics/export/metric_producer.h"
15+
#include "opentelemetry/version.h"
1316

1417
OPENTELEMETRY_BEGIN_NAMESPACE
15-
namespace sdk
16-
{
17-
namespace metrics
18-
{
19-
struct ResourceMetrics;
20-
}
21-
} // namespace sdk
2218
namespace exporter
2319
{
2420
namespace memory

0 commit comments

Comments
 (0)