Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tensorflow v2.13.0 #329

Conversation

regro-cf-autotick-bot
Copy link
Contributor

It is very likely that the current package version for this feedstock is out of date.

Checklist before merging this PR:

  • Dependencies have been updated if changed: see upstream
  • Tests have passed
  • Updated license if changed and license_file is packaged

Information about this PR:

  1. Feel free to push to the bot's branch to update this PR if needed.
  2. The bot will almost always only open one PR per version.
  3. The bot will stop issuing PRs if more than 3 version bump PRs generated by the bot are open. If you don't want to package a particular version please close the PR.
  4. If you want these PRs to be merged automatically, make an issue with @conda-forge-admin,please add bot automerge in the title and merge the resulting PR. This command will add our bot automerge feature to your feedstock.
  5. If this PR was opened in error or needs to be updated please add the bot-rerun label to this PR. The bot will close this PR and schedule another one. If you do not have permissions to add this label, you can use the phrase @conda-forge-admin, please rerun bot in a PR comment to have the conda-forge-admin add it for you.

Pending Dependency Version Updates

Here is a list of all the pending dependency version updates for this repo. Please double check all dependencies before merging.

Name Upstream Version Current Version
icu 2023-04-10 Anaconda-Server Badge
keras 2.13.1 Anaconda-Server Badge
libjpeg-turbo 9e Anaconda-Server Badge
openjdk 20.0.1 Anaconda-Server Badge
protobuf 23.4 Anaconda-Server Badge
tensorflow 2.13.0 Anaconda-Server Badge

Dependency Analysis

We couldn't run dependency analysis due to an internal error in the bot, depfinder, or grayskull. :/ Help is very welcome!

This PR was created by the regro-cf-autotick-bot. The regro-cf-autotick-bot is a service to automatically track the dependency graph, migrate packages, and propose package version updates for conda-forge. Feel free to drop us a line if there are any issues! This PR was generated by https://github.com/regro/cf-scripts/actions/runs/5628359937, please use this URL for debugging.

@conda-forge-webservices
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@jonas-eschle
Copy link

Are there any news on this?

@h-vetinari
Copy link
Member

Are there any news on this?

We just got 2.12.1 out the door. Feel free to open a PR to get things building at least until the timeout.

@h-vetinari
Copy link
Member

Also adding a relevant quote from #324:

Definitely need to unpin gast for 2.13. tensorflow/tensorflow#61134 landed without issues just after 2.13.

regro-cf-autotick-bot and others added 9 commits July 28, 2023 22:39
* dependency on jax got removed in 2.13
* keras-processing hasn't been a requirement since 2.11
* update protobuf constraint
landed right after 2.13.0 got released
@h-vetinari
Copy link
Member

Waiting for conda-forge/keras-feedstock#67

@h-vetinari
Copy link
Member

I tried to be proactive with protobuf 4.x and CUDA 12, but 40 builds... 😅

image

@h-vetinari
Copy link
Member

OK, this is downloading a specific commit of https://github.com/pybind/pybind11_protobuf, and then failing because it cannot find @com_google_protobuf//:proto_api

In the meantime, pybind11_protobuf has been updated to replace that line:

         "@com_google_absl//absl/strings",
         "@com_google_absl//absl/types:optional",
-        "@com_google_protobuf//:proto_api",
         "@com_google_protobuf//:protobuf",
+        "@com_google_protobuf//python:proto_api",
     ],
 )

Notably, this doesn't just happen with newer protobuf, but also with 3.21. Not sure how upstream tensorflow builds 2.13, but I'm surprised they're not running into the same error?

@hmaarrfk
Copy link
Contributor

It seems that linux + CPU is going well. trying CUDA 11.2.

I noticed that CUDA 12.0 migration was added. it couldn't find CUDA_HOME so it ended early.

@xhochy
Copy link
Member

xhochy commented Sep 18, 2023

Linux + CPU passes locally. CUDA 12 needs adjustments similar to https://github.com/conda-forge/jaxlib-feedstock/pull/189/files Sadly, they don't seem to suffice as ./configure cannot find cupti.h (me neither).

@hmaarrfk
Copy link
Contributor

Cuda 11.2 is presently failing with:

ERROR: /home/conda/feedstock_root/build_artifacts/debug_1695061376251/work/tensorflow/python/framework/BUILD:2030:18: Compiling tensorflow/python/framework/test_ops.cu.cc [for host] failed: (Exit 1): crosstool_wrapper_driver_is_not_gcc failed: error executing command
  (cd /home/conda/feedstock_root/build_artifacts/debug_1695061376251/_build_env/share/bazel/abb6289144f82c381c1c57365f5b633c/execroot/org_tensorflow && \
  exec env - \
    LD_LIBRARY_PATH=/usr/local/nvidia/lib:/usr/local/nvidia/lib64 \
    PATH=/home/conda/feedstock_root/build_artifacts/debug_1695061376251/work:/home/conda/feedstock_root/build_artifacts/debug_1695061376251/_build_env/bin:/home/conda/feedstock_root/build_artifacts/debug_1695061376251/_build_env/bin:/home/conda/feedstock_root/build_artifacts/debug_1695061376251/_h_env/bin:/home/conda/feedstock_root/build_artifacts/debug_1695061376251/_h_env/bin:/opt/conda/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/conda/bin:/usr/local/cuda/bin \
    PWD=/proc/self/cwd \
  custom_toolchain/crosstool_wrapper_driver_is_not_gcc -MD -MF bazel-out/host/bin/tensorflow/python/framework/_objs/test_ops_kernels_gpu/test_ops.cu.d '-frandom-seed=bazel-out/host/bin/tensorflow/python/framework/_objs/test_ops_kernels_gpu/test_ops.cu.o' -DEIGEN_MPL2_ONLY '-DEIGEN_MAX_ALIGN_BYTES=64' -DTF_USE_SNAPPY -iquote . -iquote bazel-out/host/bin -iquote external/com_google_absl -iquote bazel-out/host/bin/external/com_google_absl -iquote external/nsync -iquote bazel-out/host/bin/external/nsync -iquote external/com_google_protobuf -iquote bazel-out/host/bin/external/com_google_protobuf -iquote external/gif -iquote bazel-out/host/bin/external/gif -iquote external/libjpeg_turbo -iquote bazel-out/host/bin/external/libjpeg_turbo -iquote external/com_googlesource_code_re2 -iquote bazel-out/host/bin/external/com_googlesource_code_re2 -iquote external/farmhash_archive -iquote bazel-out/host/bin/external/farmhash_archive -iquote external/fft2d -iquote bazel-out/host/bin/external/fft2d -iquote external/highwayhash -iquote bazel-out/host/bin/external/highwayhash -iquote external/zlib -iquote bazel-out/host/bin/external/zlib -iquote external/eigen_archive -iquote bazel-out/host/bin/external/eigen_archive -iquote external/local_config_cuda -iquote bazel-out/host/bin/external/local_config_cuda -iquote external/snappy -iquote bazel-out/host/bin/external/snappy -iquote external/double_conversion -iquote bazel-out/host/bin/external/double_conversion -iquote external/local_config_rocm -iquote bazel-out/host/bin/external/local_config_rocm -iquote external/local_config_tensorrt -iquote bazel-out/host/bin/external/local_config_tensorrt -Ibazel-out/host/bin/external/local_config_cuda/cuda/_virtual_includes/cuda_headers_virtual -Ibazel-out/host/bin/external/local_config_tensorrt/_virtual_includes/tensorrt_headers -isystem external/nsync/public -isystem bazel-out/host/bin/external/nsync/public -isystem external/farmhash_archive/src -isystem bazel-out/host/bin/external/farmhash_archive/src -isystem third_party/eigen3/mkl_include -isystem bazel-out/host/bin/third_party/eigen3/mkl_include -isystem external/eigen_archive -isystem bazel-out/host/bin/external/eigen_archive -isystem external/local_config_cuda/cuda -isystem bazel-out/host/bin/external/local_config_cuda/cuda -isystem external/local_config_cuda/cuda/cuda/include -isystem bazel-out/host/bin/external/local_config_cuda/cuda/cuda/include -isystem external/local_config_rocm/rocm -isystem bazel-out/host/bin/external/local_config_rocm/rocm -isystem external/local_config_rocm/rocm/rocm/include -isystem bazel-out/host/bin/external/local_config_rocm/rocm/rocm/include -isystem external/local_config_rocm/rocm/rocm/include/rocrand -isystem bazel-out/host/bin/external/local_config_rocm/rocm/rocm/include/rocrand -isystem external/local_config_rocm/rocm/rocm/include/roctracer -isystem bazel-out/host/bin/external/local_config_rocm/rocm/rocm/include/roctracer -isystem /home/conda/feedstock_root/build_artifacts/debug_1695061376251/_h_env/include '-march=nocona' '-mtune=haswell' -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem /home/conda/feedstock_root/build_artifacts/debug_1695061376251/_h_env/include '-fdebug-prefix-map=/home/conda/feedstock_root/build_artifacts/debug_1695061376251/work=/usr/local/src/conda/tensorflow-split-2.13.0' '-fdebug-prefix-map=/home/conda/feedstock_root/build_artifacts/debug_1695061376251/_h_env=/usr/local/src/conda-prefix' -isystem /usr/local/cuda/include -DNDEBUG '-D_FORTIFY_SOURCE=2' -O2 -isystem /home/conda/feedstock_root/build_artifacts/debug_1695061376251/_h_env/include -isystem /usr/local/cuda/include -fvisibility-inlines-hidden '-std=c++17' '-fmessage-length=0' '-march=nocona' '-mtune=haswell' -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem /home/conda/feedstock_root/build_artifacts/debug_1695061376251/_h_env/include '-fdebug-prefix-map=/home/conda/feedstock_root/build_artifacts/debug_1695061376251/work=/usr/local/src/conda/tensorflow-split-2.13.0' '-fdebug-prefix-map=/home/conda/feedstock_root/build_artifacts/debug_1695061376251/_h_env=/usr/local/src/conda-prefix' -isystem /usr/local/cuda/include -DNDEBUG '-D_FORTIFY_SOURCE=2' -O2 -isystem /home/conda/feedstock_root/build_artifacts/debug_1695061376251/_h_env/include -isystem /usr/local/cuda/include -g0 -w -g0 '-std=c++17' -x cuda '-DGOOGLE_CUDA=1' '--cuda-gpu-arch=sm_35' '--cuda-gpu-arch=sm_50' '--cuda-gpu-arch=sm_60' '--cuda-gpu-arch=sm_62' '--cuda-gpu-arch=sm_70' '--cuda-gpu-arch=sm_72' '--cuda-gpu-arch=sm_75' '--cuda-gpu-arch=sm_80' '--cuda-gpu-arch=sm_86' '--cuda-include-ptx=sm_86' '--cuda-gpu-arch=sm_86' '-Xcuda-fatbinary=--compress-all' --expt-relaxed-constexpr -DEIGEN_AVOID_STL_ARRAY -Iexternal/gemmlowp -Wno-sign-compare '-ftemplate-depth=900' -fno-exceptions '-DGOOGLE_CUDA=1' '-DTENSORFLOW_USE_NVCC=1' '-DTENSORFLOW_USE_XLA=1' -DINTEL_MKL -DAMD_ZENDNN -msse3 -pthread '-nvcc_options=relaxed-constexpr' '-nvcc_options=ftz=true' -c tensorflow/python/framework/test_ops.cu.cc -o bazel-out/host/bin/tensorflow/python/framework/_objs/test_ops_kernels_gpu/test_ops.cu.o)
# Configuration: 807d66c38223028ba6ee9afd9c851acf3500b685688f85c4515cf3ab1f995792
# Execution platform: @local_execution_config_platform//:platform
nvcc warning : The 'compute_35', 'compute_37', 'compute_50', 'sm_35', 'sm_37' and 'sm_50' architectures are deprecated, and may be removed in a future release (Use -Wno-deprecated-gpu-targets to suppress warning).
nvcc warning : The 'compute_35', 'compute_37', 'compute_50', 'sm_35', 'sm_37' and 'sm_50' architectures are deprecated, and may be removed in a future release (Use -Wno-deprecated-gpu-targets to suppress warning).
/home/conda/feedstock_root/build_artifacts/debug_1695061376251/_h_env/include/google/protobuf/map_field.h(708): error: return type is not identical to nor covariant with return type "google::protobuf::internal::UntypedMapBase *" of overridden virtual function "google::protobuf::internal::MapFieldBaseForParse::MutableMap"

/home/conda/feedstock_root/build_artifacts/debug_1695061376251/_h_env/include/google/protobuf/map_field.h(626): error: return type is not identical to nor covariant with return type "google::protobuf::internal::UntypedMapBase *" of overridden virtual function "google::protobuf::internal::MapFieldBaseForParse::MutableMap"
          detected during instantiation of class "google::protobuf::internal::MapField<Derived, Key, T, kKeyFieldType_, kValueFieldType_> [with Derived=tensorflow::NameAttrList_AttrEntry_DoNotUse, Key=std::string, T=tensorflow::AttrValue, kKeyFieldType_=google::protobuf::internal::WireFormatLite::TYPE_STRING, kValueFieldType_=google::protobuf::internal::WireFormatLite::TYPE_MESSAGE]"
bazel-out/host/bin/tensorflow/core/framework/attr_value.pb.h(988): here

/home/conda/feedstock_root/build_artifacts/debug_1695061376251/_h_env/include/google/protobuf/map_field.h(626): error: return type is not identical to nor covariant with return type "google::protobuf::internal::UntypedMapBase *" of overridden virtual function "google::protobuf::internal::MapFieldBaseForParse::MutableMap"
          detected during instantiation of class "google::protobuf::internal::MapField<Derived, Key, T, kKeyFieldType_, kValueFieldType_> [with Derived=tensorflow::NodeDef_AttrEntry_DoNotUse, Key=std::string, T=tensorflow::AttrValue, kKeyFieldType_=google::protobuf::internal::WireFormatLite::TYPE_STRING, kValueFieldType_=google::protobuf::internal::WireFormatLite::TYPE_MESSAGE]"
bazel-out/host/bin/tensorflow/core/framework/node_def.pb.h(606): here

@h-vetinari
Copy link
Member

I noticed that CUDA 12.0 migration was added.

If it's too much work we can drop it for now. I just tried to get all the big ticket items on the table.

@njzjz
Copy link
Member

njzjz commented Sep 22, 2023

Could we bump CUDA from 11.2 to 11.8 in this PR? See conda-forge/conda-forge-pinning-feedstock#4834 and conda-forge/conda-forge.github.io#1981.

Per https://conda-forge.org/status/, only jaxlib blocks the migration, but we have removed it in this PR.

@hmaarrfk
Copy link
Contributor

i guess from everybody, before requesting "extra migrations" please bear in mind that even in their absence, this is still problematic to build. nobody has confirmed if the linux + cuda builds are successful which are pretty critical to many of the tensorflow feedstock maintainers.

@xhochy
Copy link
Member

xhochy commented Sep 23, 2023

linux + cuda

They don't work but error with some protobuf issues locally in a kernel. I'm rerunning with a more clean workspace and can post them here if they persist.

@xhochy
Copy link
Member

xhochy commented Sep 25, 2023

Even with a clean checkout, I get the following build errors for CUDA 11.2:

/home/conda/feedstock_root/build_artifacts/tensorflow-split_1695405775387/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla
cehold_placehold_placehold_placehold_placehold_plac/include/google/protobuf/map_field.h(708): error: return type is not identical to nor covariant with return type "google::protobuf::internal::UntypedMapB
ase *" of overridden virtual function "google::protobuf::internal::MapFieldBaseForParse::MutableMap"

/home/conda/feedstock_root/build_artifacts/tensorflow-split_1695405775387/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla
cehold_placehold_placehold_placehold_placehold_plac/include/google/protobuf/map_field.h(626): error: return type is not identical to nor covariant with return type "google::protobuf::internal::UntypedMapB
ase *" of overridden virtual function "google::protobuf::internal::MapFieldBaseForParse::MutableMap"
          detected during instantiation of class "google::protobuf::internal::MapField<Derived, Key, T, kKeyFieldType_, kValueFieldType_> [with Derived=tensorflow::NameAttrList_AttrEntry_DoNotUse, Key=std
::string, T=tensorflow::AttrValue, kKeyFieldType_=google::protobuf::internal::WireFormatLite::TYPE_STRING, kValueFieldType_=google::protobuf::internal::WireFormatLite::TYPE_MESSAGE]"
bazel-out/k8-opt/bin/tensorflow/core/framework/attr_value.pb.h(988): here

/home/conda/feedstock_root/build_artifacts/tensorflow-split_1695405775387/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla
cehold_placehold_placehold_placehold_placehold_plac/include/google/protobuf/map_field.h(626): error: return type is not identical to nor covariant with return type "google::protobuf::internal::UntypedMapB
ase *" of overridden virtual function "google::protobuf::internal::MapFieldBaseForParse::MutableMap"
          detected during instantiation of class "google::protobuf::internal::MapField<Derived, Key, T, kKeyFieldType_, kValueFieldType_> [with Derived=tensorflow::NodeDef_AttrEntry_DoNotUse, Key=std::str
ing, T=tensorflow::AttrValue, kKeyFieldType_=google::protobuf::internal::WireFormatLite::TYPE_STRING, kValueFieldType_=google::protobuf::internal::WireFormatLite::TYPE_MESSAGE]"
bazel-out/k8-opt/bin/tensorflow/core/framework/node_def.pb.h(606): here

/home/conda/feedstock_root/build_artifacts/tensorflow-split_1695405775387/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla
cehold_placehold_placehold_placehold_placehold_plac/include/google/protobuf/map_field.h(626): error: return type is not identical to nor covariant with return type "google::protobuf::internal::UntypedMapB
ase *" of overridden virtual function "google::protobuf::internal::MapFieldBaseForParse::MutableMap"
          detected during instantiation of class "google::protobuf::internal::MapField<Derived, Key, T, kKeyFieldType_, kValueFieldType_> [with Derived=tensorflow::FunctionDef_ArgAttrs_AttrEntry_DoNotUse,
 Key=std::string, T=tensorflow::AttrValue, kKeyFieldType_=google::protobuf::internal::WireFormatLite::TYPE_STRING, kValueFieldType_=google::protobuf::internal::WireFormatLite::TYPE_MESSAGE]"
bazel-out/k8-opt/bin/tensorflow/core/framework/function.pb.h(547): here

/home/conda/feedstock_root/build_artifacts/tensorflow-split_1695405775387/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla
cehold_placehold_placehold_placehold_placehold_plac/include/google/protobuf/map_field.h(626): error: return type is not identical to nor covariant with return type "google::protobuf::internal::UntypedMapB
ase *" of overridden virtual function "google::protobuf::internal::MapFieldBaseForParse::MutableMap"
          detected during instantiation of class "google::protobuf::internal::MapField<Derived, Key, T, kKeyFieldType_, kValueFieldType_> [with Derived=tensorflow::FunctionDef_RetEntry_DoNotUse, Key=std::
string, T=std::string, kKeyFieldType_=google::protobuf::internal::WireFormatLite::TYPE_STRING, kValueFieldType_=google::protobuf::internal::WireFormatLite::TYPE_STRING]"
bazel-out/k8-opt/bin/tensorflow/core/framework/function.pb.h(930): here

…many more of the same…

@xhochy
Copy link
Member

xhochy commented Sep 25, 2023

@xhochy
Copy link
Member

xhochy commented Sep 25, 2023

Same issue with CUDA 11.8. The offending code is the following:

Map<Key, T>* MutableMap() final {
    MapFieldBase::SyncMapWithRepeatedField();
    Map<Key, T>* result = impl_.MutableMap();
    MapFieldBase::SetMapDirty();
    return result;
  }

@xhochy
Copy link
Member

xhochy commented Sep 25, 2023

Problems persist with libprotobuf 4.23.4

@xhochy
Copy link
Member

xhochy commented Sep 27, 2023

New protobuf, new error:

/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/internal/str_format/bind.h: In constructor 'absl::lts_20230802::str_format_internal::FormatSpecTemplate<Args>::FormatSpecTemplate(c
onst absl::lts_20230802::str_format_internal::ExtendedParsedFormat<absl::lts_20230802::FormatConversionCharSet(C)...>&)':
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/internal/str_format/bind.h:172:1: error: parse error in template argument list
  172 |     CheckArity<sizeof...(C), sizeof...(Args)>();
      | ^   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/internal/str_format/bind.h:172:63: error: expected ';' before ')' token
  172 |     CheckArity<sizeof...(C), sizeof...(Args)>();
      |                                                               ^
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/internal/str_format/bind.h:173:147: error: template argument 1 is invalid
  173 |     CheckMatches<C...>(absl::make_index_sequence<sizeof...(C)>{});
      |                                                                                                                                                   ^
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/internal/str_format/bind.h:173:151: error: expected primary-expression before '{' token
  173 |     CheckMatches<C...>(absl::make_index_sequence<sizeof...(C)>{});
      |                                                                                                                                                       ^
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/internal/str_format/bind.h:173:151: error: expected ';' before '{' token
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/internal/str_format/bind.h:173:153: error: expected primary-expression before ')' token
  173 |     CheckMatches<C...>(absl::make_index_sequence<sizeof...(C)>{});
      |                                                                                                                                                         ^
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/internal/str_format/arg.h: In instantiation of 'constexpr absl::lts_20230802::FormatConversionCharSet absl::lts_20230802::str_forma
t_internal::ArgumentToConv() [with Arg = unsigned int]':
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/str_format.h:271:156:   required by substitution of 'template<class ... Args> using FormatSpec = absl::lts_20230802::str_format_int
ernal::FormatSpecTemplate<absl::lts_20230802::FormatConversionCharSet((ArgumentToConv<Args>)())...> [with Args = {unsigned int}]'
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/str_format.h:391:1:   required by substitution of 'template<class ... Args> absl::lts_20230802::str_format_internal::Streamable abs
l::lts_20230802::StreamFormat(absl::lts_20230802::FormatSpec<Args ...>&, const Args& ...) [with Args = {unsigned int}]'
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/crc/crc32c.h:184:34:   required from here
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/internal/str_format/arg.h:403:43: error: no matching function for call to 'ExtractCharSet(ConvResult)'
  403 |   return absl::str_format_internal::ExtractCharSet(ConvResult{});
      |        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/internal/str_format/arg.h:196:1: note: candidate: 'template<absl::lts_20230802::FormatConversionCharSet C> constexpr absl::lts_2023
0802::FormatConversionCharSet absl::lts_20230802::str_format_internal::ExtractCharSet(absl::lts_20230802::FormatConvertResult<(absl::lts_20230802::FormatConversionCharSet)(C)>)'
  196 | constexpr FormatConversionCharSet ExtractCharSet(FormatConvertResult<C>) {
      | ^~~~~~~~~~~~~~
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/internal/str_format/arg.h:196:1: note:   template argument deduction/substitution failed:
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/internal/str_format/arg.h:403:43: note:   couldn't deduce template parameter 'C'
  403 |   return absl::str_format_internal::ExtractCharSet(ConvResult{});
      |        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/internal/str_format/arg.h:201:1: note: candidate: 'template<absl::lts_20230802::FormatConversionCharSet C> constexpr absl::lts_2023
0802::FormatConversionCharSet absl::lts_20230802::str_format_internal::ExtractCharSet(absl::lts_20230802::str_format_internal::ArgConvertResult<(absl::lts_20230802::FormatConversionCharSet)(C)>)'
  201 | constexpr FormatConversionCharSet ExtractCharSet(ArgConvertResult<C>) {
      | ^~~~~~~~~~~~~~
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/internal/str_format/arg.h:201:1: note:   template argument deduction/substitution failed:
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/internal/str_format/arg.h:403:43: note:   couldn't deduce template parameter 'C'
  403 |   return absl::str_format_internal::ExtractCharSet(ConvResult{});
      |        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/crc/crc32c.h: In function 'std::ostream& absl::lts_20230802::operator<<(std::ostream&, absl::lts_20230802::crc32c_t)':
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/crc/crc32c.h:184:34: error: no matching function for call to 'StreamFormat(const char [5], uint32_t)'
  184 |   return os << absl::StreamFormat("%08x", static_cast<uint32_t>(crc));
      |                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/str_format.h:391:1: note: candidate: 'template<class ... Args> absl::lts_20230802::str_format_internal::Streamable absl::lts_202308
02::StreamFormat(absl::lts_20230802::FormatSpec<Args ...>&, const Args& ...)'
  391 | ABSL_MUST_USE_RESULT str_format_internal::Streamable StreamFormat(
      | ^~~~~~~~~~~~
/home/uwe/mambaforge/conda-bld/tensorflow-split_1695820989563/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place
hold_placehold_placehold_placehold_placehold_placeh/include/absl/strings/str_format.h:391:1: note:   substitution of deduced template arguments resulted in errors seen above

@xhochy
Copy link
Member

xhochy commented Sep 27, 2023

I don't even know which code causes this include 🤷

@njzjz
Copy link
Member

njzjz commented Sep 27, 2023

New protobuf, new error:

Why is the symbol absl::lts_20230802? We pin absl to 20230125 and 20230125 is installed as expected.

@h-vetinari
Copy link
Member

Why is the symbol absl::lts_20230802?

That's just how abseil versions its symbols; abseil is generally highly backwards compatible, so using a newer version is normally never an issue.

We pin absl to 20230125 and 20230125 is installed as expected.

If by "we" you mean the current state of the feedstock, then that's correct. I presume @xhochy has been building locally with the newer protobuf migrations, which are linked to newer abseil.

@njzjz
Copy link
Member

njzjz commented Sep 27, 2023

If by "we" you mean the current state of the feedstock, then that's correct. I presume @xhochy has been building locally with the newer protobuf migrations, which are linked to newer abseil.

Got it. But in #335, libabseil version is still 20230125. This means protobuf is built with 20230802 but still uses the header files from 20230125 (such as include/absl/strings/internal/str_format/bind.h shown in the message). Is it compatible?

@h-vetinari
Copy link
Member

h-vetinari commented Sep 27, 2023

Is it compatible?

Generally things are pretty compatible, but the issue is that we cannot migrate for all combinations, so we only have the following in conda-forge:

abseil grpc protobuf
20230125 1.54 3.21
20230125 1.56 4.23.3
20230802 1.57 4.23.4
20230802 1.58 4.24.3

More details

This means protobuf is built with 20230802 but still uses the header files from 20230125 (such as include/absl/strings/internal/str_format/bind.h shown in the message)

This shouldn't happen. It's more likely AFAICT that @xhochy hasn't pushed all updates to #335 yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants