envoyproxy / envoyproxy/envoy

Initial partial support for C++20 in Envoy

Open
#15,874 10 comments 0 reactions 0 assignees View on GitHub
design proposal help wanted
Dominant language
C++
Stars
28.9k
Forks
5.6k
Avg merge
1d 20h
Merged PRs (30d)
437

Description

*Initial partial support for C++20 in Envoy*

*Description*:

Context:
The latest standard version ratified and published by ISO in December of 2020 as ISO/IEC 14882:2020 (informally known as C++20) —a very significant update over C++17—is widely (but not yet fully) supported by major compilers such as gcc-10 and clang-10.
C++20 is already being used as the standard version by some companies and this number will continue to increase as time passes, so an optional C++20 compatible version of Envoy would be needed.

What we're proposing:
Supporting C++20 by making the necessary changes, implementing the new features for better compatibility, and replacing deprecated features. We will be making these changes in a **modular way** as to not make the change so abrupt. We'll be starting with "unpopular" modules (those which are not widely used) and modules which require just a few changes to be fully compatible with C++20.

- Ideas & suggestions on how to split up the PRs would be very helpful. Thanks.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.