diff --git a/CHANGELOG.md b/CHANGELOG.md index b685fb3eb3..e15035dd9b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,23 @@ # Changelog +## [v1.3.11](https://github.com/finos/perspective/tree/HEAD) + +[Full Changelog](https://github.com/finos/perspective/compare/v1.3.10...HEAD) + +**Implemented enhancements:** + +- Add support for LargeUtf8 arrow column type [\#1796](https://github.com/finos/perspective/pull/1796) ([texodus](https://github.com/texodus)) + +**Fixed bugs:** + +- Fix datagrid error when `resetThemes()` is called while hidden [\#1795](https://github.com/finos/perspective/pull/1795) ([texodus](https://github.com/texodus)) +- Allow attempt to create workers from file protocol for e.g. electron [\#1794](https://github.com/finos/perspective/pull/1794) ([texodus](https://github.com/texodus)) +- Fix `sum` aggregate to force re-agg for expression columns [\#1793](https://github.com/finos/perspective/pull/1793) ([texodus](https://github.com/texodus)) + +**Closed issues:** + +- Add ignore to group by selection [\#1791](https://github.com/finos/perspective/issues/1791) + ## [v1.3.10](https://github.com/finos/perspective/tree/HEAD) [Full Changelog](https://github.com/finos/perspective/compare/v1.3.9...HEAD) diff --git a/cpp/perspective/package.json b/cpp/perspective/package.json index 434be163f1..95b7a7a954 100644 --- a/cpp/perspective/package.json +++ b/cpp/perspective/package.json @@ -3,7 +3,7 @@ "private": true, "author": "The Perspective Authors", "license": "Apache-2.0", - "version": "1.3.10", + "version": "1.3.11", "main": "./dist/esm/perspective.cpp.js", "files": [ "dist/esm/**/*", diff --git a/cpp/perspective/src/cpp/arrow_loader.cpp b/cpp/perspective/src/cpp/arrow_loader.cpp index 3bc0ed67a0..12e62aeb14 100644 --- a/cpp/perspective/src/cpp/arrow_loader.cpp +++ b/cpp/perspective/src/cpp/arrow_loader.cpp @@ -80,7 +80,8 @@ namespace apachearrow { t_dtype convert_type(const std::string& src) { - if (src == "dictionary" || src == "utf8" || src == "binary") { + if (src == "dictionary" || src == "utf8" || src == "binary" + || src == "large_utf8") { return DTYPE_STR; } else if (src == "bool") { return DTYPE_BOOL; @@ -299,6 +300,23 @@ namespace apachearrow { } } } break; + case arrow::LargeStringType::type_id: { + std::shared_ptr scol + = std::static_pointer_cast(src); + const arrow::LargeStringArray::offset_type* offsets + = scol->raw_value_offsets(); + const uint8_t* values = scol->value_data()->data(); + + std::string elem; + + for (std::uint32_t i = 0; i < len; ++i) { + arrow::LargeStringArray::offset_type bidx = offsets[i]; + std::size_t es = offsets[i + 1] - bidx; + elem.assign( + reinterpret_cast(values) + bidx, es); + dest->set_nth(offset + i, elem); + } + } break; case arrow::BinaryType::type_id: case arrow::StringType::type_id: { std::shared_ptr scol diff --git a/cpp/perspective/src/cpp/sparse_tree.cpp b/cpp/perspective/src/cpp/sparse_tree.cpp index 9b44b69786..252d20336f 100644 --- a/cpp/perspective/src/cpp/sparse_tree.cpp +++ b/cpp/perspective/src/cpp/sparse_tree.cpp @@ -955,6 +955,7 @@ void t_stree::update_agg_table(t_uindex nidx, t_agg_update_info& info, t_uindex src_ridx, t_uindex dst_ridx, t_index nstrands, const t_gstate& gstate, const t_data_table& expression_master_table) { + const t_schema& expression_schema = expression_master_table.get_schema(); for (t_uindex idx : info.m_dst_topo_sorted) { const t_column* src = info.m_src[idx]; @@ -962,6 +963,8 @@ t_stree::update_agg_table(t_uindex nidx, t_agg_update_info& info, const t_aggspec& spec = info.m_aggspecs[idx]; t_tscalar new_value = mknone(); t_tscalar old_value = mknone(); + auto is_expr + = expression_schema.has_column(spec.get_dependencies()[0].name()); switch (spec.agg()) { case AGGTYPE_PCT_SUM_PARENT: @@ -971,9 +974,9 @@ t_stree::update_agg_table(t_uindex nidx, t_agg_update_info& info, t_tscalar dst_scalar = dst->get_scalar(dst_ridx); old_value.set(dst_scalar); new_value.set(dst_scalar.add(src_scalar)); - if (old_value - .is_nan()) // is_nan returns false for non-float types - { + + // is_nan returns false for non-float types + if (is_expr || old_value.is_nan()) { // if we previously had a NaN, add can't make it finite // again; recalculate entire sum in case it is now finite auto pkeys = get_pkeys(nidx); diff --git a/docs/package.json b/docs/package.json index 0ae62f640b..b5a095f81f 100644 --- a/docs/package.json +++ b/docs/package.json @@ -1,7 +1,7 @@ { "name": "@finos/docs", "private": true, - "version": "1.3.10", + "version": "1.3.11", "scripts": { "theme": "lessc static/css/material-dark.less > static/css/material-dark.css", "examples": "docusaurus-examples", @@ -15,11 +15,11 @@ "write-translations": "docusaurus-write-translations" }, "devDependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10", - "@finos/perspective-workspace": "^1.3.10", + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11", + "@finos/perspective-workspace": "^1.3.11", "docusaurus": "^1.8.0", "less": "^3.9.0" }, diff --git a/examples/blocks/package.json b/examples/blocks/package.json index d3edacc361..20b05849f8 100644 --- a/examples/blocks/package.json +++ b/examples/blocks/package.json @@ -1,7 +1,7 @@ { "name": "blocks", "private": true, - "version": "1.3.10", + "version": "1.3.11", "description": "A collection of simple client-side Perspective examples for `http://bl.ocks.org`.", "scripts": { "start": "mkdirp dist && node server.js", @@ -11,10 +11,10 @@ "keywords": [], "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10", + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11", "superstore-arrow": "1.0.0" } } diff --git a/examples/git-history/package.json b/examples/git-history/package.json index 5ab6054e7a..4afadefbed 100644 --- a/examples/git-history/package.json +++ b/examples/git-history/package.json @@ -1,7 +1,7 @@ { "name": "git-history", "private": true, - "version": "1.3.10", + "version": "1.3.11", "description": "An example of Perspective's own GIT history rendered in Perspective.", "scripts": { "start": "node server.js" @@ -9,9 +9,9 @@ "keywords": [], "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10" + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11" } } diff --git a/examples/promo/package.json b/examples/promo/package.json index 9800ca191f..d1f01ff6be 100644 --- a/examples/promo/package.json +++ b/examples/promo/package.json @@ -1,7 +1,7 @@ { "name": "promo", "private": true, - "version": "1.3.10", + "version": "1.3.11", "description": "An puppeteer-guided demo of Perspective's functionality, as seen on Github.", "scripts": { "dev": "webpack-dev-server --open", @@ -13,14 +13,14 @@ "keywords": [], "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10", - "@finos/perspective-workspace": "^1.3.10" + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11", + "@finos/perspective-workspace": "^1.3.11" }, "devDependencies": { - "@finos/perspective-webpack-plugin": "^1.3.10", + "@finos/perspective-webpack-plugin": "^1.3.11", "http-server": "^0.11.1", "npm-run-all": "^4.1.3", "rimraf": "^2.5.2" diff --git a/examples/react-monaco/package.json b/examples/react-monaco/package.json index 35f9be3d86..f5da1ea3f2 100644 --- a/examples/react-monaco/package.json +++ b/examples/react-monaco/package.json @@ -1,7 +1,7 @@ { "name": "react-monaco", "private": true, - "version": "1.3.10", + "version": "1.3.11", "description": "An example app built using `@finos/perspective-viewer`.", "scripts": { "start": "webpack serve --open", @@ -10,16 +10,16 @@ "keywords": [], "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10", + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11", "react": "16.8.6", "react-dom": "16.8.6", "react-monaco-editor": "^0.46.0" }, "devDependencies": { - "@finos/perspective-webpack-plugin": "^1.3.10", + "@finos/perspective-webpack-plugin": "^1.3.11", "@types/react": "^16.8.6", "@types/react-dom": "^16.9.4", "source-map-loader": "^0.2.4", diff --git a/examples/react/package.json b/examples/react/package.json index 69f8686357..433fdc107d 100644 --- a/examples/react/package.json +++ b/examples/react/package.json @@ -1,7 +1,7 @@ { "name": "react", "private": true, - "version": "1.3.10", + "version": "1.3.11", "description": "An example app built using `@finos/perspective-viewer`.", "scripts": { "start": "webpack serve --open", @@ -10,15 +10,15 @@ "keywords": [], "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10", + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11", "react": "16.8.6", "react-dom": "16.8.6" }, "devDependencies": { - "@finos/perspective-webpack-plugin": "^1.3.10", + "@finos/perspective-webpack-plugin": "^1.3.11", "@types/react": "^16.8.6", "@types/react-dom": "^16.9.4", "source-map-loader": "^0.2.4", diff --git a/examples/remote-express/package.json b/examples/remote-express/package.json index 8cad0b814b..2b4760e1ae 100644 --- a/examples/remote-express/package.json +++ b/examples/remote-express/package.json @@ -1,7 +1,7 @@ { "name": "remote-express", "private": true, - "version": "1.3.10", + "version": "1.3.11", "description": "An example of 2 Perspectives, one client and one server, streaming via Apache Arrow.", "scripts": { "start": "tsc && node dist/server.js" @@ -9,10 +9,10 @@ "keywords": [], "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10", + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11", "express": "^4.17.1", "express-ws": "^5.0.2" }, diff --git a/examples/remote-workspace/package.json b/examples/remote-workspace/package.json index 4e1927c26c..d160bc1f97 100644 --- a/examples/remote-workspace/package.json +++ b/examples/remote-workspace/package.json @@ -1,7 +1,7 @@ { "name": "remote-workspace", "private": true, - "version": "1.3.10", + "version": "1.3.11", "description": "An example app built using `@finos/perspective-workspace`.", "scripts": { "start:server": "webpack serve --open", @@ -11,14 +11,14 @@ "keywords": [], "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10", - "@finos/perspective-workspace": "^1.3.10" + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11", + "@finos/perspective-workspace": "^1.3.11" }, "devDependencies": { - "@finos/perspective-webpack-plugin": "^1.3.10", + "@finos/perspective-webpack-plugin": "^1.3.11", "http-server": "^0.11.1", "npm-run-all": "^4.1.3", "rimraf": "^2.5.2" diff --git a/examples/tornado-python/package.json b/examples/tornado-python/package.json index 0428ad3aac..6518a2b0e5 100644 --- a/examples/tornado-python/package.json +++ b/examples/tornado-python/package.json @@ -1,7 +1,7 @@ { "name": "tornado-python", "private": true, - "version": "1.3.10", + "version": "1.3.11", "description": "An example of editing a `perspective-python` server from the browser.", "scripts": { "start": "PYTHONPATH=../../python/perspective python3 server.py", @@ -10,15 +10,15 @@ "keywords": [], "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10", - "@finos/perspective-workspace": "^1.3.10", + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11", + "@finos/perspective-workspace": "^1.3.11", "superstore-arrow": "^1.0.0" }, "devDependencies": { - "@finos/perspective-webpack-plugin": "^1.3.10", + "@finos/perspective-webpack-plugin": "^1.3.11", "npm-run-all": "^4.1.3", "rimraf": "^2.5.2" } diff --git a/examples/tornado-streaming-python/package.json b/examples/tornado-streaming-python/package.json index 477dc54e81..be4f2a67f1 100644 --- a/examples/tornado-streaming-python/package.json +++ b/examples/tornado-streaming-python/package.json @@ -1,7 +1,7 @@ { "name": "tornado-streaming-python", "private": true, - "version": "1.3.10", + "version": "1.3.11", "description": "An example of streaming a `perspective-python` server to the browser.", "scripts": { "start": "PYTHONPATH=../../python/perspective python3 server.py", @@ -10,15 +10,15 @@ "keywords": [], "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10", - "@finos/perspective-workspace": "^1.3.10", + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11", + "@finos/perspective-workspace": "^1.3.11", "superstore-arrow": "^1.0.0" }, "devDependencies": { - "@finos/perspective-webpack-plugin": "^1.3.10", + "@finos/perspective-webpack-plugin": "^1.3.11", "npm-run-all": "^4.1.3", "rimraf": "^2.5.2" } diff --git a/examples/webpack-cross-origin/package.json b/examples/webpack-cross-origin/package.json index dfd2733ada..82d99c9ee4 100644 --- a/examples/webpack-cross-origin/package.json +++ b/examples/webpack-cross-origin/package.json @@ -1,7 +1,7 @@ { "name": "webpack-cross-origin", "private": true, - "version": "1.3.10", + "version": "1.3.11", "description": "An example of using the Perspective Webpack plugin to build a JS file with Webpack.", "scripts": { "start": "npm-run-all -l -p webpack-watch host:app host:bundles", @@ -12,13 +12,13 @@ "keywords": [], "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10" + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11" }, "devDependencies": { - "@finos/perspective-webpack-plugin": "^1.3.10", + "@finos/perspective-webpack-plugin": "^1.3.11", "http-server": "^0.11.1" } } diff --git a/examples/webpack-example/package.json b/examples/webpack-example/package.json index eef3c51c7f..d60ed89ee9 100644 --- a/examples/webpack-example/package.json +++ b/examples/webpack-example/package.json @@ -1,7 +1,7 @@ { "name": "webpack-example", "private": true, - "version": "1.3.10", + "version": "1.3.11", "description": "An example app built using `@finos/perspective-viewer`.", "scripts": { "start": "webpack serve" @@ -9,13 +9,13 @@ "keywords": [], "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10" + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11" }, "devDependencies": { - "@finos/perspective-webpack-plugin": "^1.3.10", + "@finos/perspective-webpack-plugin": "^1.3.11", "css-loader": "^0.28.7", "style-loader": "^0.18.2", "webpack": "^5.14.0", diff --git a/examples/workspace-editing-python/package.json b/examples/workspace-editing-python/package.json index ecc4f885df..d52966a137 100644 --- a/examples/workspace-editing-python/package.json +++ b/examples/workspace-editing-python/package.json @@ -1,7 +1,7 @@ { "name": "workspace-editing-python", "private": true, - "version": "1.3.10", + "version": "1.3.11", "description": "An example app demonstrating client/server editing, built using `@finos/perspective-workspace` and `perspective-python`.", "scripts": { "start": "yarn webpack && yarn start:server", @@ -12,14 +12,14 @@ "keywords": [], "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10", - "@finos/perspective-workspace": "^1.3.10" + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11", + "@finos/perspective-workspace": "^1.3.11" }, "devDependencies": { - "@finos/perspective-webpack-plugin": "^1.3.10", + "@finos/perspective-webpack-plugin": "^1.3.11", "http-server": "^0.11.1", "npm-run-all": "^4.1.3", "rimraf": "^2.5.2" diff --git a/examples/workspace/package.json b/examples/workspace/package.json index 655555b79d..942359a212 100644 --- a/examples/workspace/package.json +++ b/examples/workspace/package.json @@ -1,7 +1,7 @@ { "name": "workspace", "private": true, - "version": "1.3.10", + "version": "1.3.11", "description": "An example app built using `@finos/perspective-workspace`.", "scripts": { "start": "webpack serve --open", @@ -10,14 +10,14 @@ "keywords": [], "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10", - "@finos/perspective-workspace": "^1.3.10" + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11", + "@finos/perspective-workspace": "^1.3.11" }, "devDependencies": { - "@finos/perspective-webpack-plugin": "^1.3.10", + "@finos/perspective-webpack-plugin": "^1.3.11", "http-server": "^0.11.1", "npm-run-all": "^4.1.3", "rimraf": "^2.5.2" diff --git a/lerna.json b/lerna.json index c6152db33e..d31ce9ce3c 100644 --- a/lerna.json +++ b/lerna.json @@ -6,5 +6,5 @@ ], "npmClient": "yarn", "useWorkspaces": true, - "version": "1.3.10" + "version": "1.3.11" } diff --git a/packages/perspective-cli/package.json b/packages/perspective-cli/package.json index 423cfc6501..9b131741a6 100644 --- a/packages/perspective-cli/package.json +++ b/packages/perspective-cli/package.json @@ -1,6 +1,6 @@ { "name": "@finos/perspective-cli", - "version": "1.3.10", + "version": "1.3.11", "description": "Perspective.js CLI", "main": "src/js/index.js", "publishConfig": { @@ -25,10 +25,10 @@ "perspective": "perspective" }, "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10", + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11", "commander": "^2.19.0", "puppeteer": "^10.2.0" } diff --git a/packages/perspective-jupyterlab/package.json b/packages/perspective-jupyterlab/package.json index 41be01bccb..3c50d9c3af 100644 --- a/packages/perspective-jupyterlab/package.json +++ b/packages/perspective-jupyterlab/package.json @@ -1,6 +1,6 @@ { "name": "@finos/perspective-jupyterlab", - "version": "1.3.10", + "version": "1.3.11", "description": "A Jupyterlab extension for the Perspective library, designed to be used with perspective-python.", "files": [ "dist/**/*", @@ -31,18 +31,18 @@ "version": "yarn build" }, "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", - "@finos/perspective-viewer-d3fc": "^1.3.10", - "@finos/perspective-viewer-datagrid": "^1.3.10", + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", + "@finos/perspective-viewer-d3fc": "^1.3.11", + "@finos/perspective-viewer-datagrid": "^1.3.11", "@jupyter-widgets/base": "^4.1.0", "@jupyterlab/application": "^3.3.2", "@lumino/application": "^1.27.0", "@lumino/widgets": "1.31.1" }, "devDependencies": { - "@finos/perspective-build": "^1.3.10", - "@finos/perspective-test": "^1.3.10" + "@finos/perspective-build": "^1.3.11", + "@finos/perspective-test": "^1.3.11" }, "jupyterlab": { "extension": true diff --git a/packages/perspective-viewer-d3fc/package.json b/packages/perspective-viewer-d3fc/package.json index f9cf411489..ce35f83055 100644 --- a/packages/perspective-viewer-d3fc/package.json +++ b/packages/perspective-viewer-d3fc/package.json @@ -1,6 +1,6 @@ { "name": "@finos/perspective-viewer-d3fc", - "version": "1.3.10", + "version": "1.3.11", "description": "Perspective.js D3FC Plugin", "unpkg": "./dist/umd/perspective-viewer-d3fc.js", "jsdelivr": "./dist/umd/perspective-viewer-d3fc.js", @@ -53,8 +53,8 @@ "author": "", "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", "chroma-js": "^1.3.4", "d3": "^7.1.1", "d3-svg-legend": "^2.25.6", @@ -62,6 +62,6 @@ "gradient-parser": "1.0.2" }, "devDependencies": { - "@finos/perspective-test": "^1.3.10" + "@finos/perspective-test": "^1.3.11" } } diff --git a/packages/perspective-viewer-datagrid/package.json b/packages/perspective-viewer-datagrid/package.json index 496a99a4ed..dbd18582a2 100644 --- a/packages/perspective-viewer-datagrid/package.json +++ b/packages/perspective-viewer-datagrid/package.json @@ -1,6 +1,6 @@ { "name": "@finos/perspective-viewer-datagrid", - "version": "1.3.10", + "version": "1.3.11", "description": "Perspective datagrid plugin based on `regular-table`", "unpkg": "dist/umd/perspective-viewer-datagrid.js", "main": "dist/umd/perspective-viewer-datagrid.js", @@ -40,13 +40,13 @@ "author": "", "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", - "@finos/perspective-viewer": "^1.3.10", + "@finos/perspective": "^1.3.11", + "@finos/perspective-viewer": "^1.3.11", "chroma-js": "^1.3.4", "regular-table": "=0.5.6" }, "devDependencies": { - "@finos/perspective-build": "^1.3.10", - "@finos/perspective-test": "^1.3.10" + "@finos/perspective-build": "^1.3.11", + "@finos/perspective-test": "^1.3.11" } } diff --git a/packages/perspective-viewer-datagrid/src/js/plugin.js b/packages/perspective-viewer-datagrid/src/js/plugin.js index 31e085b6ca..d91453c69e 100644 --- a/packages/perspective-viewer-datagrid/src/js/plugin.js +++ b/packages/perspective-viewer-datagrid/src/js/plugin.js @@ -139,7 +139,10 @@ export class PerspectiveViewerDatagridPluginElement extends HTMLElement { } async draw(view) { - await this.activate(view); + if (this.parentElement) { + await this.activate(view); + } + if (!this.isConnected || this.offsetParent == null) { return; } diff --git a/packages/perspective-webpack-plugin/package.json b/packages/perspective-webpack-plugin/package.json index 169a3746f8..face5461a4 100644 --- a/packages/perspective-webpack-plugin/package.json +++ b/packages/perspective-webpack-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@finos/perspective-webpack-plugin", - "version": "1.3.10", + "version": "1.3.11", "description": "Perspective.js Webpack Plugin", "main": "index.js", "publishConfig": { diff --git a/packages/perspective-workspace/package.json b/packages/perspective-workspace/package.json index 13af3dc643..e197bfa8eb 100644 --- a/packages/perspective-workspace/package.json +++ b/packages/perspective-workspace/package.json @@ -1,6 +1,6 @@ { "name": "@finos/perspective-workspace", - "version": "1.3.10", + "version": "1.3.11", "description": "Perspective Workspace", "files": [ "dist/**/*", @@ -43,14 +43,14 @@ "author": "", "license": "Apache-2.0", "dependencies": { - "@finos/perspective-viewer": "^1.3.10", + "@finos/perspective-viewer": "^1.3.11", "@lumino/algorithm": "1.9.1", "@lumino/commands": "1.20.0", "@lumino/widgets": "1.31.1", "lodash": "^4.17.4" }, "devDependencies": { - "@finos/perspective-build": "^1.3.10", - "@finos/perspective-test": "^1.3.10" + "@finos/perspective-build": "^1.3.11", + "@finos/perspective-test": "^1.3.11" } } diff --git a/packages/perspective/package.json b/packages/perspective/package.json index 3a4c7d1884..10ecd35637 100644 --- a/packages/perspective/package.json +++ b/packages/perspective/package.json @@ -1,6 +1,6 @@ { "name": "@finos/perspective", - "version": "1.3.10", + "version": "1.3.11", "description": "Perspective.js", "repository": { "type": "git", @@ -64,8 +64,8 @@ "ws": "^6.1.2" }, "devDependencies": { - "@finos/perspective-build": "^1.3.10", - "@finos/perspective-cpp": "^1.3.10", + "@finos/perspective-build": "^1.3.11", + "@finos/perspective-cpp": "^1.3.11", "jsverify": "^0.8.4", "lodash": "^4.17.4", "moment": "^2.19.1", diff --git a/python/perspective/package.json b/python/perspective/package.json index 825f044592..cd3fdcbb6c 100644 --- a/python/perspective/package.json +++ b/python/perspective/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "perspective-python-internal", - "version": "1.3.10", + "version": "1.3.11", "scripts": { "bench": "python3 bench/perspective_benchmark.py", "docs": "python3 docs/generate.py" diff --git a/python/perspective/perspective/core/_version.py b/python/perspective/perspective/core/_version.py index 44b741494e..6189036574 100644 --- a/python/perspective/perspective/core/_version.py +++ b/python/perspective/perspective/core/_version.py @@ -1,2 +1,2 @@ -__version__ = "1.3.10" +__version__ = "1.3.11" major_minor_version = "1.3" diff --git a/rust/perspective-viewer/package.json b/rust/perspective-viewer/package.json index ae431c4cb9..7b6287a7a7 100644 --- a/rust/perspective-viewer/package.json +++ b/rust/perspective-viewer/package.json @@ -1,6 +1,6 @@ { "name": "@finos/perspective-viewer", - "version": "1.3.10", + "version": "1.3.11", "description": "The `` Custom Element, frontend for Perspective.js", "repository": { "type": "git", @@ -54,7 +54,7 @@ "access": "public" }, "dependencies": { - "@finos/perspective": "^1.3.10", + "@finos/perspective": "^1.3.11", "fflate": "^0.7.2", "mobile-drag-drop-shadow-dom": "3.0.0", "monaco-editor": "0.24.0" @@ -63,6 +63,6 @@ "monaco-editor-webpack-plugin": "3.1.0" }, "devDependencies": { - "@finos/perspective-test": "^1.3.10" + "@finos/perspective-test": "^1.3.11" } } diff --git a/scripts/publish_js.js b/scripts/publish_js.js index a6bb822ee0..c34f878ca9 100644 --- a/scripts/publish_js.js +++ b/scripts/publish_js.js @@ -33,8 +33,8 @@ try { --unreleased-only --base CHANGELOG.md --output CHANGELOG.md - --unreleased-label=v1.3.10 - --since-tag=v1.3.9 + --unreleased-label=v1.3.11 + --since-tag=v1.3.10 `; execute`git add CHANGELOG.md`; diff --git a/tools/perspective-build/package.json b/tools/perspective-build/package.json index 6a3701c671..f05d5654e6 100644 --- a/tools/perspective-build/package.json +++ b/tools/perspective-build/package.json @@ -1,6 +1,6 @@ { "name": "@finos/perspective-build", - "version": "1.3.10", + "version": "1.3.11", "description": "Workspace-wide scripts for Perspective build, mainly esbuild and webpack configuration", "private": true, "author": "", diff --git a/tools/perspective-build/worker.js b/tools/perspective-build/worker.js index 9967dd87ca..8bfd8f10fb 100644 --- a/tools/perspective-build/worker.js +++ b/tools/perspective-build/worker.js @@ -134,7 +134,7 @@ exports.WorkerPlugin = function WorkerPlugin(inline) { export const initialize = async function () { const code = await code_promise; if (window.location.protocol.startsWith("file")) { - return run_single_threaded(code, "file:// protocol does not support Web Workers"); + console.warn(code, "file:// protocol does not support Web Workers"); } try { @@ -142,6 +142,7 @@ exports.WorkerPlugin = function WorkerPlugin(inline) { const url = URL.createObjectURL(blob); return new Worker(url, {type: "module"}); } catch (e) { + console.warn("Failed to instantiate worker, falling back to single-threaded runtime", e); return run_single_threaded(code, e); } }; diff --git a/tools/perspective-test/package.json b/tools/perspective-test/package.json index fcd148cc52..bd5187ded8 100644 --- a/tools/perspective-test/package.json +++ b/tools/perspective-test/package.json @@ -1,6 +1,6 @@ { "name": "@finos/perspective-test", - "version": "1.3.10", + "version": "1.3.11", "description": "Test utility based on perspective", "private": true, "main": "src/js/index.js", @@ -21,7 +21,7 @@ "author": "", "license": "Apache-2.0", "dependencies": { - "@finos/perspective": "^1.3.10", + "@finos/perspective": "^1.3.11", "xml-formatter": "2.4.0" } }