Skip to content

Releases: bodo-ai/PyDough

v1.00.06

21 Aug 19:06
1ba82f5
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.00.05...v1.00.06

v1.00.05

13 Jul 07:01
92e453f
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.00.04...v1.00.05

v1.00.04

23 May 05:32
699db14
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.00.03...v1.00.04

v1.00.03

23 May 05:18
54667ba
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.00.02...v1.00.03

v1.00.02

10 Apr 19:02
b6c0ed3
Compare
Choose a tag to compare

What's Changed

  • [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #282
  • Implemented default precision of 0 for ROUND by @vineetg3 in #286
  • Added config for default and propagation of collations by @vineetg3 in #281
  • Implemented SIGN, FIND, STRIP Function by @vineetg3 in #288
  • Implement PREV/NEXT operators in PyDough to allow lead/lag-esque operations by @knassre-bodo in #273
  • Optimize PyDough generated SQL to avoid extra joins from PARTITION when possible by @knassre-bodo in #289
  • Fix bug with downstreaming shadowing over join keys by @knassre-bodo in #293
  • Add Broker Gen queries to unit tests by @J-Solano-bodo-ai in #294
  • Support for Singular collection operator added by @vineetg3 in #285
  • Optimize de-correlation to eliminate redundant parent when keeping rows without matches is not needed by @knassre-bodo in #295
  • Fixing child reference bug by removing caching during qualification by @knassre-bodo in #307
  • Add filter pushdown optimizations by @knassre-bodo in #300
  • Adjust how datetime arguments are handled for literals by @knassre-bodo in #304
  • Add window functions for sum, avg, count, and count(*) as relative aggregations by @knassre-bodo in #303
  • Add defog EWallet queries to unit tests by @J-Solano-bodo-ai in #301
  • Add week-based calculations, start of week support, DAYOFWEEK, DAYNAME functions, and WEEK-based DATEDIFF functionality by @vineetg3 in #292
  • Unskipping defog EWALLET test after added WEEK support by @knassre-bodo in #312
  • Add support for MEDIAN function in PyDough by @knassre-bodo in #306
  • Overhaul SQLGlot transform bindings to class-based structure by @knassre-bodo in #299
  • Add verification for has/hasnot to ensure input is a collection by @knassre-bodo in #317
  • Integrate SQLGlot's optimizer by @vineetg3 in #309
  • Add Defog Car Dealership queries to unit tests by @J-Solano-bodo-ai in #310
  • [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #325
  • Overhaul how PyDough collection names, partitions, and window functions work to eliminate level-based logic by @knassre-bodo in #311

New Contributors

Full Changelog: v1.00.01...v1.00.02

v1.00.01

05 Mar 00:19
96f7d3d
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.00.00...v1.00.01

v1.00.00

27 Jan 21:56
50453f6
Compare
Choose a tag to compare

What's Changed

  • Add initial setup for allow building PyDough + some directories by @njriasan in #1
  • Adding initial type definitions by @knassre-bodo in #4
  • Initialize PyDough metadata module by @knassre-bodo in #6
  • Set up PyDough metadata error handling utilities by @knassre-bodo in #7
  • Set up PyDough metadata classes by @knassre-bodo in #8
  • Setup Github Actions by @njriasan in #9
  • Fixing escape character warnings flagged by CI by @knassre-bodo in #12
  • Updating how inherited properties work to contend with nested compound relationships by @knassre-bodo in #10
  • Set up PyDough metadata parsing and testing by @knassre-bodo in #2
  • Add the sqlite database with TPCH data for the demo by @njriasan in #11
  • Reworking import heirarchy of metadata imports by @knassre-bodo in #18
  • Set up PyDough AST module with basic abstract classes and simple type verifiers by @knassre-bodo in #13
  • Set up type deducers in PyDough AST module by @knassre-bodo in #14
  • Set up PyDough expression operators in AST module by @knassre-bodo in #16
  • Adding initial AST expressions and collections by @knassre-bodo in #26
  • Enable connecting to SqLite by @njriasan in #3
  • Adding mypy to PyDough by @knassre-bodo in #27
  • Add PyUpgrade and import cleaning to Ruff by @knassre-bodo in #28
  • Define the abstract base classes for the relational step by @njriasan in #31
  • Add remaining PyDough colleciton nodes by @knassre-bodo in #48
  • Creating the unqualified PyDough module by @knassre-bodo in #43
  • Setting up the unqualified transform step by @knassre-bodo in #45
  • Add support for the Scan relational node by @njriasan in #36
  • Add support for the Project relational node by @njriasan in #37
  • Add support for the Limit relational node by @njriasan in #38
  • Add support for the Aggregate relational node by @njriasan in #39
  • Add support for the Filter relational node by @njriasan in #40
  • Add support for the Root relational node by @njriasan in #41
  • Add support for the Join relational node by @njriasan in #42
  • Refactoring how operands are dealt with in the UnqualifiedNode stage by @knassre-bodo in #54
  • Build a visitor pattern for handling Relational Trees by @njriasan in #52
  • Builds the Relational Expression Visitors by @njriasan in #53
  • Support Converting a Scan to SQLGlot by @njriasan in #55
  • Support for converting a projection to SQLGlot by @njriasan in #56
  • Adding ability to reference a child collection as a collection by @knassre-bodo in #62
  • Support converting functions to SQLGlot by @njriasan in #57
  • Support converting a filter to SQLGlot by @njriasan in #58
  • Support converting a Limit to SQLGlot by @njriasan in #59
  • Adding PyDough translations to remaining TPC-H queries by @knassre-bodo in #51
  • Adding transform from UnqualifiedNodes to PyDough AST by @knassre-bodo in #49
  • Support for converting an Aggregate to SQLGlot by @njriasan in #60
  • Support for converting Join to SQLGlot by @njriasan in #61
  • Support converting the Root to SQLGlot by @njriasan in #63
  • Support for Anti + Semi Join in relational by @njriasan in #64
  • Infrastructure for converting Relational to SQL by @njriasan in #65
  • Add first batch of tests for Relational to SQL Conversion + Fix Bugs by @njriasan in #67
  • Create relational to SQL tests for all node types but join by @njriasan in #68
  • Support Join to SQL by @njriasan in #69
  • Test TPCH Q1 conversion + fix operator precedence by @njriasan in #70
  • Support TPCH Q6 to SQL + add support for AND by @njriasan in #71
  • Move TPCH plans to a separate file by @njriasan in #72
  • Implement PyDough singular/plural checking semantics by @knassre-bodo in #66
  • Add TPCH Q3 to SQL by @njriasan in #73
  • Enable function calls/complex expressions in ordering by @njriasan in #75
  • Enable executing SQL on a database + test TPCH Q6 by @njriasan in #74
  • Convert the Join represent to allow multiple joins by @njriasan in #79
  • Add a RelationalExpressionShuttle and Remove aliases from unique columns in a join by @njriasan in #80
  • Remove subquery aliases if the table has all unique columns by @njriasan in #81
  • Enable fusing compatible limits and orderings by @njriasan in #82
  • Enable column pruning Relational Nodes by @njriasan in #88
  • Replace the execute query API return type with a Pandas DataFrame by @njriasan in #83
  • Fix Python version in the test matrix by @njriasan in #84
  • Add remaining sample TPC-H outputs by @njriasan in #86
  • Adds proper support for Date Literals in SQLGlot conversion by @njriasan in #87
  • Support Startswith, Endswith, and String Contains in SQL conversion by @njriasan in #89
  • Support converting ISIN to SQLGlot by @njriasan in #90
  • Support for IFF in SQLGlot by @njriasan in #91
  • Support for LIKE function in SQLGlot by @njriasan in #92
  • Support for Year in SQLGlot by @njriasan in #93
  • Begin AST->Relational conversion by @knassre-bodo in #78
  • Support basic scalar functions in PyDough by @knassre-bodo in #94
  • Support basic singular child accesses as LEFT joins in AST->Relational conversion by @knassre-bodo in #95
  • Support basic BACK reference expressions in AST->Relational conversion by @knassre-bodo in #96
  • Support basic aggregations in AST->Relational conversion by @knassre-bodo in #98
  • Support calling COUNT on a subcollection in AST->Relational by @knassre-bodo in #100
  • Support for converting WHERE to Relational by @njriasan in #97
  • Fix merge conflict with aggregate by @njriasan in #104
  • Support global calcs and global aggregations in AST->Relational conversion by @knassre-bodo in #102
  • Remove rust dependency by @gjdorman in #103
  • Reformatting AST->Relational conversion tests to use fixtures by @knassre-bodo in #107
  • Support for converting TopK + Order By by @njriasan in #99
  • Add a single step to load SQLite dialect + connection by @njriasan in #105
  • Support PARTITION in AST -> Relational conversion by @knassre-bodo in #106
  • Test AST->Relational conversion for initial batch of TPCH queries by @knassre-bodo in #110
  • Support stepping into a partition child in AST -> Relational conversion by @knassre-bodo in #111
  • Support HAS and HASNOT in PyDough by @knassre-bodo in #112
  • Adds support for defining a PyDough Session by @njriasan in #108
  • Support a PyDough module level active_session by @njriasan in #109
  • Various adjustments to codebase and tests to enable running TPCH queries by @knassre-bodo in #116
  • Enable runtime correctness testing of TPCH queries by @knassre-bodo in http...
Read more