Recent Releases of @uwdata/mosaic-core
@uwdata/mosaic-core - v0.18.0
Changelog:
- Port
mosaic-coreandmosaic-sqlpackages 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: https://github.com/uwdata/mosaic/compare/v0.17.0...v0.18.0
- TypeScript
Published by jheer 6 months ago
@uwdata/mosaic-core - v0.17.0
Changelog:
- Breaking: Drop
rowsandrangemethods from SQL aggregate and window function AST nodes, instead use newframemethod to set window frame leveraging newWindowFrameAST 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_staraggregate function (used internally by DuckDB). - Add SQL AST
samplesupport toFromClausenode. - Add SQL AST support for
LIMITandOFFSETclause expressions (not just constant numbers). - Add SQL AST support for percentage-based
LIMITclauses. - Add SQL AST support for
COLLATEexpressions. - Add options type hint for SQL AST
Verbatimnode. - Add improved support for cloning SQL AST nodes.
- Add declarative spec support for some SQL AST updates.
- Add new
window-frameexample 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: https://github.com/uwdata/mosaic/compare/v0.16.2...v0.17.0
- TypeScript
Published by jheer 7 months ago
@uwdata/mosaic-core - v0.16.2
Changelog
- Fix SQL
rewritehelper so that it does not mutate input.
Full Changelog: https://github.com/uwdata/mosaic/compare/v0.16.1...v0.16.2
- TypeScript
Published by jheer 8 months ago
@uwdata/mosaic-core - v0.16.1
Changelog
- Breaking: Modify Rest and Socket connector methods to accept an options object, not a URI string. The server
uriis now passed as an option instead. - Add
ipcoption 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
ENUMtype 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 https://github.com/uwdata/mosaic/pull/769
Full Changelog: https://github.com/uwdata/mosaic/compare/v0.16.0...v0.16.1
- TypeScript
Published by jheer 8 months ago
@uwdata/mosaic-core - 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
preparecall as part of client initialization. It includes the breaking change of removing the Mosaic clientfieldandfieldInfolifecycle methods. Instead of these methods, clients can directly call mosaic-core'squeryFieldInfowithin a client'spreparelifecycle method.
Changelog
- Breaking: Drop client
fieldsandfieldInfolifecycle methods, rely solely onprepareinstead. ThequeryFieldInfocan be used instead to lookup field info directly; it uses the same types as the removed methods. - Add client
enabledproperty. Whenenabledis 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. Whenenabledis set to true, any pending initialization or query requests will then proceed. - Add
enabledandfilterStableoptions tomakeClienthelper utility. - Update inputs and plot package to call
queryFieldInfowithin the clientpreparemethod. - Refactor initialization logic between coordinator and client.
- Add tests for client
enabledproperty.
Full Changelog: https://github.com/uwdata/mosaic/compare/v0.14.1...v0.15.0
- TypeScript
Published by jheer 10 months ago
@uwdata/mosaic-core - 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: https://github.com/uwdata/mosaic/compare/v0.14.0...v0.14.1
- TypeScript
Published by jheer 10 months ago
@uwdata/mosaic-core - v0.14.0
Changelog
- Add selection
resetmethod to clear a selection of all clauses. - Add
coalesceSQL function, which returns the first non-null argument. - Add histogram and date time binning transforms to sql package.
- Fix examples to not
awaitthe WASM connector. - Fix preaggregation
countmeasures 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: https://github.com/uwdata/mosaic/compare/v0.13.0...v0.14.0
- TypeScript
Published by jheer 10 months ago
@uwdata/mosaic-core - 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
materializedproperty to WITH clause nodes to control explicit CTE materialization. - Update M4 transform to use a CTE and enforce CTE materialization. (thanks @spren9er!)
- Add
geomeanaggregate function and preaggregation support. (thanks @spren9er!) - Add
Activatableinterface type for components that perform selection activation. (thanks @rpechuk!) - Add
makeClienteffect 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
examplesmonorepo folder. - Add svelte and react usage examples.
- Miscellaneous bug fixes.
New Contributors
- @kevinzheng117 made their first contribution in https://github.com/uwdata/mosaic/pull/673
Full Changelog: https://github.com/uwdata/mosaic/compare/v0.12.2...v0.13.0
- TypeScript
Published by jheer 10 months ago
@uwdata/mosaic-core - v0.12.2
Changelog
- Add multi-density (groupby) and stack option support to density 1D marks.
- Add
normalizeoption to to density 1D marks. - Add density groups example.
- Add
queryFieldInfoandjsTypeutilities tomosaic-coreexports. (thanks @kwonoh!) - Fix stack option support, treat them as constant mark channels.
- Fix
menuinput to supportnullvalue options. - Fix dynamic column handling.
Full Changelog: https://github.com/uwdata/mosaic/compare/v0.12.1...v0.12.2
- TypeScript
Published by jheer about 1 year ago
@uwdata/mosaic-core - v0.12.1
Changelog
- Add waffle mark. (Example)
- Add selection activation to inputs.
- Fix hexbin query y-coordinate calculation.
- Fix examples for better dark mode viewing. (#600)
Full Changelog: https://github.com/uwdata/mosaic/compare/v0.12.0...v0.12.1
- TypeScript
Published by jheer about 1 year ago
@uwdata/mosaic-core - v0.12.0
Highlights
- Overhaul SQL utilities for greater coverage and flexibility.
- Expand and rename preaggregation optimizations.
- Add vgplot
regioninteractor for point-typed screen-space selections. (Example) - Add support for
Param-valued table references. (Example) - Add support for
Param-valued column references. By default,Paramvalues map to literals within SQL expressions. For example, a string-valued param will map to a SQL string literal. However, sometimes users want to dynamically reference a table column instead. This version adds functionality to interpret a param as a SQL column reference, using either thecolumntransform method (e.g.,vg.column($paramName)or a special$$syntax within declarative spec SQL expression strings (e.g.,{ sql: $$paramName ** 2 }. (Example)
Changelog
- Breaking: Rewrite
mosaic-sqlpackage to use a complete AST formulation. Add additional SQL helper methods. - Breaking: Drop
aggSQL expression helper. We now perform automatic analysis to determine if an expression is an aggregate expression. - Breaking: Remove automatic internal casts, such as casting count() aggregates to 32-bit integers. As we dropped Arrow-JS in favor of Flechette, Arrow parsing now gracefully handles 64-bit integers, decimals, and other type conversions.
- Add more SQL operators, math functions,
isInfunction, conditionals, and more. - Move SQL transforms for binning and M4 to
mosaic-sqlpackage in a newtransformsfolder. - Update plots, inputs, and spec parsing to use new SQL utilities. SQL expressions no longer provide column dependency lists, param listeners, or idiosyncratic annotations. Instead, needed metadata is now extracted using visitor methods that walk the SQL expression AST. All query generator methods now create full, analyzable ASTs using our updated SQL builders.
- Add Param-value support for from table names in vgplot marks and table views. This change permits dynamic swapping of backing data tables at runtime, including among differently sized samples.
- Add column param node type to SQL AST helpers.
- Add
columntransform to declarative spec language. - Add
$$paramsyntax to declarative spec SQL expressions to indicate a column-valued param. - Breaking: Rename coordinator
dataCubeIndexertopreaggregator. - Breaking: Rename coordinator
indexesoption key topreagg. - Breaking: Rename pre-aggregation
indexmethod torequest. - Breaking: Rename pre-aggregation
dropIndexTablesmethod todropPreAggregateTables. - Rename other internal methods and comments to use the terminology of "pre-aggregation" and "pre-aggregated materialized views".
- Update documentation to use the terminology of "pre-aggregation" and "pre-aggregated materialized views".
- Update pre-aggregation optimizations to support arbitrary aggregate expressions, not just individual aggregate function calls. We use the SQL facilities to rewrite expressions for more complex optimized aggregations.
- Update pre-aggregation optimizations to support aggregates with FILTER clauses.
- Refactor pre-aggregation optimizations, moving them to the new
mosaic-core/preaggfolder. - Add
regioninteractor for 2D selection of individual point values. - Add use of SQL IN operator for single-value point selections.
- Add
channelsmark property to spec types. - Fix empty selection resolution to use false literal.
- Fix interactor facet handling and datum extraction.
- Fix plot label generator handling of
*character. - Refactor BrushStyles types to dedicated file.
- Update facet handling to follow changes in Observable Plot.
- Add local test spec loading in dev runner.
- Update top-level Plot attributes: remove
label, addclip,ariaLabel,ariaDescription - Remove deprecated Coordinator query recorder support.
- Improve TypeScript types and tests in
mosaic-sqlandmosaic-core. - Basic documentation updates.
- TypeScript
Published by jheer about 1 year ago
@uwdata/mosaic-core - v0.11.0
Changelog:
- Breaking: Replace
apache-arrowwith@uwdata/flechetteto access Apache Arrow IPC data with better performance and smaller footprint. While the API for Flechette tables mirrors many aspects of the Arrow JS reference implementation, it is not a perfect one-to-one replacement. It is possible that some Mosaic users may need to adjust query result processing in response. - Breaking: Redesign the data cube indexer to write index tables into a named schema (default
'mosaic'). This allows data cube index tables to be managed in a largely isolated environment and to be reused across users and sessions. Temporary index tables are no longer supported, as temporary tables can not be created within a named schema. - Breaking: Remove
tempoption for data cube index tables. - Breaking: Remove data cube indexer
enabledmethod, instead use get/set properties. - Add data cube indexer
schemaget/set properties. - Add data cube indexer
dropIndexTables()method. This method issues a query to remove the entire data cube index table schema. It should be called if base tables are updated, causing index tables to become stale and inaccurate. - Add Selection
includeto define a Selection that includes the clauses from one or more upstream selections. This addition allows selections to be composed to build up larger clause sets from sub-selections. - Add client
initializemethod. This method supports dynamic client re-initialization, issuing new field info and client query requests. - Fix throttle utility to be resilient to callback rejections. (thanks @andyrooger!)
- Fix canceled queries by rejecting them, rather than leaving them pending. (thanks @andyrooger!)
- Fix index creation queries to no longer be canceled when clearing the data cube indexes. These indexes may already be used in other queued requests. (thanks @andyrooger!)
- Fix
Plotclass to re-initialize mark clients upon dynamic field updates. - Fix data cube indexer to generate correct averages in variance and covariance calculations. (#487)
- Fix broken usage of
json_formatand addloadJSONtest. (thanks @geoffreyd!) - Fix management of cancelled queries, remove race condition. (thanks @andyrooger!)
- Fix query consolidation to flag aggregate queries with no groupby. (#479, thanks @andyrooger!)
- Fix variable access typo in
DuckDBStatementwithin node.js DuckDB lib. - Fix time interval year span calculation. (#484)
- Fix
nearestinteractor with param-compatible clause for single-field selections. (#502) - Fix
nearestinteractor for consistent param and selection updates. (#508) - Fix Coordinator
queryRequestto always return a Promise. (#507) - Update Jupyter widget, remove
temp_indexesproperty and adddataCubeSchemaproperty. - Update types, method signatures in
CoordinatorandDataCubeIndexer. - Update test runner from mocha to vitest. (thanks @domoritz!)
- Update Coordinator API documentation.
- Update athletes example to use Selection
include. We now use an upstream selection to limit text search options to the current sport and sex.
- TypeScript
Published by jheer over 1 year ago
@uwdata/mosaic-core - v0.10.0
Changelog:
- Breaking: Update
bintransform declarative spec to support top-level option properties, remove options object as second argument. - Breaking: Remove coordinator
configuremethod. It was confusing and involved interactions among settings. - Breaking: Refactor clause generators for better clarity (
clauseIntervalinstead of justinterval). - Add default
clientset construction to selection clause helpers. - Add date interval support to
bintransform. A newintervaloption specifies a desired date/time unit (hour,day,month, etc) or forces standard numerical binning (number). If not specified, a reasonable date/time interval and step size will be determined automatically for temporal data. (#427) - Add
dateBinSQL helper method. - Add
emptyflag to selections. If true, selections with no clauses will not select any values. If false (the default), selections with no clauses select all data values. - Add
asselection option toTableinput, for clauses corresponding to selected table row values. - Add
rLabelplot attribute. - Add support for plot
aspectRatioproperty when auto-calculating heights at the Mosaic level. - Add groupby and flexible column reference support to
hexbinmark queries. - Add more flexible groupby handling in data cube index column analysis.
- Add
pending()method toAsyncDispatchto track param/selection event processing. - Fix plot legend to check for plot label attributes.
- Fix
tableoffset reset upon external updates. (#363) - Fix empty data handling in regression mark.
- Fix query error handling in coordinator and clients.
- Update data cube indexer to operate over selection-client pairs directly. Use a single indexer per coordinator. Remove coordinator-internal
FilterGroupclass. - Update
toDataColumnsutility, move frommosaic-plottomosaic-core. This method maps Apache Arrow data to native JS values. - Update internal query result promise to a proper class.
- Update test cases for client and selection lifecycle methods. (h/t @matys1)
- Update python libs to enable uv via installer key. (thanks @peter-gy)
- Update dependencies, use DuckDB 1.0.0.
- TypeScript
Published by jheer over 1 year ago
@uwdata/mosaic-core - v0.9.0
Changelog:
Features:
- Breaking: Rename selection clause schema property to meta.
- Breaking: Change nearest interactor options to support multidimensional point selection and separate pointer targets from selected data channels.
- Add nearest interactor for selecting nearest 2D point.
- Add errorbarX and errorbarY marks for parametric confidence intervals over unaggregated data. The existing ruleX/Y marks should be used for pre-computed interval boundaries or custom aggregate expressions.
- Add mark-level select option for internal filtering of mark data, for example first or last points in a series or the current nearest mark to the pointer. Mark-level select simplifies creating various hover effects and annotations, though may query data in an unoptimized fashion, and does not interoperate with params or selections.
- Add covariance aggregate method.
- Add data cube support in cases where only some filtered clients are indexable.
- Add stddev, variance, covariance, and regression aggregates to data cube indexer.
- Add stddev, variance, covariance transforms in declarative specs.
- Add binning method hints for data cube indexer.
- Add selection clause generation methods (point, interval, etc).
- Add selection clause typings.
- Add Selection valueFor method to look up source-specific values.
- Add selection clause methods to inputs and interactors.
- Add value label to slider input.
- Add interval selection support to slider input.
- Add field option to inputs (menu, slider, search) to control the column referenced in selection clause predicates. (#406)
- Add toggleZ interactor directive to select line or area series using the z channel.
- Add QueryManager logQueries method to toggle logging of queries submitted to connector.
- Add FilterGroup index method to toggle data cube indexing.
- Add SQLExpression export to mosaic-sql package.
- Add Query.select column override support. Newer as values overwrite prior ones, and a null expression value removes any prior statements.
Examples:
- Add linear-regression-10m example with dynamic regression calculation over 10m points.
- Add athlete-height example with error bars and slider-based selection.
- Add line-multi-series example with interactive hover highlights and annotations.
Developer Support:
- Add options for logging and optimization to the dev (npm run dev) example runner.
- Add JSON schema publishing (e.g., to https://uwdata.github.io/mosaic/schema/latest.json).
- Add project vscode settings for YAML schemas (requires the YAML extension)
Bug Fixes, etc.:
- Fix bin transform to support extents for rule marks.
- Fix data type lookup in plot renderer.
- Fix SQL generation escaping of strings with single quotes.
- Fix Menu value initialization and updates. (#401)
- Fix legend interactor peers and selection value extraction.
- Fix interval 1D brush extent sort order.
- Fix raster mark color domain sorting.
- Fix data lookup from SVG in toggle and highlight interactors to support lines/areas.
- Update dependencies, documentation, and types.
- TypeScript
Published by jheer over 1 year ago
@uwdata/mosaic-core - v0.8.0
Changelog:
- Add use of columnar data throughout vgplot internals.
- Add interactive brushing for continuous color and opacity legends.
- Add meta-key input support to
toggleinteractor. - Add
symbolscale directives to vgplot. - Add
legendstest example spec. - Add
preambleoption toastToESM()to insert custom code. - Add data cube index support for ARGMIN, ARGMAX aggregates.
- Add data cube index support for PRODUCT, BITAND, BITOR, BITXOR, BOOLAND, BOOL_OR aggregates.
- Add
xLabelArrow,yLabelArrowplot attributes. - Add (
x|y|color|opacity|r|length)Percentplot attributes. - Remove invalid
fxNiceandfyNiceplot attributes. - Fix legend sizing based on the presence of a label (legend title).
- Fix
regressionmark tip option to pass to error band only, for a single informative tooltip. - Fix
plotdirective to call update, which is needed for plots without marks. - Fix
rastermark transient scale domain updates to get appropriate domain definitions. - Fix
contourmark fill/stroke/opacity encoding channel generation for density thresholds. - Fix
hspace/vspacecodegen to properly stringify values. - Fix
namedPlots.clear()to also clear queued requests. - Fix proper context use in AST node
instantiate()calls. - Fix
JSONDuckDB type handling for field info. - Refactor
handleParammark utility for better clarity and type-friendliness. - Update dev example runner.
- Update some jsdoc typings throughout Mosaic packages.
- Add and publish TypeScript types for declarative JSON specs.
- Add and publish JSON schema for declarative JSON specs.
- Add test TypeScript files for all specs, run
tscon them as part of@uwdata/mosaic-spectests. - Add JSON schema validation to spec tests.
- Update dependencies, including latest version of TypeScript.
- TypeScript
Published by jheer over 1 year ago
@uwdata/mosaic-core - v0.7.1
Changelog
- Fix
astToDOM()to respect pre-defined Params/Selections passed via theparamsoptions. - Add tests for arrow value conversions.
- Bump dependencies.
- TypeScript
Published by jheer almost 2 years ago
@uwdata/mosaic-core - v0.7.0
Changelog:
- Add
Query.describe(query)to generateDESCRIBE ...queries for metadata. - Add support for arbitrary SQL expressions (not just column names) as field info metadata. Passing direct SQL expressions such as
{x: vg.sql`-ra`}should now work! - Add support to (lossily) convert Apache Arrow
DECIMALvalues to JavaScriptNumbervalues. - Update query consolidator to handle DESCRIBE queries, which require filtering rather than projection.
- Remove table catalog from Coordinator, rely on cache and consolidation instead.
- Refactor
fieldInfometadata management within vgplotMarkimplementations. - Refactor Apache Arrow utilities to be exports of
@uwdata/mosaic-core. - Update dependencies.
As a result of the above, the catalog option of Coordinator.clear is no longer supported. Clients can still pass the option, but it will have no effect. Instead, clearing the cache will now also drop any cached table metadata.
- TypeScript
Published by jheer almost 2 years ago
@uwdata/mosaic-core - v0.6.1
Changelog:
- Add raster mark interpolation options nearest, barycentric, and random-walk.
- Add initial plot auto-height support, fixes case of raster dimensions without a specific plot height.
- Add aeromagnetic survey example to test raster interpolation and smoothing.
- Update example preparation script, consolidate processing for both tests and docs.
- Fix error reduction in initialization of Deriche convolution.
- Bump dependencies.
- TypeScript
Published by jheer almost 2 years ago
@uwdata/mosaic-core - v0.6.0
This release adds support for non-linear scales across binning methods, both in gridded marks like raster, and for the bin transform. It also improves marks that use gridded data, such as density, raster, and the new heatmap convenience mark.
Breaking Changes:
This release renames some of the options for density/contour/raster marks and adjusts their defaults. This simplifies some naming and usage, and better aligns with the underlying Observable Plot library.
- binType is now interpolate. The
"normal"option value is now"none". - binWidth is now pixelSize.
- binsX is now width.
- binsY is now height.
Changelog:
- Breaking: Rename options for density/contour/raster marks, change defaults.
- Add support for non-linear scales (log, symlog, sqrt) to pixel-level binning methods.
- Add support for non-linear scales (log, symlog, sqrt) to the
bintransform. - Add SQL scale transform utilities to the
mosaic-sqlpackage. - Add richer option support to
rastermark, including gridded ordinal data alongside numeric data. - Add
heatmapmark, arastermark with convenient defaults for density estimation. - Add additional plot attributes for scale transforms.
- Add more SQL transforms to the declarative specs.
- Update mark implementations to use improved binning.
- Update
density1dexample spec to use a log-scaled domain. - Update examples, including new Observable latency example.
- Update documentation.
- Update dependencies, use DuckDB v0.10.0.
- Fix range transformation bug in
DataCubeIndexer. - Fix filter range bug in
DensityLineMark. - Fix M4 optimization bug in
ConnectedMark(line and area).
- TypeScript
Published by jheer almost 2 years ago
@uwdata/mosaic-core - v0.5.0
This release provides a number of major updates, including:
- Spatial data support via the DuckDB
spatialextension - A redesigned specification parsing and code generation package
- API contexts for vgplot: use multiple coordinators or named plot sets simultaneously
- A new Python-based local server supporting the latest DuckDB version
- Watch out for the multiple breaking changes below
Changelog:
Update declarative spec parser and code generator
- Breaking: Remove spec parser and code generator from vgplot. The parseSpec method is no longer exported by vgplot. Instead, use the new methods from the @uwdata/mosaic-spec package.
- Breaking: Remove support for client-side data loading. Previously this was used to load GeoJSON and TopoJSON data. The DuckDB spatial extension is now used to load and manage such data directly in the database.
- Breaking: The expr construct has been removed from declarative specs, instead use sql. This change better aligns the specs with the underlying vgplot API (where the sql tagged template is used).
- Add spec package with updated spec parser and AST framework.
- Add extension loading to spec processing, using the config.extensions spec property.
Spatial data support
- Add support for the DuckDB spatial extension.
- Add loadSpatial helper and spatial methods (e.g., centroidX, centroidY) to mosaic-sql.
- Remove client-side GeoJSON/TopoJSON loading, route through DuckDB instead.
- Add mapping and spatial analysis examples to tests and docs.
Python-based DuckDB server
- Add duckdb-server package for a Python-based HTTP/WebSocket server. This server supercedes the earlier Node-based server in the duckdb package, due to persistent bugs arising in the Node client and Arrow extension.
Refactor packages
- Add top-level specs folder for shared access to example specs.
- Add plot package for plot, mark, and interactor component classes.
- Re-focus vgplot package solely on providing an exported API for Mosaic applications.
Other changes
- Modify the wasmConnector method to be synchronous. DuckDB initialization is now perform lazily.
- Add options to the wasmConnector to use an existing DuckDB instance.
- Add vgplot API contexts (createAPIContext()) to permit multiple coordinators or named plot sets on the same page.
- Add sql loadExtension() utility, which generates commands to load external DuckDB extensions.
- Add array support to Coordinator.exec(). An array of queries can now be provided, issued to DuckDB as a single multi-statement query.
- Fix vgplot margin() attribute directive.
- Fix line/area marks to not apply M4 optimization to unoriented marks.
- Fix menu input to support to non-truthy values such as 0 and null. (thanks @frtennis!)
- Breaking: Replace selections with params in Jupyter widget, include all params, and index params by name.
- TypeScript
Published by jheer almost 2 years ago
@uwdata/mosaic-core - v0.4.0
Changelog:
- Breaking: Use mark-level
orderby(notorder) to convey query orderby criteria. Avoids conflict with Plot'sorderoption for implicit stack transforms. - Breaking: Rename channel window transform keys to
orderbyandpartitionby(notorderandpartition) to more closely match SQL and improve consistency with Mosaic's SQL helpers and mark-levelorderbycriteria. - Update
highlightinteractor to automatically add markorderbywhen needed to ensure consistent data order. (#248) - Bump dev dependencies.
- TypeScript
Published by jheer almost 2 years ago
@uwdata/mosaic-core - v0.3.5
Changelog:
- Support "TIMESTAMP WITH TIME ZONE" type. (thanks @mingfang)
- Export Cache, queryHandler and socketResponse from DuckDB server. (thanks @mingfang)
- Add configuration options for DuckDB class. (thanks @rickiesmooth)
- Update dependencies. Note that the default categorical color scheme for Plot (and thus vgplot) has changed!
- TypeScript
Published by jheer about 2 years ago