Skip to content

[R] Failing tests on Winbuilder due to missing tzdata #49866

@amoeba

Description

@amoeba

Describe the bug, including details regarding any error messages, version, and platform.

I just prepared a tarball for the 24.0.0 CRAN release and sent it to Winbuilder which fails with,

══ Failed tests ════════════════════════════════════════════════════════════════
  ── Error ('test-dataset-dplyr.R:76:3'): filter() on timestamp columns ──────────
  Error in `compute.arrow_dplyr_query(x)`: Invalid: Cannot locate or parse timezone 'UTC': Timezone database not found at "C:\Users\CRAN\Downloads\tzdata"
  Backtrace:
       ▆
    1. ├─arrow:::expect_equal(...) at test-dataset-dplyr.R:76:3
    2. │ └─base::inherits(object, "ArrowObject") at ./helper-expectation.R:30:3
    3. ├─dplyr::collect(...)
    4. └─arrow:::collect.arrow_dplyr_query(...)
    5.   └─arrow:::compute.arrow_dplyr_query(x)
    6.     └─base::tryCatch(...)
    7.       └─base (local) tryCatchList(expr, classes, parentenv, handlers)
    8.         └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]])
    9.           └─value[[3L]](cond)
   10.             └─arrow:::augment_io_error_msg(e, call, schema = schema())
   11.               └─rlang::abort(msg, call = call)
  ── Error ('test-dataset-dplyr.R:124:3'): filter() on date32 columns ────────────
  Error in `compute.arrow_dplyr_query(x)`: Invalid: Cannot locate or parse timezone 'UTC': Timezone database not found at "C:\Users\CRAN\Downloads\tzdata"
  Backtrace:
       ▆
    1. ├─arrow:::expect_equal(...) at test-dataset-dplyr.R:124:3
    2. │ └─base::inherits(object, "ArrowObject") at ./helper-expectation.R:30:3
    3. ├─base::nrow(collect(filter(open_dataset(tmp), date > lubridate::ymd_hms("2020-02-02 00:00:00"))))
    4. ├─dplyr::collect(filter(open_dataset(tmp), date > lubridate::ymd_hms("2020-02-02 00:00:00")))
    5. └─arrow:::collect.arrow_dplyr_query(...)
    6.   └─arrow:::compute.arrow_dplyr_query(x)
    7.     └─base::tryCatch(...)
    8.       └─base (local) tryCatchList(expr, classes, parentenv, handlers)
    9.         └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]])
   10.           └─value[[3L]](cond)
   11.             └─arrow:::augment_io_error_msg(e, call, schema = schema())
   12.               └─rlang::abort(msg, call = call)
  ── Error ('test-dplyr-query.R:650:3'): Scalars in expressions match the type of the field, if possible ──
  Error: NotImplemented: Function 'greater' has no kernel matching input types (timestamp[us, tz=UTC], string)
  Backtrace:
       ▆
    1. ├─testthat::expect_output(...) at test-dplyr-query.R:650:3
    2. │ └─testthat:::quasi_capture(...)
    3. │   ├─testthat (local) .capture(...)
    4. │   │ └─testthat::capture_output_lines(code, print, width = width)
    5. │   │   └─testthat:::eval_with_output(code, print = print, width = width)
    6. │   │     ├─withr::with_output_sink(path, withVisible(code))
    7. │   │     │ └─base::force(code)
    8. │   │     └─base::withVisible(code)
    9. │   └─rlang::eval_bare(quo_get_expr(.quo), quo_get_env(.quo))
   10. └─arrow::show_exec_plan(filter(tab, times > "2018-10-07 19:04:05"))
   11.   ├─arrow::as_record_batch_reader(as_adq(x))
   12.   └─arrow:::as_record_batch_reader.arrow_dplyr_query(as_adq(x))
   13.     └─plan$Build(x)
   14.       └─node$Filter(.data$filtered_rows)
   15.         ├─self$preserve_extras(ExecNode_Filter(self, expr))
   16.         └─arrow:::ExecNode_Filter(self, expr)
  
  [ FAIL 3 | WARN 0 | SKIP 85 | PASS 6460 ]

I think this is related to #48601 which removed the R package's ability to get tzdata on all platforms, not just MSVC. Winbuilder uses mingw so I think tzdata is still needed.

Component(s)

R

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions