josiahyan commented on a change in pull request #8757:
URL: https://github.com/apache/arrow/pull/8757#discussion_r584312257
##########
File path: ci/conda_env_unix.yml
##########
@@ -19,6 +19,8 @@
autoconf
ccache
+google-cloud-cpp=1.20.0
Review comment:
The currently available version in conda (1.24) is incompatible with the
way I initially packaged it. I believe I saw in the CI run that
`storage_client` was missing or something, as the google-cloud-cpp package has
[started namespacing its
exports](https://github.com/googleapis/google-cloud-cpp/blob/5bf147226e9333c5106d5fc8b8bba62657eeab97/google/cloud/storage/legacy.cmake.in#L28)
(finally!).
Given the hard link against abseil libraries (as gRPC does too), to reduce
packaging size, I decided that the version was safer pinned. The abseil
libraries actually loaded probably depends on the matrix of abseil versions and
users of it (gRPC, and the proposed google-cloud-cpp inclusion). Personally, I
extract it by a bazel query (provided in comments) and a Python script to
lookup the symbols in the ar files. I believe the gRPC builds do something
similar, or just pull them out from the compiler invocations (does @pitrou or
@kou know how they were determined in commits like
[these](https://github.com/apache/arrow/commit/4ecac056dfa88a0032fed7f36a20d2886c39ef90)?).
Ideally the compiler would do it, but I didn't dig into why the build system
wouldn't allow so (I'm guessing the libs have to bundled in and linked
separately somehow?).
I'm hoping to upgrade the dependency when there is code using it (which
would be the GCS implementation of the Arrow file interfaces).
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]