This is an automated email from the ASF dual-hosted git repository.
assignuser pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow.git
The following commit(s) were added to refs/heads/main by this push:
new 9df80fdb81 GH-38088: [R] Remove outdated references to brew and
autobrew (#38089)
9df80fdb81 is described below
commit 9df80fdb81a2af37dfa75fe225c939fba5b122a4
Author: Dewey Dunnington <[email protected]>
AuthorDate: Sun Oct 8 23:39:58 2023 -0300
GH-38088: [R] Remove outdated references to brew and autobrew (#38089)
### Rationale for this change
We no longer use autobrew to install on MacOS, so we no longer need CI jobs
or helper scripts that had previously been referenced from this install path.
### What changes are included in this PR?
This PR removes references to autobrew that are no longer needed. It also
removes the R homebrew CI job, which has been failing for several months. We
had supported homebrew because `brew install apache-arrow --HEAD` was one
method of avoiding a full binary install for potential MacOS contributors;
however, downloading nightly static libraries (e.g., #38080) is an even faster
way to get a compatible libarrow built for the R package and works on MacOS,
Windows, and Linux.
### Are these changes tested?
These changes remove tests and infrastructure that are no longer relevant.
### Are there any user-facing changes?
No.
* Closes: #38088
Authored-by: Dewey Dunnington <[email protected]>
Signed-off-by: Jacob Wujciak-Jens <[email protected]>
---
LICENSE.txt | 13 ---
dev/release/01-prepare-test.rb | 7 --
dev/release/post-11-bump-versions-test.rb | 7 --
dev/release/utils-prepare.sh | 5 --
dev/tasks/conda-recipes/r-arrow/build.sh | 2 -
.../autobrew/apache-arrow-static.rb | 99 ----------------------
.../homebrew-formulae/autobrew/apache-arrow.rb | 92 --------------------
dev/tasks/macros.jinja | 22 +----
dev/tasks/r/github.macos-linux.local.yml | 6 +-
dev/tasks/r/github.macos.autobrew.yml | 88 -------------------
dev/tasks/r/github.macos.brew.yml | 84 ------------------
dev/tasks/tasks.yml | 26 ------
go/LICENSE.txt | 11 ---
r/.Rbuildignore | 2 -
r/PACKAGING.md | 39 +--------
r/configure | 2 -
r/tools/autobrew | 80 -----------------
17 files changed, 9 insertions(+), 576 deletions(-)
diff --git a/LICENSE.txt b/LICENSE.txt
index c2b0a996fe..0423854567 100644
--- a/LICENSE.txt
+++ b/LICENSE.txt
@@ -1889,19 +1889,6 @@ for PyArrow. Ibis is released under the Apache License,
Version 2.0.
--------------------------------------------------------------------------------
-This project includes code from the autobrew project.
-
-The following files are based on code from the autobrew project:
-* r/tools/autobrew
-* dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb
-* dev/tasks/homebrew-formulae/autobrew/apache-arrow-static.rb
-
-Copyright (c) 2019, Jeroen Ooms
-License: MIT
-Homepage: https://github.com/autobrew/
-
---------------------------------------------------------------------------------
-
dev/tasks/homebrew-formulae/apache-arrow.rb has the following license:
BSD 2-Clause License
diff --git a/dev/release/01-prepare-test.rb b/dev/release/01-prepare-test.rb
index 54437e9da6..8fb23f45f0 100644
--- a/dev/release/01-prepare-test.rb
+++ b/dev/release/01-prepare-test.rb
@@ -150,13 +150,6 @@ class PrepareTest < Test::Unit::TestCase
"+ url
\"https://www.apache.org/dyn/closer.lua?path=arrow/arrow-#{@release_version}/apache-arrow-#{@release_version}.tar.gz\""],
],
},
- {
- path: "dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb",
- hunks: [
- ["- url
\"https://www.apache.org/dyn/closer.lua?path=arrow/arrow-#{@previous_version}.9000/apache-arrow-#{@previous_version}.9000.tar.gz\"",
- "+ url
\"https://www.apache.org/dyn/closer.lua?path=arrow/arrow-#{@release_version}/apache-arrow-#{@release_version}.tar.gz\""],
- ],
- },
]
unless release_type == :patch
expected_changes += [
diff --git a/dev/release/post-11-bump-versions-test.rb
b/dev/release/post-11-bump-versions-test.rb
index 8253472ccc..a017d2d70a 100644
--- a/dev/release/post-11-bump-versions-test.rb
+++ b/dev/release/post-11-bump-versions-test.rb
@@ -128,13 +128,6 @@ class PostBumpVersionsTest < Test::Unit::TestCase
"+ url
\"https://www.apache.org/dyn/closer.lua?path=arrow/arrow-#{@next_snapshot_version}/apache-arrow-#{@next_snapshot_version}.tar.gz\""],
],
},
- {
- path: "dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb",
- hunks: [
- ["- url
\"https://www.apache.org/dyn/closer.lua?path=arrow/arrow-#{@previous_version}.9000/apache-arrow-#{@previous_version}.9000.tar.gz\"",
- "+ url
\"https://www.apache.org/dyn/closer.lua?path=arrow/arrow-#{@release_version}.9000/apache-arrow-#{@release_version}.9000.tar.gz\""],
- ],
- },
]
unless release_type == :patch
expected_changes += [
diff --git a/dev/release/utils-prepare.sh b/dev/release/utils-prepare.sh
index 464702b811..23c89ad54e 100644
--- a/dev/release/utils-prepare.sh
+++ b/dev/release/utils-prepare.sh
@@ -80,11 +80,6 @@ update_versions() {
popd
pushd "${ARROW_DIR}/dev/tasks/homebrew-formulae"
- sed -i.bak -E -e \
- "s/arrow-[0-9.]+[0-9]+/arrow-${r_version}/g" \
- autobrew/apache-arrow.rb
- rm -f autobrew/apache-arrow.rb.bak
- git add autobrew/apache-arrow.rb
sed -i.bak -E -e \
"s/arrow-[0-9.\-]+[0-9SNAPHOT]+/arrow-${version}/g" \
apache-arrow-glib.rb \
diff --git a/dev/tasks/conda-recipes/r-arrow/build.sh
b/dev/tasks/conda-recipes/r-arrow/build.sh
index 340b2196a2..9f5255cbae 100755
--- a/dev/tasks/conda-recipes/r-arrow/build.sh
+++ b/dev/tasks/conda-recipes/r-arrow/build.sh
@@ -1,8 +1,6 @@
#!/bin/bash
set -ex
-export DISABLE_AUTOBREW=1
-
# arrow uses C++17
export ARROW_R_CXXFLAGS="${ARROW_R_CXXFLAGS} -std=c++17"
export LIBARROW_BUILD=false
diff --git a/dev/tasks/homebrew-formulae/autobrew/apache-arrow-static.rb
b/dev/tasks/homebrew-formulae/autobrew/apache-arrow-static.rb
deleted file mode 100644
index 4586649d0c..0000000000
--- a/dev/tasks/homebrew-formulae/autobrew/apache-arrow-static.rb
+++ /dev/null
@@ -1,99 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-# Cloned from
https://github.com/autobrew/homebrew-core/blob/high-sierra/Formula/apache-arrow.rb
-# Upstream any relevant changes (dependencies, build args ...)
-
-class ApacheArrowStatic < Formula
- desc "Columnar in-memory analytics layer designed to accelerate big data"
- homepage "https://arrow.apache.org/"
- url
"https://www.apache.org/dyn/closer.lua?path=arrow/arrow-8.0.0.9000/apache-arrow-8.0.0.9000.tar.gz"
- # Uncomment and update to test on a release candidate
- # mirror
"https://dist.apache.org/repos/dist/dev/arrow/apache-arrow-8.0.0-rc1/apache-arrow-8.0.0.tar.gz"
- sha256 "9948ddb6d4798b51552d0dca3252dd6e3a7d0f9702714fc6f5a1b59397ce1d28"
- head "https://github.com/apache/arrow.git", branch: "main"
-
- bottle do
- sha256 cellar: :any, arm64_big_sur:
"ef89d21a110b89840cc6148add685d407e75bd633bc8f79625eb33d00e3694b4"
- sha256 cellar: :any, big_sur:
"6fcb9f55d44eb61d295a8020e039a0622bdc044b220cfffef855f3e3ab8057a1"
- sha256 cellar: :any, catalina:
"bf71b17766688077fb9b4e679f309742c16524015287dd3633758c679752c977"
- end
-
- depends_on "boost" => :build
- depends_on "cmake" => :build
- depends_on "aws-sdk-cpp-static"
- depends_on "brotli"
- depends_on "lz4"
- depends_on "snappy"
- depends_on "thrift"
- depends_on "zstd"
-
- conflicts_with "apache-arrow", because: "both install Arrow"
-
- def install
- ENV.cxx11
- # https://github.com/Homebrew/homebrew-core/issues/94724
- # https://issues.apache.org/jira/browse/ARROW-15664
- ENV["HOMEBREW_OPTIMIZATION_LEVEL"] = "O2"
-
- args = %W[
- -DARROW_BUILD_SHARED=OFF
- -DARROW_BUILD_UTILITIES=ON
- -DARROW_ACERO=ON
- -DARROW_COMPUTE=ON
- -DARROW_CSV=ON
- -DARROW_DATASET=ON
- -DARROW_FILESYSTEM=ON
- -DARROW_GCS=ON
- -DARROW_JEMALLOC=ON
- -DARROW_JSON=ON
- -DARROW_MIMALLOC=ON
- -DARROW_PARQUET=ON
- -DARROW_S3=ON
- -DARROW_VERBOSE_THIRDPARTY_BUILD=ON
- -DARROW_WITH_BROTLI=ON
- -DARROW_WITH_BZ2=ON
- -DARROW_WITH_LZ4=ON
- -DARROW_WITH_SNAPPY=ON
- -DARROW_WITH_ZLIB=ON
- -DARROW_WITH_ZSTD=ON
- -DLZ4_HOME=#{Formula["lz4"].prefix}
- -DPARQUET_BUILD_EXECUTABLES=ON
- -DTHRIFT_HOME=#{Formula["thrift"].prefix}
- ]
-
- mkdir "build"
- cd "build" do
- system "cmake", "../cpp", *std_cmake_args, *args
- system "make"
- system "make", "install"
- end
- end
-
- test do
- (testpath/"test.cpp").write <<~EOS
- #include "arrow/api.h"
- int main(void) {
- arrow::int64();
- return 0;
- }
- EOS
- system ENV.cxx, "test.cpp", "-std=c++17", "-I#{include}", "-L#{lib}", \
- "-larrow", "-larrow_bundled_dependencies", "-o", "test"
- system "./test"
- end
-end
diff --git a/dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb
b/dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb
deleted file mode 100644
index 387759edf2..0000000000
--- a/dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb
+++ /dev/null
@@ -1,92 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-# https://github.com/autobrew/homebrew-core/blob/-/Formula/apache-arrow.rb
-class ApacheArrow < Formula
- desc "Columnar in-memory analytics layer designed to accelerate big data"
- homepage "https://arrow.apache.org/"
- url
"https://www.apache.org/dyn/closer.lua?path=arrow/arrow-13.0.0.9000/apache-arrow-13.0.0.9000.tar.gz"
- sha256 "9948ddb6d4798b51552d0dca3252dd6e3a7d0f9702714fc6f5a1b59397ce1d28"
- head "https://github.com/apache/arrow.git", branch: "main"
-
- bottle do
- cellar :any
- sha256 "9cd44700798638b5e3ee8774b3929f3fad815290d05572d1f39f01d6423eaad0"
=> :high_sierra
- root_url "https://autobrew.github.io/bottles"
- end
-
- # NOTE: if you add something here, be sure to add to PKG_LIBS in
r/tools/autobrew
- depends_on "boost" => :build
- depends_on "cmake" => :build
- depends_on "aws-sdk-cpp"
- depends_on "brotli"
- depends_on "lz4"
- depends_on "[email protected]"
- depends_on "snappy"
- depends_on "thrift"
- depends_on "zstd"
-
- def install
- ENV.cxx11
- args = %W[
- -DARROW_BUILD_SHARED=OFF
- -DARROW_BUILD_UTILITIES=ON
- -DARROW_ACERO=ON
- -DARROW_COMPUTE=ON
- -DARROW_CSV=ON
- -DARROW_CXXFLAGS="-D_LIBCPP_DISABLE_AVAILABILITY"
- -DARROW_DATASET=ON
- -DARROW_FILESYSTEM=ON
- -DARROW_GCS=ON
- -DARROW_JEMALLOC=ON
- -DARROW_JSON=ON
- -DARROW_MIMALLOC=ON
- -DARROW_PARQUET=ON
- -DARROW_S3=ON
- -DARROW_VERBOSE_THIRDPARTY_BUILD=ON
- -DARROW_WITH_BROTLI=ON
- -DARROW_WITH_BZ2=ON
- -DARROW_WITH_LZ4=ON
- -DARROW_WITH_SNAPPY=ON
- -DARROW_WITH_ZLIB=ON
- -DARROW_WITH_ZSTD=ON
- -DLZ4_HOME=#{Formula["lz4"].prefix}
- -DPARQUET_BUILD_EXECUTABLES=ON
- -DTHRIFT_HOME=#{Formula["thrift"].prefix}
- ]
-
- mkdir "build"
- cd "build" do
- system "cmake", "../cpp", *std_cmake_args, *args
- system "make"
- system "make", "install"
- end
- end
-
- test do
- (testpath/"test.cpp").write <<~EOS
- #include "arrow/api.h"
- int main(void) {
- arrow::int64();
- return 0;
- }
- EOS
- system ENV.cxx, "test.cpp", "-std=c++17", "-I#{include}", "-L#{lib}", \
- "-larrow", "-larrow_bundled_dependencies", "-o", "test"
- system "./test"
- end
-end
diff --git a/dev/tasks/macros.jinja b/dev/tasks/macros.jinja
index 54f676fd49..2a6cbe3e61 100644
--- a/dev/tasks/macros.jinja
+++ b/dev/tasks/macros.jinja
@@ -256,22 +256,6 @@ on:
done
{% endmacro %}
-{%- macro pin_brew_formulae(is_fork = false) -%}
-{#- This macro expects the cwd to be arrow/r -#}
- # Copy all *brew formulae
- cp ../dev/tasks/homebrew-formulae/autobrew/apache-arrow*.rb tools/
-
- # Pin the git commit in the formula to match
- pushd tools
- if [ "{{ is_fork }}" == "true" ]; then
- sed -i.bak -E -e 's/apache\/arrow.git", branch: "main"$/{{
arrow.github_repo.split("/") | join("\/") }}.git", :revision => "'"{{
arrow.head }}"'"/' apache-arrow*.rb
- else
- sed -i.bak -E -e 's/arrow.git", branch: "main"$/arrow.git", :revision
=> "'"{{ arrow.head }}"'"/' apache-arrow*.rb
- fi
- rm -f apache-arrow*.rb.bak
- popd
-{% endmacro %}
-
{%- macro github_change_r_pkg_version(is_fork, version) -%}
- name: Modify version
shell: bash
@@ -282,8 +266,6 @@ on:
DESCRIPTION
head DESCRIPTION
rm -f DESCRIPTION.bak
-
- {{ pin_brew_formulae(is_fork) }}
{% endmacro %}
{%- macro github_test_r_src_pkg() -%}
@@ -392,7 +374,7 @@ on:
"AWS_SECRET_ACCESS_KEY": '${{ secrets.AWS_SECRET_ACCESS_KEY }}',
"SCCACHE_BUCKET": '${{ secrets.SCCACHE_BUCKET }}',
"SCCACHE_REGION": '${{ secrets.SCCACHE_REGION }}',
- "SCCACHE_S3_KEY_PREFIX": sccache_key_prefix
+ "SCCACHE_S3_KEY_PREFIX": sccache_key_prefix
}
%}
{% for key, value in sccache_vars.items() %}
@@ -406,7 +388,7 @@ on:
"AWS_SECRET_ACCESS_KEY": '$(AWS_SECRET_ACCESS_KEY)',
"SCCACHE_BUCKET": '$(SCCACHE_BUCKET)',
"SCCACHE_REGION": '$(SCCACHE_REGION)',
- "SCCACHE_S3_KEY_PREFIX": sccache_key_prefix
+ "SCCACHE_S3_KEY_PREFIX": sccache_key_prefix
}
%}
{% for key, value in sccache_vars.items() %}
diff --git a/dev/tasks/r/github.macos-linux.local.yml
b/dev/tasks/r/github.macos-linux.local.yml
index f39471d5c5..c65eb79f61 100644
--- a/dev/tasks/r/github.macos-linux.local.yml
+++ b/dev/tasks/r/github.macos-linux.local.yml
@@ -20,7 +20,7 @@
{{ macros.github_header() }}
jobs:
- autobrew:
+ local:
name: "install from local source"
runs-on: {{ "${{ matrix.os }}" }}
{% if env is defined %}
@@ -37,14 +37,14 @@ jobs:
steps:
{{ macros.github_checkout_arrow()|indent }}
- - name: Configure non-autobrew dependencies (macos)
+ - name: Configure dependencies (macos)
if: contains(matrix.os, 'macOS')
run: |
brew install openssl
# disable sccache on macos as it timesout for unknown reasons
# see GH-33721
# brew install sccache
- - name: Configure non-autobrew dependencies (linux)
+ - name: Configure dependencies (linux)
if: contains(matrix.os, 'ubuntu')
run: |
sudo env \
diff --git a/dev/tasks/r/github.macos.autobrew.yml
b/dev/tasks/r/github.macos.autobrew.yml
deleted file mode 100644
index b8e23690e2..0000000000
--- a/dev/tasks/r/github.macos.autobrew.yml
+++ /dev/null
@@ -1,88 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-{% import 'macros.jinja' as macros with context %}
-{% set is_fork = macros.is_fork %}
-
-{{ macros.github_header() }}
-
-jobs:
- autobrew:
- name: "Autobrew {{ '${{ matrix.platform }} R ${{ matrix.r-version }}' }}"
- runs-on: {{ "${{ matrix.platform }}" }}
- strategy:
- fail-fast: false
- matrix:
- platform:
- - macos-11
- - macos-10.13 # self-hosted
- r-version:
- - "{{ macros.r_release.ver }}"
- - "{{ macros.r_oldrel.ver }}"
- steps:
- {{ macros.github_checkout_arrow(action_v='3')|indent }}
- - name: Configure autobrew script
- run: |
- # minio and sccache are pre-installed on the self-hosted 10.13 runner
- if [ {{ '${{ matrix.platform }}' }} != macos-10.13 ]; then
- # install minio for tests
- brew install minio
- brew install sccache
- fi
- cd arrow/r
- {{ macros.pin_brew_formulae(is_fork)|indent }}
- - uses: r-lib/actions/setup-r@v2
- if: matrix.platform != 'macos-10.13'
- with:
- r-version: {{ '${{ matrix.r-version }}' }}
- use-public-rspm: true
- - name: Setup R
- if: matrix.platform == 'macos-10.13'
- run: |
- # rig is a system utility that allows for switching
- # between pre-installed R version on the self-hosted runners
- rig default {{ '${{ matrix.r-version }}' }}
- rig system setup-user-lib
- rig system add-pak
- - uses: r-lib/actions/setup-r-dependencies@v2
- with:
- working-directory: 'arrow/r'
- extra-packages: |
- any::rcmdcheck
- any::sys
- any::readr
- - name: Check
- env:
- _R_CHECK_CRAN_INCOMING_: false
- NOT_CRAN: true
- ARROW_USE_PKG_CONFIG: false
- ARROW_R_DEV: true
- FORCE_AUTOBREW: true
- {{ macros.github_set_sccache_envvars()|indent(8)}}
- run: arrow/ci/scripts/r_test.sh arrow
- - name: Dump install logs
- run: cat arrow/r/check/arrow.Rcheck/00install.out
- if: always()
- - name: Dump test logs
- run: cat arrow/r/check/arrow.Rcheck/tests/testthat.Rout*
- if: always()
- - name: Save the test output
- if: always()
- uses: actions/upload-artifact@v2
- with:
- name: test-output
- path: arrow/r/check/arrow.Rcheck/tests/testthat.Rout*
diff --git a/dev/tasks/r/github.macos.brew.yml
b/dev/tasks/r/github.macos.brew.yml
deleted file mode 100644
index 285eefa293..0000000000
--- a/dev/tasks/r/github.macos.brew.yml
+++ /dev/null
@@ -1,84 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-{% import 'macros.jinja' as macros with context %}
-
-{{ macros.github_header() }}
-
-jobs:
- autobrew:
- name: "Homebrew + R package"
- runs-on: macOS-11
- steps:
- - name: Show system information
- run: |
- sysctl hw.optional machdep.cpu
-
- {{ macros.github_checkout_arrow()|indent }}
-
- {{ macros.configure_homebrew_arrow(formula)|indent }}
- - name: Install apache-arrow
- env:
- {{ macros.github_set_sccache_envvars()|indent(8)}}
- run: |
- brew install sccache
- # for testing
- brew install minio
-
- # TODO(ARROW-16907): apache/arrow@main seems to be installed already
- # so this does nothing on a branch/PR
- brew install -v --HEAD {{ '$(brew --repository
homebrew/core)/Formula/a/apache-arrow.rb' }}
-
- mkdir -p homebrew-logs
- cp -a ~/Library/Logs/Homebrew/apache-arrow homebrew-logs/
- - name: Save logs
- if: always()
- uses: actions/upload-artifact@v2
- with:
- name: homebrew-logs
- path: homebrew-logs
-
- - uses: r-lib/actions/setup-r@v2
- - name: Install dependencies
- run: |
- install.packages("remotes")
- remotes::install_deps("arrow/r", dependencies = TRUE)
- remotes::install_cran(c("rcmdcheck", "sys", "sessioninfo"))
- shell: Rscript {0}
- - name: Session info
- run: |
- options(width = 100)
- pkgs <- installed.packages()[, "Package"]
- sessioninfo::session_info(pkgs, include_base = TRUE)
- shell: Rscript {0}
- - name: Check
- env:
- _R_CHECK_CRAN_INCOMING_: false
- ARROW_R_VERBOSE_TEST: true
- run: arrow/ci/scripts/r_test.sh arrow
- - name: Dump install logs
- run: cat arrow/r/check/arrow.Rcheck/00install.out
- if: always()
- - name: Dump test logs
- run: cat arrow/r/check/arrow.Rcheck/tests/testthat.Rout*
- if: always()
- - name: Save the test output
- if: always()
- uses: actions/upload-artifact@v2
- with:
- name: test-output
- path: arrow/r/check/arrow.Rcheck/tests/testthat.Rout*
diff --git a/dev/tasks/tasks.yml b/dev/tasks/tasks.yml
index bb6cdb2125..e32e61bfbc 100644
--- a/dev/tasks/tasks.yml
+++ b/dev/tasks/tasks.yml
@@ -82,8 +82,6 @@ groups:
r:
- test*-r-*
- - homebrew-r-autobrew
- - homebrew-r-brew
# r-conda tasks
- conda-linux-x64-cpu-r*
- conda-linux-aarch64-cpu-r*
@@ -149,10 +147,7 @@ groups:
- conan-*
- conda-*
- java-jars
- # List the homebrews explicitly because we don't care about running
homebrew-cpp-autobrew
- homebrew-cpp
- - homebrew-r-autobrew
- - homebrew-r-brew
- nuget
- test-*
- example-*
@@ -172,10 +167,7 @@ groups:
- conda-*
- conan-*
- java-jars
- # List the homebrews explicitly because we don't care about running
homebrew-cpp-autobrew
- homebrew-cpp
- - homebrew-r-autobrew
- - homebrew-r-brew
- nuget
- wheel-*
- python-sdist
@@ -779,24 +771,6 @@ tasks:
params:
formula: apache-arrow.rb
- homebrew-cpp-autobrew:
- ci: github
- template: homebrew-formulae/github.macos.yml
- params:
- formula: autobrew/apache-arrow.rb
-
- homebrew-r-autobrew:
- # This tests that the autobrew formula + script work in practice
- ci: github
- template: r/github.macos.autobrew.yml
-
- homebrew-r-brew:
- # This tests that the autobrew formula + script work in practice
- ci: github
- template: r/github.macos.brew.yml
- params:
- formula: apache-arrow.rb
-
############################## Arrow JAR's ##################################
java-jars:
diff --git a/go/LICENSE.txt b/go/LICENSE.txt
index 9ea2e1f449..5731032983 100644
--- a/go/LICENSE.txt
+++ b/go/LICENSE.txt
@@ -1681,17 +1681,6 @@ for PyArrow. Ibis is released under the Apache License,
Version 2.0.
--------------------------------------------------------------------------------
-This project includes code from the autobrew project.
-
-* r/tools/autobrew and dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb
- are based on code from the autobrew project.
-
-Copyright (c) 2019, Jeroen Ooms
-License: MIT
-Homepage: https://github.com/jeroen/autobrew
-
---------------------------------------------------------------------------------
-
dev/tasks/homebrew-formulae/apache-arrow.rb has the following license:
BSD 2-Clause License
diff --git a/r/.Rbuildignore b/r/.Rbuildignore
index b8f768a837..f5eeba4117 100644
--- a/r/.Rbuildignore
+++ b/r/.Rbuildignore
@@ -20,8 +20,6 @@ clang_format.sh
^Makefile$
^.*\.orig$
^.*\.cmd$
-^autobrew$
-^apache-arrow.rb$
^.*\.Rhistory$
^extra-tests
STYLE.md
diff --git a/r/PACKAGING.md b/r/PACKAGING.md
index edfca651e9..64423b4d8e 100644
--- a/r/PACKAGING.md
+++ b/r/PACKAGING.md
@@ -38,32 +38,8 @@ For a high-level overview of the release process see the
Wait for the release candidate to be cut:
## After release candidate has been cut
-- [ ] Create a CRAN-release branch from the release candidate commit
-## Optional: PRs for autobrew and rtools (release candidate)
-
-Make pull requests into the [autobrew](https://github.com/autobrew) and
-[rtools-packages](https://github.com/r-windows/rtools-packages) repositories
-used by the configure script on MacOS and Windows. These pull requests will
-use the release candidate as the source.
-
-- [ ] Pull request to modify
- [the apache-arrow autobrew formula](
https://github.com/autobrew/homebrew-core/blob/high-sierra/Formula/apache-arrow.rb)
- to update the release version, SHA256 checksum of the release source file
(which can be found in the same directory as the release source file), and any
changes to dependencies and build steps that have changed in the
- [copy of the formula we have of that formula in the Arrow
repo](https://github.com/apache/arrow/blob/main/dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb)
-- [ ] Pull request to modify
- [the apache-arrow-static autobrew
formula](https://github.com/autobrew/homebrew-cran/blob/master/Formula/apache-arrow-static.rb)
- to update the version, SHA, and any changes to dependencies and build steps
that have changed in the
- [copy of the formula we have of that formula in the Arrow
repo](https://github.com/apache/arrow/blob/main/dev/tasks/homebrew-formulae/autobrew/apache-arrow-static.rb)
-- [ ] Pull request to modify the
- [autobrew
script](https://github.com/autobrew/scripts/blob/master/apache-arrow)
- to include any additions made to
-
[r/tools/autobrew](https://github.com/apache/arrow/blob/main/r/tools/autobrew).
-- [ ] Pull request to modify the
- [RTools PKGBUILD
script](https://github.com/r-windows/rtools-packages/blob/master/mingw-w64-arrow/PKGBUILD)
- to reflect changes in
- [ci/PKGBUILD](https://github.com/apache/arrow/blob/main/ci/scripts/PKGBUILD),
- uncommenting the line that says "uncomment to test the rc".
+- [ ] Create a CRAN-release branch from the release candidate commit
## Prepare and check the .tar.gz that will be released to CRAN.
@@ -77,19 +53,11 @@ use the release candidate as the source.
- [ ] Run reverse dependency checks using `archery docker run r-revdepcheck`.
## Release vote
-- [ ] Release vote passed!
-
-## PRs for autobrew and rtools (official release)
-Create new autobrew and r-windows PRs such that they use the *release*
-instead of the *release candidate*:
-
-- [ ] PR into autobrew/homebrew-core (apache-arrow autobrew formula)
-- [ ] PR into autobrew/homebrew-core (apache-arrow-static autobrew formula)
-- [ ] PR into autobrew/scripts
-- [ ] PR into r-windows/rtools-packages
+- [ ] Release vote passed!
## Generate R package to submit to CRAN
+
- [ ] If the release candidate commit updated, rebase the CRAN release branch
on that commit.
- [ ] Pick any commits that were made to main since the release commit that
@@ -107,6 +75,7 @@ Ensure linux binary packages are available:
https://apache.jfrog.io/ui/repos/tree/General/arrow/r
## Check binary Arrow C++ distributions specific to the R package
+
- [ ] Upload the .tar.gz to
[win-builder](https://win-builder.r-project.org/upload.aspx) (r-devel only)
and confirm (with Nic, who will automatically receive an email about the
results) that the check is clean.
This step cannot be completed before Jeroen has put the binaries in the
MinGW repository, i.e. [here](https://ftp.opencpu.org/rtools/ucrt64/),
[here](https://ftp.opencpu.org/rtools/mingw64/), and
[here](https://ftp.opencpu.org/rtools/mingw32/).
diff --git a/r/configure b/r/configure
index d244b1a7c1..ced3b40a68 100755
--- a/r/configure
+++ b/r/configure
@@ -373,8 +373,6 @@ find_or_build_libarrow
# We should have a valid libarrow build in $_LIBARROW_FOUND
# Now set `PKG_LIBS`, `PKG_DIRS`, and `PKG_CFLAGS` based on that.
-# _LIBARROW_FOUND should only be unset in the FORCE_AUTOBREW case,
-# and autobrew sets its own PKG_* vars. (See the TODO about changing that.)
if [ "$_LIBARROW_FOUND" != "false" ] && [ "$_LIBARROW_FOUND" != "" ]; then
set_pkg_vars ${_LIBARROW_FOUND}
fi
diff --git a/r/tools/autobrew b/r/tools/autobrew
deleted file mode 100644
index 35ffebcab3..0000000000
--- a/r/tools/autobrew
+++ /dev/null
@@ -1,80 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-# https://github.com/jeroen/autobrew/blob/gh-pages/apache-arrow
-export HOMEBREW_NO_ANALYTICS=1
-export HOMEBREW_NO_AUTO_UPDATE=1
-
-if [[ ${OSTYPE:6} -ge 20 ]]; then
- # We are on a modern enough macOS, we can use the real brew
- UPSTREAM_ORG="homebrew"
- PKG_BREW_NAME="$PKG_BREW_NAME-static"
-else
- # Official Homebrew no longer supports El-Capitan
- # so we need to use the forked autobrew version of brew that supports old
macOSes
- UPSTREAM_ORG="autobrew"
-fi
-
-if [ "$DISABLE_AUTOBREW" ]; then return 0; fi
-AUTOBREW=${TMPDIR-/tmp}
-export HOMEBREW_TEMP="$AUTOBREW/hbtmp"
-BREWDIR="$AUTOBREW/build-$PKG_BREW_NAME"
-BREW="$BREWDIR/bin/brew"
-rm -Rf $BREWDIR
-mkdir -p $BREWDIR
-echo "$(date): Auto-brewing $PKG_BREW_NAME in $BREWDIR..."
-curl -fsSL https://github.com/$UPSTREAM_ORG/brew/tarball/master | tar xz
--strip 1 -C $BREWDIR
-
-# Install bottle + dependencies
-export HOMEBREW_CACHE="$AUTOBREW"
-LOCAL_FORMULA="tools/${PKG_BREW_NAME}.rb"
-if [ -f "$LOCAL_FORMULA" ]; then
- if [[ ${OSTYPE:6} -ge 20 ]]; then
- $BREW tap
-
- # Tap https://github.com/autobrew/homebrew-cran so that we can get
dependencies from there
- $BREW tap autobrew/cran
- fi
-
- # Use the local brew formula and install --HEAD
- $BREW deps -n "$LOCAL_FORMULA" 2>/dev/null
- BREW_DEPS=$($BREW deps -n "$LOCAL_FORMULA" 2>/dev/null)
- $BREW install --force-bottle $BREW_DEPS 2>&1 | perl -pe 's/Warning/Note/gi'
- $BREW install -v --build-from-source --HEAD "$LOCAL_FORMULA" 2>&1 | perl -pe
's/Warning/Note/gi'
-else
- $BREW install --force-bottle $BREW_DEPS $PKG_BREW_NAME 2>&1 | perl -pe
's/Warning/Note/gi'
-fi
-
-# Hardcode this for my custom autobrew build
-rm -f $BREWDIR/lib/*.dylib
-AWS_LIBS="-laws-cpp-sdk-config -laws-cpp-sdk-transfer
-laws-cpp-sdk-identity-management -laws-cpp-sdk-cognito-identity
-laws-cpp-sdk-sts -laws-cpp-sdk-s3 -laws-cpp-sdk-core -laws-c-event-stream
-laws-checksums -laws-c-common -laws-crt-cpp -laws-c-io -laws-c-s3 -laws-c-auth
-laws-c-http -laws-c-cal -laws-c-compression -laws-c-mqtt -lpthread -lcurl"
-PKG_LIBS="-lparquet -larrow_dataset -larrow_acero -larrow
-larrow_bundled_dependencies -lthrift -lbrotlienc-static -lbrotlidec-static
-lbrotlicommon-static -llz4 -lsnappy -lzstd $AWS_LIBS -lssl -lcrypto"
-PKG_DIRS="-L$BREWDIR/lib"
-
-# Prevent CRAN builder from linking against old libs in /usr/local/lib
-for FILE in $BREWDIR/Cellar/*/*/lib/*.a; do
- BASENAME=`basename $FILE`
- LIBNAME=`echo "${BASENAME%.*}" | cut -c4-`
- cp -f $FILE $BREWDIR/lib/libbrew$LIBNAME.a
- echo "created $BREWDIR/lib/libbrew$LIBNAME.a"
- PKG_LIBS=`echo $PKG_LIBS | sed "s/-l$LIBNAME/-lbrew$LIBNAME/g"`
-done
-
-PKG_CFLAGS="-I$BREWDIR/opt/$PKG_BREW_NAME/include -DARROW_R_WITH_PARQUET
-DARROW_R_WITH_ACERO -DARROW_R_WITH_DATASET -DARROW_R_WITH_JSON
-DARROW_R_WITH_S3 -DARROW_R_WITH_GCS -D_LIBCPP_DISABLE_AVAILABILITY"
-
-unset HOMEBREW_NO_ANALYTICS
-unset HOMEBREW_NO_AUTO_UPDATE