DataStation 0.7.0 Release Notes
This release includes support for new databases, explicit UI options for PostgreSQL-compatible databases, improvements to the code editor UX, a slight UI refresh, support for nested fields in the UI, and more!
This release switches from Material Icons to Ionic fonts. More app state is synced to the URL so that when you reopen the app the sidebar remains open/closed as you left it, expanded panel details remain expanded, and so on.
Code editor fixes, improvements
The last few releases have had a somewhat buggy code editor experience. You might have seen freezes while typing as the editor synced your changes to disk. This syncing freeze has been fixed in this release. Syncing now happens less frequently, without blocking, and automatically flushes when you leave the input element or run a panel.
Before this release, the code editor wouldn't always resize correctly when nearby elements changed. This sometimes meant the last lines in the editor couldn't be scrolled to. This release fixes those issues by correctly, automatically resizing the code editor as needed.
Finally, this release adds support for opening a panel in fullscreen mode to make it easier to focus on a particular script at a time with more screen real estate.
Before this release you could not refer to nested fields in the visual transform, graph, and table panels. You'd need to add a code panel that extracted/flattened the nested fields first. This release adds direct support for accessing nested fields in these three panels. The only limitation is that you cannot access nested arrays and you cannot access a partial path that ends in an object. All columns must ultimately still be scalar.
Automated graph and table generation
Now when you run a panel and it returns an array of objects, a table icon appears below the panel. When you click the icon, a table panel is generated for you that is populated from the current panel and includes all its columns.
Similarly, when a panel results in data with at least one string and number column, a button will appear in the same place that will generate a graph panel and run it for you.
This release adds support for querying Cassandra (and ScyllaDB), FluxQL, BigQuery databases.
DataStation has supported PostgreSQL since the first release. This means it supported any databases that implemented the PostgreSQL wire protocol since the first release. But this release adds explicit UI options so that you don't need to know or remember that these databases implement the PostgreSQL wire protocol. Specifically there are now UI options for: TimescaleDB, CockroachDB, Yugabyte, CrateDB and QuestDB.
Last databases off of Node.js runner, onto Go runner
Panel evaluation code was originally written in Node.js and was partially ported to Go in the 0.5.0 release. The major parts remaining in Node.js were support for ElasticSearch, Prometheus, Influx and Snowflake. This release ported all that remaining database code to Go. And for the first time adds integration tests for these four databases.
New file formats, updates to CSV parsing
This release adds support for concatenated JSON streams. It also relaxes CSV parsing so panels won't error when a cell exists that doesn't have a corresponding header cell.
Install or upgrade
How you can help
The latest version of DataStation is available! Support for new databases, a number of UX improvements (like fullscreen mode, automated graph/table panel generation), and more!https://t.co/fhrFayIph2 pic.twitter.com/sdwR3FwqDa— Multiprocess Labs (@multiprocessio) February 7, 2022