Releases: machow/siuba
Releases · machow/siuba
v0.0.12
User Facing Changes
- Arrange correctly resets index. #106
- Filter correctly resets index. #130
- Switch to MIT license
- SqlTranslator is now mutable, so it's easier to tweak them on the fly (e.g. in a notebook. b9c81d7
- pandas join feats / fixes
- the implementation of
semi_join
was duplicating rows as standard joins do.
this resulted in some very large results.... #115 - implement anti_join
- fix failures when the on arg received a mapping
- fix
full_join
failing for pandas, since pandas calls it an 'outer' join
- the implementation of
- implement sql transmute. #108
- clean up, document, add docstring tests for vector funcs and forcats. #120
- add full tests for forcats (thanks @bakera81!) .#121
- clean up and document
separate()
. #119 - allow raw SQL. #123
- generalize spread and gather. #129
- mutate generates fewer subqueries now. #127
As an experimental feature, I shortened the stacktraces for SQL translator errors! #125
Chores
- clean up pytest. #116
count without args returns total rows
Small fix, supporting count without args. This is a very common case against SQL dbs, since it lets you know how big (how many rows) a table has.
e.g.
tbl_something >> count()
add gather, improve case when support
- all case_when values to be Calls (e.g.
case_when({True: _.a + 1}
) #103 - add gather function
- add developer docs
Support connections to redshift
- Allow custom specification of table columns (#78) - this was preventing people from working with SQL when SqlAlchemy couldn't reflect column names from a database.
- Add some intro docs
document core 1 table verbs, and add fct_rev
v0.0.8 Update __init__.py
SQL support and unit tests
This release implements extensive testing for postgres and sqlite. It also sets up (but skips) pandas unit tests.
It follows from this PR: #36
SQL Improvements:
- fix distinct when following an arrange (#65)
- move collect and show_query into dply.verbs (#23)
- mutate now doesn't put redefined columns at end of table (#42)
- full join gets all values in joining columns, even if unique to only 1 table (#57)
- complete implementation of joins, including anti_ and semi_join (#58, #55, #53)
- allow mutate to accept only scalar values, e.g. mutate(a = 1). (#39)
- handle arbitrary siu expressions inside arrange (#30)
- track arrange expressions, in order to allow cumulative functions (#30)
- clearer messaging that summarize can't refer to just defined column (#49)
- summarize, and mutate better identify when referencing a variable requires a CTE (#46, #45)
- allow keyword args to group_by (#52)