Skip to content

Releases: prestodb/RPresto

v1.4.6

30 Oct 14:40
Compare
Choose a tag to compare

What's Changed

  • Fix print.presto_field() method's signature naming and sequence to match the generic (#253)
  • Make RPresto compatible with dbplyr 2.4.0 (#257)
  • RPresto now supports tidyr::fill() (#258)

Full Changelog: v1.4.5...v1.4.6

v1.4.5

03 May 07:43
Compare
Choose a tag to compare
  • Fixed a bug in compute() whereby non-character table names are not used properly.
  • Refactor compute.tbl_presto() to break into a dbExecute() execution and a tbl() remote table registration part so that developers have more flexibility customizing the function in their downstream usage.

What's Changed

  • Use simple name in compute() by @jarodmeng in #248
  • Refactor compute.tbl_presto() into two parts, one executes the query and the other creates the remote table by @jarodmeng in #250

Full Changelog: v1.4.4...v1.4.5

v1.4.4

09 Mar 02:08
Compare
Choose a tag to compare

What's Changed

  • Allow compute() to add permanent table when CTE is used by @jarodmeng in #244
  • Update tbl() and db_query_rows() arg names to suppress S3 generic consistency warnings in R CMD CHECK by @jarodmeng in #245

Full Changelog: v1.4.3...v1.4.4

v1.4.3

03 Mar 03:53
Compare
Choose a tag to compare

What's Changed

  • Fixed dbplyr 2.3.0 compatibility issues which cause test warnings and failures by @jarodmeng in #238

Full Changelog: v1.4.2...v1.4.3

v1.4.2

13 Jan 05:17
Compare
Choose a tag to compare
  • Add a convenient wrapper kerberos_configs() to generate Kerberos header configs that can be passed to the request.config argument of dbConnect(). (#202 and #221). Thanks to @suzzettedetorres for providing this solution.
  • All functions that take table name as argument now work with dbplyr::in_schema() and DBI::Id() besides the usual character table name. (#228)
  • Create a new dbRenameTable() function to rename table name.

Full Changelog: v1.4.1...v1.4.2

v1.4.1

15 Nov 03:11
Compare
Choose a tag to compare

What's Changed

  • dbListFields now works with identifier name which in turn supports the use of in_schema() in tbl() (#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() and dbAppendTable() implementations.
  • Rewrite dbWriteTable() implementation to use dbCreateTable() and dbAppendTable(). It also supports all default arguments now (#199)
  • dbWriteTable() gains a use.one.query option to use a single CREATE TABLE AS query.

Full Changelog: v1.4.0...v1.4.1

v1.4.0

27 Sep 05:46
Compare
Choose a tag to compare

What's Changed

RPresto v1.4.0 is a major release encompassing a few big changes:

  • User-facing APIs are organized on 3 levels: DBI's db*() methods that act on DBIConnection and DBIResult classes; dplyr's db_() methods that are usually a simple wrapper around the lower-level db*() methods; and lastly dbplyr's c*() verbs (i.e. collect(), collapse() and compute()) and src functions. You can find their implementation details in the backend-implementations.md file. We now have implementations for most of the commonly-used API methods across all 3 levels.
  • Besides the front-end, we also had a major refactoring of the back-end which handles how RPresto converts data returned by Presto's REST API to R data.
    • The output is changed from data.frame to tibble 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 to POSIXct classes; TIME types are translated to difftime classes; INTERVAL types are translated to Duration classes)
    • Enable more choices of BIGINT type handling (i.e., integer64, integer, numeric, or character). (#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) See vignette("primitive-types") and vignette("complex-types").
    • It supports all primitive and complex data types for Trino too. (#176)
  • We added an experimental feature on "common table expressions" (CTEs). See vignette("common-table-expressions").
  • PrestoConnection gains a request.config slot whereby users can set extra Curl configs (as returned by httr::config() to GET/POST requests. (#173)
  • dbConnect() now uses empty string "" (rather than UTC) as the default session.timezone which translates to the Presto server timezone.
  • dbConnect() and src_presto() gain an output.timezone argument which can be used to control how TIME WITH TZ and TIMESTAMP values are represented in the output tibble.
  • dbGetQuery() and dbSendQuery() gain a quiet argument which defaults to getOption("rpresto.quiet") which is NA if not set. This argument controls a progress bar for long-running queries. (#191)
  • 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)

New Contributors

Full Changelog: v1.3.7...v1.4.0

v1.3.7

04 Sep 12:29
Compare
Choose a tag to compare
  • Fix testing errors caused by Presto changes since last update (#131)
  • Change [[ translation from [] subscript operator to ELEMENT_AT() (#132)
  • Enable simple ROW type support (#137)
  • Fix a bug whereby is.infinite() is incorrectly translated to IS_FINITE()
    instead of IS_INFINITE() in SQL (#139)
  • Disabled translation of median() and quantile() and suggested approx_quantile() instead. (#120)

v1.3.4

22 Oct 17:54
Compare
Choose a tag to compare
  • Translate [[ to allow indexing arrays and maps with dplyr (#110).
  • Switch from BSD+Patents license to Standard BSD license (#114).

v1.3.3

07 May 00:27
Compare
Choose a tag to compare
  • 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.