> Is it fair to say most users of Arrow C++ do that via Python/R or shared
libraries? Making the migration to a recent C++ standard relatively safe?

I would say so. For some C++ dependents I know of, they either don't depend
on very recent versions e.g. Velox (C++17) on Arrow 15.0.0 [1], or are
already using C++20 e.g. Doris [2] on Arrow 19.0.1 [3].

[1]
https://github.com/facebookincubator/velox/blob/e4b5b3509cf37c53ae5cf94a72c6cf81706f3d10/scripts/setup-ubuntu.sh#L85
[2]
https://github.com/apache/doris/blob/403e7b5fc72167ab9b457f938e8c0c18f60207d6/be/CMakeLists.txt#L271
[3]
https://github.com/apache/doris/blob/403e7b5fc72167ab9b457f938e8c0c18f60207d6/thirdparty/vars.sh#L256

*Regards,*
*Rossi SUN*


On Mon, May 19, 2025 at 2:41 PM Felipe Oliveira Carvalho <
felipe...@gmail.com> wrote:

> +1
>
> Is it fair to say most users of Arrow C++ do that via Python/R or shared
> libraries? Making the migration to a recent C++ standard relatively safe?
>
> --
> Felipe
>
> On Mon, May 19, 2025 at 1:14 PM Antoine Pitrou <anto...@python.org> wrote:
>
> >
> > Hello,
> >
> > I am proposing that we switch Arrow C++ to require C++20.
> >
> > C++20 will offer support for more C++ language and standard library
> > features, such as:
> >
> > - concepts
> > - generic lambdas with explicit type parameters
> > - designated initializers
> > - calendar and timezone functions (currently, our Windows users need to
> > download the timezone database separately; this would not be required
> > anymore with C++20, IIUC)
> > - std::span (we currently use a backport)
> > - coroutines (not sure they are usable enough, though)
> > - various smaller improvements and additions
> >
> > A decent level of C++20 support is available with these compiler
> > versions (see https://en.cppreference.com/w/cpp/compiler_support#cpp20
> > for details):
> >
> > - gcc 10
> > - clang 10 to 19
> > - MSVC 19.28 (Visual Studio 2019) or 19.30 (Visual Studio 2022)
> >
> > Switching to C++20 will happen in any case, the question is whether we
> > can do it now or we need to wait for a year or two.
> >
> > There is an experimental PR to switch to C++20 and it shows that there
> > is no blocker for switching (a couple odd issues will have to be fixed:
> > https://github.com/apache/arrow/pull/45445
> >
> > A more general issue has been opened separately:
> > https://github.com/apache/arrow/issues/45885
> >
> > Are there any opinions on this?
> >
> > Regards
> >
> > Antoine.
> >
> >
>

Reply via email to