Skip to content

Releases: TidierOrg/TidierDB.jl

v0.7.1

06 Feb 00:51
Compare
Choose a tag to compare

TidierDB v0.7.1

Diff since v0.7.0

  • Queries print with key words in color by default (optional)
  • db_table now supports Google Sheets links
db = connect(duckdb())
ghseet_connect(db) # authenticate in browser
gsheet = DB.db_table(db, "https://docs.google.com/spreadsheets/d/rest/of/link")
  • add default support for the following window functions
    • lead, lag, dense_rank, nth_value, ntile, rank_dense, row_number, first_value, last_value, cume_dist
  • add ability to add additional aggregate functions to reduce avoid excessive use of agg
    • push!(TidierDB.window_agg_fxns, :kurtosis);
    • push!(TidierDB.window_agg_fxns, :regr_slope);
  • bug fix when using agg() with window ordering and framing
  • fixes edge case query construction issues with @mutate,@filter,@*_join (thanks to @rgreminger for catching them!)
  • fixes edge case with @select call after group_by -> summarize

Merged pull requests:

Closed issues:

  • Add duckdb google sheets support (#80)
  • @arrange does not do anything after @group_by (#102)
  • @select after @group_by produces error (#104)

v0.7.0

27 Jan 04:57
9edca6f
Compare
Choose a tag to compare

TidierDB v0.7.0

Diff since v0.6.3

Breaking Changes

  • copy_to will now copy the DataFrame to the DuckDB table, instead of creating a view of the DataFrame
  • db_table now supports viewing a DataFrame directly - db_table(db, df, "name4db")

Merged pull requests:

v0.6.3

21 Jan 19:34
Compare
Choose a tag to compare

TidierDB v0.6.3

Diff since v0.6.2

  • fixes issue when filtering immediately after joining
  • adds more tests to increase code coverage > 80%

Merged pull requests:

  • Add coverage (#95) (@rdboyes)
  • exclude extensions from code coverage (#96) (@drizk1)
  • Resolve issue when filtering immediately after a join (#97) (@drizk1)
  • Bump coverallsapp/github-action from 1.1.2 to 2.3.4 (#98) (@dependabot[bot])

v0.6.2

09 Jan 16:16
e9d1e70
Compare
Choose a tag to compare

TidierDB v0.6.2

Diff since v0.6.1

  • adds @intersect and @setdiff (SQLs INTERSECT and EXCEPT) respectively, with optional all argument
  • adds support for all arg to @union (equivalent to @union_all)

Merged pull requests:

v0.6.1

08 Jan 03:41
58b9890
Compare
Choose a tag to compare

TidierDB v0.6.1

Diff since v0.6.0

  • Bumps julia LTS to 1.10

Merged pull requests:

v0.6.0

07 Jan 17:53
Compare
Choose a tag to compare

TidierDB v0.6.0

Diff since v0.5.3

Breaking Changes

  • Equi-joins no longer duplicate key columns

Additions

  • Adds support for joining on multiple columns
  • Adds support for inequality joins
  • Adds support for AsOf / rolling joins

Bug fixes

  • Fixes bug to allow array columns to be mutated in

Merged pull requests:

  • allow for joins on mult columns, inequality joins, fix edge case with arrays (#91) (@drizk1)

Closed issues:

  • Support asof join types (#6)

v0.5.3

13 Dec 23:25
Compare
Choose a tag to compare

TidierDB v0.5.3

Diff since v0.5.2

  • adds @relocate
  • bug fix when reading file paths with * wildcard with DuckDB + allows users to add alias table name when reading file paths with * in db_table() with optional alias = (alias otherwise sql defaults to 'file_path' AS data

Merged pull requests:

v0.5.2

03 Dec 17:21
44027c8
Compare
Choose a tag to compare

TidierDB v0.5.2

Diff since v0.5.1

  • add support for unnesting content to @mutate/@filter etc via column[key]syntax
  • adds _by support to @mutate and @summarize for grouping within the macro call.
  • adds _frame and _order support to @mutate to allow windowing directly within the macro call
  • adds support for n() in @mutate
  • db_table(db, name_or_path) now supports .geoparquet paths for DuckDB

Merged pull requests:

  • Add _by for muate/summarize, add unnesting support (#87) (@drizk1)
  • add _frame, _order to mutate (#88) (@drizk1)

Closed issues:

  • Unable to read parquet file using DuckDB (#84)
  • How to extract nested content? (#85)
  • After an error with the DuckDB backend, TidierDB is unable to proceed even when fixing the error (#86)

v0.5.1

08 Nov 20:52
Compare
Choose a tag to compare

TidierDB v0.5.1

Diff since v0.5.0

  • adds support for reusing TidierDB queries inside other macros, including @mutate, @filter, @summarize
  • adds @union_all to bind all rows not just distinct rows as with @union
  • joining syntax now supports (table1, table2, col_name) when joining columns have shared name
  • if_else now has optional final argument for handling missing values to match TidierData

Merged pull requests:

  • add single col joinsyntax, 4th if_else arg (#81) (@drizk1)

v0.5.0

19 Oct 14:59
b468b36
Compare
Choose a tag to compare

TidierDB v0.5.0

Breaking Changes:

  • All join syntax now matches TidierData's (table1, table2, t1_col = t2_col)

Additions:

  • @computefor DuckDB, MySQL, PostGres, GBQ to write a table to the db at the end of a query.
  • expands @create_view to MySQL, PostGres, GBQ
  • Support for performing multiple joins of TidierDB queries in a single chain with further tests
  • dmy, mdy, ymd support DuckDB, Postgres, GBQ, Clickhouse, MySQL, MsSQL, Athena, MsSQL
  • support for working with intervals ie + interval4days - interval5months etc
  • Date related tests
  • copy_to for MysQL to write a dataframe to MySQL database
  • 65 total tests matching TidierData to TidierDB results

Improvements:

  • improve Google Big Query type mapping when collecting to dataframe
  • change gbq()'s connect() to accept location as second argument
  • str_detect now supports regex for all backends except MsSQL + some tests
  • @select(!table.name) now works to deselect a column

Docs:

Diff since v0.4.1

Merged pull requests:

Closed issues:

  • Functions to write to a database (#16)
  • How can I write functions that pass arguments do TidierDB functions? (#20)
  • Parsing Interpolation (#22)
  • Add tests comparing tidierdata (#67)
  • str_detect does not support regex (#74)
  • recreated duckplyr/duckdb ex - add as docs? (#78)