GH-40227: [R] ensure executable files in create_package_with_all_dependencies

What changes are included in this PR?

Add pkgbuild to DESCRIPTION under Suggests
Move from rebuilding the (bundled dependencies) package using utils::tar to pkgbuild::build

Are these changes tested?
No. I didn't see any existing tests for this function (which perhaps is not a valid reason).
Are there any user-facing changes?
Yes, the pkgbuild package is now required to use create_package_with_all_dependencies. It has also been added to Suggests, so if users install everything, they will be installing a new package.

GitHub Issue: #40227

Thanks for this @hutch3232.
*** Trying Arrow C++ in ARROW_HOME: /Users/bryce/builds/arrow-arm64
’rror: invalid version specification ‘<IP_ADDRESS>
Execution halted
------------------------- NOTE ---------------------------
There was an issue building the Arrow C++ libraries.
See https://arrow.apache.org/docs/r/articles/install.html
---------------------------------------------------------
ERROR: configuration failed for package ‘arrow’
* removing ‘/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/arrow’

Prior to this PR, the tarball installs fine once I set +x on configure so it seems like something broke here. Were you able to test these changes manually?

Thank you for catching that @amoeba. I'm encountering the same error. I thought I had transferred the tarball from my Windows computer to my linux machine, but maybe I did the pkgbuild::build manually on the linux machine itself. I'll have to test that.
I just tried though using a linux docker container and got the same error as you.
I suspect it might be this step in build:
─  checking for LF line-endings in source and make files and shell scripts (1.3s)

Which results in different line-endings than linux uses:
docker@362a42843066:~$ cat -A arrow/DESCRIPTION
Package: arrow^M$
Title: Integration to 'Apache' 'Arrow'^M$
Version: <IP_ADDRESS>^M$

I'm not sure if this is the issue, but I'm guessing it is based on the fact that characters in the error message were apparently dropped.
Here is the configure script in debug mode:

docker@362a42843066:~/arrow$ bash -x configure
+ PKG_CONFIG_NAME=arrow
+ PKG_BREW_NAME=apache-arrow
+ PKG_TEST_HEADER='<arrow/api.h>'
++ echo
++ tr '[:upper:]' '[:lower:]'
+ ARROW_R_DEV=
++ echo
++ tr '[:upper:]' '[:lower:]'
+ FORCE_BUNDLED_BUILD=
++ echo
++ tr '[:upper:]' '[:lower:]'
+ ARROW_USE_PKG_CONFIG=
++ echo
++ tr '[:upper:]' '[:lower:]'
+ ARROW_OFFLINE_BUILD=
++ grep '^Version' DESCRIPTION
++ sed 's/Version: //'
+ VERSION=$'<IP_ADDRESS>\r'
++ uname -s
+ UNAME=Linux
+ : pkg-config
+ '[' '' = true ']'
++ /bin/R CMD config CXX17
+ '[' '!' g++ ']'
+ '[' -z '' ']'
++ /bin/R CMD config CXX17
+ CXX17=g++
++ g++ --version
+ CXX17_VERSION='g++ (Debian 13.2.0-13) 13.2.0
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.'
+ echo 'g++ (Debian 13.2.0-13) 13.2.0
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.'
+ grep -e g++
+ echo 'g++ (Debian 13.2.0-13) 13.2.0
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.'
+ grep -e '13.[0-9]\+.[0-9]\+'
+ echo '*** Disabling Arrow build with GCS on gcc-13.'
*** Disabling Arrow build with GCS on gcc-13.
+ echo '*** Set ARROW_GCS=ON to explicitly enable.'
*** Set ARROW_GCS=ON to explicitly enable.
+ export ARROW_GCS=OFF
+ ARROW_GCS=OFF
+ pkg-config --version
+ PKG_CONFIG_AVAILABLE=true
+ echo '*** pkg-config found.'
*** pkg-config found.
+ '[' '' = '' ']'
+ brew --prefix openssl
+ '[' '' = '' ']'
+ '[' true = true ']'
+ pkg-config --exists openssl
+ find_or_build_libarrow
+ '[' '' = true ']'
+ find_arrow
+ OLD_PKG_CONFIG_PATH=
+ '[' '' ']'
+ '[' '' '!=' false ']'
+ pkg-config arrow
+ _LIBARROW_FOUND=false
+ '[' false '!=' false ']'
+ '[' false = false ']'
+ export PKG_CONFIG_PATH=
+ PKG_CONFIG_PATH=
+ '[' false = false ']'
+ do_bundled_build
+ /bin/Rscript tools/nixlibs.R $'<IP_ADDRESS>\r'
’rror: invalid version specification ‘<IP_ADDRESS>
Execution halted
+ '[' 1 -ne 0 ']'
+ echo '------------------------- NOTE ---------------------------'
------------------------- NOTE ---------------------------
+ echo 'There was an issue building the Arrow C++ libraries.'
There was an issue building the Arrow C++ libraries.
+ echo 'See https://arrow.apache.org/docs/r/articles/install.html'
See https://arrow.apache.org/docs/r/articles/install.html
+ echo ---------------------------------------------------------
---------------------------------------------------------
+ exit 1

Any thoughts on how to proceed?

@amoeba - I haven't thought of a way to fix this and still use pkgbuild::build. Instead, I propose reverting this changes and then just using Sys.chmod to make the files executable. Do you agree with this approach? Thanks!

Got it working! After finding the above link, I realized that when calling utils::tar that block could have been run if extra_flags is NULL. It defaults to "", so I changed it to get that check that R CMD BUILD uses.
> create_package_with_all_dependencies()
Downloading Arrow source file
trying URL 'https://cran.rstudio.com/src/contrib/arrow_<IP_ADDRESS>.tar.gz'
Content type 'application/x-gzip' length 4273701 bytes (4.1 MB)
downloaded 4.1 MB

Repacking tar.gz file to arrow_<IP_ADDRESS>_with_deps.tar.gz
Warning messages:
1: file './arrow/cleanup' did not have execute permissions: corrected
2: file './arrow/configure' did not have execute permissions: corrected

Copied over the tarball to my linux machine and was able to install.

Hi @hutch3232, thanks for following up on this. I think that sounds reasonable and I'm going to test it out now.

I get an error still but it doesn't look like it's related to your PR. I build the package on my Windows machine and tried to install it on macOS:
** testing if installed package can be loaded from temporary location
Error: package or namespace load failed for ‘arrow’ in dyn.load(file, DLLpath = DLLpath, ...):
 unable to load shared object '/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/00LOCK-arrow/00new/arrow/libs/arrow.so':
  dlopen(/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/00LOCK-arrow/00new/arrow/libs/arrow.so, 0x0006): symbol not found in flat namespace '__ZN3re212re2_internal5ParseINSt3__117basic_string_viewIcNS2_11char_traitsIcEEEEEEbPKcmPT_'
Error: loading failed

full R CMD INSTALL output
$ R CMD INSTALL arrow_<IP_ADDRESS>_with_deps.tar.gz
* installing to library ‘/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library’
* installing *source* package ‘arrow’ ...
** package ‘arrow’ successfully unpacked and MD5 sums checked
** using staged installation
*** pkg-config found.
*** Trying Arrow C++ in ARROW_HOME: /Users/bryce/builds/arrow-arm64
**** Not using: C++ library version (15.0.0): not supported by R package version <IP_ADDRESS>
trying URL 'https://apache.jfrog.io/artifactory/arrow/r/'
downloaded 906 bytes

*** Found local C++ source: 'tools/cpp'
*** Building libarrow from source
    For build options and troubleshooting, see the install guide:
    https://arrow.apache.org/docs/r/articles/install.html
*** Building with MAKEFLAGS=-j8
**** cmake 3.28.3: /opt/homebrew/bin/cmake
**** arrow with SOURCE_DIR='tools/cpp' BUILD_DIR='/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T//RtmpUiyqGS/filebc7d400cb95d' DEST_DIR='libarrow/arrow-14.0.2' CMAKE='/opt/homebrew/bin/cmake' EXTRA_CMAKE_FLAGS='' CC='clang -arch arm64' CXX='clang++ -arch arm64 -std=gnu++17' LDFLAGS='-L/opt/R/arm64/lib' N_JOBS='2' Boost_SOURCE='BUNDLED' lz4_SOURCE='BUNDLED' ARROW_S3='OFF' ARROW_GCS='OFF' ARROW_ABSL_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/absl-20211102.0.tar.gz' ARROW_AWS_C_AUTH_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/aws-c-auth-v0.6.22.tar.gz' ARROW_AWS_C_CAL_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/aws-c-cal-v0.5.20.tar.gz' ARROW_AWS_C_COMMON_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/aws-c-common-v0.8.9.tar.gz' ARROW_AWS_C_COMPRESSION_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/aws-c-compression-v0.2.16.tar.gz' ARROW_AWS_C_EVENT_STREAM_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/aws-c-event-stream-v0.2.18.tar.gz' ARROW_AWS_C_HTTP_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/aws-c-http-v0.7.3.tar.gz' ARROW_AWS_C_IO_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/aws-c-io-v0.13.14.tar.gz' ARROW_AWS_C_MQTT_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/aws-c-mqtt-v0.8.4.tar.gz' ARROW_AWS_C_S3_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/aws-c-s3-v0.2.3.tar.gz' ARROW_AWS_C_SDKUTILS_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/aws-c-sdkutils-v0.1.6.tar.gz' ARROW_AWS_CHECKSUMS_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/aws-checksums-v0.1.13.tar.gz' ARROW_AWS_CRT_CPP_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/aws-crt-cpp-v0.18.16.tar.gz' ARROW_AWS_LC_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/aws-lc-v1.3.0.tar.gz' ARROW_AWSSDK_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/aws-sdk-cpp-1.10.55.tar.gz' ARROW_BOOST_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/boost-1.81.0.tar.gz' ARROW_BROTLI_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/brotli-v1.0.9.tar.gz' ARROW_BZIP2_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/bzip2-1.0.8.tar.gz' ARROW_CARES_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/cares-1.17.2.tar.gz' ARROW_CRC32C_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/crc32c-1.1.2.tar.gz' ARROW_GBENCHMARK_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/gbenchmark-v1.7.1.tar.gz' ARROW_GFLAGS_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/gflags-v2.2.2.tar.gz' ARROW_GLOG_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/glog-v0.5.0.tar.gz' ARROW_GOOGLE_CLOUD_CPP_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/google-cloud-cpp-v2.12.0.tar.gz' ARROW_GRPC_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/grpc-v1.46.3.tar.gz' ARROW_GTEST_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/gtest-1.11.0.tar.gz' ARROW_JEMALLOC_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/jemalloc-5.3.0.tar.bz2' ARROW_LZ4_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/lz4-v1.9.4.tar.gz' ARROW_MIMALLOC_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/mimalloc-v2.0.6.tar.gz' ARROW_NLOHMANN_JSON_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/nlohmann-json-v3.10.5.tar.gz' ARROW_OPENTELEMETRY_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/opentelemetry-cpp-v1.8.1.tar.gz' ARROW_OPENTELEMETRY_PROTO_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/opentelemetry-proto-v0.17.0.tar.gz' ARROW_ORC_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/orc-1.9.0.tar.gz' ARROW_PROTOBUF_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/protobuf-v21.3.tar.gz' ARROW_RAPIDJSON_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/rapidjson-232389d4f1012dddec4ef84861face2d2ba85709.tar.gz' ARROW_RE2_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/re2-2022-06-01.tar.gz' ARROW_S2N_TLS_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/s2n-v1.3.35.tar.gz' ARROW_SNAPPY_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/snappy-1.1.10.tar.gz' ARROW_THRIFT_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/thrift-0.16.0.tar.gz' ARROW_UCX_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/ucx-1.12.1.tar.gz' ARROW_UTF8PROC_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/utf8proc-v2.7.0.tar.gz' ARROW_XSIMD_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/xsimd-9.0.1.tar.gz' ARROW_ZLIB_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/zlib-1.2.13.tar.gz' ARROW_ZSTD_URL='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/zstd-1.5.5.tar.gz' ARROW_VERBOSE_THIRDPARTY_BUILD='ON'
+ : /Users/bryce/builds/arrow-arm64
+ : tools/cpp
+ : /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T//RtmpUiyqGS/filebc7d400cb95d
+ : libarrow/arrow-14.0.2
+ : /opt/homebrew/bin/cmake
++ cd tools/cpp
++ pwd
+ SOURCE_DIR=/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/cpp
++ mkdir -p libarrow/arrow-14.0.2
++ cd libarrow/arrow-14.0.2
++ pwd
+ DEST_DIR=/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/libarrow/arrow-14.0.2
+ '[' 2 = '' ']'
+ '[' '' '!=' '' ']'
+ '[' '' = false ']'
+ ARROW_DEFAULT_PARAM=OFF
+ case "$CXX" in
+ mkdir -p /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T//RtmpUiyqGS/filebc7d400cb95d
+ pushd /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T//RtmpUiyqGS/filebc7d400cb95d
/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d /private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow
+ /opt/homebrew/bin/cmake -DARROW_BOOST_USE_SHARED=OFF -DARROW_BUILD_TESTS=OFF -DARROW_BUILD_SHARED=OFF -DARROW_BUILD_STATIC=ON -DARROW_ACERO=ON -DARROW_COMPUTE=ON -DARROW_CSV=ON -DARROW_DATASET=ON -DARROW_DEPENDENCY_SOURCE=AUTO -DAWSSDK_SOURCE= -DBoost_SOURCE=BUNDLED -Dlz4_SOURCE=BUNDLED -DARROW_FILESYSTEM=ON -DARROW_GCS=OFF -DARROW_JEMALLOC=OFF -DARROW_MIMALLOC=ON -DARROW_JSON=ON -DARROW_PARQUET=ON -DARROW_S3=OFF -DARROW_WITH_BROTLI=OFF -DARROW_WITH_BZ2=OFF -DARROW_WITH_LZ4=ON -DARROW_WITH_RE2=ON -DARROW_WITH_SNAPPY=ON -DARROW_WITH_UTF8PROC=ON -DARROW_WITH_ZLIB=OFF -DARROW_WITH_ZSTD=OFF -DARROW_VERBOSE_THIRDPARTY_BUILD=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_FIND_DEBUG_MODE=OFF -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_INSTALL_PREFIX=/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/libarrow/arrow-14.0.2 -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON -DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON -DCMAKE_UNITY_BUILD=OFF -Dre2_SOURCE=BUNDLED -Dxsimd_SOURCE= -Dzstd_SOURCE= -G 'Unix Makefiles' /private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/cpp
-- Building using CMake version: 3.28.3
-- The C compiler identification is AppleClang <IP_ADDRESS>00100
-- The CXX compiler identification is AppleClang <IP_ADDRESS>00100
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Arrow version: 14.0.2 (full: '14.0.2')
-- Arrow SO version: 1400 (full: 1400.2.0)
-- clang-tidy found at /opt/homebrew/opt/llvm@14/bin/clang-tidy
-- clang-format found at /opt/homebrew/opt/llvm@14/bin/clang-format
-- Found ClangTools: /opt/homebrew/opt/llvm@14/bin/clang-format
-- infer not found
-- Found Python3: /opt/homebrew/bin/python3.12 (found version "3.12.2") found components: Interpreter
fatal: not a git repository (or any of the parent directories): .git
-- Using ccache: /opt/homebrew/bin/ccache
CMake Warning (dev) at CMakeLists.txt:277 (find_program):
  Policy CMP0109 is not set: find_program() requires permission to execute
  but not to read.  Run "cmake --help-policy CMP0109" for policy details.
  Use the cmake_policy command to set the policy and suppress this warning.

  The file

    /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/cpp/build-support/cpplint.py

  is readable but not executable.  CMake is using it for compatibility.
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found cpplint executable at /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/cpp/build-support/cpplint.py
-- System processor: arm64
-- Performing Test CXX_SUPPORTS_SVE
-- Performing Test CXX_SUPPORTS_SVE - Success
-- Arrow build warning level: PRODUCTION
-- Build Type: RELEASE
-- Performing Test CXX_LINKER_SUPPORTS_VERSION_SCRIPT
-- Performing Test CXX_LINKER_SUPPORTS_VERSION_SCRIPT - Failed
-- Using AUTO approach to find dependencies
-- ARROW_ABSL_BUILD_VERSION: 20211102.0
-- ARROW_ABSL_BUILD_SHA256_CHECKSUM: dcf71b9cba8dc0ca9940c4b316a0c796be8fab42b070bb6b7cab62b48f0e66c4
-- ARROW_AWS_C_AUTH_BUILD_VERSION: v0.6.22
-- ARROW_AWS_C_AUTH_BUILD_SHA256_CHECKSUM: 691a6b4418afcd3dc141351b6ad33fccd8e3ff84df0e9e045b42295d284ee14c
-- ARROW_AWS_C_CAL_BUILD_VERSION: v0.5.20
-- ARROW_AWS_C_CAL_BUILD_SHA256_CHECKSUM: acc352359bd06f8597415c366cf4ec4f00d0b0da92d637039a73323dd55b6cd0
-- ARROW_AWS_C_COMMON_BUILD_VERSION: v0.8.9
-- ARROW_AWS_C_COMMON_BUILD_SHA256_CHECKSUM: 2f3fbaf7c38eae5a00e2a816d09b81177f93529ae8ba1b82dc8f31407565327a
-- ARROW_AWS_C_COMPRESSION_BUILD_VERSION: v0.2.16
-- ARROW_AWS_C_COMPRESSION_BUILD_SHA256_CHECKSUM: 044b1dbbca431a07bde8255ef9ec443c300fc60d4c9408d4b862f65e496687f4
-- ARROW_AWS_C_EVENT_STREAM_BUILD_VERSION: v0.2.18
-- ARROW_AWS_C_EVENT_STREAM_BUILD_SHA256_CHECKSUM: 310ca617f713bf664e4c7485a3d42c1fb57813abd0107e49790d107def7cde4f
-- ARROW_AWS_C_HTTP_BUILD_VERSION: v0.7.3
-- ARROW_AWS_C_HTTP_BUILD_SHA256_CHECKSUM: 07e16c6bf5eba6f0dea96b6f55eae312a7c95b736f4d2e4a210000f45d8265ae
-- ARROW_AWS_C_IO_BUILD_VERSION: v0.13.14
-- ARROW_AWS_C_IO_BUILD_SHA256_CHECKSUM: 12b66510c3d9a4f7e9b714e9cfab2a5bf835f8b9ce2f909d20ae2a2128608c71
-- ARROW_AWS_C_MQTT_BUILD_VERSION: v0.8.4
-- ARROW_AWS_C_MQTT_BUILD_SHA256_CHECKSUM: 232eeac63e72883d460c686a09b98cdd811d24579affac47c5c3f696f956773f
-- ARROW_AWS_C_S3_BUILD_VERSION: v0.2.3
-- ARROW_AWS_C_S3_BUILD_SHA256_CHECKSUM: a00b3c9f319cd1c9aa2c3fa15098864df94b066dcba0deaccbb3caa952d902fe
-- ARROW_AWS_C_SDKUTILS_BUILD_VERSION: v0.1.6
-- ARROW_AWS_C_SDKUTILS_BUILD_SHA256_CHECKSUM: 8a2951344b2fb541eab1e9ca17c18a7fcbfd2aaff4cdd31d362d1fad96111b91
-- ARROW_AWS_CHECKSUMS_BUILD_VERSION: v0.1.13
-- ARROW_AWS_CHECKSUMS_BUILD_SHA256_CHECKSUM: 0f897686f1963253c5069a0e495b85c31635ba146cd3ac38cc2ea31eaf54694d
-- ARROW_AWS_CRT_CPP_BUILD_VERSION: v0.18.16
-- ARROW_AWS_CRT_CPP_BUILD_SHA256_CHECKSUM: 9e69bc1dc4b50871d1038aa9ff6ddeb4c9b28f7d6b5e5b1b69041ccf50a13483
-- ARROW_AWS_LC_BUILD_VERSION: v1.3.0
-- ARROW_AWS_LC_BUILD_SHA256_CHECKSUM: ae96a3567161552744fc0cae8b4d68ed88b1ec0f3d3c98700070115356da5a37
-- ARROW_AWSSDK_BUILD_VERSION: 1.10.55
-- ARROW_AWSSDK_BUILD_SHA256_CHECKSUM: 2d552fb1a84bef4a9b65e34aa7031851ed2aef5319e02cc6e4cb735c48aa30de
-- ARROW_AZURE_SDK_BUILD_VERSION: azure-core_1.10.3
-- ARROW_AZURE_SDK_BUILD_SHA256_CHECKSUM: dd624c2f86adf474d2d0a23066be6e27af9cbd7e3f8d9d8fd7bf981e884b7b48
-- ARROW_BOOST_BUILD_VERSION: 1.81.0
-- ARROW_BOOST_BUILD_SHA256_CHECKSUM: 9e0ffae35528c35f90468997bc8d99500bf179cbae355415a89a600c38e13574
-- ARROW_BROTLI_BUILD_VERSION: v1.0.9
-- ARROW_BROTLI_BUILD_SHA256_CHECKSUM: f9e8d81d0405ba66d181529af42a3354f838c939095ff99930da6aa9cdf6fe46
-- ARROW_BZIP2_BUILD_VERSION: 1.0.8
-- ARROW_BZIP2_BUILD_SHA256_CHECKSUM: ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269
-- ARROW_CARES_BUILD_VERSION: 1.17.2
-- ARROW_CARES_BUILD_SHA256_CHECKSUM: 4803c844ce20ce510ef0eb83f8ea41fa24ecaae9d280c468c582d2bb25b3913d
-- ARROW_CRC32C_BUILD_VERSION: 1.1.2
-- ARROW_CRC32C_BUILD_SHA256_CHECKSUM: ac07840513072b7fcebda6e821068aa04889018f24e10e46181068fb214d7e56
-- ARROW_GBENCHMARK_BUILD_VERSION: v1.7.1
-- ARROW_GBENCHMARK_BUILD_SHA256_CHECKSUM: 6430e4092653380d9dc4ccb45a1e2dc9259d581f4866dc0759713126056bc1d7
-- ARROW_GFLAGS_BUILD_VERSION: v2.2.2
-- ARROW_GFLAGS_BUILD_SHA256_CHECKSUM: 34af2f15cf7367513b352bdcd2493ab14ce43692d2dcd9dfc499492966c64dcf
-- ARROW_GLOG_BUILD_VERSION: v0.5.0
-- ARROW_GLOG_BUILD_SHA256_CHECKSUM: eede71f28371bf39aa69b45de23b329d37214016e2055269b3b5e7cfd40b59f5
-- ARROW_GOOGLE_CLOUD_CPP_BUILD_VERSION: v2.12.0
-- ARROW_GOOGLE_CLOUD_CPP_BUILD_SHA256_CHECKSUM: 8cda870803925c62de8716a765e03eb9d34249977e5cdb7d0d20367e997a55e2
-- ARROW_GRPC_BUILD_VERSION: v1.46.3
-- ARROW_GRPC_BUILD_SHA256_CHECKSUM: d6cbf22cb5007af71b61c6be316a79397469c58c82a942552a62e708bce60964
-- ARROW_GTEST_BUILD_VERSION: 1.11.0
-- ARROW_GTEST_BUILD_SHA256_CHECKSUM: b4870bf121ff7795ba20d20bcdd8627b8e088f2d1dab299a031c1034eddc93d5
-- ARROW_JEMALLOC_BUILD_VERSION: 5.3.0
-- ARROW_JEMALLOC_BUILD_SHA256_CHECKSUM: 2db82d1e7119df3e71b7640219b6dfe84789bc0537983c3b7ac4f7189aecfeaa
-- ARROW_LZ4_BUILD_VERSION: v1.9.4
-- ARROW_LZ4_BUILD_SHA256_CHECKSUM: 0b0e3aa07c8c063ddf40b082bdf7e37a1562bda40a0ff5272957f3e987e0e54b
-- ARROW_MIMALLOC_BUILD_VERSION: v2.0.6
-- ARROW_MIMALLOC_BUILD_SHA256_CHECKSUM: 9f05c94cc2b017ed13698834ac2a3567b6339a8bde27640df5a1581d49d05ce5
-- ARROW_NLOHMANN_JSON_BUILD_VERSION: v3.10.5
-- ARROW_NLOHMANN_JSON_BUILD_SHA256_CHECKSUM: 5daca6ca216495edf89d167f808d1d03c4a4d929cef7da5e10f135ae1540c7e4
-- ARROW_OPENTELEMETRY_BUILD_VERSION: v1.8.1
-- ARROW_OPENTELEMETRY_BUILD_SHA256_CHECKSUM: 3d640201594b07f08dade9cd1017bd0b59674daca26223b560b9bb6bf56264c2
-- ARROW_OPENTELEMETRY_PROTO_BUILD_VERSION: v0.17.0
-- ARROW_OPENTELEMETRY_PROTO_BUILD_SHA256_CHECKSUM: f269fbcb30e17b03caa1decd231ce826e59d7651c0f71c3b28eb5140b4bb5412
-- ARROW_ORC_BUILD_VERSION: 1.9.0
-- ARROW_ORC_BUILD_SHA256_CHECKSUM: 0dca8bbccdb2ee87e59ba964933436beebd02ea78c4134424828a8127fbc4faa
-- ARROW_PROTOBUF_BUILD_VERSION: v21.3
-- ARROW_PROTOBUF_BUILD_SHA256_CHECKSUM: 2f723218f6cb709ae4cdc4fb5ed56a5951fc5d466f0128ce4c946b8c78c8c49f
-- ARROW_RAPIDJSON_BUILD_VERSION: 232389d4f1012dddec4ef84861face2d2ba85709
-- ARROW_RAPIDJSON_BUILD_SHA256_CHECKSUM: b9290a9a6d444c8e049bd589ab804e0ccf2b05dc5984a19ed5ae75d090064806
-- ARROW_RE2_BUILD_VERSION: 2022-06-01
-- ARROW_RE2_BUILD_SHA256_CHECKSUM: f89c61410a072e5cbcf8c27e3a778da7d6fd2f2b5b1445cd4f4508bee946ab0f
-- ARROW_SNAPPY_BUILD_VERSION: 1.1.10
-- ARROW_SNAPPY_BUILD_SHA256_CHECKSUM: 49d831bffcc5f3d01482340fe5af59852ca2fe76c3e05df0e67203ebbe0f1d90
-- ARROW_SUBSTRAIT_BUILD_VERSION: v0.27.0
-- ARROW_SUBSTRAIT_BUILD_SHA256_CHECKSUM: 4ed375f69d972a57fdc5ec406c17003a111831d8640d3f1733eccd4b3ff45628
-- ARROW_S2N_TLS_BUILD_VERSION: v1.3.35
-- ARROW_S2N_TLS_BUILD_SHA256_CHECKSUM: 9d32b26e6bfcc058d98248bf8fc231537e347395dd89cf62bb432b55c5da990d
-- ARROW_THRIFT_BUILD_VERSION: 0.16.0
-- ARROW_THRIFT_BUILD_SHA256_CHECKSUM: f460b5c1ca30d8918ff95ea3eb6291b3951cf518553566088f3f2be8981f6209
-- ARROW_UCX_BUILD_VERSION: 1.12.1
-- ARROW_UCX_BUILD_SHA256_CHECKSUM: 9bef31aed0e28bf1973d28d74d9ac4f8926c43ca3b7010bd22a084e164e31b71
-- ARROW_UTF8PROC_BUILD_VERSION: v2.7.0
-- ARROW_UTF8PROC_BUILD_SHA256_CHECKSUM: 4bb121e297293c0fd55f08f83afab6d35d48f0af4ecc07523ad8ec99aa2b12a1
-- ARROW_XSIMD_BUILD_VERSION: 9.0.1
-- ARROW_XSIMD_BUILD_SHA256_CHECKSUM: b1bb5f92167fd3a4f25749db0be7e61ed37e0a5d943490f3accdcd2cd2918cc0
-- ARROW_ZLIB_BUILD_VERSION: 1.2.13
-- ARROW_ZLIB_BUILD_SHA256_CHECKSUM: b3a24de97a8fdbc835b9833169501030b8977031bcb54b3b3ac13740f846ab30
-- ARROW_ZSTD_BUILD_VERSION: 1.5.5
-- ARROW_ZSTD_BUILD_SHA256_CHECKSUM: 9c4396cc829cfae319a6e2615202e82aad41372073482fce286fac78646d3ee4
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Looking for _M_ARM64
-- Looking for _M_ARM64 - not found
-- Looking for __SIZEOF_INT128__
-- Looking for __SIZEOF_INT128__ - found
-- Boost include dir:
-- Providing CMake module for SnappyAlt as part of Arrow CMake package
-- pkg-config package for snappy that is used by arrow for static link isn't found
-- Building without OpenSSL support. Minimum OpenSSL version 1.0.2 required.
CMake Warning at cmake_modules/FindThriftAlt.cmake:56 (find_package):
  By not providing "FindThrift.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Thrift", but
  CMake did not find one.

  Could not find a package configuration file provided by "Thrift" (requested
  version 0.11.0) with any of the following names:

    ThriftConfig.cmake
    thrift-config.cmake

  Add the installation prefix of "Thrift" to CMAKE_PREFIX_PATH or set
  "Thrift_DIR" to a directory containing one of the above files.  If "Thrift"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  cmake_modules/ThirdpartyToolchain.cmake:277 (find_package)
  cmake_modules/ThirdpartyToolchain.cmake:1697 (resolve_dependency)
  CMakeLists.txt:542 (include)

-- Checking for module 'thrift'
--   Found thrift, version 0.19.0
-- Found ThriftAlt: /opt/homebrew/Cellar/thrift/0.19.0/lib/libthrift.dylib (found suitable version "0.19.0", minimum required is "0.11.0")
-- Providing CMake module for ThriftAlt as part of Parquet CMake package
-- Using pkg-config package for thrift that is used by parquet for static link
-- Building (vendored) mimalloc from source
-- RapidJSON found. Headers: /opt/homebrew/Cellar/rapidjson/1.1.0/include
-- Using pkg-config package for xsimd that is used by arrow for static link
-- xsimd found. Headers: /opt/homebrew/include
-- Building LZ4 from source
-- Building RE2 from source
-- Found utf8proc: /opt/homebrew/lib/libutf8proc.dylib (found suitable version "2.9.0", minimum required is "2.2.0")
-- Providing CMake module for utf8proc as part of Arrow CMake package
-- Using pkg-config package for libutf8proc that is used by arrow for static link
-- Found hdfs.h at: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/cpp/thirdparty/hadoop/include/hdfs.h
-- All bundled static libraries: mimalloc::mimalloc;LZ4::lz4;re2::re2
-- CMAKE_C_FLAGS: -falign-functions=64 -Wall -g -O2 -Qunused-arguments  -Wall -Wno-unknown-warning-option -Wno-pass-failed -march=armv8-a
-- CMAKE_CXX_FLAGS:  -fno-aligned-new -falign-functions=64 -Wall -g -O2 -Qunused-arguments -fcolor-diagnostics  -Wall -Wno-unknown-warning-option -Wno-pass-failed -march=armv8-a
-- CMAKE_C_FLAGS_RELEASE: -O3 -DNDEBUG -O2
-- CMAKE_CXX_FLAGS_RELEASE: -O3 -DNDEBUG -O2
-- Creating bundled static library target arrow_bundled_dependencies at /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/release/libarrow_bundled_dependencies.a
-- Looking for backtrace
-- Looking for backtrace - found
-- backtrace facility detected in default set of libraries
-- Found Backtrace: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk/usr/include
-- ---------------------------------------------------------------------
-- Arrow version:                                 14.0.2
--
-- Build configuration summary:
--   Generator: Unix Makefiles
--   Build type: RELEASE
--   Source directory: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/cpp
--   Install prefix: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/libarrow/arrow-14.0.2
--   Compile commands: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/compile_commands.json
--
-- Compile and link options:
--
--   ARROW_CXXFLAGS="" [default=""]
--       Compiler flags to append when compiling Arrow
--   ARROW_BUILD_STATIC=ON [default=ON]
--       Build static libraries
--   ARROW_BUILD_SHARED=OFF [default=ON]
--       Build shared libraries
--   ARROW_PACKAGE_KIND="" [default=""]
--       Arbitrary string that identifies the kind of package
--       (for informational purposes)
--   ARROW_GIT_ID="" [default=""]
--       The Arrow git commit id (if any)
--   ARROW_GIT_DESCRIPTION="" [default=""]
--       The Arrow git commit description (if any)
--   ARROW_NO_DEPRECATED_API=OFF [default=OFF]
--       Exclude deprecated APIs from build
--   ARROW_POSITION_INDEPENDENT_CODE=ON [default=ON]
--       Whether to create position-independent target
--   ARROW_USE_CCACHE=ON [default=ON]
--       Use ccache when compiling (if available)
--   ARROW_USE_SCCACHE=ON [default=ON]
--       Use sccache when compiling (if available),
--       takes precedence over ccache if a storage backend is configured
--   ARROW_USE_LD_GOLD=OFF [default=OFF]
--       Use ld.gold for linking on Linux (if available)
--   ARROW_USE_PRECOMPILED_HEADERS=OFF [default=OFF]
--       Use precompiled headers when compiling
--   ARROW_SIMD_LEVEL=NEON [default=DEFAULT|NONE|SSE4_2|AVX2|AVX512|NEON|SVE|SVE128|SVE256|SVE512]
--       Compile-time SIMD optimization level
--   ARROW_RUNTIME_SIMD_LEVEL=MAX [default=MAX|NONE|SSE4_2|AVX2|AVX512]
--       Max runtime SIMD optimization level
--   ARROW_ALTIVEC=ON [default=ON]
--       Build with Altivec if compiler has support
--   ARROW_RPATH_ORIGIN=OFF [default=OFF]
--       Build Arrow libraries with RATH set to $ORIGIN
--   ARROW_INSTALL_NAME_RPATH=ON [default=ON]
--       Build Arrow libraries with install_name set to @rpath
--   ARROW_GGDB_DEBUG=ON [default=ON]
--       Pass -ggdb flag to debug builds
--   ARROW_WITH_MUSL=OFF [default=OFF]
--       Whether the system libc is musl or not
--   ARROW_ENABLE_THREADING=ON [default=ON]
--       Enable threading in Arrow core
--
-- Test and benchmark options:
--
--   ARROW_BUILD_EXAMPLES=OFF [default=OFF]
--       Build the Arrow examples
--   ARROW_BUILD_TESTS=OFF [default=OFF]
--       Build the Arrow googletest unit tests
--   ARROW_ENABLE_TIMING_TESTS=ON [default=ON]
--       Enable timing-sensitive tests
--   ARROW_BUILD_INTEGRATION=OFF [default=OFF]
--       Build the Arrow integration test executables
--   ARROW_BUILD_BENCHMARKS=OFF [default=OFF]
--       Build the Arrow micro benchmarks
--   ARROW_BUILD_BENCHMARKS_REFERENCE=OFF [default=OFF]
--       Build the Arrow micro reference benchmarks
--   ARROW_BUILD_OPENMP_BENCHMARKS=OFF [default=OFF]
--       Build the Arrow benchmarks that rely on OpenMP
--   ARROW_BUILD_DETAILED_BENCHMARKS=OFF [default=OFF]
--       Build benchmarks that do a longer exploration of performance
--   ARROW_TEST_LINKAGE=static [default=static|shared]
--       Linkage of Arrow libraries with unit tests executables.
--   ARROW_FUZZING=OFF [default=OFF]
--       Build Arrow Fuzzing executables
--   ARROW_LARGE_MEMORY_TESTS=OFF [default=OFF]
--       Enable unit tests which use large memory
--
-- Lint options:
--
--   ARROW_ONLY_LINT=OFF [default=OFF]
--       Only define the lint and check-format targets
--   ARROW_VERBOSE_LINT=OFF [default=OFF]
--       If off, 'quiet' flags will be passed to linting tools
--   ARROW_GENERATE_COVERAGE=OFF [default=OFF]
--       Build with C++ code coverage enabled
--
-- Checks options:
--
--   ARROW_TEST_MEMCHECK=OFF [default=OFF]
--       Run the test suite using valgrind --tool=memcheck
--   ARROW_USE_ASAN=OFF [default=OFF]
--       Enable Address Sanitizer checks
--   ARROW_USE_TSAN=OFF [default=OFF]
--       Enable Thread Sanitizer checks
--   ARROW_USE_UBSAN=OFF [default=OFF]
--       Enable Undefined Behavior sanitizer checks
--
-- Project component options:
--
--   ARROW_ACERO=ON [default=OFF]
--       Build the Arrow Acero Engine Module
--   ARROW_AZURE=OFF [default=OFF]
--       Build Arrow with Azure support (requires the Azure SDK for C++)
--   ARROW_BUILD_UTILITIES=OFF [default=OFF]
--       Build Arrow commandline utilities
--   ARROW_COMPUTE=ON [default=OFF]
--       Build all Arrow Compute kernels
--   ARROW_CSV=ON [default=OFF]
--       Build the Arrow CSV Parser Module
--   ARROW_CUDA=OFF [default=OFF]
--       Build the Arrow CUDA extensions (requires CUDA toolkit)
--   ARROW_DATASET=ON [default=OFF]
--       Build the Arrow Dataset Modules
--   ARROW_FILESYSTEM=ON [default=OFF]
--       Build the Arrow Filesystem Layer
--   ARROW_FLIGHT=OFF [default=OFF]
--       Build the Arrow Flight RPC System (requires GRPC, Protocol Buffers)
--   ARROW_FLIGHT_SQL=OFF [default=OFF]
--       Build the Arrow Flight SQL extension
--   ARROW_GANDIVA=OFF [default=OFF]
--       Build the Gandiva libraries
--   ARROW_GCS=OFF [default=OFF]
--       Build Arrow with GCS support (requires the GCloud SDK for C++)
--   ARROW_HDFS=OFF [default=OFF]
--       Build the Arrow HDFS bridge
--   ARROW_IPC=ON [default=ON]
--       Build the Arrow IPC extensions
--   ARROW_JEMALLOC=OFF [default=ON]
--       Build the Arrow jemalloc-based allocator
--   ARROW_JSON=ON [default=OFF]
--       Build Arrow with JSON support (requires RapidJSON)
--   ARROW_MIMALLOC=ON [default=OFF]
--       Build the Arrow mimalloc-based allocator
--   ARROW_PARQUET=ON [default=OFF]
--       Build the Parquet libraries
--   ARROW_ORC=OFF [default=OFF]
--       Build the Arrow ORC adapter
--   ARROW_PYTHON=OFF [default=OFF]
--       Build some components needed by PyArrow.
--       (This is a deprecated option. Use CMake presets instead.)
--   ARROW_S3=OFF [default=OFF]
--       Build Arrow with S3 support (requires the AWS SDK for C++)
--   ARROW_SKYHOOK=OFF [default=OFF]
--       Build the Skyhook libraries
--   ARROW_SUBSTRAIT=OFF [default=OFF]
--       Build the Arrow Substrait Consumer Module
--   ARROW_TENSORFLOW=OFF [default=OFF]
--       Build Arrow with TensorFlow support enabled
--   ARROW_TESTING=OFF [default=OFF]
--       Build the Arrow testing libraries
--
-- Thirdparty toolchain options:
--
--   ARROW_DEPENDENCY_SOURCE=AUTO [default=AUTO|BUNDLED|SYSTEM|CONDA|VCPKG|BREW]
--       Method to use for acquiring arrow's build dependencies
--   ARROW_VERBOSE_THIRDPARTY_BUILD=ON [default=OFF]
--       Show output from ExternalProjects rather than just logging to files
--   ARROW_DEPENDENCY_USE_SHARED=ON [default=ON]
--       Link to shared libraries
--   ARROW_BOOST_USE_SHARED=OFF [default=ON]
--       Rely on Boost shared libraries where relevant
--   ARROW_BROTLI_USE_SHARED=ON [default=ON]
--       Rely on Brotli shared libraries where relevant
--   ARROW_BZ2_USE_SHARED=ON [default=ON]
--       Rely on Bz2 shared libraries where relevant
--   ARROW_GFLAGS_USE_SHARED=ON [default=ON]
--       Rely on GFlags shared libraries where relevant
--   ARROW_GRPC_USE_SHARED=ON [default=ON]
--       Rely on gRPC shared libraries where relevant
--   ARROW_JEMALLOC_USE_SHARED=ON [default=ON]
--       Rely on jemalloc shared libraries where relevant
--   ARROW_LLVM_USE_SHARED=ON [default=ON]
--       Rely on LLVM shared libraries where relevant
--   ARROW_LZ4_USE_SHARED=ON [default=ON]
--       Rely on lz4 shared libraries where relevant
--   ARROW_OPENSSL_USE_SHARED=ON [default=ON]
--       Rely on OpenSSL shared libraries where relevant
--   ARROW_PROTOBUF_USE_SHARED=ON [default=ON]
--       Rely on Protocol Buffers shared libraries where relevant
--   ARROW_SNAPPY_USE_SHARED=ON [default=ON]
--       Rely on snappy shared libraries where relevant
--   ARROW_THRIFT_USE_SHARED=ON [default=ON]
--       Rely on thrift shared libraries where relevant
--   ARROW_UTF8PROC_USE_SHARED=ON [default=ON]
--       Rely on utf8proc shared libraries where relevant
--   ARROW_ZSTD_USE_SHARED=ON [default=ON]
--       Rely on zstd shared libraries where relevant
--   ARROW_USE_GLOG=OFF [default=OFF]
--       Build libraries with glog support for pluggable logging
--   ARROW_WITH_BACKTRACE=ON [default=ON]
--       Build with backtrace support
--   ARROW_WITH_OPENTELEMETRY=OFF [default=OFF]
--       Build libraries with OpenTelemetry support for distributed tracing
--   ARROW_WITH_BROTLI=OFF [default=OFF]
--       Build with Brotli compression
--   ARROW_WITH_BZ2=OFF [default=OFF]
--       Build with BZ2 compression
--   ARROW_WITH_LZ4=ON [default=OFF]
--       Build with lz4 compression
--   ARROW_WITH_SNAPPY=ON [default=OFF]
--       Build with Snappy compression
--   ARROW_WITH_ZLIB=OFF [default=OFF]
--       Build with zlib compression
--   ARROW_WITH_ZSTD=OFF [default=OFF]
--       Build with zstd compression
--   ARROW_WITH_UCX=OFF [default=OFF]
--       Build with UCX transport for Arrow Flight
--       (only used if ARROW_FLIGHT is ON)
--   ARROW_WITH_UTF8PROC=ON [default=ON]
--       Build with support for Unicode properties using the utf8proc library
--       (only used if ARROW_COMPUTE is ON or ARROW_GANDIVA is ON)
--   ARROW_WITH_RE2=ON [default=ON]
--       Build with support for regular expressions using the re2 library
--       (only used if ARROW_COMPUTE or ARROW_GANDIVA is ON)
--
-- Parquet options:
--
--   PARQUET_MINIMAL_DEPENDENCY=OFF [default=OFF]
--       Depend only on Thirdparty headers to build libparquet.
--       Always OFF if building binaries
--   PARQUET_BUILD_EXECUTABLES=OFF [default=OFF]
--       Build the Parquet executable CLI tools. Requires static libraries to be built.
--   PARQUET_BUILD_EXAMPLES=OFF [default=OFF]
--       Build the Parquet examples. Requires static libraries to be built.
--   PARQUET_REQUIRE_ENCRYPTION=OFF [default=OFF]
--       Build support for encryption. Fail if OpenSSL is not found
--
-- Gandiva options:
--
--   ARROW_GANDIVA_STATIC_LIBSTDCPP=OFF [default=OFF]
--       Include -static-libstdc++ -static-libgcc when linking with
--       Gandiva static libraries
--   ARROW_GANDIVA_PC_CXX_FLAGS="" [default=""]
--       Compiler flags to append when pre-compiling Gandiva operations
--
-- Advanced developer options:
--
--   ARROW_EXTRA_ERROR_CONTEXT=OFF [default=OFF]
--       Compile with extra error context (line numbers, code)
--   ARROW_OPTIONAL_INSTALL=OFF [default=OFF]
--       If enabled install ONLY targets that have already been built. Please be
--       advised that if this is enabled 'install' will fail silently on components
--       that have not been built
--   ARROW_GDB_INSTALL_DIR="" [default=""]
--       Use a custom install directory for GDB plugin.
--       In general, you don't need to specify this because the default
--       (CMAKE_INSTALL_FULL_BINDIR on Windows, CMAKE_INSTALL_FULL_LIBDIR otherwise)
--       is reasonable.
--   Outputting build configuration summary to /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/cmake_summary.json
-- Configuring done (3.8s)
-- Generating done (0.2s)
-- Build files have been written to: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d
+ /opt/homebrew/bin/cmake --build . --target install -- -j 2
[  0%] Creating directories for 'boost_ep'
[  0%] Creating directories for 'mimalloc_ep'
[  1%] Performing download step (verify and extract) for 'boost_ep'
[  2%] Performing download step (verify and extract) for 'mimalloc_ep'
-- verifying file...
     file='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/boost-1.81.0.tar.gz'
-- verifying file...
     file='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/mimalloc-v2.0.6.tar.gz'
-- verifying file... done
-- extracting...
     src='/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/mimalloc-v2.0.6.tar.gz'
     dst='/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep-prefix/src/mimalloc_ep'
-- extracting... [tar xfz]
-- verifying file... done
-- extracting...
     src='/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/boost-1.81.0.tar.gz'
     dst='/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/boost_ep-prefix/src/boost_ep'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[  3%] No update step for 'mimalloc_ep'
[  3%] No patch step for 'mimalloc_ep'
[  3%] Performing configure step for 'mimalloc_ep'
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- The C compiler identification is AppleClang <IP_ADDRESS>00100
-- The CXX compiler identification is AppleClang <IP_ADDRESS>00100
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
--
--
-- Library base name: mimalloc
-- Version          : 2.0
-- Build type       : release
-- C Compiler       : /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
-- Compiler flags   : -Wall;-Wextra;-Wno-unknown-pragmas;-fvisibility=hidden;-Wstrict-prototypes;-Wpedantic;-Wno-static-in-inline;-ftls-model=local-dynamic
-- Compiler defines :
-- Link libraries   : /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk/usr/lib/libpthread.tbd
-- Build targets    : static
--
-- Configuring done (0.9s)
-- Generating done (0.0s)
CMake Warning:
  Manually-specified variables were not used by the project:

    BUILD_STATIC_LIBS
    BUILD_TESTING
    CMAKE_CXX_FLAGS_MISIZEREL
    CMAKE_C_FLAGS_MISIZEREL
    CMAKE_EXPORT_NO_PACKAGE_REGISTRY
    CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY

-- Build files have been written to: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep-prefix/src/mimalloc_ep-build
[  3%] Performing build step for 'mimalloc_ep'
[  6%] Building C object CMakeFiles/mimalloc-static.dir/src/stats.c.o
[ 13%] Building C object CMakeFiles/mimalloc-static.dir/src/random.c.o
[ 20%] Building C object CMakeFiles/mimalloc-static.dir/src/os.c.o
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[  3%] No update step for 'boost_ep'
[ 26%] Building C object CMakeFiles/mimalloc-static.dir/src/bitmap.c.o
[  4%] No patch step for 'boost_ep'
[  4%] No configure step for 'boost_ep'
[  4%] No build step for 'boost_ep'
[  4%] No install step for 'boost_ep'
[  4%] Completed 'boost_ep'
[ 33%] Building C object CMakeFiles/mimalloc-static.dir/src/arena.c.o
[  4%] Built target boost_ep
[ 40%] Building C object CMakeFiles/mimalloc-static.dir/src/segment-cache.c.o
[ 46%] Building C object CMakeFiles/mimalloc-static.dir/src/segment.c.o
[  5%] Creating directories for 'lz4_ep'
[  5%] Performing download step (verify and extract) for 'lz4_ep'
-- verifying file...
     file='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/lz4-v1.9.4.tar.gz'
-- verifying file... done
-- extracting...
     src='/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/lz4-v1.9.4.tar.gz'
     dst='/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-prefix/src/lz4_ep'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[  5%] No update step for 'lz4_ep'
[  5%] No patch step for 'lz4_ep'
[  5%] Performing configure step for 'lz4_ep'
CMake Deprecation Warning at CMakeLists.txt:13 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep-prefix/src/mimalloc_ep/src/segment.c:924:10: warning: variable 'page_count' set but not used [-Wunused-but-set-variable]
  size_t page_count = 0;
         ^
1 warning generated.
[ 53%] Building C object CMakeFiles/mimalloc-static.dir/src/page.c.o
-- The C compiler identification is AppleClang <IP_ADDRESS>00100
-- Detecting C compiler ABI info
/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep-prefix/src/mimalloc_ep/src/page.c:667:10: warning: variable 'count' set but not used [-Wunused-but-set-variable]
  size_t count = 0;
         ^
1 warning generated.
[ 60%] Building C object CMakeFiles/mimalloc-static.dir/src/alloc.c.o
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Performing Test CFLAG_Wall
[ 66%] Building C object CMakeFiles/mimalloc-static.dir/src/alloc-aligned.c.o
-- Performing Test CFLAG_Wall - Success
-- Performing Test CFLAG_Wextra
[ 73%] Building C object CMakeFiles/mimalloc-static.dir/src/alloc-posix.c.o
-- Performing Test CFLAG_Wextra - Success
-- Performing Test CFLAG_Wundef
[ 80%] Building C object CMakeFiles/mimalloc-static.dir/src/heap.c.o
-- Performing Test CFLAG_Wundef - Success
-- Performing Test CFLAG_Wcast_qual
/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep-prefix/src/mimalloc_ep/src/heap.c:34:10: warning: variable 'count' set but not used [-Wunused-but-set-variable]
  size_t count = 0;
         ^
/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep-prefix/src/mimalloc_ep/src/heap.c:499:10: warning: variable 'free_count' set but not used [-Wunused-but-set-variable]
  size_t free_count = 0;
         ^
/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep-prefix/src/mimalloc_ep/src/heap.c:514:10: warning: variable 'used_count' set but not used [-Wunused-but-set-variable]
  size_t used_count = 0;
         ^
3 warnings generated.
[ 86%] Building C object CMakeFiles/mimalloc-static.dir/src/options.c.o
-- Performing Test CFLAG_Wcast_qual - Success
-- Performing Test CFLAG_Wcast_align
/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep-prefix/src/mimalloc_ep/src/options.c:267:33: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
static void mi_add_stderr_output() {
                                ^
                                 void
1 warning generated.
[ 93%] Building C object CMakeFiles/mimalloc-static.dir/src/init.c.o
-- Performing Test CFLAG_Wcast_align - Success
-- Performing Test CFLAG_Wshadow
[100%] Linking C static library libmimalloc.a
[100%] Built target mimalloc-static
[  5%] Performing install step for 'mimalloc_ep'
-- Performing Test CFLAG_Wshadow - Success
-- Performing Test CFLAG_Wswitch_enum
[100%] Built target mimalloc-static
Install the project...
-- Install configuration: "RELEASE"
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep/src/mimalloc_ep/lib/mimalloc-2.0/libmimalloc.a
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep/src/mimalloc_ep/lib/cmake/mimalloc-2.0/mimalloc.cmake
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep/src/mimalloc_ep/lib/cmake/mimalloc-2.0/mimalloc-release.cmake
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep/src/mimalloc_ep/include/mimalloc-2.0/mimalloc.h
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep/src/mimalloc_ep/include/mimalloc-2.0/mimalloc-override.h
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep/src/mimalloc_ep/include/mimalloc-2.0/mimalloc-new-delete.h
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep/src/mimalloc_ep/lib/cmake/mimalloc-2.0/mimalloc-config.cmake
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/mimalloc_ep/src/mimalloc_ep/lib/cmake/mimalloc-2.0/mimalloc-config-version.cmake
-- Performing Test CFLAG_Wswitch_enum - Success
-- Performing Test CFLAG_Wdeclaration_after_statement
[  6%] Completed 'mimalloc_ep'
[  6%] Built target mimalloc_ep
[  6%] Creating directories for 're2_ep'
[  6%] Performing download step (verify and extract) for 're2_ep'
-- verifying file...
     file='/private/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/re2-2022-06-01.tar.gz'
-- verifying file... done
-- extracting...
     src='/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpnW2mtk/R.INSTALLb7604ef963da/arrow/tools/thirdparty_dependencies/re2-2022-06-01.tar.gz'
     dst='/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/re2_ep-prefix/src/re2_ep'
-- extracting... [tar xfz]
-- Performing Test CFLAG_Wdeclaration_after_statement - Success
-- Performing Test CFLAG_Wstrict_prototypes
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[  7%] No update step for 're2_ep'
[  7%] No patch step for 're2_ep'
[  7%] Performing configure step for 're2_ep'
-- Performing Test CFLAG_Wstrict_prototypes - Success
-- Performing Test CFLAG_Wpointer_arith
-- The CXX compiler identification is AppleClang <IP_ADDRESS>00100
-- Detecting CXX compiler ABI info
-- Performing Test CFLAG_Wpointer_arith - Success
-- Performing Test CFLAG_W4
-- Performing Test CFLAG_W4 - Failed
-- Configuring done (2.4s)
-- Generating done (0.0s)
CMake Warning:
  Manually-specified variables were not used by the project:

    BUILD_TESTING
    CMAKE_CXX_COMPILER
    CMAKE_CXX_FLAGS
    CMAKE_CXX_FLAGS_DEBUG
    CMAKE_CXX_FLAGS_MISIZEREL
    CMAKE_CXX_FLAGS_RELEASE
    CMAKE_CXX_FLAGS_RELWITHDEBINFO
    CMAKE_C_FLAGS_MISIZEREL
    CMAKE_EXPORT_NO_PACKAGE_REGISTRY
    CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY

-- Build files have been written to: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-prefix/src/lz4_ep-build
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
[  8%] Performing build step for 'lz4_ep'
[ 20%] Building C object CMakeFiles/lz4_static.dir/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-prefix/src/lz4_ep/lib/lz4.c.o
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Configuring done (0.6s)
-- Generating done (0.1s)
CMake Warning:
  Manually-specified variables were not used by the project:

    BUILD_STATIC_LIBS
    CMAKE_CXX_FLAGS_MISIZEREL
    CMAKE_C_COMPILER
    CMAKE_C_FLAGS
    CMAKE_C_FLAGS_DEBUG
    CMAKE_C_FLAGS_MISIZEREL
    CMAKE_C_FLAGS_RELEASE
    CMAKE_C_FLAGS_RELWITHDEBINFO
    CMAKE_EXPORT_NO_PACKAGE_REGISTRY

-- Build files have been written to: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/re2_ep-prefix/src/re2_ep-build
[  9%] Performing build step for 're2_ep'
[  1%] Building CXX object CMakeFiles/re2.dir/re2/bitstate.cc.o
[  2%] Building CXX object CMakeFiles/re2.dir/re2/compile.cc.o
[ 40%] Building C object CMakeFiles/lz4_static.dir/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-prefix/src/lz4_ep/lib/lz4hc.c.o
[  3%] Building CXX object CMakeFiles/re2.dir/re2/dfa.cc.o
[ 60%] Building C object CMakeFiles/lz4_static.dir/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-prefix/src/lz4_ep/lib/lz4frame.c.o
[ 80%] Building C object CMakeFiles/lz4_static.dir/var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-prefix/src/lz4_ep/lib/xxhash.c.o
[100%] Linking C static library liblz4.a
[100%] Built target lz4_static
[  9%] Performing install step for 'lz4_ep'
[100%] Built target lz4_static
Install the project...
-- Install configuration: "RELEASE"
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-install/lib/liblz4.a
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-install/include/lz4.h
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-install/include/lz4frame.h
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-install/include/lz4hc.h
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-install/share/man/man1/lz4.1
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-install/lib/pkgconfig/liblz4.pc
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-install/lib/cmake/lz4/lz4Targets.cmake
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-install/lib/cmake/lz4/lz4Targets-release.cmake
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-install/lib/cmake/lz4/lz4Config.cmake
-- Installing: /var/folders/vm/bbcxtl3s63l7gn9h1tvfh1mm0000gn/T/RtmpUiyqGS/filebc7d400cb95d/lz4_ep-install/lib/cmake/lz4/lz4ConfigVersion.cmake
[  9%] Completed 'lz4_ep'
[  9%] Built target lz4_ep
[  4%] Building CXX object CMakeFiles/re2.dir/re2/filtered_re2.cc.o
[  5%] Building CXX object CMakeFiles/re2.dir/re2/mimics_pcre.cc.o
[  6%] Building CXX object CMakeFiles/re2.dir/re2/nfa.cc.o
[  7%] Building CXX object CMakeFiles/re2.dir/re2/onepass.cc.o
[  8%] Building CXX object CMakeFiles/re2.dir/re2/parse.cc.o
[  9%] Building CXX object CMakeFiles/re2.dir/re2/perl_groups.cc.o
[ 10%] Building CXX object CMakeFiles/re2.dir/re2/prefilter.cc.o
[ 11%] Building CXX object CMakeFiles/re2.dir/re2/prefilter_tree.cc.o
[ 12%] Building CXX object CMakeFiles/re2.dir/re2/prog.cc.o
[ 13%] Building CXX object CMakeFiles/re2.dir/re2/re2.cc.o
[ 14%] Building CXX object CMakeFiles/re2.dir/re2/regexp.cc.o
[ 15%] Building CXX object CMakeFiles/re2.dir/re2/set.cc.o
[ 16%] Building CXX object CMakeFiles/re2.dir/re2/simplify.cc.o
[ 17%] Building CXX object CMakeFiles/re2.dir/re2/stringpiece.cc.o
[ 18%] Building CXX object CMakeFiles/re2.dir/re2/tostring.cc.o
[ 20%] Building CXX object CMakeFiles/re2.dir/re2/unicode_casefold.cc.o
[ 21%] Building CXX object CMakeFiles/re2.dir/re2/unicode_groups.cc.o
[ 22%] Building CXX object CMakeFiles/re2.dir/util/rune.cc.o
[ 23%] Building CXX object CMakeFiles/re2.dir/util/strutil.cc.o
[ 24%] Linking CXX static library libre2.a
[ 24%] Built target re2
[ 25%] Building CXX object CMakeFiles/testing.dir/re2/testing/backtrack.cc.o
[ 26%] Building CXX object CMakeFiles/testing.dir/re2/testing/dump.cc.o
[ 27%] Building CXX object CMakeFiles/testing.dir/re2/testing/exhaustive_tester.cc.o
[ 28%] Building CXX object CMakeFiles/testing.dir/re2/testing/null_walker.cc.o
[ 29%] Building CXX object CMakeFiles/testing.dir/re2/testing/regexp_generator.cc.o
[ 30%] Building CXX object CMakeFiles/testing.dir/re2/testing/string_generator.cc.o
[ 31%] Building CXX object CMakeFiles/testing.dir/re2/testing/tester.cc.o
[ 32%] Building CXX object CMakeFiles/testing.dir/util/pcre.cc.o
[ 33%] Linking CXX static library libtesting.a
[ 33%] Built target testing
[ 34%] Building CXX object CMakeFiles/compile_test.dir/re2/testing/compile_test.cc.o
[ 35%] Building CXX object CMakeFiles/charclass_test.dir/re2/testing/charclass_test.cc.o
[ 36%] Building CXX object CMakeFiles/charclass_test.dir/util/test.cc.o
[ 37%] Building CXX object CMakeFiles/compile_test.dir/util/test.cc.o
[ 38%] Linking CXX executable charclass_test
[ 40%] Linking CXX executable compile_test
[ 40%] Built target charclass_test
[ 40%] Built target compile_test
[ 41%] Building CXX object CMakeFiles/filtered_re2_test.dir/re2/testing/filtered_re2_test.cc.o
[ 42%] Building CXX object CMakeFiles/mimics_pcre_test.dir/re2/testing/mimics_pcre_test.cc.o
[ 43%] Building CXX object CMakeFiles/mimics_pcre_test.dir/util/test.cc.o
[ 44%] Linking CXX executable mimics_pcre_test
[ 44%] Built target mimics_pcre_test
[ 45%] Building CXX object CMakeFiles/parse_test.dir/re2/testing/parse_test.cc.o
[ 46%] Building CXX object CMakeFiles/filtered_re2_test.dir/util/test.cc.o
[ 47%] Linking CXX executable filtered_re2_test
[ 47%] Built target filtered_re2_test
[ 48%] Building CXX object CMakeFiles/parse_test.dir/util/test.cc.o
[ 49%] Building CXX object CMakeFiles/possible_match_test.dir/re2/testing/possible_match_test.cc.o
[ 50%] Linking CXX executable parse_test
[ 50%] Built target parse_test
[ 51%] Building CXX object CMakeFiles/re2_test.dir/re2/testing/re2_test.cc.o
[ 52%] Building CXX object CMakeFiles/possible_match_test.dir/util/test.cc.o
[ 53%] Linking CXX executable possible_match_test
[ 53%] Built target possible_match_test
[ 54%] Building CXX object CMakeFiles/re2_test.dir/util/test.cc.o
[ 55%] Building CXX object CMakeFiles/re2_arg_test.dir/re2/testing/re2_arg_test.cc.o
[ 56%] Building CXX object CMakeFiles/re2_arg_test.dir/util/test.cc.o
[ 57%] Linking CXX executable re2_arg_test
[ 57%] Built target re2_arg_test
[ 58%] Building CXX object CMakeFiles/regexp_test.dir/re2/testing/regexp_test.cc.o
[ 60%] Linking CXX executable re2_test
[ 60%] Built target re2_test
[ 61%] Building CXX object CMakeFiles/regexp_test.dir/util/test.cc.o
[ 62%] Building CXX object CMakeFiles/required_prefix_test.dir/re2/testing/required_prefix_test.cc.o
[ 63%] Linking CXX executable regexp_test
[ 63%] Built target regexp_test
[ 64%] Building CXX object CMakeFiles/search_test.dir/re2/testing/search_test.cc.o
[ 65%] Building CXX object CMakeFiles/required_prefix_test.dir/util/test.cc.o
[ 66%] Linking CXX executable required_prefix_test
[ 66%] Built target required_prefix_test
[ 67%] Building CXX object CMakeFiles/search_test.dir/util/test.cc.o
[ 68%] Building CXX object CMakeFiles/set_test.dir/re2/testing/set_test.cc.o
[ 69%] Linking CXX executable search_test
[ 69%] Built target search_test
[ 70%] Building CXX object CMakeFiles/simplify_test.dir/re2/testing/simplify_test.cc.o
[ 71%] Building CXX object CMakeFiles/set_test.dir/util/test.cc.o
[ 72%] Linking CXX executable set_test
[ 72%] Built target set_test
[ 73%] Building CXX object CMakeFiles/string_generator_test.dir/re2/testing/string_generator_test.cc.o
[ 74%] Building CXX object CMakeFiles/simplify_test.dir/util/test.cc.o
[ 75%] Linking CXX executable simplify_test
[ 75%] Built target simplify_test
[ 76%] Building CXX object CMakeFiles/string_generator_test.dir/util/test.cc.o
[ 77%] Building CXX object CMakeFiles/dfa_test.dir/re2/testing/dfa_test.cc.o
[ 78%] Linking CXX executable string_generator_test
[ 78%] Built target string_generator_test
[ 80%] Building CXX object CMakeFiles/dfa_test.dir/util/test.cc.o
[ 81%] Building CXX object CMakeFiles/exhaustive1_test.dir/re2/testing/exhaustive1_test.cc.o
[ 82%] Linking CXX executable dfa_test
[ 82%] Built target dfa_test
[ 83%] Building CXX object CMakeFiles/exhaustive1_test.dir/util/test.cc.o
[ 84%] Building CXX object CMakeFiles/exhaustive2_test.dir/re2/testing/exhaustive2_test.cc.o
[ 85%] Linking CXX executable exhaustive1_test
[ 85%] Built target exhaustive1_test
[ 86%] Building CXX object CMakeFiles/exhaustive2_test.dir/util/test.cc.o
[ 87%] Building CXX object CMakeFiles/exhaustive3_test.dir/re2/testing/exhaustive3_test.cc.o
[ 88%] Linking CXX executable exhaustive2_test
[ 88%] Built target exhaustive2_test
[ 89%] Building CXX object CMakeFiles/exhaustive3_test.dir/util/test.cc.o
[ 90%] Building CXX object CMakeFiles/exhaustive_test.dir/re2/testing/exhaustive_test.cc.o
[ 91%] Linking CXX executable exhaustive3_test
[ 91%] Built target exhaustive3_test
[ 92%] Building CXX object CMakeFiles/exhaustive_test.dir/util/test.cc.o
[ 93%] Building CXX object CMakeFiles/random_test.dir/re2/testing/random_test.cc.o
[ 94%] Linking CXX executable exhaustive_test
[ 94%] Built target exhaustive_test
[ 95%] Building CXX object CMakeFiles/random_test.dir/util/test.cc.o
[ 96%] Building CXX object CMakeFiles/regexp_benchmark.dir/re2/testing/regexp_benchmark.cc.o
[ 97%] Linking CXX executable random_test
[ 97%] Built target random_test
[ 98%] Building CXX object CMakeFiles/regexp_benchmark.dir/util/benchmark.cc.o
[100%] Linking CXX executable regexp_benchmark
[100%] Built target regexp_benchmark
[ 10%] Performing install step for 're2_ep'
[ 24%] Built target re2
[ 33%] Built target testing
[ 36%] Built target charclass_test
[ 40%] Built target compile_test
[ 43%] Built target filtered_re2_test
[ 46%] Built target mimics_pcre_test
[ 49%] Built target parse_test
[ 52%] Built target possible_match_test
[ 55%] Built target re2_test
[ 58%] Built target re2_arg_test
[ 62%] Built target regexp_test
[ 65%] Built target required_prefix_test
[ 68%] Built target search_test
[ 71%] Built target set_test
[ 74%] Built target simplify_test
[ 77%] Built target string_generator_test
[ 81%] Built target dfa_test
[ 84%] Built target exhaustive1_test
[ 87%] Built target exhaustive2_test
[ 90%] Built target exhaustive3_test
[ 93%] Built target exhaustive_test
[ 96%] Built target random_test
[100%] Built target regexp_benchmark
Install the project...

 My testing just now showed that:

Created On
Installed On
Does it Work?

Windows
Windows
👍

macOS
Windows
👍

Windows
macOS
👎

So I assume windows to macOS and/or Linux may not be working for others due to what appears to be an RE2 issue. Let me know what you think and I can file an issue.

I'm +1 to merging if it fixes the immediate issue and improves the state of affairs; we can open another ticket for Windows -> MacOS (that wasn't working before anyway, right?)

fwiw I tested building on Windows and installing on Linux, and that worked. My Linux environment was based on this Docker image: https://hub.docker.com/_/r-base (I didn't make any changes to it except mounting my workspace as a volume).

@github-actions crossbow submit test-r-offline-maximal

I'm not sure if Windows->macOS worked before or not but it seems like it should? I'll file an issue. Thanks for testing Windows -> Linux, @hutch3232.
@thisisnic I think this is good to merge, esp. since the offline crossbow build worked.


Testing if one can remove the hash without detrimental side effects

The default vue mechanism uses # to prevent page reloads. Checking if this allows for removing it without other side effects. This is a test PR.

@AlmightyYakob - it looked to me that this works. would love to know if there are other consequences of enabling this.

We cannot merge this, as it requires the server to have knowledge about the page structure. Here is an example of a failed page load within the GUI. Accessing any GUI URL besides the base will return Page Not Found. Relevant vue-router docs here.

There may be a way to configure Netlify to serve this correctly, I can push a change to this PR later to test that out

@AlmightyYakob - thanks. that makes sense the way the router behaves.
don't worry about this too much at this state. i was trying to serve it via the redirector service instead of netlify so that people don't continue to cite gui.dandiarchive.org in publications.
the goal would be for the url to remain as dandiarchive.org/dandiset/00000X  in the browser and would therefore match directly with what we are getting from identifiers.org. and potentially since we run the redirector service, i could configure nginx to do the conditional rewrite.
i'll leave this open for now, but consider it low priority relative to other ui issues.

Prior discussion(s) are available in https://github.com/dandi/dandiarchive/issues/446 which I would consider closed if this PR is merged.

sorry @yarikoptic - i should have searched more. as discussed above, this may be something we do with the redirector since we can run the reverse proxy there with configurability. but i also understand that changing this makes it dependent on the server, which would indeed be nice to avoid.

The change I just pushed seems to have fixed the issue, and now accessing a nested URL like https://deploy-preview-612--gui-dandiarchive-org.netlify.app/dandiset/000004 loads without issue. If having the URLs change does interest us, I think we should hold off merging until we're sure it has no consequences, or that they've all been accounted for.

nice! yes let's hold off on merging this one to we have settled decisions.

I converted this to a draft PR since it's not ready for merging yet.

Rebased after merging https://github.com/dandi/dandiarchive/pull/814

@satra, should we continue to hang onto this PR? The scope of the initial experiment has grown quite a bit, and I wonder if closing this and relying on #446 and the discussion in this thread for a future effort would be prudent.

the scope is probably moving away from gui.dandiarchive.org as general goal, so indeed we can close this for now.


add source_dir & rename config.yml -> config.yaml

This change updates the .do/* files to include a source directory so Hugo can be detected by the buildpack.
It also renames the config.yml to config.yaml which is expected by the buildpack. Note: I've submitted a PR upstream to add config.yml to the detection process.

I still get this error after the PR .do/deploy.template.yaml is present.

Hi @debsahu
Thanks for posting this picture, it was helpful. You have uncovered a bug with deploying Apps that use a source_dir with the deploy to DO button. We have identified a solution. Unfortunately it's not a quick fix, so it could be bit before we are able to get all the pieces in alignment.
As a workaround, you can deploy the app.yaml directly. Using the doctl tool or creating an App using the Hugo sample (give it the name you want your app to have), then go to the App Settings and Upload your App.yaml file.
Alternatively, I managed to get your this projects deployed by moving the hugo project to the root of the directory. I have a fork of your project here: https://github.com/jonfriesen/debsahu-hugo with the project moved into the root.
Thanks for helping us uncover this bug, we hope to have it resolved in the near future!

Thanks got it deployed using app.yaml upload. Works great!


[5.2] Illuminate\Filesystem\Filesystem::basename  BadMethodCallException

Using artisan tinker with Laravel 5.2 on debian
Source of Illuminate\Filesystem\Filesystem shows public methods:
basename(..)  line 206
dirname(...)    line 217
When i try to call either of these using either static File:: alias, or directly from instantiated class:
BadMethodCallException with message 'Method basename does not exist.'

Steps to reproduce:
1. Verify static call to Facade works

$ artisan tinker
>>> use File;
>>> $path = 'storage/logs/laravel.log'
>>>File::name($path);
"laravel"

2. Attempt to call method `basename(string $path)` statically from Facade:

>>>File::basename($path)
**BadMethodCallException with message 'Method basename does not exist**.'
>>>q

3.  Attempt to call method `basename(string $path)` from instance of ...\Filesystem

$ artisan tinker
>>> use Illuminate\Filesystem\Filesystem as FS;
>>> $path = 'storage/logs/laravel.log';
**"storage/logs/laravel.log"**
>>> $fs = new FS;
** Illuminate\Filesystem\Filesystem {#762}**
>>> $fs->basename($path);
**BadMethodCallException with message 'Method basename does not exist**.'

4. Use Reflection class to inspect instance - (!! basename()  is not present !! )

>>>$r = new ReflectionClass('Illuminate\Filesystem\Filesystem');
**"ReflectionClass {#764"**
>>> $methods = $r->getMethods();
>>> foreach ($methods as $method) { echo PHP_EOL . $method->nam
exists
get
getRequire
requireOnce
put
prepend
append
delete
move
copy
name
extension
type
mimeType
size
lastModified
isDirectory
isWritable
isFile
glob
files
allFiles
directories
makeDirectory
copyDirectory
deleteDirectory
cleanDirectory
macro
hasMacro
__callStatic
__call

5. Workaround...

>>> pathinfo('storage/logs/laravel.log', PATHINFO_BASENAME);
=> "laravel.log"
>>> pathinfo('storage/logs/laravel.log', PATHINFO_DIRNAME);
=> "storage/logs"
>>>

looks like I was using an older version of the framework before Feb 29 when these methods were added.  Not a bug this was fixed with a simple:
$ composer update


Label overflow shrink bug fix

This is the fix for the issue #565

Thanks, what about invoke restoreFontSize() when overflow changed?
The setString maybe invoked frequently

Thanks, what about invoke restoreFontSize() when overflow changed?
The setString maybe invoked frequently

I think overflow changes all the time whenever you change the text it has to check at some point
and setString only gets invoked when string is different so there is no real issue to it being in setString

I think overflow changes all the time whenever you change the text it has to check at some point
and setString only gets invoked when string is different so there is no real issue to it being in setString

Can you write a test case and post some screenshot to reproduce the issue?
Bye the way, you can fetch and update latest from dev and create a new PR to avoid conflicting.
You can refer to https://github.com/adxeproject/adxe/discussions/411

Can you write a test case and post some screenshot to reproduce the issue?
Bye the way, you can fetch and update latest from dev and create a new PR to avoid conflicting.
You can refer to https://github.com/adxeproject/adxe/discussions/411

setString only gets invoked when string is different so there is no real issue to it being in setString

As I mentioned in the comment I posted in the issue thread, there are instances where a label is updated a lot, such as when using it to display something like a counter.  That would force a call to restoreFontSize() on every single setString(), and from the look of that method, it may have an impact on performance.

okay ill do the best in finding a better solution, if i have the time ill do a quick performance testing with and without the function

I did a test and the results were bad and I mean BAD
10000 setString calls with random text with restoreFontSize function takes is long is 1000ms
but doing the same without calling restoreFontSize takes as little as 24ms
I have thought of
void Label::setString(const std::string& text)
{
    if (text.compare(_utf8Text))
    {
        if (_overflow != Overflow::NONE)
            restoreFontSize();

        _utf8Text = text;
        _contentDirty = true;

        std::u32string utf32String;
        if (StringUtils::UTF8ToUTF32(_utf8Text, utf32String))
        {
            _utf32Text  = utf32String;
        }
    }
}

But i dont trust it.. ill think of something else

This is the closest I can get to
void Label::setString(const std::string& text)
{
    if (text.compare(_utf8Text))
    {
        if (_overflow == Overflow::SHRINK && getRenderingFontSize() < _originalFontSize)
            restoreFontSize();

        _utf8Text = text;
        _contentDirty = true;

        std::u32string utf32String;
        if (StringUtils::UTF8ToUTF32(_utf8Text, utf32String))
        {
            _utf32Text  = utf32String;
        }
    }
}

every time I try to restore or rescale when rendering font is lower than original in contentUpdate some how crashes
so I've put it in setString because it doesn't get called in visit or draw, first we check if the overflow is shrink if so then we see if the rendering font size is smaller than the original font size that the object was created on. (rendering font size being the font size of the label after shrink has modified it and it gets restored back to the original font size when ever you call restoreFontSize thus breaking this condition and giving us no performance impact). If so we restore the font size, I've ran the tests again and it yields pretty good results (24ms with and without this condition on 10000 tries). Now restoreFontSize is called rarely even if you call setString multiple times, Also since shrink modifies and recalculates the bounds again restoreFontSize puts it back, since you're losing performance one way or another from shrink.
So what do you think?

If somehow you don't know the issue in the first place here are some screen shots
Before Adding restoreFontSize()

This is of course wrong 'short :>' should look like this

I achieved this by adding the restoreFontSize() above of course
and yes restoreFontSize() doesn't ruin shrink the text still gets smaller is the text gets bigger like this:

So what do you think?

Calling restoreFontSize() from setString() is perhaps not the correct fix for several reasons, most importantly being the severe performance drop, as you can see from your own testing.  Another reason is that it seems more like it's being fixed in the wrong place, or rather in the wrong way.
The important part to look at is either in alignText or in shrinkLabelToContentSize(), and focusing on what happens in there is most likely the key to fixing this issue.
scaleFontSizeDown eventually gets called with a new font size, but it doesn't change the configured font size, but rather changes an internal value that is used to render out the text.  Side not, that method should probably be renamed to "scaleFontSize()`, since it doesn't only scale down.
Now, look at what happens in setOverflow().  When that method is called, the label is forced to re-render if the overflow type changes, and it doesn't call restoreFontSize() to do this, instead it calls rescaleWithOriginalFontSize():
void Label::rescaleWithOriginalFontSize()
{
    auto renderingFontSize = this->getRenderingFontSize();
    if (_originalFontSize - renderingFontSize >= 1)
    {
        this->scaleFontSizeDown(_originalFontSize);
    }
}

In this case, scaleFontSizeDown() is actually scaling the font up (the function name is completely misleading).  Calling rescaleWithOriginalFontSize may also not be the correct fix.
The reason the font is shrunk has to do with _textDesiredHeight:
bool Label::isVerticalClamp()
{
    if (_textDesiredHeight > _contentSize.height)
    {
        return true;
    }
    else
    {
        return false;
    }
}

This gets called from Label::alignText(), which is where it does the check for  Overflow::SHRINK:
if (_overflow == Overflow::SHRINK)
{
    float fontSize = this->getRenderingFontSize();

    if (fontSize > 0 && isVerticalClamp())
    {
        this->shrinkLabelToContentSize(CC_CALLBACK_0(Label::isVerticalClamp, this));
    }
}

The problem is how to ensure _textDesiredHeight contains a value based on the original font size, and not the current font size, which is what is happening at the moment.  The current font size is based on the last loop where it may have already been shrunk down, which results in the text display problem you reported.
I don't have time at the moment to deep dive into this, but I'll see what I can do over the next few days, unless you manage to figure out a proper fix for this issue in the meantime.    One thing we need to agree on is that restoreFontSize is not the correct fix for this issue, and more like a blanket call that just happens to fix the issue.

yeah you're right, I'll think of something else

I just thought of something, and tried it out, and the results are promising.  In Label::visit(), you can add something like this:
if (_overflow == Overflow::SHRINK && this->getRenderingFontSize() < _originalFontSize)
{
    rescaleWithOriginalFontSize();
}

More specifically:
void Label::visit(Renderer* renderer, const Mat4& parentTransform, uint32_t parentFlags)
{
    if (!_visible || (_utf8Text.empty() && _children.empty()))
    {
        return;
    }

    if (_systemFontDirty || _contentDirty)
    {
        // Restore the font back to the original size if it is smaller (given we only ever shrink the output)
        if (_overflow == Overflow::SHRINK && this->getRenderingFontSize() < _originalFontSize)
        {
            rescaleWithOriginalFontSize();
        }

        updateContent();
    }
...
}

With 1000 loops of the following:
auto start = std::chrono::high_resolution_clock::now();
for (size_t i = 0; i < 1000; i++)
{
    label1->setString(std::to_string(i));
}
auto stop = std::chrono::high_resolution_clock::now();
auto duration = std::chrono::duration_cast<std::chrono::microseconds>(stop - start);

CCLOG("Duration: %d", duration.count());

(the following numbers based on my specific hardware setup, but the differences should be obvious with any hardware)
Duration of default code with problem: ~1173
Duration with the restoreFontSize() fix: ~59540
Duration with the new suggested fix in Label::visit(): ~1202
If you have time, check if this fix works for you.

weird.. I tried your exact solution but it kept crashing now it isn't, I guess I've done something wrong, it's working now flawlessly :D
also isn't it the same as putting these lines of code in setString() because setString() makes the content dirty anyways and you're going to rescale the text anyways, so performance isn't gonna be any different if you put it in setString or visit.
So should I do a new pull request now? I'm kinda new to this :D

also isn't it the same as putting these lines of code in setString() because setString() makes the content dirty anyways and you're going to rescale the text anyways, so performance isn't gonna be any different if you put it in setString or visit.

No, it's not the same, because it'll be called on every single setString(), and if it were in setString(), it results in this duration for the 1000 loop test:
Duration: 267572

Now that you mention it, if I move restoreFontSize() to Label::visit(), it also fixes the issue, and gives these results on multiple runs of the test:
Duration: 1291
Duration: 1233
Duration: 1149
Duration: 1177

So, the source of the performance issue is because of applying the fix in setString().

So should I do a new pull request now? I'm kinda new to this :D

You don't need to create a new pull request, and you shouldn't, because it just confuses things.  Just update the current pull request.

@DelinWorks Please update your branch first

Goto your fork github page
Click Fetch upstream

Okay I deleted my fork and forked it again lol
but dont worry its now updated i will make a new branch called "label-fix"

Okay I deleted my fork and forked it again lol

Oh no, you shouldn't have. Now it's going to create yet another new pull request.

Hold on wait

How do i create a new branch xD

cool

How do i create a new branch xD

One way is to click the dropdown, and just type the name you want in the editbox, and press enter.

Like this?

Like this?

Yes.

Let's goo


unable to download video from youtube

Checklist

[ ] I'm reporting a broken site support issue
[ ] I've verified that I'm running youtube-dl version 2019.10.16
[ ] I've checked that all provided URLs are alive and playable in a browser
[ ] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[ ] I've searched the bugtracker for similar bug reports including closed ones
[ ] I've read bugs section in FAQ

Verbose log

PASTE VERBOSE LOG HERE

Description

youtube-dl 'https://youtu.be/v4XO_y3RErI' -v
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['https://youtu.be/v4XO_y3RErI', '-v']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2018.12.09
[debug] Python version 3.7.4 (CPython) - Linux-5.2.11-1-MANJARO-x86_64-with-arch-Manjaro-Linux
[debug] exe versions: ffmpeg n4.2, ffprobe n4.2, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] v4XO_y3RErI: Downloading webpage
[youtube] v4XO_y3RErI: Downloading video info webpage
WARNING: unable to download video info webpage: HTTP Error 429: Too Many Requests
WARNING: unable to download video info webpage: HTTP Error 429: Too Many Requests
WARNING: unable to download video info webpage: HTTP Error 429: Too Many Requests
WARNING: unable to download video info webpage: HTTP Error 429: Too Many Requests
WARNING: unable to download video info webpage: HTTP Error 429: Too Many Requests
Traceback (most recent call last):
File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "/usr/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/usr/local/bin/youtube-dl/main.py", line 19, in
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 472, in main
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 462, in _real_main
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 2002, in download
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 793, in extract_info
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 508, in extract
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/youtube.py", line 1651, in _real_extract
TypeError: argument of type 'NoneType' is not iterable

youtube-dl 'https://youtu.be/v4XO_y3RErI' -v
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['https://youtu.be/v4XO_y3RErI', '-v']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2019.10.16
[debug] Python version 3.7.4 (CPython) - Linux-5.2.11-1-MANJARO-x86_64-with-arch-Manjaro-Linux
[debug] exe versions: ffmpeg 4.2, ffprobe 4.2, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] v4XO_y3RErI: Downloading webpage
[youtube] v4XO_y3RErI: Downloading video info webpage
WARNING: unable to download video info webpage: HTTP Error 429: Too Many Requests
WARNING: unable to download video info webpage: HTTP Error 429: Too Many Requests
WARNING: unable to download video info webpage: HTTP Error 429: Too Many Requests
WARNING: unable to download video info webpage: HTTP Error 429: Too Many Requests
ERROR: v4XO_y3RErI: YouTube said: Unable to extract video data
Traceback (most recent call last):
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 796, in extract_info
ie_result = ie.extract(url)
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 530, in extract
ie_result = self._real_extract(url)
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/youtube.py", line 1836, in _real_extract
'YouTube said: %s' % unavailable_message, expected=True, video_id=video_id)
youtube_dl.utils.ExtractorError: v4XO_y3RErI: YouTube said: Unable to extract video data

[debug] youtube-dl version 2018.12.09
Outdated version. Please update to the latest version which is 2019.10.16

WARNING: unable to download video info webpage: HTTP Error 429: Too Many Requests

Have you tried to download many videos lately?

no


uses %L to add description to KDoc

KotlinPoet uses % as a placeholder, uses %L allow to add description with % in it
fix #218

Thanks for the approval @srinivasankavitha !
If this PR is ok for you could you please add the hacktoberfest-accepted label on this PR ? It will help me complete the challenge  😃


Create scrollTo method.

Allows content to be animated to a scroll position with appropriate callbacks. Closely mirrors slideTo method.
Although this feature can be used with slides, it is most useful in free mode. See https://github.com/nolimits4web/swiper/issues/3268.

Website documentation update (https://github.com/nolimits4web/swiper-website/pull/42)

Merged, thanks


Running on x86

Hi I've tried to get this going on my x86 (x64) based Synology NAS (DS918)
I changed the Dockerfile source for speedtest to:
wget -O speedtest-cli.tgz https://install.speedtest.net/app/cli/ookla-speedtest-1.0.0-x86_64-linux.tgz
Influx and Grafana spin up without issue, but the speedtest container restarts continuously. The error is
standard_init_linux.go:230: exec user process caused: exec format error
Which is believe is an architecture error ? Is there something else I need to modify to get it going on x86 ?

Hi, I'm not familiar with the differences between x86 and arm on a detailed level. How are you starting the three containers? Do you use your locally built speedtest image?

Rookie error - I was still loading your speedtest image from GitHub :)
Changed to my locally built image and working perfectly
Thanks for a great project !

Hi @rjcds can you tell me which step did you do to make it working on x86 arch ? I'm facing the same issue, i change also the speedtest cli script by the one for x86 but still the error
thx

Have you modified the docker-compose.yaml to point to your locally built x86 version of speedtest ? Otherwise I think it will pull the ARM one from this repo, and you'll get the architecture errors...

Do you mean doing something there ?

I didn't modify it indeed, how can I specify my own image ?

speedtest:
#    image: sthuber90/speedtest
    build: /path/to/your-image/


Docs: Api reference docs update for Payments - Create

Type of Change

[ ] Bugfix
[ ] New feature
[ ] Enhancement
[ ] Refactoring
[ ] Dependency updates
[X] Documentation
[ ] CI/CD

Description
This is regarding the API Reference Doc changes using OpenAPI.
This PR just the doc changes for Payments - Create (Including the Payments - Response)
Additional Changes

[ ] This PR modifies the API contract
[ ] This PR modifies the database schema
[ ] This PR modifies application configuration/environment variables

Motivation and Context

Partial resolution of #5014
How did you test it?

Checklist

[ ] I formatted the code cargo +nightly fmt --all
[X] I addressed lints thrown by cargo clippy
[X] I reviewed the submitted code
[ ] I added unit tests for my changes where possible

List of fields to be removed from the api reference for payments request

merchant_id - remove in all three requests
capture_on
retry_action in PaymentsCreateRequest
feature_metadata
card_cvc in all three requests


Add support for optional arguments to git status

I thought this would solve a problem I was working on, but realized later that it won't.  It still might be valuable, especially if you want to look for changes only in a specific directory/file (new pathspec input).

Nice! Thanks, this is great.


Make Tranquils not useless

All boots are mean to help farm right?  So how about another farming mechanic for these extremely useless as of yet boots.  Have them give bonus gold from creep kills, but here's the catch the bonus gold grows over time and it's not great if you're killing creeps constantly only if you do so sparingly.  I'm thinking the amount of gold you get would have logarithmic growth with the curve increasing with level of your boots.  The point of these boots would be they allow you to harass the enemy directly without losing out on gold too much so long as you take the occasional creep kill.

Tranquils have been reworked. Thank you for the help.


add full integration with Renovate

example of renovate lock file PR: https://github.com/INRIA/spoon/pull/5875/files

first version done by @MartinWitt, still a few things to be done to get merged
https://github.com/renovatebot/renovate/pull/23060


BUG: fixed issue with header sticking and submit button missing

Resolves #543
🔧 What changed

the overflow-y-auto class was causing the topnav on most pages to be sticky....most of the time.  Removing this fix the submit button being in view
also added some padding below the button for UX happiness
fixed the other pages while I was at it

🧪 Testing instructions
📸 Screenshots

Before

https://github.com/ourjapanlife/findadoc-web/assets/4411499/fce6ac25-059a-44f4-96a1-2cf77db6cdf1

After

@NabbeunNabi  confirmed it works on mobile as well 👍  deploy previews FTW!

@ermish tests failed?

Closing this since the margin changes will be in #545


Remove package-lock.json file from vcx nodejs wrapper

Signed-off-by: artem.ivanov<EMAIL_ADDRESS>

@jovfer Probably not critical to include package-lock.json in vcx demo, but a rule of thumb is to include package-lock.json in repository. The reasoning behind it is here https://stackoverflow.com/questions/44206782/do-i-commit-the-package-lock-json-file-created-by-npm-5/44210813 Particularly good to note comments by curiousdannii  and  Panu Horsmalahti under the accepted answer.

Why are we duplicating what I already did and proved it didn't work?

@Patrik-Stas In my opinnion vcx demo should be moved to the samples folder. And lock file will be committed there. But for wrapper lock file shouldn't be commited. I also have checked if openssl and zmq wrappers do i.

@mattraffel Yesterday you wrote that couldn't achive changes we had agreed before (removing lock files from folder).
I had tried the solutionyou you had provided and it didn't work for me.
I tried to solve tsconfig errors and pretty fast found the solution.

@mattraffel in other words Artem not duplicates but extend your attempt and have found a solution
@Patrik-Stas @Artemkaaas @mattraffel I think we have 2 options:

merge this one (removing lock files)
or use npm audit fix and just increment problematic dependency issue.

2nd option wasn't work in Matt's environment (the PR #1528 just re-generates lock files, without increment of nested dependency version)
but in my env I'm able to have updated dependency and resolved security warning

alternative solution #1528 has been merged


[BugFix] Fixed compile error

Fixes #40441
What type of PR is this:

[x] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Does this PR entail a change in behavior?

[ ] Yes, this PR will result in a change in behavior.
[x] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[ ] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[ ] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

[ ] This is a backport pr

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[ ] 3.2
[ ] 3.1
[ ] 3.0
[ ] 2.5

Closed because this problem only occurs when using the latest code from the staros main branch.


Convey multispecimen sheet specimen relations to Specify

Be able to automatically populate the relationships in Specify during ingestion of multispecimen sheets.

Mapping "multispecimen" to "container name" will map these relations automatically during Workbench import.


Allowing to provide pre-built flatbuffers when building tflite C++

System information

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Android/Ubuntu
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:
TensorFlow installed from (source or binary): Source
TensorFlow version: 1.15.0
Python version: 3.6.8
Installed using virtualenv? pip? conda?: ip
Bazel version (if compiling from source): 0.24.1
GCC/Compiler version (if compiling from source): NDK r17b clang
CUDA/cuDNN version: -
GPU model and memory: -

Describe the problem
Currently tensorflow build always pulls flatbuffers on its own, resulting in duplication of flatbuffers, if user already has dependency on flatbuffers.
Due to how tensorflow headers work, it leaks dependency to generated schema (and therefore flatbuffers.h)
But as we used flatbuffers 1.10.0 in our project, we had no compilation errors due to missing header.
Since tf 1.15 schema uses some specific feature of flatbuffers 1.11.0 which results in failed build when including model.h for example
Ideally it would be great if flatbuffers schema wouldn't be leaked, but I doubt it is feasible.
So my plan is currently upgrading our own flatbuffers to 1.11.0.
But this brings me to a question, if we could somehow tell bazel to use our own flatbuffers instead of pulling its own?
P.s. I tried to find some options in configuration script, but there seem to be none. So I assume most common use case is always build own copy of flatbuffers as part of build process.
Any other info / logs
Having proper instructions to how build and install self-contained C++ tflite would be nice too :)

Hi @DoumanAsh, out of curiosity, would it help if we had a pure C API (perhaps with lightweight C++ wrappers) which did not have any kind of flatbuffer dependency in its public API?
And for the C/C++ library, are you fine if it's built as a separate shared library? Or are you buliding it as a direct bazel dependency in your project?

Hey @jdduke actually if flatbuffers wouldn't be leaked, it would be perfect for us.
The main problem right now is that not only it is leaked in headers, but GPU delegate library has these symbols public, which originally caused some asan issues.
I only noticed flatbuffers in public API because it was using our own headers which wasn't comptabile with 1.15 :(
Ideally we'd like static library, but shared library works just fine for us, we do not use bazel and package our dependencies using conan

@jdduke On side note, as 1.15 is latest release, I assume any changes related to that would be reflected only in 2.x right?

Hi There,
We are checking to see if you still need help on this, as you are using an older version of tensorflow which is officially considered end of life . We recommend that you upgrade to the latest 2.x version and let us know if the issue still persists in newer versions. Please open a new issue for any help you need against 2.x, and we will get you the right help.
This issue will be closed automatically 7 days from now. If you still need help with this issue, please provide us with more information.


AllOf support on struct fields

Please, add support to set allOf on strict filed
Ex:
type AllOf struct {
  Foo string
}

type Inline struct {
  Bar string
}

type Complex struct {
  AllOf `allOf:"true"`
  Inline
  Baz string
}

The generated definitions:
{
  "definitions": {
    "AllOf": {
      "type": "object",
      "properties": {
        "foo": {
          "type": "string"
        }
      }
    },
    "Complex": {
      "allOf": [
        {
          "$ref": "#/definitions/AllOf"
        },
        {
          "type": "object",
          "properties": {
            "bar": {
              "type": "string"
            },
            "baz": {
              "type": "string"
            }
          }
        }
      ]
    }
  }
}

The Inline definition must not be generated if it not mentioned in any $ref
Thanks!

This is OpenSource software and a PR addressing this feature is always welcome.


Minor refactor

Hi,
While going through the code, thinking about ways of adding support for partitioned databases, found some small changes that could make code more consistent. Not sure if this would help, have tried to keep the logic undisturbed, moving stuff around, tried to make it a bit more idiomatic maybe (with the little rust I know)

I verified the tests passing, but the doc-tests seem to fail on all integration tests. I see them fail on the master also. Not sure if those are expected to pass.

Okay, so it turned out to be the issue with running it on Alpine which needs slightly different set of build variables since we use OpenSSL by default here. Ran it on a x86_64 setup and now all tests are passing.

Thanks for your contribution. I've merged it in the "develop" branch.

Thank you, apologies I didn't see the develop branch earlier.