- Fixed Trino support quirks (#254) and expanded unit tests to Trino
- Fixed a bug whereby nested CTEs result in nested WITH. (#261)
- Fixed
paste()
andpaste0()
translation (#266) - RPresto is now compatible with dbplyr 2.5.0 (#272, #274, #277)
dbWriteTable(overwrite = TRUE)
makes sure that the temp table is created in the same schema as the destination table (#279)
tidyr::fill()
now works with PrestoConnection. (#233, thanks to @copernican for reporting the issue and @mgirlich for providing upstream utility functions in dbplyr)RPresto
is now compatible withdbplyr
2.4.0. We updated the minimum version requirement ofdbplyr
to be 2.3.3.
compute()
uses simple table name rather than wrapped it inas.sql()
.
- Fixed error whereby
compute()
returns a "table doesn't exist" error when the computed table contains CTE. (#243) - Hotfix to update
tbl()
anddb_query_rows()
args to fix warnings by R CMD CHECK on S3 generic consistency raised by CRAN. (#245)
- Fixed
dbplyr
2.3.0 compatibility issues. (#237)
- Add a convenient wrapper
kerberos_configs()
to generate Kerberos header configs that can be passed to therequest.config
argument ofdbConnect()
. (#202 and #221). Thanks to @suzzettedetorres for providing this solution. - All functions that take table name as argument now work with
dbplyr::in_schema()
andDBI::Id()
besides the usual character table name. (#228) - Create a new
dbRenameTable()
function to rename table name.
dbListFields
now works with identifier name which in turn supports the use ofin_schema()
intbl()
(#200)- Fix an error whereby join query's CTEs are not properly retrieved (#203)
- Fix a bug that causes NULL values in a ROW to return data-schema mismatch error (#206)
- Add
dbQuoteLiteral()
anddbAppendTable()
implementations. - Rewrite
dbWriteTable()
implementation to usedbCreateTable()
anddbAppendTable()
. It also supports all default arguments now (#199) dbWriteTable()
gains ause.one.query
option to use a singleCREATE TABLE AS
query.
- Change maintainer to Jarod Meng ([email protected])
- Major refactoring of the internal schema and data parsing functions to enable
more robust mapping between Presto data types and R types
- The output is changed from
data.frame
totibble
to offer better printing and be more consistent with other DBI-compatible datawarehouse packages - Add more user-friendly R types translation for primitive Presto data types
(e.g., DATE types are now translated to
Date
classes in R; TIMESTAMP types are translated toPOSIXct
classes; TIME types are translated todifftime
classes; INTERVAL types are translated toDuration
classes) - Enable more choices of BIGINT type handling (i.e.,
integer64
,integer
,numeric
, orcharacter
). (#61) - Add complete support for complex Presto types (i.e., ARRAY, MAP, and ROW). They are now translated to typed vectors, lists, or tibbles depending on the types and structure of the data. (#118)
- It supports all primitive and complex data types for Trino too. (#176)
- The output is changed from
- Add vignettes on Presto-R type translations (see
vignette("primitive-types")
andvignette("complex-types")
) dbExistsTable()
error when quoted identifier is supplied asname
is fixed (#167)- Add a few
dplyr
anddbplyr
method implementations. Seebackend-implementation.md
for the details.dbplyr::sql_query_save()
dplyr::db_list_tables()
dplyr::db_has_table()
dplyr::db_write_table()
dbplyr::db_copy_to()
dplyr::copy_to()
method forsrc_presto
andPrestoConnection
dplyr::tbl()
method forPrestoConnection
dbplyr::db_compute()
dplyr::compute()
PrestoConnection
gains arequest.config
slot whereby users can set extra Curl configs (as returned byhttr::config()
to GET/POST requests. (#173)- Styling the whole package using
styler::style_pkg()
. A notable change is to user double quotes everywhere instead of a combination of single and double quotes. (#174) - Add an experimental feature to support common table expressions (CTEs) in both
DBI and dplyr backends (see
vignette("common-table-expressions")
) (#175) dbConnect()
now uses empty string "" (rather than UTC) as the default session.timezone which translates to the Presto server timezone.dbConnect()
andsrc_presto()
gain anoutput.timezone
argument which can be used to control howTIME WITH TZ
andTIMESTAMP
values are represented in the output tibble.dbGetQuery()
anddbSendQuery()
gain aquiet
argument which defaults togetOption("rpresto.quiet")
which isNA
if not set. (#191)
- Fix failing unit tests (#141)
- Support Trino headers in session (#143)
- Update copyright headers
- Migrate RPresto's dplyr interface to use dbplyr 2.0.0 backend (#150)
- Add documentation on RPresto's DBI and
dplyr
backend implementation
- Fix testing errors caused by Presto changes since last update (#131)
- Change
[[
translation from[]
subscript operator toELEMENT_AT()
(#132) - Enable simple ROW type support (#137)
- Fix a bug whereby
is.infinite()
is incorrectly translated toIS_FINITE()
instead ofIS_INFINITE()
in SQL (#139) - Disabled translation of
median()
andquantile()
and suggestedapprox_quantile()
instead. (#120)
- Change maintainer to Thomas Leeper ([email protected])
- Add custom Date and POSIXct sql translation implementations for dbplyr (#123, thanks to @OssiLehtinen for original implementations).
- Adapt
dbClearResult
to the API change, we now need toDELETE
/v1/query/<query_id>
. - Add a
query.id
slot toPrestoResult
.
- Translate
[[
to allow indexing arrays and maps with dplyr (#110). - Switch from BSD+Patents license to Standard BSD license (#114).
- Fix tests for compatibility with
dbplyr
1.4.0. - Send headers with all http requests (#103).
- Add support for
as.<data_type>
style casting for dplyr (#97). - Add Code of Conduct.
- Use the new delayed S3 registration mechanism in 3.6.0 for dplyr method implementations.
- Bump minimum dplyr version required to 0.7.0.
- Presto now might return data in POST response (#89)
- Presto now might not always return column information in each response (#93)
- Better error message for unknown column types (#86, #87)
- Adapt to presto changes for type casting translation (#88)
- Add CHAR data type (#91)
- Fix Rcpp compilation under Windows (#79)
SET/RESET SESSION
queries are now correctly respected when used underdbGetQuery
.PrestoConnection
no longer hasparameters
slot butdbConnect
remains backward compatible. Manual change to parameter is still possible viaconn@session$setParameter()
(#77)- Adapt to changes in dplyr version 0.7.0, mainly around the remote
backend support being split to
dbplyr
. This should be backwards compatible back to dplyr 0.4.3 (#76) - Add support for the REAL data type (#70)
- Allow specifying the connection source (#68)
- Drop RCurl dependency (#67)
- Return DECIMAL data types as characters as opposed to numeric's previously (#64, fixes #60)
- Add support for new integer data types (INTEGER, SMALLINT, TINYINT) (#59, fixes #56)
- Migrate the
json
todata.frame
construction from pure R to Rcpp for 10x speed gains! (thanks @saurfang) (#57, #58) - Fix dbListFields to use the nextUri instead of infoUri (#55)
- Don't drop data for duplicate column names (#53)
- Handle responses with no column information (fixes #49)
- Add retries for GET and POST responses with error status codes
- Skip test cases for ones that need locale modification if we cannot set the locale for the OS.
- Adapt to changes in the upcoming dplyr and testthat versions.
- Add a
session.timezone
parameter todbConnect
andsrc_presto
which defaults to UTC. This affects the timestamps returned for Presto data types "TIMESTAMP". We handle the ambiguity by assigning a time zone to every POSIXct column returned. Note that if you are doingas.character()
directly on these columns, the values you obtain will be different from what happened before. - Fix the way we handle zero row multiple column query results. This will
affect
LIMIT 0
queries specifically.
- Minor dplyr related fixes
- Drop the R version requirement from 3.1.1 to 3.1.0
- Speed-up in binding chunks if dplyr is available.
- Handle special values like Infinity, NaN.
- Add optional dplyr support. One can initiate a connection via
src_presto
. - Minor documentation fixes.
- Initial release to github