jonkeane commented on a change in pull request #11360: URL: https://github.com/apache/arrow/pull/11360#discussion_r780471562
########## File path: .github/workflows/r.yml ########## @@ -324,6 +324,10 @@ jobs: cd r/tests sed -i.bak -E -e 's/"arrow"/"arrow", reporter = "location"/' testthat.R rm -f testthat.R.bak + - name: Build cpp11 (on R 3.6) + if: ${{ matrix.rtools == 35 }} + shell: Rscript {0} + run: install.packages("cpp11", type = "source") Review comment: The headers changed, so when we go to build we get namespace errors: ``` ltrep.cpp: In static member function 'static arrow::r::altrep::{anonymous}::AltrepVectorPrimitive<sexp_type>::c_type arrow::r::altrep::{anonymous}::AltrepVectorPrimitive<sexp_type>::Elt(SEXP, R_xlen_t)': 576 altrep.cpp:245:31: error: 'na' is not a member of 'cpp11' 577 return array->IsNull(j) ? cpp11::na<c_type>() 578 ^ 579 altrep.cpp:245:47: error: expected primary-expression before '>' token 580 return array->IsNull(j) ? cpp11::na<c_type>() 581 ^ 582 altrep.cpp:245:49: error: expected primary-expression before ')' token 583 return array->IsNull(j) ? cpp11::na<c_type>() 584 ^ 585 altrep.cpp: In static member function 'static R_xlen_t arrow::r::altrep::{anonymous}::AltrepVectorPrimitive<sexp_type>::Get_region(SEXP, R_xlen_t, R_xlen_t, arrow::r::altrep::{anonymous}::AltrepVectorPrimitive<sexp_type>::c_type*)': 586 altrep.cpp:283:22: error: 'na' is not a member of 'cpp11' 587 out[j] = cpp11::na<c_type>(); 588 ^ 589 altrep.cpp:283:38: error: expected primary-expression before '>' token 590 out[j] = cpp11::na<c_type>(); 591 ^ 592 altrep.cpp:283:40: error: expected primary-expression before ')' token 593 out[j] = cpp11::na<c_type>(); ``` https://github.com/jonkeane/arrow/runs/4551051925?check_suite_focus=true#step:17:575 ########## File path: r/DESCRIPTION ########## @@ -59,6 +59,7 @@ Suggests: testthat (>= 3.1.0), tibble, withr +LinkingTo: cpp11 (>= 0.4.2) Review comment: Yes, this prevents the building errors above, but then we get `Package required and available but unsuitable version: 'cpp11'` when running `R CMD CHECK` https://github.com/apache/arrow/runs/4741782441?check_suite_focus=true#step:17:537 ########## File path: .github/workflows/r.yml ########## @@ -324,6 +324,10 @@ jobs: cd r/tests sed -i.bak -E -e 's/"arrow"/"arrow", reporter = "location"/' testthat.R rm -f testthat.R.bak + - name: Build cpp11 (on R 3.6) + if: ${{ matrix.rtools == 35 }} + shell: Rscript {0} + run: install.packages("cpp11", type = "source") Review comment: Yup yup. I looked around to see if there was some way to encourage `type="source"` in cases where it's *needed* but it's all or nothing as far as I've found. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org