|
30 | 30 |
|
31 | 31 | ## [Compilers] |
32 | 32 |
|
33 | | -N/A |
| 33 | +### Drop C++11 support |
| 34 | + |
| 35 | +#### Announcement (C++11) |
| 36 | + |
| 37 | +* Date: 2022-12-01 |
| 38 | +* Issue: [DEPRECATION] Drop C++11 support |
| 39 | + [#1830](https://github.com/open-telemetry/opentelemetry-cpp/pull/1830) |
| 40 | +* This announcement has been pinned, |
| 41 | + visible in the issues pages since December 2022. |
| 42 | + |
| 43 | +#### Motivation (C++11) |
| 44 | + |
| 45 | +This repository, opentelemetry-cpp, supports a "bring your own dependency" model. |
| 46 | + |
| 47 | +In this model, |
| 48 | +the build scripts can be configured to: |
| 49 | + |
| 50 | +* pick a given version for a third party library, |
| 51 | +* build opentelemetry-cpp with the library given. |
| 52 | + |
| 53 | +The makefiles do not mandate to use a particular version, |
| 54 | +hence the "bring your own" denomination. |
| 55 | + |
| 56 | +To have an up to date build, projects are encouraged to use up to date |
| 57 | +versions of third party libraries, to benefit from bug fixes. |
| 58 | + |
| 59 | +Now, many libraries deliver new versions that require C++14, bug fixes |
| 60 | +releases for C++11 are no longer available. |
| 61 | + |
| 62 | +In particular, the following components: |
| 63 | + |
| 64 | +* GRPC C++ |
| 65 | +* abseil |
| 66 | +* googletest |
| 67 | + |
| 68 | +now require C++14, per |
| 69 | +[google support policies](https://github.com/google/oss-policies-info/blob/main/foundational-cxx-support-matrix.md) |
| 70 | + |
| 71 | +As a result, to stay up to date, opentelemetry-cpp needs to upgrade its |
| 72 | +minimum build requirements to use C++14 instead of C++11. |
| 73 | + |
| 74 | +#### Scope (C++11) |
| 75 | + |
| 76 | +Continuous Integration (CI) builds will use C++14 instead of C++11. |
| 77 | + |
| 78 | +The CI build for gcc 4.8 is now deprecated, to be decommissioned when C++11 |
| 79 | +support is dropped. |
| 80 | + |
| 81 | +#### Mitigation (C++11) |
| 82 | + |
| 83 | +Building the code with recent third party libraries will require C++14 |
| 84 | +instead of C++11. |
| 85 | + |
| 86 | +#### Planned end of life (C++11) |
| 87 | + |
| 88 | +Support for C++11 in opentelemetry-cpp will end on September 2023. |
| 89 | + |
| 90 | +After this date, opentelemetry-cpp may still build properly in C++11 mode, |
| 91 | +assuming a suitable, old, version for each dependency is used, |
| 92 | +but the C++11 build will no longer be tested for each new release. |
34 | 93 |
|
35 | 94 | ## [Third party dependencies] |
36 | 95 |
|
|
0 commit comments