Hi everyone,
I'd like to use this group to announce that we will soon bump up the technical requirements for using the arangodb/velocypack C++ library.
Currently compiling this library requires a C++ compiler that supports at least C+11. This will be changed so that a C++ compiler will be required that supports C++17. Recent versions of g++, clang++ and Visual Studio do.
The change _will not_ affect you if you are a user of ArangoDB, the database, or are a user of any of the drivers. It _will_ affect you if you are a driver maintainer that makes use of the arangodb/velocypack C++ library.
When we wrote the original version of the VelocyPack C++ library, C++11 was the dominating C++ standard, and it served us well. But the world has moved on since then, and C++14 and especially C++17 have brought great improvements. We are partially using these improvements in the arangodb/velocypack C++ library, but they are only available when compiling in C++14 or C++17 mode. This makes reasoning about the APIs more complex and also increases the turnaround times, as every change needs to pass in C++11, C++14 and C++17 mode.
We will be fully moving to C++17 for the arangodb/velocypack library at some point in January 2021, and then remove C++11 and C++14 from our build and test matrix.
Please let us know if you have any questions on this!
Thanks!
Jan