Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also .

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also .
base repository: tidyverse/readr
Choose a Base Repository
tidyverse/readr
1402yash/readr
BerryHN/readr
CesarMaalouf/fastread
CommonLL/readr
Cophy08/readr
DanRuderman/readr
Debasis5/readr
DomfeLacre/readr
Dulani/readr
EveChen/readr
FabioSchneider/readr
Feigeliudan01/readr
FilomenaC/readr
G-Bruce/readr
GShotwell/readr
HuichunChien/readr
Jmtorres138/readr
Jofou/readr
KKulma/readr
LluisRamon/readr
Lupupam/readr
Mamie/readr
MhAmine/readr
MilesMcBain/readr
Morganbb104/readr
NicolasImberty/readr
QuLogic/readr
R-forks-to-learn/readr
RaniereRamos/readr
RomeroBarata/readr
Sandy4321/readr
Shians/readr
Solertis/readr
Valbat/readr
YuchuanWeng/readr
aaronmcdaid/readr
adrtod/readr
aespar21/readr
alberthkcheng/readr
alexsla/readr
allenzhuaz/readr
almartin82/readr
alyst/readr
antoine-lizee/readr
arturochian/fastread
asnr/readr
astamm/fastread
batpigandme/readr
bbrewington/readr
bestwpw/readr
billdenney/readr
bkg6/readr
blakeboswell/readr
bquast/readr
callcallpp/readr
cderv/readr
chappers/readr
christophergandrud/readr
cimentadaj/readr
connectthefuture/readr
constantin345/readr
daattali/readr
danicoMul/readr
daniellima123/readr
dapperjapper/readr
dataguy-anil/readr
defconst/readr
dewittpe/readr
dgromer/readr
dickoa/readr
dpastoor/readr
dselivanov/readr
eabanoz/readr
earino/readr
eupimenta/readr
fdzul/readr
fengwangjiang/readr
ffichtenmueller/readr
fisher0218/readr
fomenkosmart/readr
freys3/readr
gergness/readr
gregrs-uk/readr
htfj314/readr
humburg/readr
hxchengtj/readr
ijlyttle/readr
imccommons/readr
isomorphisms/readr
itso310/readr
izahn/readr
javierluraschi/readr
jdeboer/readr
jennybc/readr
jennyliuism/readr
jiho/readr
jimhester/readr
jjallaire/readr
jmcimula/readr
johnmcdonnell/readr
joranE/readr
jrnold/readr
junjiemao/readr
kaijingzhang/readr
kbenoit/readr
kmillar/readr
kongdd/readr
korterling/readr
kos59125/readr
ktaranov/readr
lakshmikanthgd99/readr
lambdamoses/readr
lawrencesethor/readr
lbartnik/readr
leeper/readr
linkfar/readr
liyistat/readr
lucacerone/readr
lzcheng/readr
manishgodse/readr
marcds/readr
maruthiprithivi/readr
mattlowes/readr
mawds/readr
mbask/readr
mcdelaney/readr
mdeloger/readr
mhdella/readr
mhlinder/readr
michaelquinn32/readr
mikmart/readr
mjdata/readr
mkearney/readr
mmuurr/hadley.readr
monte777/readr
mrkem598/readr
nabilabd/readr
nacnudus/readr
namelessjon/readr
nemochina2008/readr
nikolayvoronchikhin/readr
noamross/readr
nodp53/readr
omdgit/readr
osorensen/readr
pachevalier/readr
paugmw/readr
pralitp/readr
randallgrout/readr
realAkhmed/readr
rgknight/readr
richierocks/readr
rillaha/readr
rlugojr/readr
robbyshaver/readr
rocren191/readr
ryanatanner/readr
sambrady3/readr
sbor23/readr
scipionesarlo/readr
screamin/readr
sebkopf/readr
shntnu/readr
shrektan/readr
shubsoni/readr
sjackman/readr
skaltman/readr
sphs80/readr
sthagen/readr
stillmatic/readr
strategist922/readr
sunilkumar87/readr
tarakc02/readr
tdoehmen/readr
technologiclee/readr
thays42/readr
toph-allen/readr
ttd1026/readr
uribo/readr
vblain/readr
verma-ananya/readr
vspinu/readr
wangwl/readr
wangyuchen/readr
welch16/readr
wibeasley/readr
wypd/readr
xinai57/readr
xinguangliu/readr
xtmgah/readr
xulukai/readr
xumaoxuan/readr
yalinmao/readr
yeedle/readr
yutannihilation/readr
zeehio/readr
zenabbohra/readr
zhaoxiaohe/readr
zhmz90/readr
Nothing to show
base: ec0d8989
head repository: tidyverse/readr
Choose a Head Repository
tidyverse/readr
1402yash/readr
BerryHN/readr
CesarMaalouf/fastread
CommonLL/readr
Cophy08/readr
DanRuderman/readr
Debasis5/readr
DomfeLacre/readr
Dulani/readr
EveChen/readr
FabioSchneider/readr
Feigeliudan01/readr
FilomenaC/readr
G-Bruce/readr
GShotwell/readr
HuichunChien/readr
Jmtorres138/readr
Jofou/readr
KKulma/readr
LluisRamon/readr
Lupupam/readr
Mamie/readr
MhAmine/readr
MilesMcBain/readr
Morganbb104/readr
NicolasImberty/readr
QuLogic/readr
R-forks-to-learn/readr
RaniereRamos/readr
RomeroBarata/readr
Sandy4321/readr
Shians/readr
Solertis/readr
Valbat/readr
YuchuanWeng/readr
aaronmcdaid/readr
adrtod/readr
aespar21/readr
alberthkcheng/readr
alexsla/readr
allenzhuaz/readr
almartin82/readr
alyst/readr
antoine-lizee/readr
arturochian/fastread
asnr/readr
astamm/fastread
batpigandme/readr
bbrewington/readr
bestwpw/readr
billdenney/readr
bkg6/readr
blakeboswell/readr
bquast/readr
callcallpp/readr
cderv/readr
chappers/readr
christophergandrud/readr
cimentadaj/readr
connectthefuture/readr
constantin345/readr
daattali/readr
danicoMul/readr
daniellima123/readr
dapperjapper/readr
dataguy-anil/readr
defconst/readr
dewittpe/readr
dgromer/readr
dickoa/readr
dpastoor/readr
dselivanov/readr
eabanoz/readr
earino/readr
eupimenta/readr
fdzul/readr
fengwangjiang/readr
ffichtenmueller/readr
fisher0218/readr
fomenkosmart/readr
freys3/readr
gergness/readr
gregrs-uk/readr
htfj314/readr
humburg/readr
hxchengtj/readr
ijlyttle/readr
imccommons/readr
isomorphisms/readr
itso310/readr
izahn/readr
javierluraschi/readr
jdeboer/readr
jennybc/readr
jennyliuism/readr
jiho/readr
jimhester/readr
jjallaire/readr
jmcimula/readr
johnmcdonnell/readr
joranE/readr
jrnold/readr
junjiemao/readr
kaijingzhang/readr
kbenoit/readr
kmillar/readr
kongdd/readr
korterling/readr
kos59125/readr
ktaranov/readr
lakshmikanthgd99/readr
lambdamoses/readr
lawrencesethor/readr
lbartnik/readr
leeper/readr
linkfar/readr
liyistat/readr
lucacerone/readr
lzcheng/readr
manishgodse/readr
marcds/readr
maruthiprithivi/readr
mattlowes/readr
mawds/readr
mbask/readr
mcdelaney/readr
mdeloger/readr
mhdella/readr
mhlinder/readr
michaelquinn32/readr
mikmart/readr
mjdata/readr
mkearney/readr
mmuurr/hadley.readr
monte777/readr
mrkem598/readr
nabilabd/readr
nacnudus/readr
namelessjon/readr
nemochina2008/readr
nikolayvoronchikhin/readr
noamross/readr
nodp53/readr
omdgit/readr
osorensen/readr
pachevalier/readr
paugmw/readr
pralitp/readr
randallgrout/readr
realAkhmed/readr
rgknight/readr
richierocks/readr
rillaha/readr
rlugojr/readr
robbyshaver/readr
rocren191/readr
ryanatanner/readr
sambrady3/readr
sbor23/readr
scipionesarlo/readr
screamin/readr
sebkopf/readr
shntnu/readr
shrektan/readr
shubsoni/readr
sjackman/readr
skaltman/readr
sphs80/readr
sthagen/readr
stillmatic/readr
strategist922/readr
sunilkumar87/readr
tarakc02/readr
tdoehmen/readr
technologiclee/readr
thays42/readr
toph-allen/readr
ttd1026/readr
uribo/readr
vblain/readr
verma-ananya/readr
vspinu/readr
wangwl/readr
wangyuchen/readr
welch16/readr
wibeasley/readr
wypd/readr
xinai57/readr
xinguangliu/readr
xtmgah/readr
xulukai/readr
xumaoxuan/readr
yalinmao/readr
yeedle/readr
yutannihilation/readr
zeehio/readr
zenabbohra/readr
zhaoxiaohe/readr
zhmz90/readr
Nothing to show
compare: aa89ff72
Showing with 1,175 additions and 1,206 deletions.
  1. +2 −0 .Rbuildignore
  2. +3 −0 .github/workflows/R-CMD-check.yaml
  3. +2 −0 .gitignore
  4. +6 −4 DESCRIPTION
  5. +0 −1 NAMESPACE
  6. +1 −1 NEWS.md
  7. +0 −107 R/RcppExports.R
  8. +1 −1 R/collectors.R
  9. +107 −0 R/cpp11-exports.R
  10. +1 −1 R/melt_fwf.R
  11. +0 −1 R/read_delim.R
  12. +1 −1 R/read_lines_chunked.R
  13. +2 −2 R/source.R
  14. +1 −1 R/tokenizer.R
  15. +3 −0 inst/WORDLIST
  16. +24 −0 man/callback.Rd
  17. +15 −0 man/parse_number.Rd
  18. +1 −1 src/.clang-format
  19. +28 −29 src/Collector.cpp
  20. +43 −39 src/Collector.h
  21. +8 −8 src/CollectorGuess.cpp
  22. +3 −0 src/DateTime.h
  23. +7 −5 src/DateTimeParser.h
  24. +9 −10 src/Iconv.cpp
  25. +3 −0 src/Iconv.h
  26. +21 −18 src/LocaleInfo.cpp
  27. +5 −1 src/LocaleInfo.h
  28. +14 −8 src/Progress.h
  29. +0 −406 src/RcppExports.cpp
  30. +33 −25 src/Reader.cpp
  31. +13 −19 src/Reader.h
  32. +11 −13 src/Source.cpp
  33. +4 −3 src/Source.h
  34. +3 −2 src/SourceFile.h
  35. +3 −3 src/SourceRaw.h
  36. +6 −5 src/SourceString.h
  37. +3 −2 src/Token.h
  38. +30 −25 src/Tokenizer.cpp
  39. +8 −3 src/Tokenizer.h
  40. +3 −5 src/TokenizerDelim.cpp
  41. +1 −1 src/TokenizerDelim.h
  42. +28 −21 src/TokenizerFwf.cpp
  43. +0 −1 src/TokenizerFwf.h
  44. +3 −3 src/TokenizerLine.h
  45. +3 −2 src/TokenizerLog.h
  46. +4 −5 src/TokenizerWs.cpp
  47. +0 −1 src/TokenizerWs.h
  48. +17 −12 src/Warnings.h
  49. +11 −12 src/connection.cpp
  50. +10 −8 src/connection.h
  51. +264 −0 src/cpp11-exports.cpp
  52. +14 −14 src/datetime.cpp
  53. +3 −1 src/localtime.h
  54. +34 −22 src/parse.cpp
  55. +85 −86 src/read.cpp
  56. +8 −8 src/type_convert.cpp
  57. +20 −20 src/write.cpp
  58. +2 −1 src/write_connection.cpp
  59. +0 −1 src/write_connection.h
  60. +15 −13 src/write_delim.cpp
  61. +1 −5 tests/testthat.R
  62. +3 −1 tests/testthat/test-col-spec.R
  63. +15 −15 tests/testthat/test-melt-chunked.R
  64. +176 −176 tests/testthat/test-melt-csv.R
  65. +2 −2 tests/testthat/test-melt-fwf.R
  66. +11 −10 tests/testthat/test-parsing-datetime.R
  67. +1 −1 tests/testthat/test-parsing-factors.R
  68. +2 −2 tests/testthat/test-parsing-time.R
  69. +1 −0 tests/testthat/test-read-builtin.R
  70. +3 −3 tests/testthat/test-read-csv.R
  71. +4 −4 tests/testthat/test-read-fwf.R
  72. +3 −3 tests/testthat/test-read-table.R
  73. +3 −2 tests/testthat/test-write.R
@@ -34,3 +34,5 @@
^\.github/workflows/R-CMD-check\.yaml$
^\.github/workflows/pkgdown\.yaml$
^\.github/workflows/pr-commands\.yaml$
^.clangd$
^compile_commands.json$
@@ -59,6 +59,9 @@ jobs:
Rscript -e "remotes::install_github('r-hub/sysreqs')"
sysreqs=$(Rscript -e "cat(sysreqs::sysreq_commands('DESCRIPTION'))")
sudo -s eval "$sysreqs"
mkdir -p ~/.R/
sudo apt install g++-6 -y
echo $'CXX1X=g++-6\nCXX11=g++-6' >> ~/.R/Makevars
- name: Install dependencies
run: Rscript -e "library(remotes)" -e "update(readRDS('depends.Rds'))" -e "remotes::install_cran('rcmdcheck')"
@@ -12,3 +12,5 @@ script.R
sanitize.sh
.vimrc
docs
.clangd
compile_commands.json
@@ -42,7 +42,6 @@ Imports:
hms (>= 0.4.1),
methods,
R6,
Rcpp (>= 0.12.0.5),
tibble,
utils
Suggests:
@@ -57,11 +56,14 @@ Suggests:
xml2
LinkingTo:
BH,
Rcpp
cpp11
VignetteBuilder:
knitr
Encoding: UTF-8
Language: en-US
Roxygen: list(markdown = TRUE)
RoxygenNote: 7.0.2
SystemRequirements: GNU make
RoxygenNote: 7.1.0
SystemRequirements: GNU make, C++11
Remotes:
r-lib/cpp11,
rstudio/rmarkdown
@@ -136,7 +136,6 @@ export(write_file)
export(write_lines)
export(write_rds)
export(write_tsv)
importClassesFrom(Rcpp,"C++Object")
importFrom(R6,R6Class)
importFrom(hms,hms)
importFrom(methods,setOldClass)
@@ -57,7 +57,7 @@

* `type_convert()` removes a 'spec' attribute, because the current columns likely have modified data types. The 'spec' attribute is set by functions like `read_delim()` (@jimhester, @wibeasley, #1032).

* `write_rds()` now can specify the rds version to use. The default value is
* `write_rds()` now can specify the Rds version to use. The default value is
2 as it's compatible to R versions prior to 3.5.0 (@shrektan, #1001).

# readr 1.3.1

This file was deleted.

@@ -142,7 +142,7 @@ col_skip <- function() {
#' parse_number("$1,000") ## leading $ and grouping character , ignored
#' parse_number("euro1,000") ## leading non-numeric euro ignored
#'
#' parse_number("1,234.56)
#' parse_number("1,234.56")
#' ## explicit locale specifying European grouping and decimal marks
#' parse_number("1.234,56", locale = locale(decimal_mark = ",", grouping_mark = "."))
#' ## SI/ISO 31-0 standard spaces for number grouping
@@ -0,0 +1,107 @@
# Generated by cpp11: do not edit by hand

collectorGuess <- function(input, locale_, guessInteger){
.Call("_readr_collectorGuess" , input, locale_, guessInteger)
}

read_connection_ <- function(con, filename, chunk_size){
.Call("_readr_read_connection_" , con, filename, chunk_size)
}

utctime <- function(year, month, day, hour, min, sec, psec){
.Call("_readr_utctime" , year, month, day, hour, min, sec, psec)
}

dim_tokens_ <- function(sourceSpec, tokenizerSpec){
.Call("_readr_dim_tokens_" , sourceSpec, tokenizerSpec)
}

count_fields_ <- function(sourceSpec, tokenizerSpec, n_max){
.Call("_readr_count_fields_" , sourceSpec, tokenizerSpec, n_max)
}

guess_header_ <- function(sourceSpec, tokenizerSpec, locale_){
.Call("_readr_guess_header_" , sourceSpec, tokenizerSpec, locale_)
}

tokenize_ <- function(sourceSpec, tokenizerSpec, n_max){
.Call("_readr_tokenize_" , sourceSpec, tokenizerSpec, n_max)
}

parse_vector_ <- function(x, collectorSpec, locale_, na, trim_ws){
.Call("_readr_parse_vector_" , x, collectorSpec, locale_, na, trim_ws)
}

read_file_ <- function(sourceSpec, locale_){
.Call("_readr_read_file_" , sourceSpec, locale_)
}

read_file_raw_ <- function(sourceSpec){
.Call("_readr_read_file_raw_" , sourceSpec)
}

read_lines_ <- function(sourceSpec, locale_, na, n_max, skip_empty_rows, progress){
.Call("_readr_read_lines_" , sourceSpec, locale_, na, n_max, skip_empty_rows, progress)
}

read_lines_chunked_ <- function(sourceSpec, locale_, na, chunkSize, callback, skip_empty_rows, progress){
invisible(.Call("_readr_read_lines_chunked_" , sourceSpec, locale_, na, chunkSize, callback, skip_empty_rows, progress))
}

read_lines_raw_ <- function(sourceSpec, n_max, progress){
.Call("_readr_read_lines_raw_" , sourceSpec, n_max, progress)
}

read_lines_raw_chunked_ <- function(sourceSpec, chunkSize, callback, progress){
invisible(.Call("_readr_read_lines_raw_chunked_" , sourceSpec, chunkSize, callback, progress))
}

read_tokens_ <- function(sourceSpec, tokenizerSpec, colSpecs, colNames, locale_, n_max, progress){
.Call("_readr_read_tokens_" , sourceSpec, tokenizerSpec, colSpecs, colNames, locale_, n_max, progress)
}

read_tokens_chunked_ <- function(sourceSpec, callback, chunkSize, tokenizerSpec, colSpecs, colNames, locale_, progress){
invisible(.Call("_readr_read_tokens_chunked_" , sourceSpec, callback, chunkSize, tokenizerSpec, colSpecs, colNames, locale_, progress))
}

melt_tokens_ <- function(sourceSpec, tokenizerSpec, colSpecs, locale_, n_max, progress){
.Call("_readr_melt_tokens_" , sourceSpec, tokenizerSpec, colSpecs, locale_, n_max, progress)
}

melt_tokens_chunked_ <- function(sourceSpec, callback, chunkSize, tokenizerSpec, colSpecs, locale_, progress){
invisible(.Call("_readr_melt_tokens_chunked_" , sourceSpec, callback, chunkSize, tokenizerSpec, colSpecs, locale_, progress))
}

guess_types_ <- function(sourceSpec, tokenizerSpec, locale_, n){
.Call("_readr_guess_types_" , sourceSpec, tokenizerSpec, locale_, n)
}

whitespaceColumns <- function(sourceSpec, n, comment){
.Call("_readr_whitespaceColumns" , sourceSpec, n, comment)
}

type_convert_col <- function(x, spec, locale_, col, na, trim_ws){
.Call("_readr_type_convert_col" , x, spec, locale_, col, na, trim_ws)
}

stream_delim_ <- function(df, connection, delim, na, col_names, bom, quote_escape, eol){
.Call("_readr_stream_delim_" , df, connection, delim, na, col_names, bom, quote_escape, eol)
}

write_lines_ <- function(lines, connection, na, sep){
invisible(.Call("_readr_write_lines_" , lines, connection, na, sep))
}

write_lines_raw_ <- function(x, connection, sep){
invisible(.Call("_readr_write_lines_raw_" , x, connection, sep))
}

write_file_ <- function(x, connection){
invisible(.Call("_readr_write_file_" , x, connection))
}

write_file_raw_ <- function(x, connection){
invisible(.Call("_readr_write_file_raw_" , x, connection))
}


@@ -43,7 +43,7 @@ melt_fwf <- function(file, col_positions,
return(tibble::tibble(row = double(), col = double(),
data_type = character(), value = character()))
}
tokenizer <- tokenizer_fwf(col_positions$begin, col_positions$end, na = na,
tokenizer <- tokenizer_fwf(as.integer(col_positions$begin), as.integer(col_positions$end), na = na,
comment = comment, trim_ws = trim_ws,
skip_empty_rows = skip_empty_rows)
out <- melt_tokens(ds, tokenizer, locale_ = locale,
@@ -1,5 +1,4 @@
#' @useDynLib readr, .registration = TRUE
#' @importClassesFrom Rcpp "C++Object"
NULL

#' Read a delimited file (including csv & tsv) into a tibble
@@ -14,7 +14,7 @@ read_lines_chunked <- function(file, callback, chunk_size = 10000, skip = 0,
callback <- as_chunk_callback(callback)
on.exit(callback$finally(), add = TRUE)

read_lines_chunked_(ds, locale, na, chunk_size, callback, progress)
read_lines_chunked_(ds, locale, na, chunk_size, callback, FALSE, progress)

return(callback$result())
}
@@ -103,15 +103,15 @@ datasource_raw <- function(text, skip, skip_empty_rows, comment) {

# Helpers ----------------------------------------------------------------------

read_connection <- function(con) {
read_connection <- function(con, chunk_size = 64L * 1024L) {
stopifnot(is.connection(con))

if (!isOpen(con)) {
on.exit(close(con), add = TRUE)
open(con, "rb")
}

read_connection_(con, tempfile())
read_connection_(con, tempfile(), chunk_size)
}

standardise_path <- function(path, input = TRUE) {
@@ -133,7 +133,7 @@ tokenizer_log <- function() {
#' [begin, end) (i.e inclusive-exclusive).
tokenizer_fwf <- function(begin, end, na = "NA", comment = "", trim_ws = TRUE,
skip_empty_rows = TRUE) {
structure(list(begin = begin, end = end, na = na, comment = comment,
structure(list(begin = as.integer(begin), end = as.integer(end), na = na, comment = comment,
trim_ws = trim_ws, skip_empty_rows = skip_empty_rows),
class = "tokenizer_fwf")
}
@@ -14,6 +14,7 @@ bzipped
centric
Cheatsheet
Cheng
cloneable
coloured
Colouring
csv
@@ -57,6 +58,7 @@ na
nd
noamross
null's
NaN
otherbug
parsers
PLDI
@@ -71,6 +73,7 @@ recognising
recongise
reinitialization
reprexes
Rds
rmarkdown
serialise
setosa

No commit comments for this range

You can’t perform that action at this time.