ARM64-v8 Android cross compile build failed

Issue type
Build/Install
Have you reproduced the bug with TensorFlow Nightly?
Yes
Source
source
TensorFlow version
tf 2.8
Custom code
Yes
OS platform and distribution
Apple macos
Mobile device
Android arm64-v8
Python version
No response
Bazel version
No response
GCC/compiler version
No response
CUDA/cuDNN version
No response
GPU model and memory
No response
Current behavior?
Im getting an error in build for ARM64-v8 android target device with gpu support enabled. I was following this: https://www.tensorflow.org/lite/guide/build_cmake#available_options_to_build_tensorflow_lite
Standalone code to reproduce the issue
download [flatbuffers](https://github.com/google/flatbuffers.git)

git clone https://github.com/google/flatbuffers.git
cd flatbuffers
cmake -G "Unix Makefiles"
make -j

download and build tensorflow
git clone https://github.com/tensorflow/tensorflow.git tensorflow_src
mdkir tflite_build
cd tflite_build
cmake -DCMAKE_TOOLCHAIN_FILE=/Users/varunnaw/Library/Android/sdk/ndk/26.1.10909125/build/cmake/android.toolchain.cmake -DANDROID_PLATFORM=26 -DANDROID_ABI=arm64-v8a -DTFLITE_ENABLE_GPU=ON -DTFLITE_HOST_TOOLS_DIR=../flatbuffers/ ../tensorflow_src/tensorflow/lite/c
cmake --build . -j

### Relevant log output

```shell
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.cc:15:
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.h:28:
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/tensorflow-lite/tensorflow/lite/delegates/xnnpack/weight_cache_schema_generated.h:77:12: error: no matching member function for call to 'VerifyField'
           VerifyField<uint64_t>(verifier, VT_PACKING_ALGORITHM_ID) &&
           ^~~~~~~~~~~~~~~~~~~~~
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/flatbuffers/include/flatbuffers/table.h:125:8: note: candidate function template not viable: requires 3 arguments, but 2 were provided
  bool VerifyField(const Verifier &verifier, voffset_t field,
       ^
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.cc:15:
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.h:28:
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/tensorflow-lite/tensorflow/lite/delegates/xnnpack/weight_cache_schema_generated.h:78:12: error: no matching member function for call to 'VerifyField'
           VerifyField<uint64_t>(verifier, VT_WEIGHTS_ID) &&
           ^~~~~~~~~~~~~~~~~~~~~
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/flatbuffers/include/flatbuffers/table.h:125:8: note: candidate function template not viable: requires 3 arguments, but 2 were provided
  bool VerifyField(const Verifier &verifier, voffset_t field,
       ^
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.cc:15:
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.h:28:
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/tensorflow-lite/tensorflow/lite/delegates/xnnpack/weight_cache_schema_generated.h:79:12: error: no matching member function for call to 'VerifyField'
           VerifyField<uint64_t>(verifier, VT_BIAS_ID) &&
           ^~~~~~~~~~~~~~~~~~~~~
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/flatbuffers/include/flatbuffers/table.h:125:8: note: candidate function template not viable: requires 3 arguments, but 2 were provided
  bool VerifyField(const Verifier &verifier, voffset_t field,
       ^
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.cc:15:
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.h:28:
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/tensorflow-lite/tensorflow/lite/delegates/xnnpack/weight_cache_schema_generated.h:80:12: error: no matching member function for call to 'VerifyField'
           VerifyField<uint64_t>(verifier, VT_OFFSET) &&
           ^~~~~~~~~~~~~~~~~~~~~
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/flatbuffers/include/flatbuffers/table.h:125:8: note: candidate function template not viable: requires 3 arguments, but 2 were provided
  bool VerifyField(const Verifier &verifier, voffset_t field,
       ^
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.cc:15:
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.h:28:
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/tensorflow-lite/tensorflow/lite/delegates/xnnpack/weight_cache_schema_generated.h:81:12: error: no matching member function for call to 'VerifyField'
           VerifyField<uint64_t>(verifier, VT_SIZE) &&
           ^~~~~~~~~~~~~~~~~~~~~
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/flatbuffers/include/flatbuffers/table.h:125:8: note: candidate function template not viable: requires 3 arguments, but 2 were provided
  bool VerifyField(const Verifier &verifier, voffset_t field,
       ^
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.cc:15:
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.h:28:
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/tensorflow-lite/tensorflow/lite/delegates/xnnpack/weight_cache_schema_generated.h:170:12: error: no matching member function for call to 'VerifyField'
           VerifyField<uint64_t>(verifier, VT_BASE_OFFSET) &&
           ^~~~~~~~~~~~~~~~~~~~~
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/flatbuffers/include/flatbuffers/table.h:125:8: note: candidate function template not viable: requires 3 arguments, but 2 were provided
  bool VerifyField(const Verifier &verifier, voffset_t field,
       ^
[ 63%] Built target absl_status
6 errors generated.
gmake[2]: *** [tensorflow-lite/CMakeFiles/xnnpack-delegate.dir/build.make:94: tensorflow-lite/CMakeFiles/xnnpack-delegate.dir/delegates/xnnpack/weight_cache.cc.o] Error 1
gmake[2]: *** Waiting for unfinished jobs....
[ 63%] Linking CXX static library libabsl_flags_reflection.a
[ 63%] Built target absl_flags_reflection
[ 63%] Building CXX object _deps/abseil-cpp-build/absl/flags/CMakeFiles/absl_flags.dir/flag.cc.o
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/xnnpack_delegate.cc:45:
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.h:28:
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/tensorflow-lite/tensorflow/lite/delegates/xnnpack/weight_cache_schema_generated.h:77:12: error: no matching member function for call to 'VerifyField'
           VerifyField<uint64_t>(verifier, VT_PACKING_ALGORITHM_ID) &&
           ^~~~~~~~~~~~~~~~~~~~~
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/flatbuffers/include/flatbuffers/table.h:125:8: note: candidate function template not viable: requires 3 arguments, but 2 were provided
  bool VerifyField(const Verifier &verifier, voffset_t field,
       ^
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/xnnpack_delegate.cc:45:
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.h:28:
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/tensorflow-lite/tensorflow/lite/delegates/xnnpack/weight_cache_schema_generated.h:78:12: error: no matching member function for call to 'VerifyField'
           VerifyField<uint64_t>(verifier, VT_WEIGHTS_ID) &&
           ^~~~~~~~~~~~~~~~~~~~~
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/flatbuffers/include/flatbuffers/table.h:125:8: note: candidate function template not viable: requires 3 arguments, but 2 were provided
  bool VerifyField(const Verifier &verifier, voffset_t field,
       ^
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/xnnpack_delegate.cc:45:
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.h:28:
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/tensorflow-lite/tensorflow/lite/delegates/xnnpack/weight_cache_schema_generated.h:79:12: error: no matching member function for call to 'VerifyField'
           VerifyField<uint64_t>(verifier, VT_BIAS_ID) &&
           ^~~~~~~~~~~~~~~~~~~~~
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/flatbuffers/include/flatbuffers/table.h:125:8: note: candidate function template not viable: requires 3 arguments, but 2 were provided
  bool VerifyField(const Verifier &verifier, voffset_t field,
       ^
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/xnnpack_delegate.cc:45:
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.h:28:
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/tensorflow-lite/tensorflow/lite/delegates/xnnpack/weight_cache_schema_generated.h:80:12: error: no matching member function for call to 'VerifyField'
           VerifyField<uint64_t>(verifier, VT_OFFSET) &&
           ^~~~~~~~~~~~~~~~~~~~~
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/flatbuffers/include/flatbuffers/table.h:125:8: note: candidate function template not viable: requires 3 arguments, but 2 were provided
  bool VerifyField(const Verifier &verifier, voffset_t field,
       ^
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/xnnpack_delegate.cc:45:
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.h:28:
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/tensorflow-lite/tensorflow/lite/delegates/xnnpack/weight_cache_schema_generated.h:81:12: error: no matching member function for call to 'VerifyField'
           VerifyField<uint64_t>(verifier, VT_SIZE) &&
           ^~~~~~~~~~~~~~~~~~~~~
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/flatbuffers/include/flatbuffers/table.h:125:8: note: candidate function template not viable: requires 3 arguments, but 2 were provided
  bool VerifyField(const Verifier &verifier, voffset_t field,
       ^
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/xnnpack_delegate.cc:45:
In file included from /Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tensorflow_src/tensorflow/lite/delegates/xnnpack/weight_cache.h:28:
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/tensorflow-lite/tensorflow/lite/delegates/xnnpack/weight_cache_schema_generated.h:170:12: error: no matching member function for call to 'VerifyField'
           VerifyField<uint64_t>(verifier, VT_BASE_OFFSET) &&
           ^~~~~~~~~~~~~~~~~~~~~
/Users/varunnaw/FastConvolution/src/FastConvolution/fastconvolution24/tflite_build/flatbuffers/include/flatbuffers/table.h:125:8: note: candidate function template not viable: requires 3 arguments, but 2 were provided
  bool VerifyField(const Verifier &verifier, voffset_t field,
       ^
[ 63%] Linking CXX static library libabsl_flags.a
[ 63%] Built target absl_flags
6 errors generated.
gmake[2]: *** [tensorflow-lite/CMakeFiles/xnnpack-delegate.dir/build.make:108: tensorflow-lite/CMakeFiles/xnnpack-delegate.dir/delegates/xnnpack/xnnpack_delegate.cc.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:1373: tensorflow-lite/CMakeFiles/xnnpack-delegate.dir/all] Error 2
gmake: *** [Makefile:136: all] Error 2

@Venkat6871
My goal is to have a tensorflow lite build for my android device that has a snapdragon xr2 with arm64-v8 kryo cpu, adreno gpu, and hexagon dsp.
I wanted to use the c or c++ api. Preferably without the interpreter or runtime involved as I want to benchmark the convolution implementations.

Hi @poltomo ,
I replicated your steps and was able to build successfully without any issues. I downloaded the latest sdk and ndk and installed them and ran your command.  Can you please retry with the latest android ndk and sdk and let me know if it worked for you.
cmake version : 3.24.2
ndk :android-ndk-r27-linux
sdk : commandlinetools-linux-11076708_latest

@sawantkumar
I was able to build it by following this:
https://android.googlesource.com/platform/external/tensorflow/+/6b511124eb0/tensorflow/lite/g3doc/guide/build_cmake.md#step-1-install-cmake-tool
However, I am still stuck on compiling the gpu delegate for my mobile device.
I want to benchmark my mobile gpu's performance with this.

Hi @pkgoogle  ,
I ran the bazel command bazel build -c opt --config android_arm64 tensorflow/lite/delegates/gpu:delegate on a M1 mac   and i also got the below error. Can you please take a look?
DEBUG: /private/var/tmp/_bazel_sawantkumar/b1fb662fe0554513fcb6a0a68e2568bf/external/local_xla/third_party/py/python_repo.bzl:109:10: Using hermetic Python 3.12
ERROR: /private/var/tmp/_bazel_sawantkumar/b1fb662fe0554513fcb6a0a68e2568bf/external/local_config_apple_cc/BUILD:61:23: in apple_cc_toolchain rule @local_config_apple_cc//:cc-compiler-darwin_arm64: Xcode version must be specified to use an Apple CROSSTOOL. If your Xcode version has changed recently, verify that "xcode-select -p" is correct and then try: "bazel shutdown" to re-run Xcode configuration
ERROR: /private/var/tmp/_bazel_sawantkumar/b1fb662fe0554513fcb6a0a68e2568bf/external/local_config_apple_cc/BUILD:61:23: Analysis of target '@local_config_apple_cc//:cc-compiler-darwin_arm64' failed

Hi @poltomo, on release branch r2.17, in Debian Linux, Python=3.12 and ndk=25.2.9519653 (I think this is 25c) -- I was able to build successfully... this is after configuring the TF source (./configure in root github dir).
# install python=3.12 or create a venv/conda environment that has 3.12
git clone https://github.com/tensorflow/tensorflow.git
cd tensorflow
git switch r2.17
git pull
./configure
# answer all the questions, I built with Clang
# For android answer default for most... I used the specific ndk version up there, Android SDK Level=34
export TF_PYTHON_VERSION=3.12
bazel build -c opt --config android_arm64 tensorflow/lite/delegates/gpu:delegate

Let me know if this works.

@pkgoogle
the Xcode problem was on a mac. I am getting the same error as @sawantkumar.
I tried building in an x86_64 docker container.
Now the build hangs here:
bazel build -c opt --config android_arm64 tensorflow/lite/delegates/gpu:libtensorflowlite_gpu_delegate.so

Starting local Bazel server and connecting to it...
INFO: Reading 'startup' options from /root/tensorflow_src2/.bazelrc: --windows_enable_symlinks
INFO: Options provided by the client:
  Inherited 'common' options: --isatty=1 --terminal_columns=215
INFO: Reading rc options for 'build' from /root/tensorflow_src2/.bazelrc:
  Inherited 'common' options: --experimental_repo_remote_exec
INFO: Reading rc options for 'build' from /root/tensorflow_src2/.bazelrc:
  'build' options: --define framework_shared_object=true --define tsl_protobuf_header_only=true --define=use_fast_cpp_protos=true --define=allow_oversize_protos=true --spawn_strategy=standalone -c opt --announce_rc --define=grpc_no_ares=true --noincompatible_remove_legacy_whole_archive --features=-force_no_whole_archive --enable_platform_specific_config --define=with_xla_support=true --config=short_logs --config=v2 --define=no_aws_support=true --define=no_hdfs_support=true --experimental_cc_shared_library --experimental_link_static_libraries_once=false --incompatible_enforce_config_setting_visibility
INFO: Reading rc options for 'build' from /root/tensorflow_src2/.tf_configure.bazelrc:
  'build' options: --action_env PYTHON_BIN_PATH=/root/bin/python3 --action_env PYTHON_LIB_PATH=/root/lib/python3.12/site-packages --python_path=/root/bin/python3 --action_env CLANG_COMPILER_PATH=/root/android-ndk-r26d/toolchains/llvm/prebuilt/linux-x86_64/bin/clang-17 --repo_env=CC=/root/android-ndk-r26d/toolchains/llvm/prebuilt/linux-x86_64/bin/clang-17 --repo_env=BAZEL_COMPILER=/root/android-ndk-r26d/toolchains/llvm/prebuilt/linux-x86_64/bin/clang-17 --copt=-Wno-gnu-offsetof-extensions
INFO: Found applicable config definition build:short_logs in file /root/tensorflow_src2/.bazelrc: --output_filter=DONT_MATCH_ANYTHING
INFO: Found applicable config definition build:v2 in file /root/tensorflow_src2/.bazelrc: --define=tf_api_version=2 --action_env=TF2_BEHAVIOR=1
INFO: Found applicable config definition build:android_arm64 in file /root/tensorflow_src2/.bazelrc: --config=android --cpu=arm64-v8a --fat_apk_cpu=arm64-v8a
INFO: Found applicable config definition build:android in file /root/tensorflow_src2/.bazelrc: --crosstool_top=//external:android/crosstool --host_crosstool_top=@bazel_tools//tools/cpp:toolchain --dynamic_mode=off --noenable_platform_specific_config --copt=-w --cxxopt=-std=c++17 --host_cxxopt=-std=c++17 --define=with_xla_support=false --config=no_tfrt
INFO: Found applicable config definition build:no_tfrt in file /root/tensorflow_src2/.bazelrc: --deleted_packages=tensorflow/compiler/mlir/tfrt,tensorflow/compiler/mlir/tfrt/benchmarks,tensorflow/compiler/mlir/tfrt/ir,tensorflow/compiler/mlir/tfrt/ir/mlrt,tensorflow/compiler/mlir/tfrt/jit/python_binding,tensorflow/compiler/mlir/tfrt/jit/transforms,tensorflow/compiler/mlir/tfrt/python_tests,tensorflow/compiler/mlir/tfrt/tests,tensorflow/compiler/mlir/tfrt/tests/ifrt,tensorflow/compiler/mlir/tfrt/tests/mlrt,tensorflow/compiler/mlir/tfrt/tests/ir,tensorflow/compiler/mlir/tfrt/tests/analysis,tensorflow/compiler/mlir/tfrt/tests/jit,tensorflow/compiler/mlir/tfrt/tests/lhlo_to_tfrt,tensorflow/compiler/mlir/tfrt/tests/lhlo_to_jitrt,tensorflow/compiler/mlir/tfrt/tests/tf_to_corert,tensorflow/compiler/mlir/tfrt/tests/tf_to_tfrt_data,tensorflow/compiler/mlir/tfrt/tests/saved_model,tensorflow/compiler/mlir/tfrt/transforms/lhlo_gpu_to_tfrt_gpu,tensorflow/compiler/mlir/tfrt/transforms/mlrt,tensorflow/core/runtime_fallback,tensorflow/core/runtime_fallback/conversion,tensorflow/core/runtime_fallback/kernel,tensorflow/core/runtime_fallback/opdefs,tensorflow/core/runtime_fallback/runtime,tensorflow/core/runtime_fallback/util,tensorflow/core/runtime_fallback/test,tensorflow/core/runtime_fallback/test/gpu,tensorflow/core/runtime_fallback/test/saved_model,tensorflow/core/runtime_fallback/test/testdata,tensorflow/core/tfrt/stubs,tensorflow/core/tfrt/tfrt_session,tensorflow/core/tfrt/mlrt,tensorflow/core/tfrt/mlrt/attribute,tensorflow/core/tfrt/mlrt/kernel,tensorflow/core/tfrt/mlrt/bytecode,tensorflow/core/tfrt/mlrt/interpreter,tensorflow/compiler/mlir/tfrt/translate/mlrt,tensorflow/compiler/mlir/tfrt/translate/mlrt/testdata,tensorflow/core/tfrt/gpu,tensorflow/core/tfrt/run_handler_thread_pool,tensorflow/core/tfrt/runtime,tensorflow/core/tfrt/saved_model,tensorflow/core/tfrt/graph_executor,tensorflow/core/tfrt/saved_model/tests,tensorflow/core/tfrt/tpu,tensorflow/core/tfrt/utils,tensorflow/core/tfrt/utils/debug,tensorflow/core/tfrt/saved_model/python,tensorflow/core/tfrt/graph_executor/python,tensorflow/core/tfrt/saved_model/utils
Loading:
    Fetching repository @llvm-raw; starting 15s
    Fetching /root/.cache/bazel/_bazel_root/3bf8bfe2267c52b1b269a3648926f129/external/llvm-raw; Extracting ae8627809076390dbab04e01f3bf9d384c9e124e.tar.gz

Hi @poltomo, I reran my instructions on my Mac M1 and I was able to build successfully ... can you check if you ran the ./configure script and the values you entered? Especially the NDK path and version? Are you using Intel or a M series processor?
Also what version of clang are you using? Here's mine:
clang --version
Homebrew clang version 18.1.4
Target: arm64-apple-darwin23.6.0
Thread model: posix
InstalledDir: /opt/homebrew/opt/llvm/bin

Here's my ./configure answers:
You have bazel 6.1.0 installed.
Please specify the location of python. [Default is /opt/miniconda3/envs/fc1/bin/python3]:

Found possible Python library paths:
  /opt/miniconda3/envs/fc1/lib/python3.10/site-packages
Please input the desired Python library path to use.  Default is [/opt/miniconda3/envs/fc1/lib/python3.10/site-packages]

Do you wish to build TensorFlow with ROCm support? [y/N]: n
No ROCm support will be enabled for TensorFlow.

Do you wish to build TensorFlow with CUDA support? [y/N]: n
No CUDA support will be enabled for TensorFlow.

Please specify optimization flags to use during compilation when bazel option "--config=opt" is specified [Default is -Wno-sign-compare]: -Ofast

Would you like to interactively configure ./WORKSPACE for Android builds? [y/N]: n
Not configuring the WORKSPACE for Android builds.

Do you wish to build TensorFlow with iOS support? [y/N]: n
No iOS support will be enabled for TensorFlow.

Preconfigured Bazel build configs. You can use any of the below by adding "--config=<>" to your build command. See .bazelrc for more details.
	--config=mkl         	# Build with MKL support.
	--config=mkl_aarch64 	# Build with oneDNN and Compute Library for the Arm Architecture (ACL).
	--config=monolithic  	# Config for mostly static monolithic build.
	--config=numa        	# Build with NUMA support.
	--config=dynamic_kernels	# (Experimental) Build kernels into separate shared objects.
	--config=v1          	# Build with TensorFlow 1 API instead of TF 2 API.
Preconfigured Bazel build configs to DISABLE default on features:
	--config=nogcp       	# Disable GCP support.
	--config=nonccl      	# Disable NVIDIA NCCL support.
Configuration finished

clang --version
Apple clang version 15.0.0 (clang-15<IP_ADDRESS>)
Target: arm64-apple-darwin23.6.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin

Do you think maybe, I shouldn't use Apple's clang distribution?
Build still fails
ERROR: /private/var/tmp/_bazel_varunnaw/e6793a92b5048dbb05c5ef22851d4859/external/local_config_apple_cc/BUILD:61:23: in apple_cc_toolchain rule @local_config_apple_cc//:cc-compiler-darwin_arm64: Xcode version must be specified to use an Apple CROSSTOOL. If your Xcode version has changed recently, verify that "xcode-select -p" is correct and then try: "bazel shutdown" to re-run Xcode configuration
ERROR: /private/var/tmp/_bazel_varunnaw/e6793a92b5048dbb05c5ef22851d4859/external/local_config_apple_cc/BUILD:61:23: Analysis of target '@local_config_apple_cc//:cc-compiler-darwin_arm64' failed
INFO: Repository vulkan_headers instantiated at:
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/WORKSPACE:80:14: in <toplevel>
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/workspace2.bzl:1019:28: in workspace
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/workspace2.bzl:88:19: in _initialize_third_party
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/vulkan_headers/workspace.bzl:6:20: in repo
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/repo.bzl:136:21: in tf_http_archive
Repository rule _tf_http_archive defined at:
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/repo.bzl:89:35: in <toplevel>
INFO: Repository eigen_archive instantiated at:
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/WORKSPACE:80:14: in <toplevel>
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/workspace2.bzl:1019:28: in workspace
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/workspace2.bzl:67:11: in _initialize_third_party
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/eigen3/workspace.bzl:14:20: in repo
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/repo.bzl:136:21: in tf_http_archive
Repository rule _tf_http_archive defined at:
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/repo.bzl:89:35: in <toplevel>
INFO: Repository gemmlowp instantiated at:
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/WORKSPACE:80:14: in <toplevel>
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/workspace2.bzl:1019:28: in workspace
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/workspace2.bzl:70:13: in _initialize_third_party
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/gemmlowp/workspace.bzl:14:20: in repo
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/repo.bzl:136:21: in tf_http_archive
Repository rule _tf_http_archive defined at:
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/repo.bzl:89:35: in <toplevel>
INFO: Repository ruy instantiated at:
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/WORKSPACE:80:14: in <toplevel>
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/workspace2.bzl:1019:28: in workspace
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/workspace2.bzl:85:8: in _initialize_third_party
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/ruy/workspace.bzl:6:20: in repo
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/repo.bzl:136:21: in tf_http_archive
Repository rule _tf_http_archive defined at:
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/repo.bzl:89:35: in <toplevel>
INFO: Repository cpuinfo instantiated at:
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/WORKSPACE:80:14: in <toplevel>
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/workspace2.bzl:1026:21: in workspace
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/workspace2.bzl:170:20: in _tf_repositories
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/repo.bzl:136:21: in tf_http_archive
Repository rule _tf_http_archive defined at:
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/repo.bzl:89:35: in <toplevel>
INFO: Repository farmhash_archive instantiated at:
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/WORKSPACE:80:14: in <toplevel>
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/workspace2.bzl:1019:28: in workspace
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/workspace2.bzl:68:13: in _initialize_third_party
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/farmhash/workspace.bzl:14:20: in repo
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/repo.bzl:136:21: in tf_http_archive
Repository rule _tf_http_archive defined at:
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/repo.bzl:89:35: in <toplevel>
INFO: Repository XNNPACK instantiated at:
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/WORKSPACE:80:14: in <toplevel>
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/workspace2.bzl:1026:21: in workspace
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/workspace2.bzl:148:20: in _tf_repositories
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/repo.bzl:136:21: in tf_http_archive
Repository rule _tf_http_archive defined at:
  /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/third_party/repo.bzl:89:35: in <toplevel>
ERROR: /private/var/tmp/_bazel_varunnaw/e6793a92b5048dbb05c5ef22851d4859/external/flatbuffers/BUILD.bazel:85:10: errors encountered resolving toolchains for @flatbuffers//:flatc
ERROR: /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/lite/schema/BUILD:184:22: errors encountered resolving toolchains for //tensorflow/lite/schema:conversion_metadata_fbs
ERROR: /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/lite/core/BUILD:102:11: errors encountered resolving toolchains for //tensorflow/lite/core:framework_experimental
ERROR: /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/lite/core/c/BUILD:294:38: errors encountered resolving toolchains for //tensorflow/lite/core/c:c_api_experimental
ERROR: /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/lite/c/BUILD:106:43: errors encountered resolving toolchains for //tensorflow/lite/c:c_api_experimental
ERROR: /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/lite/delegates/utils/BUILD:103:23: errors encountered resolving toolchains for //tensorflow/lite/delegates/utils:utils
ERROR: /Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/tensorflow/lite/delegates/gpu/BUILD:225:11: errors encountered resolving toolchains for //tensorflow/lite/delegates/gpu:delegate
ERROR: Analysis of target '//tensorflow/lite/delegates/gpu:delegate' failed; build aborted:
INFO: Elapsed time: 44.138s
INFO: 0 processes.
FAILED: Build did NOT complete successfully (126 packages loaded, 1412 targets configured)
    Fetching repository @local_config_cc; Running xcode-locator
    Fetching https://storage.googleapis.com/.../archive/32c07c0c5334aea069e518206d75e002ccd85389.tar.gz
    Fetching https://storage.googleapis.com/.../eigen-0b51f763cbbd0ed08168f88972724329f0375498.tar.gz
    Fetching https://storage.googleapis.com/.../ruy/archive/3286a34cc8de6149ac6844107dfdffac91531e72.zip
    Fetching https://storage.googleapis.com/.../archive/e844ffd17118c1e17d94e1ba4354c075a4577b88.zip
    Fetching https://storage.googleapis.com/.../archive/0d859a811870d10f53a594927d0d0b97573ad06d.tar.gz

Take a look at this BUILD file, should it show anything about metal? I thought the bazel build was for android_arm64
cat tensorflow/lite/delegates/gpu/BUILD
load("@bazel_skylib//lib:selects.bzl", "selects")
load("//tensorflow/lite:special_rules.bzl", "tflite_extra_gles_deps")
load("//tensorflow/lite/delegates/gpu:build_defs.bzl", "gpu_delegate_linkopts")
load("@build_bazel_rules_apple//apple:ios.bzl", "ios_static_framework")
load("@build_bazel_rules_apple//apple:macos.bzl", "macos_dylib")

package(
    # copybara:uncomment default_applicable_licenses = ["//tensorflow:license"],
    default_visibility = ["//visibility:public"],
    licenses = ["notice"],
)

exports_files([
    "delegate.h",
    "delegate_options.h",
    "metal_delegate.h",
])

config_setting(
    name = "tflite_gpu_binary_release",
    values = {"copt": "-DTFLITE_GPU_BINARY_RELEASE"},
)

config_setting(
    name = "tflite_gpu_extra_gles_deps",
    values = {
        "copt": "-DTFLITE_GPU_EXTRA_GLES_DEPS",
        "cpu": "k8",
    },
)

cc_library(
    name = "gl_delegate",
    srcs = ["gl_delegate.cc"],
    hdrs = ["gl_delegate.h"],
    linkopts = gpu_delegate_linkopts(),
    deps = [
        "//tensorflow/lite:kernel_api",
        "//tensorflow/lite:minimal_logging",
        "//tensorflow/lite/core/c:common",
        "//tensorflow/lite/delegates/gpu/common:convert",
        "//tensorflow/lite/delegates/gpu/common:model",
        "//tensorflow/lite/delegates/gpu/common:model_builder",
        "//tensorflow/lite/delegates/gpu/common:model_transformer",
        "//tensorflow/lite/delegates/gpu/common:shape",
        "//tensorflow/lite/delegates/gpu/common:status",
        "//tensorflow/lite/delegates/gpu/common:tensor",
        "//tensorflow/lite/delegates/gpu/common/transformations:model_transformations",
        "//tensorflow/lite/delegates/gpu/gl:api",
        "//tensorflow/lite/delegates/gpu/gl:command_queue",
        "//tensorflow/lite/delegates/gpu/gl:compiler",
        "//tensorflow/lite/delegates/gpu/gl:egl_environment",
        "//tensorflow/lite/delegates/gpu/gl:gl_call",
        "//tensorflow/lite/delegates/gpu/gl:request_gpu_info",
        "//tensorflow/lite/delegates/gpu/gl/converters:bhwc_to_phwc4",
        "//tensorflow/lite/delegates/gpu/gl/converters:phwc4_to_bhwc",
        "//tensorflow/lite/delegates/gpu/gl/kernels:registry",
        "//tensorflow/lite/delegates/gpu/gl/workgroups:best_effort_calculator",
        "@com_google_absl//absl/base:core_headers",
        "@com_google_absl//absl/types:span",
    ] + select({
        "//conditions:default": [
            "//tensorflow/lite/delegates/gpu/gl:common_cc_fbs",
            "//tensorflow/lite/delegates/gpu/gl:metadata_cc_fbs",
            "//tensorflow/lite/delegates/gpu/gl:workgroups_cc_fbs",
            "//tensorflow/lite/schema:schema_fbs",
            "@flatbuffers",
        ],
        ":tflite_gpu_binary_release": [],
    }) + tflite_extra_gles_deps(),
)

objc_library(
    name = "metal_delegate",
    srcs = ["metal_delegate.mm"],
    hdrs = ["metal_delegate.h"],
    copts = ["-std=c++17"],
    features = ["-layering_check"],
    module_name = "TensorFlowLiteCMetal",
    sdk_frameworks = ["Metal"],
    deps = [
        "//tensorflow/lite:kernel_api",
        "//tensorflow/lite:minimal_logging",
        "//tensorflow/lite/core/c:common",
        "//tensorflow/lite/delegates/gpu/common:convert",
        "//tensorflow/lite/delegates/gpu/common:gpu_info",
        "//tensorflow/lite/delegates/gpu/common:model",
        "//tensorflow/lite/delegates/gpu/common:model_builder",
        "//tensorflow/lite/delegates/gpu/common:model_transformer",
        "//tensorflow/lite/delegates/gpu/common:precision",
        "//tensorflow/lite/delegates/gpu/common:quantization_util",
        "//tensorflow/lite/delegates/gpu/common:shape",
        "//tensorflow/lite/delegates/gpu/common:status",
        "//tensorflow/lite/delegates/gpu/common:tensor",
        "//tensorflow/lite/delegates/gpu/common:types",
        "//tensorflow/lite/delegates/gpu/metal:buffer_convert",
        "//tensorflow/lite/delegates/gpu/metal:inference_context",
        "//tensorflow/lite/delegates/gpu/metal:metal_spatial_tensor",
        "@com_google_absl//absl/types:span",
    ],
)

objc_library(
    name = "metal_delegate_internal",
    hdrs = ["metal_delegate_internal.h"],
    copts = ["-std=c++17"],
    sdk_frameworks = ["Metal"],
    deps = ["//tensorflow/lite/delegates/gpu:metal_delegate"],
)

# build -c opt --config android_arm64 --copt -Os --copt -DTFLITE_GPU_BINARY_RELEASE --linkopt -s --strip always :libtensorflowlite_gpu_gl.so
cc_binary(
    name = "libtensorflowlite_gpu_gl.so",
    linkopts = [
        "-Wl,-soname=libtensorflowlite_gpu_gl.so",
    ] + gpu_delegate_linkopts() + select({
        "//tensorflow:windows": [],
        "//conditions:default": [
            "-fvisibility=hidden",
        ],
    }),
    linkshared = 1,
    linkstatic = 1,
    tags = [
        "nobuilder",
        "notap",
    ],
    deps = [":gl_delegate"],
)

# build -c opt --config android_arm64 --copt -Os --copt -DTFLITE_GPU_BINARY_RELEASE --linkopt -s --strip always :libtensorflowlite_gpu_delegate.so
cc_binary(
    name = "libtensorflowlite_gpu_delegate.so",
    linkopts = [
        "-Wl,-soname=libtensorflowlite_gpu_delegate.so",
    ] + gpu_delegate_linkopts() + select({
        "//tensorflow:windows": [],
        "//conditions:default": [
            "-fvisibility=hidden",
        ],
    }),
    linkshared = 1,
    linkstatic = 1,
    tags = [
        "nobuilder",
        "notap",
    ],
    deps = [":delegate"],
)

# bazel build -c opt --cpu ios_arm64 --copt -Os --copt -DTFLITE_GPU_BINARY_RELEASE --copt -fvisibility=hidden --linkopt -s --strip always --cxxopt=-std=c++14 :libtensorflowlite_gpu_metal --apple_platform_type=ios
ios_static_framework(
    name = "tensorflow_lite_gpu_framework",
    hdrs = [
        "metal_delegate.h",
        "metal_delegate_internal.h",
    ],
    minimum_os_version = "11.4",
    deps = [":metal_delegate"],
)

# Note: Support for MacOS is best-effort at the moment.
# bazel build -c opt --copt -Os --copt -DTFLITE_GPU_BINARY_RELEASE --copt -fvisibility=hidden --linkopt -s --strip always --cxxopt=-std=c++14 :tensorflow_lite_gpu_dylib --apple_platform_type=macos
macos_dylib(
    name = "tensorflow_lite_gpu_dylib",
    linkopts = [
        "-all_load",
        "-dead_strip",
    ],
    minimum_os_version = "10.13",
    tags = [
        "manual",
        "nobuilder",
        "notap",
    ],
    deps = [
        ":metal_delegate",
        ":metal_delegate_internal",
    ],
)

cc_library(
    name = "api",
    srcs = ["api.cc"],
    hdrs = ["api.h"],
    deps = [
        "//tensorflow/lite/delegates/gpu/common:data_type",
        "//tensorflow/lite/delegates/gpu/common:status",
        "//tensorflow/lite/delegates/gpu/common:util",
        "//tensorflow/lite/delegates/gpu/gl:portable",
        "@com_google_absl//absl/types:span",
        "@com_google_absl//absl/types:variant",
        "@opencl_headers",
        "@vulkan_headers//:vulkan_headers_no_prototypes",
    ],
)

cc_library(
    name = "spi",
    hdrs = ["spi.h"],
    deps = [
        ":api",
        "//tensorflow/lite/delegates/gpu/common:access_type",
        "//tensorflow/lite/delegates/gpu/common:status",
    ],
)

# Currently the GPU delegate needs to be built on Android (due to EGL dependency),
# or built with -DCL_DELEGATE_NO_GL (disabling OpenGL backend fallback), or both.
selects.config_setting_group(
    name = "supports_gpu_delegate",
    match_any = [
        "//tensorflow:android",
        "//tensorflow/lite/delegates/gpu/cl:opencl_delegate_no_gl",
    ],
)

cc_library(
    name = "delegate_options",
    srcs = ["delegate_options.cc"],
    hdrs = ["delegate_options.h"],
    deps = ["//tensorflow/lite/core/c:common"],
)

cc_library(
    name = "delegate",
    srcs = [
        # copybara:comment_begin(oss-only)
        "android_version.cc",
        # copybara:comment_end
        "delegate.cc",
    ],
    hdrs = ["delegate.h"],
    linkopts = gpu_delegate_linkopts(),
    deps = select({
        "//tensorflow/lite/delegates/gpu/cl:opencl_delegate_no_gl": [],
        "//conditions:default": [
            "//tensorflow/lite/delegates/gpu/gl:api2",
        ],
    }) + [
        ":api",
        ":delegate_options",
        ":tflite_profile",
        "//tensorflow/lite:kernel_api",
        "//tensorflow/lite:minimal_logging",
        "//tensorflow/lite/core/async:backend_async_kernel_interface",
        "//tensorflow/lite/core/async/c:task",
        "//tensorflow/lite/core/async/interop/c:attribute_map",
        "//tensorflow/lite/core/async/interop/c:constants",
        "//tensorflow/lite/core/c:common",
        "//tensorflow/lite/delegates:serialization",
        "//tensorflow/lite/delegates/gpu/cl:api",
        "//tensorflow/lite/delegates/gpu/cl:util",
        "//tensorflow/lite/delegates/gpu/common:model_builder",
        "//tensorflow/lite/delegates/gpu/common:model_builder_helper",
        "//tensorflow/lite/delegates/gpu/common:quantization_util",
        "//tensorflow/lite/delegates/utils",
        "//tensorflow/lite/delegates/utils:async_type_helpers",
        "//tensorflow/lite/delegates/utils:ret_macros",
        "//tensorflow/lite/delegates/utils:sync_fence",
        "//tensorflow/lite/kernels:kernel_util",
        "//tensorflow/lite/profiling/telemetry",
        "//tensorflow/lite/profiling/telemetry:telemetry_status",
        "//tensorflow/lite/profiling/telemetry/c:telemetry_setting_internal",
        "@com_google_absl//absl/container:flat_hash_map",
        "@com_google_absl//absl/container:flat_hash_set",
        "@com_google_absl//absl/memory",
        "@com_google_absl//absl/types:span",
    ],
)

cc_library(
    name = "tflite_profile",
    srcs = ["tflite_profile.cc"],
    hdrs = ["tflite_profile.h"],
    deps = [
        "//tensorflow/lite/core/api",
        "//tensorflow/lite/delegates/gpu/common/task:profiling_info",
        "@com_google_absl//absl/time",
    ],
)

We actually have a lot of differences, I'm fairly sure the main one is not configuring the Android Workspace though, you should say yes to that.
(All the ~ are actually the absolute paths, which you should use)
Here are my answers to the configuration:
./configure
You have bazel 6.5.0 installed.
Please specify the location of python. [Default is ~/miniforge3/envs/72281/bin/python3]:

Found possible Python library paths:
  ~/miniforge3/envs/72281/lib/python3.12/site-packages
Please input the desired Python library path to use.  Default is [~/miniforge3/envs/72281/lib/python3.12/site-packages]

Do you wish to build TensorFlow with ROCm support? [y/N]: N
No ROCm support will be enabled for TensorFlow.

Do you wish to build TensorFlow with CUDA support? [y/N]: N
No CUDA support will be enabled for TensorFlow.

Please specify optimization flags to use during compilation when bazel option "--config=opt" is specified [Default is -Wno-sign-compare]:  #Just used default

Would you like to interactively configure ./WORKSPACE for Android builds? [y/N]: y
Searching for NDK and SDK installations.

Please specify the home path of the Android NDK to use. [Default is ~/library/Android/Sdk/ndk-bundle]:  ~/Library/Android/sdk/ndk/25.2.9519653 #This should be the location if you're using Android Studio, which you should be

Please specify the (min) Android NDK API level to use. [Available levels: [16, 17, 18, 19, 21, 22, 23, 24, 26, 27, 28, 29, 30, 31, 32, 33]] [Default is 21]:

Please specify the home path of the Android SDK to use. [Default is ~/library/Android/Sdk]:

Please specify the Android SDK API level to use. [Available levels: ['29', '30', '32', '33', '34']] [Default is 34]:

Please specify an Android build tools version to use. [Available versions: ['30.0.3', '33.0.1', '34.0.0']] [Default is 34.0.0]:

Do you wish to build TensorFlow with iOS support? [y/N]: N
No iOS support will be enabled for TensorFlow.

I can't even find an android ndk version for arm64
You have bazel 6.1.0 installed.
Please specify the location of python. [Default is /opt/miniconda3/bin/python3]:

Found possible Python library paths:
  /opt/miniconda3/lib/python3.11/site-packages
Please input the desired Python library path to use.  Default is [/opt/miniconda3/lib/python3.11/site-packages]

Do you wish to build TensorFlow with ROCm support? [y/N]: n
No ROCm support will be enabled for TensorFlow.

Do you wish to build TensorFlow with CUDA support? [y/N]: n
No CUDA support will be enabled for TensorFlow.

Please specify optimization flags to use during compilation when bazel option "--config=opt" is specified [Default is -Wno-sign-compare]:

Would you like to interactively configure ./WORKSPACE for Android builds? [y/N]: eifjcbfrguhvcdurfrhbejvkvjhlghcfelvrcklfgvbc
Invalid selection: eifjcbfrguhvcdurfrhbejvkvjhlghcfelvrcklfgvbc
Would you like to interactively configure ./WORKSPACE for Android builds? [y/N]: y
Searching for NDK and SDK installations.

WARNING: The NDK version in /Users/varunnaw/Library/Android/sdk/ndk/26.1.10909125 is 26, which is not supported by Bazel (officially supported versions: [19, 20, 21]). Please use another version. Compiling Android targets may result in confusing errors.

Traceback (most recent call last):
  File "/Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/./configure.py", line 1466, in <module>
    main()
  File "/Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/./configure.py", line 1439, in main
    create_android_ndk_rule(environ_cp)
  File "/Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/./configure.py", line 658, in create_android_ndk_rule
    get_ndk_api_level(environ_cp, android_ndk_home_path))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/./configure.py", line 752, in get_ndk_api_level
    api_levels = sorted(os.listdir(platforms))
                        ^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: '/Users/varunnaw/Library/Android/sdk/ndk/26.1.10909125/platforms'

Hi @poltomo, do you have Android studio installed? If so, please try 25c for NDK first -- then as noted in the above message, try the latest NDK=21 version. You are using 26 here. If you are having trouble installing the correct version, please let me know.

I am getting this error even though I have the android ndk
I think its looking for a platforms file.
(fc1) varunnaw@80a9970d555c tensorflow_src % ./configure
You have bazel 6.1.0 installed.
Please specify the location of python. [Default is /opt/miniconda3/envs/fc1/bin/python3]:

Found possible Python library paths:
  /opt/miniconda3/envs/fc1/lib/python3.10/site-packages
Please input the desired Python library path to use.  Default is [/opt/miniconda3/envs/fc1/lib/python3.10/site-packages]

Do you wish to build TensorFlow with ROCm support? [y/N]: n
No ROCm support will be enabled for TensorFlow.

Do you wish to build TensorFlow with CUDA support? [y/N]: n
No CUDA support will be enabled for TensorFlow.

Please specify optimization flags to use during compilation when bazel option "--config=opt" is specified [Default is -Wno-sign-compare]:

Would you like to interactively configure ./WORKSPACE for Android builds? [y/N]: y
Searching for NDK and SDK installations.

WARNING: The NDK version in /Users/varunnaw/Library/Android/sdk/ndk/26.1.10909125 is 26, which is not supported by Bazel (officially supported versions: [19, 20, 21]). Please use another version. Compiling Android targets may result in confusing errors.

Traceback (most recent call last):
  File "/Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/./configure.py", line 1466, in <module>
    main()
  File "/Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/./configure.py", line 1439, in main
    create_android_ndk_rule(environ_cp)
  File "/Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/./configure.py", line 658, in create_android_ndk_rule
    get_ndk_api_level(environ_cp, android_ndk_home_path))
  File "/Users/varunnaw/FastConvolution/src/FastConvolution/tensorflow_src/./configure.py", line 752, in get_ndk_api_level
    api_levels = sorted(os.listdir(platforms))
FileNotFoundError: [Errno 2] No such file or directory: '/Users/varunnaw/Library/Android/sdk/ndk/26.1.10909125/platforms'

Maybe there is something that you have setup that I don't have setup. Or maybe I have set it up incorrectly.
Is there some docker container that could streamline this? I am cross compiling anyways so build host could be whatever.
My goal is to write my own delegate for tensorflow lite to use alongside the gpu delegate. Both will target the gpu, but I wanted my delegate to hold some opencl kernels I made.
If tensorflow lite also has an opencl delegate, I also want to build that too.
Here's a post of mine
https://discuss.ai.google.dev/t/how-to-create-a-new-operator-with-an-opencl-kernel/37073

find /Users/varunnaw/Library/Android/sdk/ndk/ -name platforms
turns up nothing

Hi @poltomo, yeah the NDK version sometimes have file/directory changes thats part of why we have stringent NDK requirements, if you go to tools -> SDK manager, switch to SDK Tools, and scroll down to "NDK (Side by side)"... you should find multiple versions to install:

Latest bazel only supports NDK = 19, 20, 21 and 25.
If you have no space constraints.. I recommend go ahead and installing all versions of 19, 20, 21 and 25. I would update your bazel (perhaps install and use bazelisk so this is automatic for you?) and then try the same thing against 25b (25.1.8....) as that is the current recommended version. Please review this https://www.tensorflow.org/lite/android/lite_build#install_bazel_and_android_prerequisites . I tried against 25c (25.2.9....) and that worked but if you go w/ the recommended version you will run into less issues as that is well traveled.


Collection RISC-V Cores rev 002, Added tag to the image, improving the image.

A tag was added to indicate the image to be loaded, I got confused with the Topics API, so don't use it.

I made improvements in the resizing of the image, as the one used previously was breaking the rules for using the RISC-V International logo.

Thank you for contributing! Please confirm this pull request meets the following requirements:

[ ] I followed the contributing guidelines: https://github.com/github/explore/blob/master/CONTRIBUTING.md
[ ] I have no affiliation with the project I am suggesting (as a maintainer, creator, contractor, or employee).

Which change are you proposing?

[x] Suggesting edits to an existing topic or collection
[ ] Curating a new topic or collection
[ ] Something that does not neatly fit into the binary options above

Editing an existing topic or collection
I'm suggesting these edits to an existing topic or collection:

[x] Image (and my file is *.png, square, dimensions 288x288)
[ ] Content (and my changes are in index.md)

I made improvements to the image so as not to interfere with the appearance according to the guidelines and guidelines of the international RISC-V.

Curating a new topic or collection

[ ] I've formatted my changes as a new folder directory, named for the topic or collection as it appears in the URL on GitHub (e.g. https://github.com/topics/[NAME] or https://github.com/collections/[NAME])
[ ] My folder contains a *.png image (if applicable) and index.md
[ ] All required fields in my index.md conform to the Style Guide and API docs: https://github.com/github/explore/tree/master/docs

Please replace this line with an explanation of why you think this topic or collection should be curated.

Something that does not neatly fit into the binary options above

[ ] My suggested edits are not about an existing topic or collection, or at least not a single one
[ ] My suggested edits are not about curating a new topic or collection, or at least not a single one
[ ] My suggested edits conform to the Style Guide and API docs: https://github.com/github/explore/tree/master/docs

Please replace this line with an explanation of your proposed changes.

Please note: we will close your PR without comment if you do not check the boxes above and provide ALL requested information.

I generated the image with the dimensions according to the guidelines, however, it is not being displayed, did I forget to do any procedure?


IMPR/Sorting-API

@joneit @rdepena Paired PR with https://github.com/openfin/hyper-analytics/pull/34

In Columns.js, comment off these lines so all types of numbers are 'number':
            if (type !== eachType) {
                if (isNumber && (typeof value === 'number')) {
                    type = 'float';
                } else {
                    return 'mixed';
                }
            }

Will also try to get Hyperanalytics to run with Hypergrid's copy of Base


Unify to (basket, user=None, request=None) argument order in Applicator

This order offers the simplest API for common needs - as evidenced by the
fact that the apply_offers crook could be removed from two test files,
saving on imports as well.

LGTM. Needs a note in the release notes since it's not backwards compatible.

Added a bit to the release notes.
Please merge if satisfied :)
Thanks

Cool!


Potential issue with inverses in RO

From<EMAIL_ADDRESS>on June 29, 2012 12:31:14
RO currently uses BFO_0000052:inheres_in and declares its inverse to be BFO_0000053:is_bearer_of
In the current bfo.owl file, this IRIs are BFO_0000052:inheres_in_at_all_times and BFO_0000053:bearer_of_at_some_time
Those relations are not inverse of each other; there is a chance that by using the new BFO the change on the RO side would be silent (IRIs are the same) but RO would end up asserting a wrong inverse between those 2.
Submitting in the BFO tracker as (1) Chris will have access to it (2) the BFO OWL dev group may want to make a note of this point in the release notes for other resources to check
Original issue: http://code.google.com/p/bfo/issues/detail?id=81

From<EMAIL_ADDRESS>on July 24, 2012 07:00:20
We looked at BFO IDs that were used in RO - see list in release notes http://purl.obolibrary.org/obo/bfo/2012-07-20/ReleaseNotes

From<EMAIL_ADDRESS>on April 24, 2013 12:56:52
This is a duplicate of https://code.google.com/p/bfo/issues/detail?id=165 (which contains some additional details)

From<EMAIL_ADDRESS>on April 24, 2013 13:15:01
Status: Duplicate
Mergedinto: 165


Annotations with Bigquery Plugin not rendering properly on panels

Background info:
-Grafana 9.2.5 OSS
-Bigquery Plugin version: 1.2.2
Issue:
We are creating a dashboard annotation to dynamically generate panel annotations and seeing a visual inconsistency with the annotation range. From the picture, you'll see the annotation carrot all the way on the left with the correct date (2/7/24) in the metadata. But it's not showing in the 2/7 area in the y axis. The graph time range is also filtered appropriately, but it just seems that the carrot is stuck on the left. Any idea?

Hey @mazad01,
Can you please provide a dashboard or a way for us to reproduce this?

I can provide you with some steps for reproducibility:
Create some fake data in BQ:

Set up a new project or use an existing a project. Doesn't really matter.
Open the BQ console in GCP console and create a new dataset with the following info:
dataset id = test_dataset
region = us-east-1
Don't set any other options and click Create Dataset
Within the newly created test_dataset create 2 new tables with the following options:
Create table from source file, with type CSV.
Destination table should be a native table. Names should be test_table and fake_table
For test_table csv file contents that you upload should be

date,tag
20240101,good
20240102,bad

For fake_data we should have

date,data
20231230,120
20231231,100
20240101,200
20240102,150
20240103,180

For grafana config

create a new datasource using BQ plugin using the GCP project that the fake dataset is in. Then create a new dashboard.
In the new dashboard, create a new timeseries panel. Datasource should be the newly created BQ data source. Query should be something like
SELECT CAST(date as STRING) as date, data from <some gcp project>.test_dataset.fake_data
a. Add a Convert field type transform with options Field='date', as=Time, Input format=YYYYMMDD
Open dashboard settings and go to Annotations
Click on New Query
Annotation query config:
a. Set name to annotation
b. Set datasource to BQ.
c. Set query to
SELECT CAST(date as STRING) as date, tag from <some gcp project>.test_dataset.test_table
d. Ensure Enabled is checked.
e. Run the query and ensure the event fields are set like so: <img 1>
Now if you go back to the dashboard and set the time range to roughly 2023-12-01 > 2024-01-31 you should see this:
<img 2>

hi @mazad01 thank you for the test-data.. i tested this, and i could not even see the annotations anywhere. in my case what fixed the problem is making the annotation-timestamps "real" bigquery timestamps.
i modified your query:

from: SELECT CAST(date as STRING) as date, tag from
to: SELECT PARSE_TIMESTAMP('%Y%m%d', CAST(date as string)) as date, tag from

and it suddenly started to work.
could you try the same?
(in the meantime i will look into why the string-based timestamps do not work correctly in annotations)

(created a separate github-issue for the annotation-string-dates-problem: https://github.com/grafana/grafana/issues/88135)

as we got no feedback here, we'll close the issue. if you think the issue is not fixed yet, just reply and we can reopen the issue. thanks!


Log Groups for the Custom Identity Stack should have an expiration

Cloudwatch log groups by default never expire, potentially leaving a land mine where customers can accumulate a storage bill over months.  This also increases exposure to legal liability for anything that might be in those logs (intentional or by accident.)
Suggest a default of 30 or 90 days to mitigate.

Addressed with this commit .
Required us to use the custom resource based approach to log settings which generates extra Lambdas that set log retention covering edge cases as well.


Passing undefined returns 0

We found that passing undefined to the number function will cause it to return 0.
$ node
> require("numeral")(undefined).value();
0

What would you expect it to return?

This is problem when trying to deal with undefined in a custom formatter, as we lose the information once we're inside the format function that the value was originally undefined. Is there an API we can use inside a formatter to get the original value?

@adamwdraper may I ask why this was closed?
I don't see where the value of 0 makes sense for undefined as input.
I would either expect this to follow the setting via numeral.nullFormat() or the addition of a new numeral.undefinedFormat()
In my personal opinion a default of "N/A" would make sense.

I'd personally expect it to return NaN


Renaming pyment

Hi @meyt,
You have chosen the same project name than the Pyment project relating to docstrings management. It is a pitty you didn't noticed that it was already widely used. Note that this project can interest you as it is intended for Python developers.
BTW,  Pyment is now 4 years old and counts many users.
Work is done to integrate it to Debian (see issue) and it is in progress to be added to Pypi soon as you can see in pypi and in that issue.
However, we noticed that you created a Pypi project with pyment name few days ago. That is very confusing for the numerous Pyment users!
As your project is very young and not yet known, having no users, I would like to know if you could change its name, or at least remove it from Pypi. If you keep the same name and in the futur it become famous and if our project become confusing for most of users we will then remove it from Pypi and rename it, as today it is the case concerning your project.
So please consider letting us use Pyment name in Pypi.
Best regards,
Adel

Wow, 4 years is too late dude! however it's not my business, so as respect to all users that use dadadel/pyment i will change my project name completly, also i redirecting domain (pyment.ir) to dadadel/pyment until that expires. :wine_glass:

Packages removed and, asettouf user on pypi is now have owner role.

Thank you @meyt,
That's very nice. I hope your project will work as you want.
Good luck.
Cheers,
Adel

Hi @meyt,
I come back again concerning the Pyment permissions on Pypi.
You have granted to asettouf the maintainer role.
But we still not have owner role.
Could you please provide to my user (https://pypi.org/user/dadel/) the owner role on Pyment?
Thank you.
Best
Adel

Done


Improve intrinsics kernel code

Cleanup of code for the intrinsics kernels.
Also, according to some benchmarking that I have performed, in the diagonal case, the non-intrinsics version is systematically faster than the one with intrinsics enabled (by 30-58% according to the measurements below).
Since that is the case, does it make sense to keep the intrinsics version for the diagonal case?
2019-07-22 15:33:03
Running ./macro_benchmark
Run on (4 X 2300 MHz CPU s)
CPU Caches:
  L1 Data 32K (x2)
  L1 Instruction 32K (x2)
  L2 Unified 262K (x2)
  L3 Unified 4194K (x1)
Load Average: 2.21, 1.91, 1.85
----------------------------------------------------------------
Benchmark                      Time             CPU   Iterations
----------------------------------------------------------------
intrin_bench1               1096 ns         1089 ns       635480
no_intrin_bench1            1347 ns         1340 ns       521509
intrin_bench1_diag          1461 ns         1454 ns       479491
no_intrin_bench1_diag        971 ns          967 ns       720231
intrin_bench2               2387 ns         2376 ns       297477
no_intrin_bench2            3397 ns         3381 ns       206551
intrin_bench2_diag          2632 ns         2619 ns       266673
no_intrin_bench2_diag       1562 ns         1555 ns       440044
intrin_bench3               4781 ns         4756 ns       147686
no_intrin_bench3            7719 ns         7687 ns        91792
intrin_bench3_diag          3254 ns         3227 ns       216996
no_intrin_bench3_diag       1653 ns         1646 ns       433883
intrin_bench4              14469 ns        14400 ns        48363
intrin_cf_bench4           10256 ns        10204 ns        69012
no_intrin_bench4           32886 ns        32760 ns        21343
intrin_bench4_diag          3831 ns         3808 ns       183392
no_intrin_bench4_diag       1577 ns         1570 ns       445055

Code to run the benchmark (as TXT file; just change the extension to .cpp) and compile with the following (requires the google benchmark library)
g++-9 -lbenchmark -lpthread -std=c++14 macro_benchmark.cpp -o macro_benchmark -O3 -ffast-math  -DINTRIN_CF_BUFFER=32 -mavx2

macro_benchmark.txt

Thanks for approving the changes. What about the removing the intrinsics version of the diagonal case ?
I will create a new PR with those changes and we can further discuss things there if needed.


Eval() in web workers / task worklet

Hi,
Thank you for this polyfill / proposal.
I was wondering about the use of eval() in web workers. As you probably know any code ran through eval is very unlikely to be optimised by V8 (see https://github.com/petkaantonov/bluebird/wiki/Optimization-killers). Would you know if this is also the case for eval in web workers? If so, wouldn't it make sense to avoid heavy long running code in the worker (that normally would become hot in the main thread after a short time)? Doesn't that defeat the whole point of using a worker in the first place (seeing as there is a reasonably significant cost to spawning and thread hopping)? Making a worker worth its weight in that case would be a significant challenge.
Kind regards,
Tim

The big note at the top of that document has what's likely a better answer than I can give:  eval() isn't an instant performance bailout, and the way it's being used here would mostly impact initial execution. AFAIK it would not prevent hot code from being JIT'ed.


Fix keyboard shortcut  for Replace

There are two ways to get to Replace right now:

Press Ctrl-F or Command-F twice.
Press Ctrl-H on every OS but OSX.

Sadly, Command-H is reserved by OSX, so we have an inconsistency here. Investigate what we can do  about it. It would be nice to have a cross-OS single-press shortcut for Replace.

I might be missing something here, but why not ctrl-R? It currently doesn't seem to have a function in CDE, and as far as I can tell it is not reserved on OSX.

I''ve been using ctrl-R as the run when on an index html page.
Here are a few I've collected

Chromebook
Action

Ctrl-Shift-/
Comment Block of Code

Ctrl-K
find next	find next

Ctrl-Shift-K
find previous

Ctrl-Shift-L
select line

Ctrl-Shift-P
select to matching in HTML, not sure if it does anything in js

Ctrl-Shift-D
duplicate selection

Ctrl-R
runs when in an index html

Search-Alt-Up
Move selected lines up

Search-Alt-Down
Move selected lines down

Ctrl-L
Go To Line Number

Alt-L
fold selection

Alt-Left
go to End of Line

Alt-Right
go to Beginning of line

Ctrl-Shift-F
search files AND search within files

Ctrl-1..3..
switch tabs

Ctrl-Shift+]
cycle tabs forward

Ctrl-tab, Ctrl-Shift+[
cycle tabs backwards

Search-Ctrl-Left
go to top

Search-Ctrl-Right
go to end

Ctrl-F
find

Ctrl-H
replace


feat(clientLibs): add Kotlin and Scala client library

add Kotlin client library
add Scala client library

KotlinLogo.tsx and ScalaLogo.tsx are just placeholders.

[x] Well-formatted commit messages
[x] Rebased/mergeable
[x] Tests pass
[x] Signed CLA (if not already signed)

@russorat -- needs some icons. :-)

I just added an icon for Kotlin:

If the icons have gradients they aren't going to display properly in Safari. We had to update all the other icons to be "flat" aka no gradients.
Also, I'd add some whitespace around those SVGs so they don't seem so huge compared to the others

@alexpaxton thanks for response.
Could you send me a proper icon? Also I gave you permission to https://github.com/bednar/influxdb if you would like to change it in sources - https://github.com/bednar/influxdb/tree/docs/client-jvm-libraries.

Pushed an update to the icons. Verified they work in safari and chrome.


Witgen not working for bus in block machines

See the test added in #1605.
The bus accumulator behaves unlike other witness columns in the block machine: It's constraints are not periodic. In particular, the first accumulator value is constrained differently from the others, and also the accumulator is independent of the block size.

For a bit of context, the way different stages are currently handled in witgen is this:

Identities that reference a challenge of a later stage are removed (before machine detection). As a result, later-stage witness columns usually stay unknown and "belong" to the main machine.
Before returning, later-stage witness columns are filtered out.
When computing the next-stage witness, the previous witness is passed as an "external witness", which means that any newly allocated row will already have known values for the earlier-stage witness column.

So, if there is a bus in a block machine, in the second stage it will be detected as "belonging" to the block machine, but because the accumulator does not behave like a block machine column, things break.
I feel like the root of the problem is that splitting out machines does not make sense for later-stage witness generation. For example, in std::protocols::permutation the whole purpose of the second-stage accumulator is to combine both sides of the permutation, so it does not "belong" to any machine.
So I'll try to skip machine detection entirely in any stage but the first and treat everything as a monolithic VM.


[VL] Support regr_sxx regr_syy aggregate functions

What changes were proposed in this pull request?
Support regr_sxx regr_syy aggregate functions.
How was this patch tested?
Add new test cases.

I will try to fix all these regr_xx aggregate functions for spark 3.5 in another PR.

cc @PHILO-HE, thanks.

cc @rui-mo @Yohahaha, thanks.

@rui-mo

Is there any unresolved issue for Spark 3.5?

Currently, it's unclear to me. I will review these functions together in Spark 3.5 and will find out which functions can be enabled. In theory, there should be no issues with any of them.


Guides update

It was just for highlight the code. And since that whole styling part is inside the const viz = new  `);, I felt it was the closer highlight we could put there.
Thanks for the CR, although I'm planning to add more commits to this one 🙃

OK. I'm also thinking that this Viz code will be always a string, therefore, no syntax highlight inside a string.

Yeah, we should find a better way to highlight the code later on. Can you open an issue please?

Since we are using strings all the chars would be the same.
However, I'm going to create an issue just to talk about that.


Input focus after starting monitor

Type: Feature Request
(fwiw: windows 11, vscode, platformio, esp32)
After clicking “Start Monitoring” to open the connection, keypresses are not directed to the “Type in a message to send to the serial port.” field.
This is obvious and a natural user-expectation. And yet…
For usage/workflow, there are three extremely common paths after starting the monitor:
A) the device is writing progress info to serial, watch the output
B) the device is waiting for serial data, type…press enter, see output
C) some lovely combination of A & B
An automatic change of focus after the monitor is started would enhance the experience of B/C and would not alter A.
Currently if one starts typing, ordinary keypresses are ignored until enter is pressed at the end of the line - this presses the (now) “Stop Monitoring” button. I can see some minor utility in this. This behavior would be lost with an automatic change in focus. Yet, that same utility remains, and is easily reached by clicking the mouse button again.
So, upside described, downside examined. I would argue it is a good case for a useful feature. It is hard for me to imagine this has not been raised before, yet my spelunking through the discussion has yielded no mention on topic.
Why does this aspect of the Serial Monitor operation remain unaddressed?

@pdppdp Thanks for the feedback!
However, the main reason why we will close this and not be changing the behavior here, is due to accessibility reasons for those that may be navigating the view with a keyboard and screenreader. Since, as you wisely pointed out, there are a couple of different options for where the focus would go after starting monitoring (if not staying at the start/stop monitoring button), this would provide a possibly unexpected outcome if we chose one and people expected the other.
I think the best thing to do is to keep it at the start/stop button and then users can then navigate to where they want to interact with the UI.
Your feedback is appreciated!

Please explain the specific difficulty changing focus after starting the monitor would present for those who are challenged with accessibility.
Accessibility has many aspects, not the least of which is "making the next thing easier".  The "next thing" after starting a bidirectional connection is to do one of two things, read or write.  Reading is unaffected, writing would be easier.  As the mouse pointer would remain on the start-button (stop-button if the connection opened), that capability remains.
Accessibility must prioritize the actions, "tabbing focus" takes 7 presses to get from the start/stop button to the text entry field.  With the "high-contrast" appearance selected "tabbing focus" provides no visual clue on the 5 of the 7 controls on the way to the text entry field.  That is the definition of an accessibility problem for the visually impaired.
Your statement reads like there is some standard being maintained on accessibility.  Where is that standard, and what are the sections relevant to this issue?
Closing this comment after no third-party input,, and NO discussion, is premature.  It forecloses discussion of alternatives, or discussion of difficulty.  It is the modern equivalent of "See figure One".

@pdppdp Thanks for the thoughtful input. I would agree after reading your comments, that closing the issue was premature. Thank you for calling that out.
To your point, I do agree that 7 tabs is a lot to be able to get to the text entry. With that in mind, alternatives are worth discussing:

What if we move the "Start/Stop Monitoring" button to the end of the top bar, and therefore it would only be one tab to get to the text field?
Which choice would be the best if we automatically jumped to a focus point? Would we focus on the text output? Or would we focus on the text entry?

Additionally, the "high-contrast" item that you pointed out, would definitely be a bug that we'd want to prioritize if there are accessibility issues. Could you create a new issue specifically for that problem?
Thanks! Re-opening this issue.


Deprecating facade/promise.

If it is a good time to deprecate the facades, I would like to do pull request deprecating src/facade/promise.dart and refactoring the related files.
https://github.com/ntaoo/angular2/commit/d4ec88ce42fd20ab01c906619aeb750abe91dc86

Yep, this is happening. There are a few other projects such as Benchpress that rely on some of these facades, so we are patching the projects internally and will be uploading with the facades removed soon.

Nice. Then I just wait for the upload.

Good news, this is almost committed internally and should be in the next major sync 👍

Great. It will be much easier to read the code.

I think PromiseWrapper is removed now!
https://github.com/dart-lang/angular2/search?utf8=✓&q=PromiseWrapper