Skip to content

Releases: uwdata/mosaic

v0.20.1

19 Sep 23:11
Compare
Choose a tag to compare

Changelog

  • Fix binDate and binHistogram helpers to handle degenerate (min == max) spans.

Full Changelog: v0.20.0...v0.20.1

v0.20.0

18 Sep 21:51
Compare
Choose a tag to compare

Changelog

  • Add JoinNode SQL AST node type.
  • Add join, cross_join, asof_join, and positional_join helper functions.
  • Add from helper method for creating table references for query from and join contexts.
  • Add SQL code generation visitors, enabling future support for other DB dialects.
  • Add CUSTOM AST node type with pass through of SQL codegen visitor.
  • Update vgplot bin transform to use a CUSTOM node type.
  • Use DESC rather than DESCRIBE for broader compatibility.

Full Changelog: v0.19.1...v0.20.0

v0.19.1

12 Sep 19:24
Compare
Choose a tag to compare

Changelog

  • Update flechette dependency to fix unsafe reference to SharedArrayBuffer.

Full Changelog: v0.19.0...v0.19.1

v0.19.0

12 Sep 18:10
Compare
Choose a tag to compare

Changelog

  • Add caseSensitive option to selection clauseMatch method.
  • Add clauseMatchAny method for text matching over multiple columns.
  • Add more set operations (union by name, intersect all, etc). (thanks @kwonoh)
  • Add TIMESTAMP WITH TIME ZONE support to Rust server. (thanks @kwonoh)
  • Add DuckDB Go server, including production deployment options. (thanks @derekperkins)
  • Add list_contains, list_has_all, list_has_any functions (thanks @derekperkins)
  • Add list, unnest SQL functions.
  • Add OPFS support in DuckDBConfig (thanks @derekperkins)
  • Add dataframe interoperability to MosaicWidget using narwhals (thanks @peter-gy)
  • Fix query consolidation to preserve DISTINCT queries.
  • Fix Query.sample to accept null or undefined values to remove sample settings.
  • Fix table input to use null clause value (not empty array) for empty selections.
  • Fix errorbarY mark method to use explicit type.
  • Fix empty data handling in grid utilities and raster marks.
  • Fix coordinatory query method types to get proper table return type.
  • Fix client to disable before destroy. (thanks @severo)
  • Fix makeClient types re: destroy method. (thanks @severo)
  • Fix selection predicate to support null or undefined client. (thanks @donghaoren)
  • Fix selection clause source types to avoid unnecessary casts. (thanks @donghaoren)
  • Fix typo in selection documentation. (thanks @declann)
  • Update selection clause method type definitions.
  • Update dependencies.

New Contributors

Full Changelog: v0.18.0...v0.19.0

v0.18.0

26 Jun 06:53
Compare
Choose a tag to compare

Changelog:

  • Port mosaic-core and mosaic-sql packages to TypeScript.
  • Expose database connector classes (SocketConnector, DuckDBWasmConnector), deprecate initializer methods (socketConnector, wasmConnector).
  • Reorganize monorepo structure, grouping related packages into subfolders.
  • Fix inclusion of type definitions in published packages.
  • Update dependencies.

Full Changelog: v0.17.0...v0.18.0

v0.17.0

15 Jun 01:39
Compare
Choose a tag to compare

Changelog:

  • Breaking: Drop rows and range methods from SQL aggregate and window function AST nodes, instead use new frame method to set window frame leveraging new WindowFrame AST node support.
  • Breaking: Simplify server API, remove support for saving and loading data bundles.
  • Add more expressive SQL AST node for WindowFrame.
  • Add SQL AST support for aggregate and window function argument ORDER BY.
  • Add SQL AST helpers for time intervals: years, months, days, hours, minutes, seconds, milliseconds, microseconds.
  • Add support for count_star aggregate function (used internally by DuckDB).
  • Add SQL AST sample support to FromClause node.
  • Add SQL AST support for LIMIT and OFFSET clause expressions (not just constant numbers).
  • Add SQL AST support for percentage-based LIMIT clauses.
  • Add SQL AST support for COLLATE expressions.
  • Add options type hint for SQL AST Verbatim node.
  • Add improved support for cloning SQL AST nodes.
  • Add declarative spec support for some SQL AST updates.
  • Add new window-frame example test specification.
  • Update TypeScript setup, unify config, and export types from all packages.
  • Update docs to load data from Cloudflare R2.
  • Update vitest packages config.
  • Update dependencies.

Full Changelog: v0.16.2...v0.17.0

v0.16.2

07 May 22:08
Compare
Choose a tag to compare

Changelog

  • Fix SQL rewrite helper so that it does not mutate input.

Full Changelog: v0.16.1...v0.16.2

v0.16.1

07 May 19:53
Compare
Choose a tag to compare

Changelog

  • Breaking: Modify Rest and Socket connector methods to accept an options object, not a URI string. The server uri is now passed as an option instead.
  • Add ipc option to connectors to pass Flechette extraction options for Arrow IPC decoding.
  • Add types for database connectors, move to class-based implementations.
  • Add types for inputs package.
  • Add DuckDB ENUM type interpretion support. (thanks @kwonoh!)
  • Fix Param mutation issue in Jupyter widget.
  • Fix some Mosaic client types. (thanks @kwonoh!)
  • Update lint rules, fix violations.
  • Update dependencies.

New Contributors

Full Changelog: v0.16.0...v0.16.1

v0.15.0

17 Mar 22:16
Compare
Choose a tag to compare

Highlights

  • This version adds the ability to selectively enable/disable clients.
  • It also simplifies and streamlines the client lifecycle to use a single prepare call as part of client initialization. It includes the breaking change of removing the Mosaic client field and fieldInfo lifecycle methods. Instead of these methods, clients can directly call mosaic-core's queryFieldInfo within a client's prepare lifecycle method.

Changelog

  • Breaking: Drop client fields and fieldInfo lifecycle methods, rely solely on prepare instead. The queryFieldInfo can be used instead to lookup field info directly; it uses the same types as the removed methods.
  • Add client enabled property. When enabled is set to false, the client will not initialize nor respond to query requests and selection updates. This setting can improve performance, for example by suppressing updates to off-screen interface components. When enabled is set to true, any pending initialization or query requests will then proceed.
  • Add enabled and filterStable options to makeClient helper utility.
  • Update inputs and plot package to call queryFieldInfo within the client prepare method.
  • Refactor initialization logic between coordinator and client.
  • Add tests for client enabled property.

Full Changelog: v0.14.1...v0.15.0

v0.14.1

13 Mar 15:30
Compare
Choose a tag to compare

Changelog

  • Add exports for histogram binning utility methods in the sql package.
  • Fix preaggregator to abort if active clause is null.

Full Changelog: v0.14.0...v0.14.1