dbplyr 2.0.0 backend API

This transition guide is aimed at backend authors. dbplyr 2.0.0 is an important release for backends because it starts the process of moving all backend generics into dbplyr (instead of some living in dplyr). This move has been designed to occur in phases to avoid sudden breakages and give backend authors plenty of time to make changes.

The current timeline is something like this:

Unused generics

A number of generics are no longer used so you can delete the corresponding methods:

Making these changes are important because they ensure your backend works consistently whether you use it through DBI or dplyr.

2nd edition

dbplyr 2.0.0 draws inspiration from the idea of an edition so that to tell dbplyr to use the new generics, you need to do two things:

Then you’ll need to update your methods, following the advice below.

SQL generation

There are a number of dplyr generics that generate then execute SQL. These have been replaced by dbplyr generics that just generate the SQL (and dbplyr takes care of executing it):

If you have methods for any of those generics, you’ll need to extract the SQL generation code into a new sql_ method.

Renamed generics

A number of other generics have been renamed:

If you have methods for any of these generics, you’ll need to rename.

New generics

You may also want to consider methods for the new generics in dbplyr 2.0.0: