[ 
https://issues.apache.org/jira/browse/ARROW-17110?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Antoine Pitrou updated ARROW-17110:
-----------------------------------
    Description: 
The upcoming abseil release has dropped support for C++11, so {_}eventually{_}, 
arrow will have to follow. More details 
[here|https://github.com/conda-forge/abseil-cpp-feedstock/issues/37].

Relatedly, when I 
[tried|https://github.com/conda-forge/abseil-cpp-feedstock/pull/25] to switch 
abseil to a newer C++ version on windows, things apparently broke in arrow CI. 
This is because the ABI of abseil is sensitive to the C++ standard that's used 
to compile, and google only supports a homogeneous version to compile all 
artefacts in a stack. This creates some friction with conda-forge (where the 
compilers are generally much newer than what arrow might be willing to impose). 
For now, things seems to have worked out with arrow 
[specifying|https://github.com/apache/arrow/blob/897a4c0ce73c3fe07872beee2c1d2128e44f6dd4/cpp/cmake_modules/SetupCxxFlags.cmake#L121-L124]
 C\+\+11 while conda-forge moved to C\+\+17 - at least on unix, but windows was 
not so lucky.

Perhaps people would therefore also be interested in collaborating (or at least 
commenting on) this 
[issue|https://github.com/conda-forge/abseil-cpp-feedstock/issues/29], which 
should permit more flexibility by being able to opt into given standard 
versions also from conda-forge.

*Update:*

It was voted on the dev ML to move to C++17:
* vote announcement:
https://lists.apache.org/thread/h9v83rwdl015z2j6s8zwdr1qp4svb5j8
* vote result:
https://lists.apache.org/thread/dod96gbqtfz7pf096vhlczq6f5hv81z8

  was:
The upcoming abseil release has dropped support for C++11, so {_}eventually{_}, 
arrow will have to follow. More details 
[here|https://github.com/conda-forge/abseil-cpp-feedstock/issues/37].

Relatedly, when I 
[tried|https://github.com/conda-forge/abseil-cpp-feedstock/pull/25] to switch 
abseil to a newer C++ version on windows, things apparently broke in arrow CI. 
This is because the ABI of abseil is sensitive to the C++ standard that's used 
to compile, and google only supports a homogeneous version to compile all 
artefacts in a stack. This creates some friction with conda-forge (where the 
compilers are generally much newer than what arrow might be willing to impose). 
For now, things seems to have worked out with arrow 
[specifying|https://github.com/apache/arrow/blob/897a4c0ce73c3fe07872beee2c1d2128e44f6dd4/cpp/cmake_modules/SetupCxxFlags.cmake#L121-L124]
 C\+\+11 while conda-forge moved to C\+\+17 - at least on unix, but windows was 
not so lucky.

Perhaps people would therefore also be interested in collaborating (or at least 
commenting on) this 
[issue|https://github.com/conda-forge/abseil-cpp-feedstock/issues/29], which 
should permit more flexibility by being able to opt into given standard 
versions also from conda-forge.


> [C++] Move to C++17
> -------------------
>
>                 Key: ARROW-17110
>                 URL: https://issues.apache.org/jira/browse/ARROW-17110
>             Project: Apache Arrow
>          Issue Type: Task
>          Components: C++
>            Reporter: H. Vetinari
>            Priority: Major
>
> The upcoming abseil release has dropped support for C++11, so 
> {_}eventually{_}, arrow will have to follow. More details 
> [here|https://github.com/conda-forge/abseil-cpp-feedstock/issues/37].
> Relatedly, when I 
> [tried|https://github.com/conda-forge/abseil-cpp-feedstock/pull/25] to switch 
> abseil to a newer C++ version on windows, things apparently broke in arrow 
> CI. This is because the ABI of abseil is sensitive to the C++ standard that's 
> used to compile, and google only supports a homogeneous version to compile 
> all artefacts in a stack. This creates some friction with conda-forge (where 
> the compilers are generally much newer than what arrow might be willing to 
> impose). For now, things seems to have worked out with arrow 
> [specifying|https://github.com/apache/arrow/blob/897a4c0ce73c3fe07872beee2c1d2128e44f6dd4/cpp/cmake_modules/SetupCxxFlags.cmake#L121-L124]
>  C\+\+11 while conda-forge moved to C\+\+17 - at least on unix, but windows 
> was not so lucky.
> Perhaps people would therefore also be interested in collaborating (or at 
> least commenting on) this 
> [issue|https://github.com/conda-forge/abseil-cpp-feedstock/issues/29], which 
> should permit more flexibility by being able to opt into given standard 
> versions also from conda-forge.
> *Update:*
> It was voted on the dev ML to move to C++17:
> * vote announcement:
> https://lists.apache.org/thread/h9v83rwdl015z2j6s8zwdr1qp4svb5j8
> * vote result:
> https://lists.apache.org/thread/dod96gbqtfz7pf096vhlczq6f5hv81z8



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to