Releases: uwdata/mosaic
Releases · uwdata/mosaic
v0.18.0
Changelog:
- Port
mosaic-core
andmosaic-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
Changelog:
- Breaking: Drop
rows
andrange
methods from SQL aggregate and window function AST nodes, instead use newframe
method to set window frame leveraging newWindowFrame
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 toFromClause
node. - Add SQL AST support for
LIMIT
andOFFSET
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
Changelog
- Fix SQL
rewrite
helper so that it does not mutate input.
Full Changelog: v0.16.1...v0.16.2
v0.16.1
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
- @derekperkins made their first contribution in #769
Full Changelog: v0.16.0...v0.16.1
v0.15.0
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 clientfield
andfieldInfo
lifecycle methods. Instead of these methods, clients can directly call mosaic-core'squeryFieldInfo
within a client'sprepare
lifecycle method.
Changelog
- Breaking: Drop client
fields
andfieldInfo
lifecycle methods, rely solely onprepare
instead. ThequeryFieldInfo
can be used instead to lookup field info directly; it uses the same types as the removed methods. - Add client
enabled
property. Whenenabled
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. Whenenabled
is set to true, any pending initialization or query requests will then proceed. - Add
enabled
andfilterStable
options tomakeClient
helper utility. - Update inputs and plot package to call
queryFieldInfo
within the clientprepare
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
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
v0.14.0
Changelog
- Add selection
reset
method to clear a selection of all clauses. - Add
coalesce
SQL function, which returns the first non-null argument. - Add histogram and date time binning transforms to sql package.
- Fix examples to not
await
the WASM connector. - Fix preaggregation
count
measures to return zero (not null) for "empty" counts. - Fix preaggregator to abort if active clause is null.
- Fix preaggregator to ensure group by columns are correctly pushed to subqueries that perform aggregation.
- Fix client update requests to no-op when clients are not registered with a coordinator.
- Fix lerna config to include examples directory.
- Update dependencies.
- Add simple vanilla HTML example of Mosaic use.
Full Changelog: v0.13.0...v0.14.0
v0.13.0
Changelog
- Add dedicated WITH clause support, including for
SetOperation
. (thanks @spren9er!) - Add
cte(...)
method for direct construction of WITH clause nodes. - Add
materialized
property to WITH clause nodes to control explicit CTE materialization. - Update M4 transform to use a CTE and enforce CTE materialization. (thanks @spren9er!)
- Add
geomean
aggregate function and preaggregation support. (thanks @spren9er!) - Add
Activatable
interface type for components that perform selection activation. (thanks @rpechuk!) - Add
makeClient
effect API for using Mosaic in other web frameworks. (thanks @donghaoren and @domoritz!) - Update inputs package class hierarchy and types.
- Update documentation.
- Use vitest workspaces to run test cases across all packages.
- Use pure ESM packages, update package.json exports.
- Move example projects to dedicated
examples
monorepo folder. - Add svelte and react usage examples.
- Miscellaneous bug fixes.
New Contributors
- @kevinzheng117 made their first contribution in #673
Full Changelog: v0.12.2...v0.13.0
v0.12.2
Changelog
- Add multi-density (groupby) and stack option support to density 1D marks.
- Add
normalize
option to to density 1D marks. - Add density groups example.
- Add
queryFieldInfo
andjsType
utilities tomosaic-core
exports. (thanks @kwonoh!) - Fix stack option support, treat them as constant mark channels.
- Fix
menu
input to supportnull
value options. - Fix dynamic column handling.
Full Changelog: v0.12.1...v0.12.2