dbplyr
A 'dplyr' Back End for Databases
v2.5.2
·
Feb 12, 2026
·
MIT + file LICENSE
Description
A 'dplyr' back end for databases that allows you to work with remote database tables as if they are in-memory data frames. Basic features works with any database that has a 'DBI' back end; more advanced features require 'SQL' translation to be provided by the package author.
Downloads
540K
Last 30 days
121st
1.2M
Last 90 days
1.2M
Last year
Trend: -12.8% (30d vs prior 30d)
CRAN Check Status
3
ERROR
11
OK
Show all 14 flavors
| Flavor | Status |
|---|---|
| r-devel-linux-x86_64-debian-clang | OK |
| r-devel-linux-x86_64-debian-gcc | OK |
| r-devel-linux-x86_64-fedora-clang | OK |
| r-devel-linux-x86_64-fedora-gcc | OK |
| r-devel-macos-arm64 | OK |
| r-devel-windows-x86_64 | OK |
| r-oldrel-macos-arm64 | ERROR |
| r-oldrel-macos-x86_64 | ERROR |
| r-oldrel-windows-x86_64 | OK |
| r-patched-linux-x86_64 | OK |
| r-release-linux-x86_64 | OK |
| r-release-macos-arm64 | OK |
| r-release-macos-x86_64 | OK |
| r-release-windows-x86_64 | ERROR |
Check details (14 non-OK)
OK
r-devel-linux-x86_64-debian-clang
*
OK
r-devel-linux-x86_64-debian-gcc
*
OK
r-devel-linux-x86_64-fedora-clang
*
OK
r-devel-linux-x86_64-fedora-gcc
*
OK
r-devel-macos-arm64
*
OK
r-devel-windows-x86_64
*
ERROR
r-oldrel-macos-arm64
tests
Running ‘testthat.R’ [38s/19s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> library(testthat)
> library(dbplyr)
>
> test_check("dbplyr")
Starting 2 test processes.
> test-tidyeval-across.R: Warning message:
> test-tidyeval-across.R: call dbDisconnect() when finished working with a connection
> test-verb-joins.R: Joining with `by = join_by(x)`
Saving _problems/test-verb-pivot-longer-64.R
Saving _problems/test-verb-pivot-longer-104.R
Saving _problems/test-verb-pivot-longer-120.R
Saving _problems/test-verb-pivot-longer-174.R
Saving _problems/test-verb-pivot-longer-189.R
[ FAIL 5 | WARN 0 | SKIP 374 | PASS 1699 ]
══ Skipped tests (374) ═════════════════════════════════════════════════════════
• Need at least two srcs to compare (5): 'test-verb-compute.R:34:3',
'test-verb-copy-to.R:18:3', 'test-verb-copy-to.R:27:3',
'test-verb-set-ops.R:49:3', 'test-verb-set-ops.R:93:3'
• No MariaDB (5): 'test-backend-mysql.R:104:3', 'test-backend-mysql.R:109:3',
'test-backend-mysql.R:114:3', 'test-backend-mysql.R:125:3',
'test-backend-mysql.R:153:3'
• No mssql (13): 'test-backend-mssql.R:411:3', 'test-backend-mssql.R:443:3',
'test-backend-mssql.R:462:3', 'test-backend-mssql.R:478:3',
'test-backend-mssql.R:504:3', 'test-backend-mssql.R:531:3',
'test-backend-mssql.R:555:3', 'test-backend-mssql.R:580:3',
'test-backend-mssql.R:606:3', 'test-backend-mssql.R:633:3',
'test-backend-mssql.R:658:3', 'test-backend-mssql.R:685:3',
'test-backend-mssql.R:710:3'
• No postgres (9): 'test-backend-postgres.R:216:3',
'test-backend-postgres.R:224:3', 'test-backend-postgres.R:231:3',
'test-backend-postgres.R:245:3', 'test-backend-postgres.R:305:3',
'test-backend-postgres.R:320:3', 'test-backend-postgres.R:375:3',
'test-backend-postgres.R:434:3', 'test-verb-joins.R:103:3'
• On CRAN (336): 'test-backend-access.R:1:1', 'test-backend-access.R:76:1',
'test-backend-hana.R:1:1', 'test-backend-hana.R:12:1',
'test-backend-hive.R:11:1', 'test-backend-impala.R:19:1',
'test-backend-.R:11:1', 'test-backend-.R:68:1', 'test-backend-.R:81:1',
'test-backend-.R:88:1', 'test-backend-.R:104:1', 'test-backend-.R:163:1',
'test-backend-.R:179:1', 'test-backend-mysql.R:46:1',
'test-backend-mysql.R:64:1', 'test-backend-oracle.R:20:1',
'test-backend-oracle.R:29:1', 'test-backend-oracle.R:34:1',
'test-backend-oracle.R:56:1', 'test-backend-oracle.R:71:1',
'test-backend-oracle.R:96:1', 'test-backend-postgres.R:49:1',
'test-backend-postgres.R:69:1', 'test-backend-postgres.R:94:1',
'test-backend-postgres.R:119:1', 'test-backend-postgres.R:134:1',
'test-backend-postgres.R:147:1', 'test-backend-postgres.R:156:1',
'test-backend-postgres.R:190:1', 'test-backend-redshift.R:46:1',
'test-backend-redshift.R:61:1', 'test-backend-redshift.R:86:1',
'test-backend-mssql.R:60:1', 'test-backend-mssql.R:91:1',
'test-backend-mssql.R:123:1', 'test-backend-mssql.R:144:1',
'test-backend-mssql.R:169:1', 'test-backend-mssql.R:203:1',
'test-backend-mssql.R:221:1', 'test-backend-mssql.R:227:1',
'test-backend-mssql.R:233:1', 'test-backend-mssql.R:248:1',
'test-backend-mssql.R:259:1', 'test-backend-mssql.R:276:1',
'test-backend-mssql.R:298:1', 'test-backend-mssql.R:318:1',
'test-backend-mssql.R:342:1', 'test-backend-mssql.R:361:1',
'test-backend-mssql.R:382:1', 'test-backend-mssql.R:396:1',
'test-backend-mssql.R:403:1', 'test-backend-mssql.R:428:1',
'test-backend-spark-sql.R:1:1', 'test-backend-spark-sql.R:26:1',
'test-backend-snowflake.R:9:1', 'test-backend-snowflake.R:169:1',
'test-backend-snowflake.R:188:1', 'test-backend-sqlite.R:50:1',
'test-backend-sqlite.R:59:1', 'test-backend-sqlite.R:106:1',
'test-backend-teradata.R:53:1', 'test-backend-teradata.R:61:1',
'test-backend-teradata.R:66:1', 'test-backend-teradata.R:76:1',
'test-backend-teradata.R:84:1', 'test-backend-teradata.R:91:1',
'test-build-sql.R:1:1', 'test-build-sql.R:55:1', 'test-build-sql.R:64:1',
'test-db-io.R:1:1', 'test-db-io.R:19:1', 'test-db-io.R:44:1',
'test-db-sql.R:1:1', 'test-db-sql.R:24:1', 'test-ident.R:13:1',
'test-lazy-join-query.R:1:1', 'test-lazy-select-query.R:1:1',
'test-escape.R:111:1', 'test-escape.R:116:1', 'test-pillar.R:1:1',
'test-query-select.R:1:1', 'test-query-select.R:10:1',
'test-query-select.R:19:1', 'test-query-join.R:1:1',
'test-query-join.R:13:1', 'test-query-join.R:22:1', 'test-query-join.R:29:1',
'test-query-join.R:36:1', 'test-query-semi-join.R:1:1',
'test-query-semi-join.R:9:1', 'test-query-set-op.R:1:1',
'test-query-set-op.R:8:1', 'test-schema.R:1:1', 'test-sql-build.R:1:1',
'test-sql.R:7:1', 'test-table-name.R:1:1', 'test-table-name.R:12:1',
'test-table-name.R:81:1', 'test-table-name.R:91:1', 'test-tbl-lazy.R:6:1',
'test-tbl-lazy.R:10:1', 'test-tbl-lazy.R:21:1', 'test-tbl-lazy.R:44:1',
'test-tbl-lazy.R:48:1', 'test-tbl-sql.R:29:1', 'test-tbl-sql.R:57:1',
'test-tbl-sql.R:64:1', 'test-rows.R:4:1', 'test-rows.R:51:1',
'test-rows.R:65:1', 'test-rows.R:120:1', 'test-rows.R:157:1',
'test-rows.R:184:1', 'test-rows.R:220:1', 'test-rows.R:229:1',
'test-rows.R:276:1', 'test-rows.R:308:1', 'test-rows.R:328:1',
'test-rows.R:349:1', 'test-rows.R:435:1', 'test-rows.R:476:1',
'test-rows.R:515:1', 'test-rows.R:541:1', 'test-rows.R:589:1',
'test-rows.R:615:1', 'test-rows.R:656:1', 'test-rows.R:698:1',
'test-rows.R:742:1', 'test-rows.R:780:1', 'test-rows.R:826:1',
'test-rows.R:874:1', 'test-rows.R:915:1', 'test-rows.R:954:1',
'test-rows.R:975:1', 'test-tidyeval.R:77:1', 'test-tidyeval-across.R:49:1',
'test-tidyeval-across.R:99:1', 'test-tidyeval-across.R:220:1',
'test-tidyeval-across.R:227:1', 'test-tidyeval-across.R:232:1',
'test-tidyeval-across.R:368:1', 'test-tidyeval-across.R:377:1',
'test-tidyeval-across.R:385:1', 'test-tidyeval-across.R:428:1',
'test-tidyeval-across.R:444:1', 'test-tidyeval-across.R:460:1',
'test-tidyeval-across.R:467:1', 'test-tidyeval-across.R:474:1',
'test-tidyeval-across.R:508:1', 'test-tidyeval-across.R:538:1',
'test-tidyeval-across.R:544:1', 'test-tidyeval-across.R:625:1',
'test-tidyeval-across.R:633:1', 'test-tidyeval-across.R:639:1',
'test-tidyeval-across.R:647:1', 'test-translate-sql-cut.R:89:1',
'test-translate-sql-cut.R:144:1', 'test-translate-sql-conditional.R:1:1',
'test-translate-sql-conditional.R:6:1',
'test-translate-sql-conditional.R:13:1',
'test-translate-sql-conditional.R:25:1',
'test-translate-sql-conditional.R:60:1',
'test-translate-sql-conditional.R:68:1',
'test-translate-sql-conditional.R:163:1',
'test-translate-sql-conditional.R:232:1',
'test-translate-sql-conditional.R:249:1',
'test-translate-sql-conditional.R:281:1',
'test-translate-sql-conditional.R:288:1', 'test-translate-sql-helpers.R:2:3',
'test-translate-sql-helpers.R:13:1', 'test-translate-sql-helpers.R:29:1',
'test-translate-sql-helpers.R:45:1', 'test-translate-sql-helpers.R:50:1',
'test-translate-sql-helpers.R:84:1', 'test-translate-sql-helpers.R:92:1',
'test-translate-sql-quantile.R:1:1', 'test-translate-sql-string.R:1:1',
'test-translate-sql-window.R:100:1', 'test-translate-sql-window.R:149:1',
'test-translate-sql-window.R:156:1', 'test-translate-sql-window.R:206:1',
'test-translate-sql-window.R:226:1', 'test-translate-sql.R:1:1',
'test-translate-sql.R:12:1', 'test-verb-arrange.R:13:1',
'test-verb-arrange.R:20:1', 'test-verb-arrange.R:44:1',
'test-verb-arrange.R:63:1', 'test-verb-compute.R:56:1',
'test-verb-compute.R:95:1', 'test-verb-compute.R:114:1',
'test-verb-compute.R:122:1', 'test-verb-copy-to.R:52:1',
'test-verb-copy-to.R:60:1', 'test-verb-copy-to.R:92:1',
'test-verb-copy-to.R:100:1', 'test-verb-copy-to.R:125:1',
'test-verb-count.R:1:1', 'test-verb-count.R:63:1',
'test-verb-distinct.R:60:1', 'test-verb-distinct.R:182:1',
'test-verb-distinct.R:198:1', 'test-verb-do.R:27:1', 'test-verb-do.R:64:1',
'test-verb-fill.R:44:1', 'test-verb-fill.R:57:1', 'test-verb-fill.R:70:1',
'test-verb-fill.R:83:1', 'test-verb-fill.R:97:1', 'test-verb-fill.R:103:1',
'test-verb-expand.R:1:1', 'test-verb-expand.R:10:1',
'test-verb-expand.R:22:1', 'test-verb-expand.R:28:1',
'test-verb-expand.R:33:1', 'test-verb-expand.R:53:1',
'test-verb-expand.R:57:1', 'test-verb-expand.R:62:1',
'test-verb-expand.R:93:1', 'test-verb-expand.R:109:1',
'test-verb-expand.R:115:1', 'test-verb-group_by.R:10:1',
'test-verb-group_by.R:18:1', 'test-verb-group_by.R:25:1',
'test-verb-group_by.R:31:1', 'test-verb-group_by.R:156:1',
'test-verb-filter.R:11:1', 'test-verb-filter.R:54:1',
'test-verb-filter.R:61:1', 'test-verb-filter.R:166:1',
'test-verb-filter.R:184:1', 'test-verb-filter.R:212:1',
'test-verb-filter.R:292:1', 'test-verb-filter.R:326:1',
'test-verb-filter.R:336:1', 'test-verb-mutate.R:19:1',
'test-verb-mutate.R:37:1', 'test-verb-mutate.R:48:1',
'test-verb-mutate.R:60:1', 'test-verb-mutate.R:101:1',
'test-verb-mutate.R:115:1', 'test-verb-mutate.R:132:1',
'test-verb-mutate.R:166:1', 'test-verb-mutate.R:186:1',
'test-verb-mutate.R:413:1', 'test-verb-mutate.R:420:1',
'test-verb-mutate.R:470:1', 'test-verb-mutate.R:477:1',
'test-verb-mutate.R:484:1', 'test-verb-pivot-longer.R:1:1',
'test-verb-pivot-longer.R:19:1', 'test-verb-pivot-longer.R:34:1',
'test-verb-pivot-longer.R:43:1', 'test-verb-pivot-longer.R:80:1',
'test-verb-pivot-longer.R:87:1', 'test-verb-pivot-longer.R:139:1',
'test-verb-pivot-longer.R:148:1', 'test-verb-pivot-longer.R:232:1',
'test-verb-pivot-longer.R:250:1', 'test-verb-pivot-longer.R:258:1',
'test-verb-joins.R:22:1', 'test-verb-joins.R:45:1', 'test-verb-joins.R:57:1',
'test-verb-joins.R:167:1', 'test-verb-joins.R:280:1',
'test-verb-joins.R:346:1', 'test-verb-joins.R:490:1',
'test-verb-joins.R:531:1', 'test-verb-joins.R:568:1',
'test-verb-joins.R:619:1', 'test-verb-joins.R:636:1',
'test-verb-joins.R:656:1', 'test-verb-joins.R:683:1',
'test-verb-joins.R:853:1', 'test-verb-joins.R:903:1',
'test-verb-joins.R:972:1', 'test-verb-joins.R:981:1',
'test-verb-joins.R:1001:1', 'test-verb-joins.R:1012:1',
'test-verb-joins.R:1021:1', 'test-verb-joins.R:1062:1',
'test-verb-joins.R:1108:1', 'test-verb-joins.R:1312:1',
'test-verb-pull.R:44:1', 'test-verb-pivot-wider.R:9:1',
'test-verb-pivot-wider.R:38:1', 'test-verb-pivot-wider.R:54:1',
'test-verb-pivot-wider.R:233:1', 'test-verb-pivot-wider.R:242:1',
'test-verb-pivot-wider.R:248:1', 'test-verb-pivot-wider.R:276:1',
'test-verb-pivot-wider.R:325:1', 'test-verb-pivot-wider.R:335:1',
'test-verb-pivot-wider.R:371:1', 'test-verb-pivot-wider.R:416:1',
'test-verb-pivot-wider.R:474:1', 'test-verb-pivot-wider.R:479:1',
'test-verb-pivot-wider.R:484:1', 'test-verb-pivot-wider.R:491:1',
'test-verb-pivot-wider.R:498:1', 'test-verb-select.R:26:1',
'test-verb-select.R:63:1', 'test-verb-select.R:120:1',
'test-verb-select.R:179:1', 'test-verb-select.R:202:1',
'test-verb-select.R:223:1', 'test-verb-select.R:278:1',
'test-verb-select.R:305:1', 'test-verb-select.R:312:1',
'test-verb-select.R:341:1', 'test-verb-select.R:349:1',
'test-verb-select.R:356:1', 'test-verb-set-ops.R:58:1',
'test-verb-slice.R:1:1', 'test-verb-slice.R:8:1', 'test-verb-slice.R:22:1',
'test-verb-slice.R:31:1', 'test-verb-slice.R:42:1', 'test-verb-slice.R:61:1',
'test-verb-slice.R:71:1', 'test-verb-slice.R:100:1',
'test-verb-slice.R:115:1', 'test-verb-summarise.R:1:1',
'test-verb-summarise.R:25:1', 'test-verb-summarise.R:41:1',
'test-verb-summarise.R:69:1', 'test-verb-summarise.R:78:1',
'test-verb-summarise.R:110:1', 'test-verb-summarise.R:123:1',
'test-verb-summarise.R:131:1', 'test-verb-summarise.R:142:1',
'test-verb-window.R:1:1', 'test-verb-window.R:8:1',
'test-verb-window.R:18:1', 'test-verb-window.R:32:1',
'test-verb-uncount.R:1:1'
• `grouped_df()` needs a `name_repair` argument (1):
'test-verb-pivot-wider.R:81:3'
• empty test (1): 'test-verb-set-ops.R:110:1'
• identical(Sys.getenv("GITHUB_POSTGRES"), "true") is not TRUE (1):
'test-backend-postgres-old.R:2:3'
• not clear whether test makes sense (2): 'test-verb-arrange.R:2:3',
'test-verb-arrange.R:131:3'
• not yet correctly supported (1): 'test-tidyeval-across.R:272:3'
══ Failed tests ════════════════════════════════════════════════════════════════
── Error ('test-verb-pivot-longer.R:59:3'): can handle missing combinations ────
Error in `simplifyPieces(pieces, n, fill == "left")`: SET_VECTOR_ELT() can only be applied to a 'list', not a 'promise'
Backtrace:
▆
1. ├─tidyr::pivot_longer(...) at test-verb-pivot-longer.R:59:3
2. └─dbplyr:::pivot_longer.tbl_lazy(...)
3. └─tidyr::build_longer_spec(...)
4. └─tidyr:::str_separate(names, names_to, sep = names_sep, error_call = error_call)
5. └─tidyr:::str_split_fixed(...)
6. └─tidyr:::simplifyPieces(pieces, n, fill == "left")
── Error ('test-verb-pivot-longer.R:97:3'): `values_transform` works with single functions (#1284) ──
Error in `simplifyPieces(pieces, n, fill == "left")`: SET_VECTOR_ELT() can only be applied to a 'list', not a 'promise'
Backtrace:
▆
1. ├─... %>% collect() at test-verb-pivot-longer.R:97:3
2. ├─dplyr::collect(.)
3. ├─tidyr::pivot_longer(...)
4. └─dbplyr:::pivot_longer.tbl_lazy(...)
5. └─tidyr::build_longer_spec(...)
6. └─tidyr:::str_separate(names, names_to, sep = names_sep, error_call = error_call)
7. └─tidyr:::str_split_fixed(...)
8. └─tidyr:::simplifyPieces(pieces, n, fill == "left")
── Error ('test-verb-pivot-longer.R:113:3'): `names_ptypes` and `names_transform` ──
Error in `simplifyPieces(pieces, n, fill == "left")`: SET_VECTOR_ELT() can only be applied to a 'list', not a 'promise'
Backtrace:
▆
1. ├─... %>% collect() at test-verb-pivot-longer.R:113:3
2. ├─dplyr::collect(.)
3. ├─tidyr::pivot_longer(...)
4. └─dbplyr:::pivot_longer.tbl_lazy(...)
5. └─tidyr::build_longer_spec(...)
6. └─tidyr:::str_separate(names, names_to, sep = names_sep, error_call = error_call)
7. └─tidyr:::str_split_fixed(...)
8. └─tidyr:::simplifyPieces(pieces, n, fill == "left")
── Error ('test-verb-pivot-longer.R:169:3'): original col order is preserved ───
Error in `simplifyPieces(pieces, n, fill == "left")`: SET_VECTOR_ELT() can only be applied to a 'list', not a 'promise'
Backtrace:
▆
1. ├─testthat::expect_equal(...) at test-verb-pivot-longer.R:169:3
2. │ └─testthat::quasi_label(enquo(object), label)
3. │ └─rlang::eval_bare(expr, quo_get_env(quo))
4. ├─... %>% colnames()
5. ├─base::colnames(.)
6. │ └─base::is.data.frame(x)
7. ├─tidyr::pivot_longer(., -id, names_to = c(".value", "n"), names_sep = "_")
8. └─dbplyr:::pivot_longer.tbl_lazy(...)
9. └─tidyr::build_longer_spec(...)
10. └─tidyr:::str_separate(names, names_to, sep = names_sep, error_call = error_call)
11. └─tidyr:::str_split_fixed(...)
12. └─tidyr:::simplifyPieces(pieces, n, fill == "left")
── Error ('test-verb-pivot-longer.R:186:3'): .value can be at any position in `names_to` ──
Error in `simplifyPieces(pieces, n, fill == "left")`: SET_VECTOR_ELT() can only be applied to a 'list', not a 'promise'
Backtrace:
▆
1. ├─tidyr::pivot_longer(...) at test-verb-pivot-longer.R:186:3
2. └─dbplyr:::pivot_longer.tbl_lazy(...)
3. └─tidyr::build_longer_spec(...)
4. └─tidyr:::str_separate(names, names_to, sep = names_sep, error_call = error_call)
5. └─tidyr:::str_split_fixed(...)
6. └─tidyr:::simplifyPieces(pieces, n, fill == "left")
[ FAIL 5 | WARN 0 | SKIP 374 | PASS 1699 ]
Error:
! Test failures.
Execution halted
ERROR
r-oldrel-macos-x86_64
tests
Running ‘testthat.R’ [115s/90s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> library(testthat)
> library(dbplyr)
>
> test_check("dbplyr")
Starting 2 test processes.
> test-table-name.R: Warning message:
> test-table-name.R: call dbDisconnect() when finished working with a connection
> test-verb-joins.R: Joining with `by = join_by(x)`
Saving _problems/test-verb-pivot-longer-64.R
Saving _problems/test-verb-pivot-longer-104.R
Saving _problems/test-verb-pivot-longer-120.R
Saving _problems/test-verb-pivot-longer-174.R
Saving _problems/test-verb-pivot-longer-189.R
[ FAIL 5 | WARN 0 | SKIP 374 | PASS 1699 ]
══ Skipped tests (374) ═════════════════════════════════════════════════════════
• Need at least two srcs to compare (5): 'test-verb-compute.R:34:3',
'test-verb-copy-to.R:18:3', 'test-verb-copy-to.R:27:3',
'test-verb-set-ops.R:49:3', 'test-verb-set-ops.R:93:3'
• No MariaDB (5): 'test-backend-mysql.R:104:3', 'test-backend-mysql.R:109:3',
'test-backend-mysql.R:114:3', 'test-backend-mysql.R:125:3',
'test-backend-mysql.R:153:3'
• No mssql (13): 'test-backend-mssql.R:411:3', 'test-backend-mssql.R:443:3',
'test-backend-mssql.R:462:3', 'test-backend-mssql.R:478:3',
'test-backend-mssql.R:504:3', 'test-backend-mssql.R:531:3',
'test-backend-mssql.R:555:3', 'test-backend-mssql.R:580:3',
'test-backend-mssql.R:606:3', 'test-backend-mssql.R:633:3',
'test-backend-mssql.R:658:3', 'test-backend-mssql.R:685:3',
'test-backend-mssql.R:710:3'
• No postgres (9): 'test-backend-postgres.R:216:3',
'test-backend-postgres.R:224:3', 'test-backend-postgres.R:231:3',
'test-backend-postgres.R:245:3', 'test-backend-postgres.R:305:3',
'test-backend-postgres.R:320:3', 'test-backend-postgres.R:375:3',
'test-backend-postgres.R:434:3', 'test-verb-joins.R:103:3'
• On CRAN (336): 'test-backend-access.R:1:1', 'test-backend-access.R:76:1',
'test-backend-hana.R:1:1', 'test-backend-hana.R:12:1',
'test-backend-hive.R:11:1', 'test-backend-impala.R:19:1',
'test-backend-.R:11:1', 'test-backend-.R:68:1', 'test-backend-.R:81:1',
'test-backend-.R:88:1', 'test-backend-.R:104:1', 'test-backend-.R:163:1',
'test-backend-.R:179:1', 'test-backend-mysql.R:46:1',
'test-backend-mysql.R:64:1', 'test-backend-oracle.R:20:1',
'test-backend-oracle.R:29:1', 'test-backend-oracle.R:34:1',
'test-backend-oracle.R:56:1', 'test-backend-oracle.R:71:1',
'test-backend-oracle.R:96:1', 'test-backend-postgres.R:49:1',
'test-backend-postgres.R:69:1', 'test-backend-postgres.R:94:1',
'test-backend-postgres.R:119:1', 'test-backend-postgres.R:134:1',
'test-backend-postgres.R:147:1', 'test-backend-postgres.R:156:1',
'test-backend-postgres.R:190:1', 'test-backend-redshift.R:46:1',
'test-backend-redshift.R:61:1', 'test-backend-redshift.R:86:1',
'test-backend-mssql.R:60:1', 'test-backend-mssql.R:91:1',
'test-backend-mssql.R:123:1', 'test-backend-mssql.R:144:1',
'test-backend-mssql.R:169:1', 'test-backend-mssql.R:203:1',
'test-backend-mssql.R:221:1', 'test-backend-mssql.R:227:1',
'test-backend-mssql.R:233:1', 'test-backend-mssql.R:248:1',
'test-backend-mssql.R:259:1', 'test-backend-mssql.R:276:1',
'test-backend-mssql.R:298:1', 'test-backend-mssql.R:318:1',
'test-backend-mssql.R:342:1', 'test-backend-mssql.R:361:1',
'test-backend-mssql.R:382:1', 'test-backend-mssql.R:396:1',
'test-backend-mssql.R:403:1', 'test-backend-mssql.R:428:1',
'test-backend-spark-sql.R:1:1', 'test-backend-spark-sql.R:26:1',
'test-backend-snowflake.R:9:1', 'test-backend-snowflake.R:169:1',
'test-backend-snowflake.R:188:1', 'test-backend-sqlite.R:50:1',
'test-backend-sqlite.R:59:1', 'test-backend-sqlite.R:106:1',
'test-backend-teradata.R:53:1', 'test-backend-teradata.R:61:1',
'test-backend-teradata.R:66:1', 'test-backend-teradata.R:76:1',
'test-backend-teradata.R:84:1', 'test-backend-teradata.R:91:1',
'test-build-sql.R:1:1', 'test-build-sql.R:55:1', 'test-build-sql.R:64:1',
'test-db-sql.R:1:1', 'test-db-sql.R:24:1', 'test-db-io.R:1:1',
'test-db-io.R:19:1', 'test-db-io.R:44:1', 'test-ident.R:13:1',
'test-lazy-join-query.R:1:1', 'test-lazy-select-query.R:1:1',
'test-escape.R:111:1', 'test-escape.R:116:1', 'test-pillar.R:1:1',
'test-query-select.R:1:1', 'test-query-select.R:10:1',
'test-query-select.R:19:1', 'test-query-semi-join.R:1:1',
'test-query-semi-join.R:9:1', 'test-query-join.R:1:1',
'test-query-join.R:13:1', 'test-query-join.R:22:1', 'test-query-join.R:29:1',
'test-query-join.R:36:1', 'test-query-set-op.R:1:1',
'test-query-set-op.R:8:1', 'test-schema.R:1:1', 'test-sql-build.R:1:1',
'test-sql.R:7:1', 'test-table-name.R:1:1', 'test-table-name.R:12:1',
'test-table-name.R:81:1', 'test-table-name.R:91:1', 'test-tbl-lazy.R:6:1',
'test-tbl-lazy.R:10:1', 'test-tbl-lazy.R:21:1', 'test-tbl-lazy.R:44:1',
'test-tbl-lazy.R:48:1', 'test-tbl-sql.R:29:1', 'test-tbl-sql.R:57:1',
'test-tbl-sql.R:64:1', 'test-rows.R:4:1', 'test-rows.R:51:1',
'test-rows.R:65:1', 'test-rows.R:120:1', 'test-rows.R:157:1',
'test-rows.R:184:1', 'test-rows.R:220:1', 'test-rows.R:229:1',
'test-rows.R:276:1', 'test-rows.R:308:1', 'test-rows.R:328:1',
'test-rows.R:349:1', 'test-rows.R:435:1', 'test-rows.R:476:1',
'test-rows.R:515:1', 'test-rows.R:541:1', 'test-rows.R:589:1',
'test-rows.R:615:1', 'test-rows.R:656:1', 'test-rows.R:698:1',
'test-rows.R:742:1', 'test-rows.R:780:1', 'test-rows.R:826:1',
'test-rows.R:874:1', 'test-rows.R:915:1', 'test-rows.R:954:1',
'test-rows.R:975:1', 'test-tidyeval.R:77:1', 'test-tidyeval-across.R:49:1',
'test-tidyeval-across.R:99:1', 'test-tidyeval-across.R:220:1',
'test-tidyeval-across.R:227:1', 'test-tidyeval-across.R:232:1',
'test-tidyeval-across.R:368:1', 'test-tidyeval-across.R:377:1',
'test-tidyeval-across.R:385:1', 'test-tidyeval-across.R:428:1',
'test-tidyeval-across.R:444:1', 'test-tidyeval-across.R:460:1',
'test-tidyeval-across.R:467:1', 'test-tidyeval-across.R:474:1',
'test-tidyeval-across.R:508:1', 'test-tidyeval-across.R:538:1',
'test-tidyeval-across.R:544:1', 'test-tidyeval-across.R:625:1',
'test-tidyeval-across.R:633:1', 'test-tidyeval-across.R:639:1',
'test-tidyeval-across.R:647:1', 'test-translate-sql-cut.R:89:1',
'test-translate-sql-cut.R:144:1', 'test-translate-sql-helpers.R:2:3',
'test-translate-sql-helpers.R:13:1', 'test-translate-sql-helpers.R:29:1',
'test-translate-sql-helpers.R:45:1', 'test-translate-sql-helpers.R:50:1',
'test-translate-sql-helpers.R:84:1', 'test-translate-sql-helpers.R:92:1',
'test-translate-sql-conditional.R:1:1',
'test-translate-sql-conditional.R:6:1',
'test-translate-sql-conditional.R:13:1',
'test-translate-sql-conditional.R:25:1',
'test-translate-sql-conditional.R:60:1',
'test-translate-sql-conditional.R:68:1',
'test-translate-sql-conditional.R:163:1',
'test-translate-sql-conditional.R:232:1',
'test-translate-sql-conditional.R:249:1',
'test-translate-sql-conditional.R:281:1',
'test-translate-sql-conditional.R:288:1',
'test-translate-sql-quantile.R:1:1', 'test-translate-sql-string.R:1:1',
'test-translate-sql.R:1:1', 'test-translate-sql.R:12:1',
'test-translate-sql-window.R:100:1', 'test-translate-sql-window.R:149:1',
'test-translate-sql-window.R:156:1', 'test-translate-sql-window.R:206:1',
'test-translate-sql-window.R:226:1', 'test-verb-arrange.R:13:1',
'test-verb-arrange.R:20:1', 'test-verb-arrange.R:44:1',
'test-verb-arrange.R:63:1', 'test-verb-compute.R:56:1',
'test-verb-compute.R:95:1', 'test-verb-compute.R:114:1',
'test-verb-compute.R:122:1', 'test-verb-copy-to.R:52:1',
'test-verb-copy-to.R:60:1', 'test-verb-copy-to.R:92:1',
'test-verb-copy-to.R:100:1', 'test-verb-copy-to.R:125:1',
'test-verb-count.R:1:1', 'test-verb-count.R:63:1', 'test-verb-do.R:27:1',
'test-verb-do.R:64:1', 'test-verb-distinct.R:60:1',
'test-verb-distinct.R:182:1', 'test-verb-distinct.R:198:1',
'test-verb-fill.R:44:1', 'test-verb-fill.R:57:1', 'test-verb-fill.R:70:1',
'test-verb-fill.R:83:1', 'test-verb-fill.R:97:1', 'test-verb-fill.R:103:1',
'test-verb-expand.R:1:1', 'test-verb-expand.R:10:1',
'test-verb-expand.R:22:1', 'test-verb-expand.R:28:1',
'test-verb-expand.R:33:1', 'test-verb-expand.R:53:1',
'test-verb-expand.R:57:1', 'test-verb-expand.R:62:1',
'test-verb-expand.R:93:1', 'test-verb-expand.R:109:1',
'test-verb-expand.R:115:1', 'test-verb-group_by.R:10:1',
'test-verb-group_by.R:18:1', 'test-verb-group_by.R:25:1',
'test-verb-group_by.R:31:1', 'test-verb-group_by.R:156:1',
'test-verb-filter.R:11:1', 'test-verb-filter.R:54:1',
'test-verb-filter.R:61:1', 'test-verb-filter.R:166:1',
'test-verb-filter.R:184:1', 'test-verb-filter.R:212:1',
'test-verb-filter.R:292:1', 'test-verb-filter.R:326:1',
'test-verb-filter.R:336:1', 'test-verb-mutate.R:19:1',
'test-verb-mutate.R:37:1', 'test-verb-mutate.R:48:1',
'test-verb-mutate.R:60:1', 'test-verb-mutate.R:101:1',
'test-verb-mutate.R:115:1', 'test-verb-mutate.R:132:1',
'test-verb-mutate.R:166:1', 'test-verb-mutate.R:186:1',
'test-verb-mutate.R:413:1', 'test-verb-mutate.R:420:1',
'test-verb-mutate.R:470:1', 'test-verb-mutate.R:477:1',
'test-verb-mutate.R:484:1', 'test-verb-pivot-longer.R:1:1',
'test-verb-pivot-longer.R:19:1', 'test-verb-pivot-longer.R:34:1',
'test-verb-pivot-longer.R:43:1', 'test-verb-pivot-longer.R:80:1',
'test-verb-pivot-longer.R:87:1', 'test-verb-pivot-longer.R:139:1',
'test-verb-pivot-longer.R:148:1', 'test-verb-pivot-longer.R:232:1',
'test-verb-pivot-longer.R:250:1', 'test-verb-pivot-longer.R:258:1',
'test-verb-joins.R:22:1', 'test-verb-joins.R:45:1', 'test-verb-joins.R:57:1',
'test-verb-joins.R:167:1', 'test-verb-joins.R:280:1',
'test-verb-joins.R:346:1', 'test-verb-joins.R:490:1',
'test-verb-joins.R:531:1', 'test-verb-joins.R:568:1',
'test-verb-joins.R:619:1', 'test-verb-joins.R:636:1',
'test-verb-joins.R:656:1', 'test-verb-joins.R:683:1',
'test-verb-joins.R:853:1', 'test-verb-joins.R:903:1',
'test-verb-joins.R:972:1', 'test-verb-joins.R:981:1',
'test-verb-joins.R:1001:1', 'test-verb-joins.R:1012:1',
'test-verb-joins.R:1021:1', 'test-verb-joins.R:1062:1',
'test-verb-joins.R:1108:1', 'test-verb-joins.R:1312:1',
'test-verb-pull.R:44:1', 'test-verb-select.R:26:1',
'test-verb-select.R:63:1', 'test-verb-select.R:120:1',
'test-verb-select.R:179:1', 'test-verb-select.R:202:1',
'test-verb-select.R:223:1', 'test-verb-select.R:278:1',
'test-verb-select.R:305:1', 'test-verb-select.R:312:1',
'test-verb-select.R:341:1', 'test-verb-select.R:349:1',
'test-verb-select.R:356:1', 'test-verb-set-ops.R:58:1',
'test-verb-pivot-wider.R:9:1', 'test-verb-pivot-wider.R:38:1',
'test-verb-pivot-wider.R:54:1', 'test-verb-pivot-wider.R:233:1',
'test-verb-pivot-wider.R:242:1', 'test-verb-pivot-wider.R:248:1',
'test-verb-pivot-wider.R:276:1', 'test-verb-pivot-wider.R:325:1',
'test-verb-pivot-wider.R:335:1', 'test-verb-pivot-wider.R:371:1',
'test-verb-pivot-wider.R:416:1', 'test-verb-pivot-wider.R:474:1',
'test-verb-pivot-wider.R:479:1', 'test-verb-pivot-wider.R:484:1',
'test-verb-pivot-wider.R:491:1', 'test-verb-pivot-wider.R:498:1',
'test-verb-summarise.R:1:1', 'test-verb-summarise.R:25:1',
'test-verb-summarise.R:41:1', 'test-verb-summarise.R:69:1',
'test-verb-summarise.R:78:1', 'test-verb-summarise.R:110:1',
'test-verb-summarise.R:123:1', 'test-verb-summarise.R:131:1',
'test-verb-summarise.R:142:1', 'test-verb-slice.R:1:1',
'test-verb-slice.R:8:1', 'test-verb-slice.R:22:1', 'test-verb-slice.R:31:1',
'test-verb-slice.R:42:1', 'test-verb-slice.R:61:1', 'test-verb-slice.R:71:1',
'test-verb-slice.R:100:1', 'test-verb-slice.R:115:1',
'test-verb-window.R:1:1', 'test-verb-window.R:8:1',
'test-verb-window.R:18:1', 'test-verb-window.R:32:1',
'test-verb-uncount.R:1:1'
• `grouped_df()` needs a `name_repair` argument (1):
'test-verb-pivot-wider.R:81:3'
• empty test (1): 'test-verb-set-ops.R:110:1'
• identical(Sys.getenv("GITHUB_POSTGRES"), "true") is not TRUE (1):
'test-backend-postgres-old.R:2:3'
• not clear whether test makes sense (2): 'test-verb-arrange.R:2:3',
'test-verb-arrange.R:131:3'
• not yet correctly supported (1): 'test-tidyeval-across.R:272:3'
══ Failed tests ════════════════════════════════════════════════════════════════
── Error ('test-verb-pivot-longer.R:59:3'): can handle missing combinations ────
Error in `simplifyPieces(pieces, n, fill == "left")`: SET_VECTOR_ELT() can only be applied to a 'list', not a 'environment'
Backtrace:
▆
1. ├─tidyr::pivot_longer(...) at test-verb-pivot-longer.R:59:3
2. └─dbplyr:::pivot_longer.tbl_lazy(...)
3. └─tidyr::build_longer_spec(...)
4. └─tidyr:::str_separate(names, names_to, sep = names_sep, error_call = error_call)
5. └─tidyr:::str_split_fixed(...)
6. └─tidyr:::simplifyPieces(pieces, n, fill == "left")
── Error ('test-verb-pivot-longer.R:97:3'): `values_transform` works with single functions (#1284) ──
Error in `simplifyPieces(pieces, n, fill == "left")`: SET_VECTOR_ELT() can only be applied to a 'list', not a 'environment'
Backtrace:
▆
1. ├─... %>% collect() at test-verb-pivot-longer.R:97:3
2. ├─dplyr::collect(.)
3. ├─tidyr::pivot_longer(...)
4. └─dbplyr:::pivot_longer.tbl_lazy(...)
5. └─tidyr::build_longer_spec(...)
6. └─tidyr:::str_separate(names, names_to, sep = names_sep, error_call = error_call)
7. └─tidyr:::str_split_fixed(...)
8. └─tidyr:::simplifyPieces(pieces, n, fill == "left")
── Error ('test-verb-pivot-longer.R:113:3'): `names_ptypes` and `names_transform` ──
Error in `simplifyPieces(pieces, n, fill == "left")`: SET_VECTOR_ELT() can only be applied to a 'list', not a 'environment'
Backtrace:
▆
1. ├─... %>% collect() at test-verb-pivot-longer.R:113:3
2. ├─dplyr::collect(.)
3. ├─tidyr::pivot_longer(...)
4. └─dbplyr:::pivot_longer.tbl_lazy(...)
5. └─tidyr::build_longer_spec(...)
6. └─tidyr:::str_separate(names, names_to, sep = names_sep, error_call = error_call)
7. └─tidyr:::str_split_fixed(...)
8. └─tidyr:::simplifyPieces(pieces, n, fill == "left")
── Error ('test-verb-pivot-longer.R:169:3'): original col order is preserved ───
Error in `simplifyPieces(pieces, n, fill == "left")`: SET_VECTOR_ELT() can only be applied to a 'list', not a 'environment'
Backtrace:
▆
1. ├─testthat::expect_equal(...) at test-verb-pivot-longer.R:169:3
2. │ └─testthat::quasi_label(enquo(object), label)
3. │ └─rlang::eval_bare(expr, quo_get_env(quo))
4. ├─... %>% colnames()
5. ├─base::colnames(.)
6. │ └─base::is.data.frame(x)
7. ├─tidyr::pivot_longer(., -id, names_to = c(".value", "n"), names_sep = "_")
8. └─dbplyr:::pivot_longer.tbl_lazy(...)
9. └─tidyr::build_longer_spec(...)
10. └─tidyr:::str_separate(names, names_to, sep = names_sep, error_call = error_call)
11. └─tidyr:::str_split_fixed(...)
12. └─tidyr:::simplifyPieces(pieces, n, fill == "left")
── Error ('test-verb-pivot-longer.R:186:3'): .value can be at any position in `names_to` ──
Error in `simplifyPieces(pieces, n, fill == "left")`: SET_VECTOR_ELT() can only be applied to a 'list', not a 'environment'
Backtrace:
▆
1. ├─tidyr::pivot_longer(...) at test-verb-pivot-longer.R:186:3
2. └─dbplyr:::pivot_longer.tbl_lazy(...)
3. └─tidyr::build_longer_spec(...)
4. └─tidyr:::str_separate(names, names_to, sep = names_sep, error_call = error_call)
5. └─tidyr:::str_split_fixed(...)
6. └─tidyr:::simplifyPieces(pieces, n, fill == "left")
[ FAIL 5 | WARN 0 | SKIP 374 | PASS 1699 ]
Error:
! Test failures.
Execution halted
OK
r-oldrel-windows-x86_64
*
OK
r-patched-linux-x86_64
*
OK
r-release-linux-x86_64
*
OK
r-release-macos-arm64
*
OK
r-release-macos-x86_64
*
ERROR
r-release-windows-x86_64
tests
Running 'testthat.R' [15s]
Running the tests in 'tests/testthat.R' failed.
Complete output:
> library(testthat)
> library(dbplyr)
>
> test_check("dbplyr")
Starting 2 test processes.
> test-db-sql.R:
Error:
! testthat subprocess exited in file 'test-db-sql.R'.
Caused by error:
! R session crashed with exit code -1073741819
Backtrace:
▆
1. └─testthat::test_check("dbplyr")
2. └─testthat::test_dir(...)
3. └─testthat:::test_files(...)
4. └─testthat:::test_files_parallel(...)
5. ├─withr::with_dir(...)
6. │ └─base::force(code)
7. ├─testthat::with_reporter(...)
8. │ └─base::tryCatch(...)
9. │ └─base (local) tryCatchList(expr, classes, parentenv, handlers)
10. │ └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]])
11. │ └─base (local) doTryCatch(return(expr), name, parentenv, handler)
12. └─testthat:::parallel_event_loop_chunky(queue, reporters, ".")
13. └─queue$poll(Inf)
14. └─base::lapply(...)
15. └─testthat (local) FUN(X[[i]], ...)
16. └─private$handle_error(msg, i)
17. └─cli::cli_abort(...)
18. └─rlang::abort(...)
Execution halted
Check History
ERROR 11 OK · 0 NOTE · 0 WARNING · 3 ERROR · 0 FAILURE Mar 9, 2026
ERROR
r-release-windows-x86_64
tests
Running 'testthat.R' [15s]
Running the tests in 'tests/testthat.R' failed.
Complete output:
> library(testthat)
> library(dbplyr)
>
> test_check("dbplyr")
Starting 2 test processes.
> test-db-sql.R:
Error:
! testthat subprocess exited in file 'test-db-sql.R'.
Caused by error:
! R session crashed with exit code -1073741819
Backtrace:
▆
1. └─testthat::test_check("dbplyr")
2. └─testthat::test_dir(...)
3. └─testthat:::test_files(...)
4.
ERROR
r-oldrel-macos-arm64
tests
Running ‘testthat.R’ [38s/19s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> library(testthat)
> library(dbplyr)
>
> test_check("dbplyr")
Starting 2 test processes.
> test-tidyeval-across.R: Warning message:
> test-tidyeval-across.R: call dbDisconnect() when finished working with a connection
> test-verb-joins.R: Joining with `by = join_by(x)`
Saving _problems/test-verb-pivot-longer-64.R
Saving _problems/test-verb-pivot-longer-104.R
Saving _problems
ERROR
r-oldrel-macos-x86_64
tests
Running ‘testthat.R’ [115s/90s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> library(testthat)
> library(dbplyr)
>
> test_check("dbplyr")
Starting 2 test processes.
> test-table-name.R: Warning message:
> test-table-name.R: call dbDisconnect() when finished working with a connection
> test-verb-joins.R: Joining with `by = join_by(x)`
Saving _problems/test-verb-pivot-longer-64.R
Saving _problems/test-verb-pivot-longer-104.R
Saving _problems/test-ver
Reverse Dependencies (128)
imports
Andromeda
CDMConnector
DatabaseConnector
ECOTOXr
OmopOnSpark
RClickhouse
RPresto
ResultModelManager
ReviewR
SCDB
TreatmentPatterns
activAnalyzer
allofus
apache.sedona
basedosdados
bcdata
brickster
cansim
childesr
ckanr
connections
connector.databricks
dbglm
dbi.table
diseasystore
duckdbfs
etl
farr
geospark
globaltrends
healthdb
immunarch
immundata
implyr
lazysf
mdsr
motherduck
mpathsenser
omopgenerics
osdc
overtureR
pointblank
pysparklyr
qst
ragnar
redquack
sergeant
shinyNotes
simaerep
snowquery
soundClass
sparklyr
sparklyr.flint
sqliteutils
sqlm
sqlscore
taxadb
taxizedb
ti
tidier
tidyhydat
tidyverse
vegdata
wrds
writer
suggests
CohortSymmetry
DBI
GRAB
IncidencePrevalence
PatientProfiles
RAthena
arkdb
arrow
bigrquery
bigsnpr
censo2017
censobr
chunked
connectapi
connector
contoso
corrr
cytominer
dataverifyr
dbplot
dittodb
dlookr
dm
dplyr
duckdb
duckplyr
editbl
epoxy
fastreg
gbifdb
geocodebr
geogenr
gpkg
healthbR
iNZightPlots
iNZightTools
ipumsr
janitor
kidsides
macleish
mall
mfdb
mlr3db
modeldb
noctua
orbital
pool
positron.tutorials
querychat
r4ds.tutorials
radiant.data
rcdf
rdataretriever
resourcer
rolap
srvyr
starwarsdb
stevemisc
tidyfinance
tidypredict
tidyquery
valr
when
Dependency Network
Version History
new
2.5.2
Mar 9, 2026