[ 
https://issues.apache.org/jira/browse/ARROW-6167?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sutou Kouhei resolved ARROW-6167.
---------------------------------
       Resolution: Fixed
    Fix Version/s: 0.15.0

Issue resolved by pull request 5034
[https://github.com/apache/arrow/pull/5034]

> [R] macOS binary R packages on CRAN don't have arrow_available
> --------------------------------------------------------------
>
>                 Key: ARROW-6167
>                 URL: https://issues.apache.org/jira/browse/ARROW-6167
>             Project: Apache Arrow
>          Issue Type: Bug
>    Affects Versions: 0.14.1
>            Reporter: Neal Richardson
>            Assignee: Neal Richardson
>            Priority: Critical
>              Labels: pull-request-available
>             Fix For: 0.15.0
>
>          Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> The {{configure}} script in the R package has some 
> [magic|https://github.com/apache/arrow/blob/master/r/configure#L66-L86] that 
> should ensure that on macOS, you're guaranteed a successful library 
> installation even (especially) if you don't have libarrow installed on your 
> system. This magic also is designed so that when CRAN builds a binary package 
> for macOS, the C++ libraries are bundled and "just work" when a user installs 
> it, no compilation required. 
> However, the magic appeared to fail on CRAN this time, as the binaries linked 
> on [https://cran.r-project.org/web/packages/arrow/index.html] were built 
> without libarrow ({{arrow::arrow_available()}} returns {{FALSE}}). 
> I've identified three vectors by which you can get an arrow package 
> installation on macOS in this state:
>  # The [check|https://github.com/apache/arrow/blob/master/r/configure#L71] to 
> see if you've already installed {{apache-arrow}} via Homebrew always passes, 
> so if you have Homebrew installed but haven't done {{brew install 
> apache-arrow}}, the script won't do it for you like it looks like it intends. 
> (This is not suspected to be the problem on CRAN because they don't have 
> Homebrew installed.)
>  # If the 
> "[autobrew|https://github.com/apache/arrow/blob/master/r/configure#L80-L81]"; 
> installation fails, then the [test on 
> L102|https://github.com/apache/arrow/blob/master/r/configure#L102] will 
> correctly fail. I managed to trigger this (by luck?) on the [R-hub testing 
> service|https://builder.r-hub.io/status/arrow_0.14.1.tar.gz-da083126612b46e28854b95156b87b31#L533].
>  This is possibly what happened on CRAN, though the only [build 
> logs|https://www.r-project.org/nosvn/R.check/r-release-osx-x86_64/arrow-00check.html]
>  we have from CRAN are terse because it believes the build was successful. 
>  # Some idiosyncrasy in the compiler on the CRAN macOS system such that the 
> autobrew script would successfully download the arrow libraries but the L102 
> check would error. I've been unable to reproduce this using the [version of 
> clang7 that CRAN provides|https://cran.r-project.org/bin/macosx/tools/].
> I have a fix for the first one and will provide workaround documentation for 
> the README and announcement blog post. Unfortunately, I don't know that 
> there's anything we can do about the useless binaries on CRAN at this time, 
> particularly since CRAN is going down for maintenance August 9-18.
> cc [~jeroenooms] [~romainfrancois] [~wesmckinn]



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

Reply via email to