cube.js v0.31.0 Release Notes

Release Date: 2022-10-03 // over 1 year ago
    • feat!: Cube Views implementation (#5278) (9937356), closes #5278

    ๐Ÿ› Bug Fixes

    • cubesql: Allow derived tables to have a dot in column name (#5391) (f83009c)
    • cubesql: cast strings to timestamp (#5331) (a706258)
    • cubesql: Metabase - substring __user (#5328) (a25c8bf)
    • cubesql: udf format_type prepared statement fix (#5260) (307ed1b)
    • cubesql: WHERE Lower / Upper in list with multiply items (#5376) (2269b2b)
    • cubestore: Aggregate function MERGE not allowed for column type bytes (#5166) (7626ed5)
    • cubestore: Fix error: Internal: channel closed on the next request after cubestore cloud process got OOM (#5238) (cb81fdb)
    • postgres-driver: release method should not throw (#5395) (9423f46)
    • query-orchestrator: pre-aggs build range queries cache key alignment (#5377) (5896c4a)
    • schema-compiler: throw an error for the empty pre-aggs (#5392) (4afd604)

    ๐Ÿ”‹ Features

    • cubesql: Holistics - in dates list filter (#5333) (94b6509)
    • cubesql: Support joins with distinct (#5340) (da4304f)
    • multiple data source (#5326) (334af8c)
    • cubesql: Add float8, bool casts (b345ade)
    • cubesql: Allow char_length function to be used with cubes (e99344f)
    • cubesql: Allow filter by exact year (Tableau) (#5367) (c31e59d)
    • cubesql: Holistics - support range of charts (#5325) (d16b4c2)
    • cubesql: Support date_trunc over column filter with <= (b30d239)
    • query-orchestrator: introduce unload without temp table (#5324) (3dcbd2e)
    • โœ… testing: databricks test suite (#5311) (b77f33b)

    ๐Ÿ’ฅ BREAKING CHANGES

    • ๐Ÿ›  The logic of how cubes are included in joins has been changed. There are multiple member reference constructs that are now forbidden and should be rewritten. You can't reference foreign cubes anymore to define members inside other cubes: ${ForeignCube}.foo. foo member should be defined in ForeignCube and referenced as ${ForeignCube.foo}. You also can't mix references and members without CUBE self-reference. For example ${ForeignCube.foo} + bar is invalid and ${ForeignCube.foo} + ${CUBE}.bar should be used instead. If not fixed, it'll lead to missing tables in the FROM clause.