Skip to content

vroom 1.6.5

  • Internal changes requested by CRAN around format specification (#524).

vroom 1.6.4

CRAN release: 2023-10-02

  • It is now possible (again?) to read from a list of connections (@bairdj, #514).

  • Internal change for compatibility with cpp11 >= 0.4.6 (@DavisVaughan, #512).

vroom 1.6.3

CRAN release: 2023-04-28

  • No user-facing changes.

vroom 1.6.2

  • There was no CRAN release with this version number.

vroom 1.6.1

CRAN release: 2023-01-22

  • str() now works in a colorized context in the presence of a column of class integer64, i.e. parsed with col_big_integer() (@bart1, #477).

  • The embedded implementation of the Grisu algorithm for printing floating point numbers now uses snprintf() instead of sprintf() and likewise for vroom’s own code (@jeroen, #480).

vroom 1.6.0

CRAN release: 2022-09-30

  • vroom(col_select=) now handles column selection by numeric position when id column is provided (#455).

  • vroom(id = "path", col_select = a:c) is treated like vroom(id = "path", col_select = c(path, a:c)). If an id column is provided, it is automatically included in the output (#416).

  • vroom_write(append = TRUE) does not modify an existing file when appending an empty data frame. In particular, it does not overwrite (delete) the existing contents of that file (, #451).

  • vroom::problems() now defaults to .Last.value for its primary input, similar to how readr::problems() works (#443).

  • The warning that indicates the existence of parsing problems has been improved, which should make it easier for the user to follow-up (

  • vroom() reads more reliably from filepaths containing non-ascii characters, in a non-UTF-8 locale (#394, #438).

  • vroom_format() and vroom_write() only quote values that contain a delimiter, quote, or newline. Specifically values that are equal to the na string (or that start with it) are no longer quoted (#426).

  • Fixed segfault when reading in multiple files and the first file has only a header row of column names, but subsequent files have at least one row (#430).

  • Fixed segfault when vroom_format() is given an empty data frame (#425)

  • Fixed a segfault that could occur when the final field of the final line is missing and the file also does not end in a newline (#429).

  • Fixed recursive garbage collection error that could occur during vroom_write() when output_column() generates an ALTREP vector (#389).

  • vroom_progress() uses rlang::is_interactive() instead of base::interactive().

  • col_factor(levels = NULL) honors the na strings of vroom() and its own include_na argument, as described in the docs, and now reproduces the behaviour of readr’s first edition parser (#396).

vroom 1.5.7

CRAN release: 2021-11-30

vroom 1.5.6

CRAN release: 2021-11-10

vroom 1.5.5

CRAN release: 2021-09-14

vroom 1.5.4

CRAN release: 2021-08-05

vroom 1.5.3

CRAN release: 2021-07-14

  • vroom(col_types=) now truncates the column types if the user passes too many types. (#355)

  • vroom() now always includes the last row when guessing (#352)

  • vroom(trim_ws = TRUE) now trims field content within quotes as well as without (#354). Previously vroom explicitly retained field content inside quotes regardless of the value of trim_ws.

vroom 1.5.2

CRAN release: 2021-07-08

  • vroom() now supports inputs with unnamed column types that are less than the number of columns (#296)

  • vroom() now outputs the correct column names even in the presence of skipped columns (#293, tidyverse/readr#1215)

  • vroom_fwf(n_max=) now works as intended when the input is a connection.

  • vroom() and vroom_write() now automatically detect the compression format regardless of the file extension for bzip2, xzip, gzip and zip files (#348)

  • vroom() and vroom_write() now automatically support many more archive formats thanks to the archive package. These include new support for writing zip files, reading and writing 7zip, tar and ISO files.

  • vroom(num_threads = 1) will now not spawn any threads. This can be used on as a workaround on systems without full thread support.

  • Threads are now automatically disabled on non-macOS systems compiling against clang’s libc++. Most systems non-macOS systems use the more common gcc libstdc++, so this should not effect most users.

vroom 1.5.1

CRAN release: 2021-06-22

  • Parsers now treat NA values as NA even if they are valid values for the types (#342)

  • Element-wise indexing into lazy (ALTREP) vectors now has much less overhead (#344)

vroom 1.5.0

CRAN release: 2021-06-14

Major improvements

  • New vroom(show_col_types=) argument to more simply control when column types are shown.

  • vroom(), vroom_fwf() and vroom_lines() now support multi-byte encodings such as UTF-16 and UTF-32 by converting these files to UTF-8 under the hood (#138)

  • vroom() now supports skipping comments and blank lines within data, not just at the start of the file (#294, #302)

  • vroom() now uses the tzdb package when parsing date-times (@DavisVaughan, #273)

  • vroom() now emits a warning of class vroom_parse_issue if there are non-fatal parsing issues.

  • vroom() now emits a warning of class vroom_mismatched_column_name if the user supplies a column type that does not match the name of a read column (#317).

  • The vroom package now uses the MIT license, as part of systematic relicensing throughout the r-lib and tidyverse packages (#323)

Minor improvements and fixes

vroom 1.4.0

CRAN release: 2021-02-01

Major changes and new functions

  • vroom now tracks indexing and parsing errors like readr. The first time an issue is encountered a warning will be signaled. A tibble of all found problems can be retrieved with vroom::problems(). (#247)

  • Data with newlines within quoted fields will now automatically revert to using a single thread and be properly read (#282)

  • NUL values in character data are now permitted, with a warning.

  • New vroom_write_lines() function to write a character vector to a file (#291)

  • vroom_write() gains a eol= parameter to specify the end of line character(s) to use. Use vroom_write(eol = "\r\n") to write a file with Windows style newlines (#263).

Minor improvements and fixes

  • Datetime formats used when guessing now match those used when parsing (#240)

  • Quotes are now only valid next to newlines or delimiters (#224)

  • vroom() now signals an R error for invalid date and datetime formats, instead of crashing the session (#220).

  • vroom(comment = ) now accepts multi-character comments (#286)

  • vroom_lines() now works with empty files (#285)

  • Vectors are now subset properly when given invalid subscripts (#283)

  • vroom_write() now works when the delimiter is empty, e.g. delim = "" (#287).

  • vroom_write() now works with all ALTREP vectors, including string vectors (#270)

  • An internal call to new.env() now correctly uses the parent argument (#281)

vroom 1.3.2

CRAN release: 2020-09-30

  • Test failures on R 4.1 related to factors with NA values fixed (#262)

  • vroom() now works without error with readr versions of col specs (#256, #264, #266)

vroom 1.3.1

CRAN release: 2020-08-27

  • Test failures on R 4.1 related to POSIXct classes fixed (#260)

  • Column subsetting with double indexes now works again (#257)

  • vroom(n_max=) now only partially downloads files from connections, as intended (#259)

vroom 1.3.0

CRAN release: 2020-08-14

  • The Rcpp dependency has been removed in favor of cpp11.

  • vroom() now handles cases when id is set and a column in skipped (#237)

  • vroom() now supports column selections when there are some empty column names (#238)

  • vroom() argument n_max now works properly for files with windows newlines and no final newline (#244)

  • Subsetting vectors now works with View() in RStudio if there are now rows to subset (#253).

  • Subsetting datetime columns now works with NA indices (#236).

vroom 1.2.1

CRAN release: 2020-05-12

  • vroom() now writes the column names if given an input with no rows (#213)

  • vroom() columns now support indexing with NA values (#201)

  • vroom() no longer truncates the last value in a file if the file contains windows newlines but no final newline (#219).

  • vroom() now works when the na argument is encoded in non ASCII or UTF-8 locales and the file encoding is not the same as the native encoding (#233).

  • vroom_fwf() now verifies that the positions are valid, namely that the begin value is always less than the previous end (#217).

  • vroom_lines() gains a locale argument so you can control the encoding of the file (#218)

  • vroom_write() now supports the append argument with R connections (#232)

vroom 1.2.0

CRAN release: 2020-01-13

Breaking changes

New Features

  • vroom() now supports reading Big Integer values with the bit64 package. Use col_big_integer() or the “I” shortcut to read a column as big integers. (#198)

  • cols() gains a .delim argument and vroom() now uses it as the delimiter if it is provided (#192)

  • vroom() now supports reading from stdin() directly, interpreted as the C-level standard input (#106).

Minor improvements and fixes

  • col_date now parses single digit month and day (@edzer, #123, #170)

  • fwf_empty() now uses the skip parameter, as intended.

  • vroom() can now read single line files without a terminal newline (#173).

  • vroom() can now select the id column if provided (#110).

  • vroom() now correctly copies string data for factor levels (#184)

  • vroom() no longer crashes when files have trailing fields, windows newlines and the file is not newline or null terminated.

  • vroom() now includes a spec object with the col_types class, as intended.

  • vroom() now better handles floating point values with very large exponents (#164).

  • vroom() now uses better heuristics to guess the delimiter and now throws an error if a delimiter cannot be guessed (#126, #141, #167).

  • vroom() now has an improved error message when a file does not exist (#169).

  • vroom() no longer leaks file handles (#177, #180)

  • vroom() now outputs its messages on stdout() rather than stderr(), which avoids the text being red in RStudio and in the Windows GUI.

  • vroom() no longer overflows when reading files with more than 2B entries (@wlattner, #183).

  • vroom_fwf() is now more robust if not all lines are the expected length (#78)

  • vroom_fwf() and fwf_empty() now support passing Inf to guess_max().

  • vroom_str() now works with S4 objects.

  • vroom_fwf() now handles files with dos newlines properly.

  • vroom_write() now does not try to write anything when given empty inputs (#172).

  • Dates, times, and datetimes now properly consider the locale when parsing.

  • Added benchmarks with wide data for both numeric and character data (#87, @R3myG)

  • The delimiter used for parsing is now shown in the message output (#95 @R3myG)

vroom 1.0.2

CRAN release: 2019-06-28

New Features

  • The column created by id is now stored as an run length encoded Altrep vector, which uses less memory and is much faster for large inputs. (#111)

Minor improvements and fixes

  • vroom_lines() now properly respects the n_max parameter (#142)

  • vroom() and vroom_lines() now support reading files which do not end in newlines by using a file connection (#40).

  • vroom_write() now works with the standard output connection stdout() (#106).

  • vroom_write() no longer crashes non-deterministically when used on Altrep vectors.

  • The integer parser now returns NA values for invalid inputs (#135)

  • Fix additional UBSAN issue in the mio project reported by CRAN (#97)

  • Fix indexing into connections with quoted fields (#119)

  • Move example files for vroom() out of \dontshow{}.

  • Fix integer overflow with very large files (#116, #119)

  • Fix missing columns and windows newlines (#114)

  • Fix encoding of column names (#113, #115)

  • Throw an error message when writing a zip file, which is not supported (@metaOO, #145)

  • Default message output from vroom() now uses Rows and Cols (@meta00, #140)

vroom 1.0.1

CRAN release: 2019-05-14

New Features

  • vroom_lines() function added, to (lazily) read lines from a file into a character vector (#90).

Minor improvements and fixes

  • Fix for a hang on Windows caused by a race condition in the progress bar (#98)

  • Remove accidental runtime dependency on testthat (#104)

  • Fix to actually return non-Altrep character columns on R 3.2, 3.3 and 3.4.

  • Disable colors in the progress bar when running in RStudio, to work around an issue where the progress bar would be garbled (

  • Fix for UBSAN issues reported by CRAN (#97)

  • Fix for rchk issues reported by CRAN (#94)

  • The progress bar now only updates every 10 milliseconds.

  • Getting started vignette index entry now more informative (#92)

vroom 1.0.0

CRAN release: 2019-05-04

  • Initial release

  • Added a file to track changes to the package.