From 115d26c1af5983f58df546cd3a5da70bf3dafc65 Mon Sep 17 00:00:00 2001 From: Arnaud Collioud Date: Sun, 22 Sep 2024 15:14:48 +0200 Subject: [PATCH 1/5] Adding include_file_paths parameter for csv files --- R/extendr-wrappers.R | 2 +- R/io_csv.R | 8 ++++++-- src/rust/src/rdataframe/read_csv.rs | 2 ++ tests/testthat/test-csv-read.R | 12 ++++++++++++ 4 files changed, 21 insertions(+), 3 deletions(-) diff --git a/R/extendr-wrappers.R b/R/extendr-wrappers.R index 166d790a9..ba414817c 100644 --- a/R/extendr-wrappers.R +++ b/R/extendr-wrappers.R @@ -92,7 +92,7 @@ concat_df_horizontal <- function(l) .Call(wrap__concat_df_horizontal, l) concat_series <- function(l, rechunk, to_supertypes) .Call(wrap__concat_series, l, rechunk, to_supertypes) -new_from_csv <- function(path, has_header, separator, comment_prefix, quote_char, skip_rows, dtypes, null_values, ignore_errors, cache, infer_schema_length, n_rows, encoding, low_memory, rechunk, skip_rows_after_header, row_index_name, row_index_offset, try_parse_dates, eol_char, raise_if_empty, truncate_ragged_lines) .Call(wrap__new_from_csv, path, has_header, separator, comment_prefix, quote_char, skip_rows, dtypes, null_values, ignore_errors, cache, infer_schema_length, n_rows, encoding, low_memory, rechunk, skip_rows_after_header, row_index_name, row_index_offset, try_parse_dates, eol_char, raise_if_empty, truncate_ragged_lines) +new_from_csv <- function(path, has_header, separator, comment_prefix, quote_char, skip_rows, dtypes, null_values, ignore_errors, cache, infer_schema_length, n_rows, encoding, low_memory, rechunk, skip_rows_after_header, row_index_name, row_index_offset, try_parse_dates, eol_char, raise_if_empty, truncate_ragged_lines, include_file_paths) .Call(wrap__new_from_csv, path, has_header, separator, comment_prefix, quote_char, skip_rows, dtypes, null_values, ignore_errors, cache, infer_schema_length, n_rows, encoding, low_memory, rechunk, skip_rows_after_header, row_index_name, row_index_offset, try_parse_dates, eol_char, raise_if_empty, truncate_ragged_lines, include_file_paths) import_arrow_ipc <- function(path, n_rows, cache, rechunk, row_name, row_index, memory_map, hive_partitioning, hive_schema, try_parse_hive_dates, include_file_paths) .Call(wrap__import_arrow_ipc, path, n_rows, cache, rechunk, row_name, row_index, memory_map, hive_partitioning, hive_schema, try_parse_hive_dates, include_file_paths) diff --git a/R/io_csv.R b/R/io_csv.R index 8c5f2bc21..4be120e9c 100644 --- a/R/io_csv.R +++ b/R/io_csv.R @@ -65,6 +65,8 @@ #' @param truncate_ragged_lines Truncate lines that are longer than the schema. #' @param reuse_downloaded If `TRUE`(default) and a URL was provided, cache the #' downloaded files in session for an easy reuse. +#' @param include_file_paths Include the path of the source file(s) as a column +#' with this name. #' @return [LazyFrame][LazyFrame_class] #' @examples #' my_file = tempfile() @@ -97,7 +99,8 @@ pl_scan_csv = function( eol_char = "\n", raise_if_empty = TRUE, truncate_ragged_lines = FALSE, - reuse_downloaded = TRUE) { + reuse_downloaded = TRUE, + include_file_paths = NULL) { # capture all args and modify some to match lower level function args = as.list(environment()) @@ -181,7 +184,8 @@ pl_read_csv = function( eol_char = "\n", raise_if_empty = TRUE, truncate_ragged_lines = FALSE, - reuse_downloaded = TRUE) { + reuse_downloaded = TRUE, + include_file_paths = NULL) { .args = as.list(environment()) result({ do.call(pl$scan_csv, .args)$collect() diff --git a/src/rust/src/rdataframe/read_csv.rs b/src/rust/src/rdataframe/read_csv.rs index 218245d1b..5c3af1735 100644 --- a/src/rust/src/rdataframe/read_csv.rs +++ b/src/rust/src/rdataframe/read_csv.rs @@ -70,6 +70,7 @@ pub fn new_from_csv( eol_char: Robj, raise_if_empty: Robj, truncate_ragged_lines: Robj, + include_file_paths: Robj, ) -> RResult { let offset = robj_to!(Option, u32, row_index_offset)?.unwrap_or(0); let opt_rowcount = robj_to!(Option, String, row_index_name)?.map(|name| RowIndex { @@ -124,6 +125,7 @@ pub fn new_from_csv( // .with_missing_is_null(!robj_to!(bool, missing_utf8_is_empty_string)?) .with_row_index(opt_rowcount) .with_truncate_ragged_lines(robj_to!(bool, truncate_ragged_lines)?) + .with_include_file_paths(robj_to!(Option, String, include_file_paths)?.map(|x| x.into())) .with_raise_if_empty(robj_to!(bool, raise_if_empty)?) .finish() .map_err(polars_to_rpolars_err) diff --git a/tests/testthat/test-csv-read.R b/tests/testthat/test-csv-read.R index 73b6aeeb7..832cdc319 100644 --- a/tests/testthat/test-csv-read.R +++ b/tests/testthat/test-csv-read.R @@ -197,3 +197,15 @@ test_that("cache url tempfile", { expect_false(is.null(cache_temp_file[[url]])) expect_equal(attempt_1, attempt_2) }) + +test_that("scan_csv can include file path", { + skip_if_not_installed("withr") + temp_dir = withr::local_tempdir() + pl$DataFrame(mtcars)$write_csv(temp_dir) + + expect_identical( + pl$scan_csv(temp_dir, include_file_paths = "file_paths")$collect()$unique("file_paths") |> + dim(), + c(1L, 12L) + ) +}) From e4b006191d728a0230d9e4da16966f7711cf0e5e Mon Sep 17 00:00:00 2001 From: Arnaud Collioud Date: Sun, 22 Sep 2024 21:57:19 +0200 Subject: [PATCH 2/5] NEWS, read two files for testing --- NEWS.md | 1 + tests/testthat/test-csv-read.R | 19 ++++++++++--------- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/NEWS.md b/NEWS.md index e77f59daa..a7c1331e7 100644 --- a/NEWS.md +++ b/NEWS.md @@ -8,6 +8,7 @@ - New argument `strict` in `$drop()` to determine whether unknown column names should trigger an error (#1220). - New method `$to_dummies()` for `DataFrame` (#1225). +- Add missing argument `include_file_paths` in `pl_scan_csv()` and `pl_read_csv` (#1235). ### Bug fixes diff --git a/tests/testthat/test-csv-read.R b/tests/testthat/test-csv-read.R index 832cdc319..fd17737dc 100644 --- a/tests/testthat/test-csv-read.R +++ b/tests/testthat/test-csv-read.R @@ -199,13 +199,14 @@ test_that("cache url tempfile", { }) test_that("scan_csv can include file path", { - skip_if_not_installed("withr") - temp_dir = withr::local_tempdir() - pl$DataFrame(mtcars)$write_csv(temp_dir) - - expect_identical( - pl$scan_csv(temp_dir, include_file_paths = "file_paths")$collect()$unique("file_paths") |> - dim(), - c(1L, 12L) - ) + temp_file_1 = withr::local_tempfile() + temp_file_2 = withr::local_tempfile() + pl$DataFrame(mtcars)$write_csv(temp_file_1) + pl$DataFrame(mtcars)$write_csv(temp_file_2) + + expect_identical( + pl$scan_csv(c(temp_file_1, temp_file_2), include_file_paths = "file_paths")$collect()$unique("file_paths") |> + dim(), + c(2L, 12L) + ) }) From c961d26190ab5adc4c02ad4105f34d7766c37fb5 Mon Sep 17 00:00:00 2001 From: Arnaud Collioud Date: Mon, 23 Sep 2024 11:09:04 +0200 Subject: [PATCH 3/5] Add detection of withr, regenerate documentation --- man/DataFrame_class.Rd | 2 ++ man/DataFrame_to_data_frame.Rd | 2 ++ man/DataFrame_to_list.Rd | 2 ++ man/IO_read_csv.Rd | 6 +++++- man/IO_read_parquet.Rd | 4 ++-- man/IO_scan_csv.Rd | 6 +++++- man/IO_scan_parquet.Rd | 4 ++-- man/LazyFrame_class.Rd | 2 ++ man/S3_as.data.frame.Rd | 2 ++ man/S3_as.vector.Rd | 2 ++ man/S3_as_nanoarrow_array_stream.Rd | 14 ++++++++++++-- man/S3_infer_nanoarrow_schema.Rd | 4 ++-- man/Series_class.Rd | 2 ++ man/Series_to_r.Rd | 2 ++ tests/testthat/test-csv-read.R | 21 +++++++++++---------- 15 files changed, 55 insertions(+), 20 deletions(-) diff --git a/man/DataFrame_class.Rd b/man/DataFrame_class.Rd index 5b241516a..3bc8cc028 100644 --- a/man/DataFrame_class.Rd +++ b/man/DataFrame_class.Rd @@ -116,7 +116,9 @@ withr::with_timezone( \} ) #> +}\if{html}{\out{}} +\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ diff --git a/man/DataFrame_to_data_frame.Rd b/man/DataFrame_to_data_frame.Rd index 04401a24c..1fc135a84 100644 --- a/man/DataFrame_to_data_frame.Rd +++ b/man/DataFrame_to_data_frame.Rd @@ -59,7 +59,9 @@ withr::with_timezone( \} ) #> +}\if{html}{\out{
}} +\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ diff --git a/man/DataFrame_to_list.Rd b/man/DataFrame_to_list.Rd index 766d7d1d0..cf55bf3d2 100644 --- a/man/DataFrame_to_list.Rd +++ b/man/DataFrame_to_list.Rd @@ -69,7 +69,9 @@ withr::with_timezone( \} ) #> +}\if{html}{\out{
}} +\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ diff --git a/man/IO_read_csv.Rd b/man/IO_read_csv.Rd index da0168c27..1a4ed41ef 100644 --- a/man/IO_read_csv.Rd +++ b/man/IO_read_csv.Rd @@ -28,7 +28,8 @@ pl_read_csv( eol_char = "\\n", raise_if_empty = TRUE, truncate_ragged_lines = FALSE, - reuse_downloaded = TRUE + reuse_downloaded = TRUE, + include_file_paths = NULL ) } \arguments{ @@ -116,6 +117,9 @@ DataFrame or LazyFrame.} \item{reuse_downloaded}{If \code{TRUE}(default) and a URL was provided, cache the downloaded files in session for an easy reuse.} + +\item{include_file_paths}{Include the path of the source file(s) as a column +with this name.} } \value{ \link[=DataFrame_class]{DataFrame} diff --git a/man/IO_read_parquet.Rd b/man/IO_read_parquet.Rd index 3bbd08a95..2d6e07ad9 100644 --- a/man/IO_read_parquet.Rd +++ b/man/IO_read_parquet.Rd @@ -69,8 +69,8 @@ can be skipped from reading.} \item{cache}{Cache the result after reading.} -\item{include_file_paths}{Character value indicating the column name that will -include the path of the source file(s).} +\item{include_file_paths}{Include the path of the source file(s) as a column +with this name.} } \value{ \link[=DataFrame_class]{DataFrame} diff --git a/man/IO_scan_csv.Rd b/man/IO_scan_csv.Rd index b544621fc..ed2f7a3dd 100644 --- a/man/IO_scan_csv.Rd +++ b/man/IO_scan_csv.Rd @@ -28,7 +28,8 @@ pl_scan_csv( eol_char = "\\n", raise_if_empty = TRUE, truncate_ragged_lines = FALSE, - reuse_downloaded = TRUE + reuse_downloaded = TRUE, + include_file_paths = NULL ) } \arguments{ @@ -116,6 +117,9 @@ DataFrame or LazyFrame.} \item{reuse_downloaded}{If \code{TRUE}(default) and a URL was provided, cache the downloaded files in session for an easy reuse.} + +\item{include_file_paths}{Include the path of the source file(s) as a column +with this name.} } \value{ \link[=LazyFrame_class]{LazyFrame} diff --git a/man/IO_scan_parquet.Rd b/man/IO_scan_parquet.Rd index d48d55bf7..f4ae9f113 100644 --- a/man/IO_scan_parquet.Rd +++ b/man/IO_scan_parquet.Rd @@ -69,8 +69,8 @@ can be skipped from reading.} \item{cache}{Cache the result after reading.} -\item{include_file_paths}{Character value indicating the column name that will -include the path of the source file(s).} +\item{include_file_paths}{Include the path of the source file(s) as a column +with this name.} } \value{ \link[=LazyFrame_class]{LazyFrame} diff --git a/man/LazyFrame_class.Rd b/man/LazyFrame_class.Rd index 37b1144fb..3cf20de68 100644 --- a/man/LazyFrame_class.Rd +++ b/man/LazyFrame_class.Rd @@ -86,7 +86,9 @@ withr::with_timezone( \} ) #> +}\if{html}{\out{
}} +\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ diff --git a/man/S3_as.data.frame.Rd b/man/S3_as.data.frame.Rd index 299859831..9223cc562 100644 --- a/man/S3_as.data.frame.Rd +++ b/man/S3_as.data.frame.Rd @@ -110,7 +110,9 @@ withr::with_timezone( \} ) #> +}\if{html}{\out{
}} +\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ diff --git a/man/S3_as.vector.Rd b/man/S3_as.vector.Rd index dea4207d7..850878e85 100644 --- a/man/S3_as.vector.Rd +++ b/man/S3_as.vector.Rd @@ -46,7 +46,9 @@ withr::with_timezone( \} ) #> +}\if{html}{\out{
}} +\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ diff --git a/man/S3_as_nanoarrow_array_stream.Rd b/man/S3_as_nanoarrow_array_stream.Rd index 6a0334929..45e69aa6b 100644 --- a/man/S3_as_nanoarrow_array_stream.Rd +++ b/man/S3_as_nanoarrow_array_stream.Rd @@ -5,9 +5,19 @@ \alias{as_nanoarrow_array_stream.RPolarsSeries} \title{Create a nanoarrow_array_stream from a Polars object} \usage{ -\method{as_nanoarrow_array_stream}{RPolarsDataFrame}(x, ..., schema = NULL, compat_level = FALSE) +as_nanoarrow_array_stream.RPolarsDataFrame( + x, + ..., + schema = NULL, + compat_level = FALSE +) -\method{as_nanoarrow_array_stream}{RPolarsSeries}(x, ..., schema = NULL, compat_level = FALSE) +as_nanoarrow_array_stream.RPolarsSeries( + x, + ..., + schema = NULL, + compat_level = FALSE +) } \arguments{ \item{x}{A polars object} diff --git a/man/S3_infer_nanoarrow_schema.Rd b/man/S3_infer_nanoarrow_schema.Rd index 00932ed8d..a0d21ae2a 100644 --- a/man/S3_infer_nanoarrow_schema.Rd +++ b/man/S3_infer_nanoarrow_schema.Rd @@ -5,9 +5,9 @@ \alias{infer_nanoarrow_schema.RPolarsSeries} \title{Infer nanoarrow schema from a Polars object} \usage{ -\method{infer_nanoarrow_schema}{RPolarsDataFrame}(x, ..., compat_level = FALSE) +infer_nanoarrow_schema.RPolarsDataFrame(x, ..., compat_level = FALSE) -\method{infer_nanoarrow_schema}{RPolarsSeries}(x, ..., compat_level = FALSE) +infer_nanoarrow_schema.RPolarsSeries(x, ..., compat_level = FALSE) } \arguments{ \item{x}{A polars object} diff --git a/man/Series_class.Rd b/man/Series_class.Rd index bfb719b7d..40185d9dd 100644 --- a/man/Series_class.Rd +++ b/man/Series_class.Rd @@ -143,7 +143,9 @@ withr::with_timezone( \} ) #> +}\if{html}{\out{
}} +\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ diff --git a/man/Series_to_r.Rd b/man/Series_to_r.Rd index d77ee5fae..831bb49de 100644 --- a/man/Series_to_r.Rd +++ b/man/Series_to_r.Rd @@ -62,7 +62,9 @@ withr::with_timezone( \} ) #> +}\if{html}{\out{
}} +\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ diff --git a/tests/testthat/test-csv-read.R b/tests/testthat/test-csv-read.R index fd17737dc..e77c6419f 100644 --- a/tests/testthat/test-csv-read.R +++ b/tests/testthat/test-csv-read.R @@ -199,14 +199,15 @@ test_that("cache url tempfile", { }) test_that("scan_csv can include file path", { - temp_file_1 = withr::local_tempfile() - temp_file_2 = withr::local_tempfile() - pl$DataFrame(mtcars)$write_csv(temp_file_1) - pl$DataFrame(mtcars)$write_csv(temp_file_2) - - expect_identical( - pl$scan_csv(c(temp_file_1, temp_file_2), include_file_paths = "file_paths")$collect()$unique("file_paths") |> - dim(), - c(2L, 12L) - ) + skip_if_not_installed("withr") + temp_file_1 = withr::local_tempfile() + temp_file_2 = withr::local_tempfile() + pl$DataFrame(mtcars)$write_csv(temp_file_1) + pl$DataFrame(mtcars)$write_csv(temp_file_2) + + expect_identical( + pl$scan_csv(c(temp_file_1, temp_file_2), include_file_paths = "file_paths")$collect()$unique("file_paths") |> + dim(), + c(2L, 12L) + ) }) From 832a0f02e785f83c00dcea8e584ac1c96a2c9f22 Mon Sep 17 00:00:00 2001 From: Etienne Bacher <52219252+etiennebacher@users.noreply.github.com> Date: Mon, 23 Sep 2024 13:52:25 +0200 Subject: [PATCH 4/5] cleanup --- NEWS.md | 2 ++ man/DataFrame_class.Rd | 2 -- man/DataFrame_to_data_frame.Rd | 2 -- man/DataFrame_to_list.Rd | 2 -- man/LazyFrame_class.Rd | 2 -- man/S3_as.data.frame.Rd | 2 -- man/S3_as.vector.Rd | 2 -- man/S3_as_nanoarrow_array_stream.Rd | 14 ++------------ man/S3_infer_nanoarrow_schema.Rd | 4 ++-- man/Series_class.Rd | 2 -- man/Series_to_r.Rd | 2 -- 11 files changed, 6 insertions(+), 30 deletions(-) diff --git a/NEWS.md b/NEWS.md index e9751803a..d60aab1ce 100644 --- a/NEWS.md +++ b/NEWS.md @@ -10,6 +10,8 @@ (#1230). - In `$serialize()`, in the field `schema`, the field `inner` is renamed `fields`, and the fields `output_schema` and `filter` are removed (#1230). +- New argument `include_file_paths` in `pl_scan_csv()` and `pl_read_csv()` (#1235). + ### New features diff --git a/man/DataFrame_class.Rd b/man/DataFrame_class.Rd index 3bc8cc028..5b241516a 100644 --- a/man/DataFrame_class.Rd +++ b/man/DataFrame_class.Rd @@ -116,9 +116,7 @@ withr::with_timezone( \} ) #> -}\if{html}{\out{
}} -\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ diff --git a/man/DataFrame_to_data_frame.Rd b/man/DataFrame_to_data_frame.Rd index 1fc135a84..04401a24c 100644 --- a/man/DataFrame_to_data_frame.Rd +++ b/man/DataFrame_to_data_frame.Rd @@ -59,9 +59,7 @@ withr::with_timezone( \} ) #> -}\if{html}{\out{
}} -\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ diff --git a/man/DataFrame_to_list.Rd b/man/DataFrame_to_list.Rd index cf55bf3d2..766d7d1d0 100644 --- a/man/DataFrame_to_list.Rd +++ b/man/DataFrame_to_list.Rd @@ -69,9 +69,7 @@ withr::with_timezone( \} ) #> -}\if{html}{\out{
}} -\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ diff --git a/man/LazyFrame_class.Rd b/man/LazyFrame_class.Rd index 3cf20de68..37b1144fb 100644 --- a/man/LazyFrame_class.Rd +++ b/man/LazyFrame_class.Rd @@ -86,9 +86,7 @@ withr::with_timezone( \} ) #> -}\if{html}{\out{
}} -\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ diff --git a/man/S3_as.data.frame.Rd b/man/S3_as.data.frame.Rd index 9223cc562..299859831 100644 --- a/man/S3_as.data.frame.Rd +++ b/man/S3_as.data.frame.Rd @@ -110,9 +110,7 @@ withr::with_timezone( \} ) #> -}\if{html}{\out{
}} -\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ diff --git a/man/S3_as.vector.Rd b/man/S3_as.vector.Rd index 850878e85..dea4207d7 100644 --- a/man/S3_as.vector.Rd +++ b/man/S3_as.vector.Rd @@ -46,9 +46,7 @@ withr::with_timezone( \} ) #> -}\if{html}{\out{
}} -\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ diff --git a/man/S3_as_nanoarrow_array_stream.Rd b/man/S3_as_nanoarrow_array_stream.Rd index 45e69aa6b..6a0334929 100644 --- a/man/S3_as_nanoarrow_array_stream.Rd +++ b/man/S3_as_nanoarrow_array_stream.Rd @@ -5,19 +5,9 @@ \alias{as_nanoarrow_array_stream.RPolarsSeries} \title{Create a nanoarrow_array_stream from a Polars object} \usage{ -as_nanoarrow_array_stream.RPolarsDataFrame( - x, - ..., - schema = NULL, - compat_level = FALSE -) +\method{as_nanoarrow_array_stream}{RPolarsDataFrame}(x, ..., schema = NULL, compat_level = FALSE) -as_nanoarrow_array_stream.RPolarsSeries( - x, - ..., - schema = NULL, - compat_level = FALSE -) +\method{as_nanoarrow_array_stream}{RPolarsSeries}(x, ..., schema = NULL, compat_level = FALSE) } \arguments{ \item{x}{A polars object} diff --git a/man/S3_infer_nanoarrow_schema.Rd b/man/S3_infer_nanoarrow_schema.Rd index a0d21ae2a..00932ed8d 100644 --- a/man/S3_infer_nanoarrow_schema.Rd +++ b/man/S3_infer_nanoarrow_schema.Rd @@ -5,9 +5,9 @@ \alias{infer_nanoarrow_schema.RPolarsSeries} \title{Infer nanoarrow schema from a Polars object} \usage{ -infer_nanoarrow_schema.RPolarsDataFrame(x, ..., compat_level = FALSE) +\method{infer_nanoarrow_schema}{RPolarsDataFrame}(x, ..., compat_level = FALSE) -infer_nanoarrow_schema.RPolarsSeries(x, ..., compat_level = FALSE) +\method{infer_nanoarrow_schema}{RPolarsSeries}(x, ..., compat_level = FALSE) } \arguments{ \item{x}{A polars object} diff --git a/man/Series_class.Rd b/man/Series_class.Rd index 40185d9dd..bfb719b7d 100644 --- a/man/Series_class.Rd +++ b/man/Series_class.Rd @@ -143,9 +143,7 @@ withr::with_timezone( \} ) #> -}\if{html}{\out{
}} -\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ diff --git a/man/Series_to_r.Rd b/man/Series_to_r.Rd index 831bb49de..d77ee5fae 100644 --- a/man/Series_to_r.Rd +++ b/man/Series_to_r.Rd @@ -62,9 +62,7 @@ withr::with_timezone( \} ) #> -}\if{html}{\out{
}} -\if{html}{\out{
}}\preformatted{ withr::with_timezone( "America/New_York", \{ From 051a4ac8492ad75b8f387fdd408f066cc9d41582 Mon Sep 17 00:00:00 2001 From: Etienne Bacher <52219252+etiennebacher@users.noreply.github.com> Date: Mon, 23 Sep 2024 13:53:06 +0200 Subject: [PATCH 5/5] typo --- NEWS.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/NEWS.md b/NEWS.md index d60aab1ce..4e8127e9f 100644 --- a/NEWS.md +++ b/NEWS.md @@ -10,8 +10,6 @@ (#1230). - In `$serialize()`, in the field `schema`, the field `inner` is renamed `fields`, and the fields `output_schema` and `filter` are removed (#1230). -- New argument `include_file_paths` in `pl_scan_csv()` and `pl_read_csv()` (#1235). - ### New features @@ -19,7 +17,7 @@ - New argument `strict` in `$drop()` to determine whether unknown column names should trigger an error (#1220). - New method `$to_dummies()` for `DataFrame` (#1225). -- Add missing argument `include_file_paths` in `pl_scan_csv()` and `pl_read_csv` (#1235). +- New argument `include_file_paths` in `pl_scan_csv()` and `pl_read_csv()` (#1235). ### Bug fixes