Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@finos/perspective

finos22.5kApache-2.03.6.1TypeScript support: included

This crate provides Rust bindings to the JavaScript Perspective API.

readme

perspective

This crate provides Rust bindings to the JavaScript Perspective API.

changelog

v3.6.1

30 April 2025 (Full changelog)

Fixes

  • Fix line chart alt Y axis on zoom #2986

v3.6.0

24 April 2025 (Full changelog)

Breaking

  • Fix limit overflow bug #2983

v3.5.1

11 April 2025 (Full changelog)

Misc

  • Add vscode settings to enable prettier #2959
  • AsyncTable support in widget #2974

v3.5.0

10 April 2025 (Full changelog)

Features

  • Add API for keyboard copy from perspective-viewer-datagrid #2975
  • Update limit behavior to use incrementing index (fix last_by_index aggregate) #2964

Fixes

  • Fix support for browsers lacking the SharedWorker API #2978
  • Fix chart bug which rounds subsecond ticks #2971
  • Fix export-to-html in perspective-viewer #2960

Misc

  • Fix parallel_for and cleanup commented out code. #2972

v3.4.3

20 March 2025 (Full changelog)

Fixes

  • Fix date filters in perspective-{select,click} events #2957
  • Invalidate viewer session before loading table #2958

v3.4.2

14 March 2025 (Full changelog)

Fixes

  • Add timeouts to pytest, fix jupyterlab error #2952

v3.4.1

10 March 2025 (Full changelog)

Features

  • Add Client::on_hosted_tables_update #2948

Fixes

  • Fix segfault in Python webservers #2943

v3.4.0

6 March 2025 (Full changelog)

Features

  • Add connection error/retry API and UI support #2902
  • Add dedicated Worker, SharedWorker and ServiceWorker support #2936
  • Python AsyncClient and JS ProxySession #2929
  • Quartiles #2930
  • Fix View::to_polars and add LargeUTF8 Arrow dictionary support #2924

Fixes

  • Show appropriate date when date is part of grouped data on chart. #2857

Misc

  • Shrink d3fc bundle #2934

v3.3.4

9 February 2025 (Full changelog)

Fixes

  • Fix datagrid scroll drift on resize #2919

v3.3.3

4 February 2025 (Full changelog)

Misc

  • Heap Profiling Tooling #2913
  • Fix API docs #2910
  • Support for pyodide 0.27.1, including pyarrow + pandas #2901

v3.3.2

1 February 2025 (Full changelog)

Features

  • Fix overallocations #2909

v3.3.1

26 January 2025 (Full changelog)

Fixes

  • Fix date formatting for perspective-viewer-datagrid plugin #2904

v3.3.0

14 January 2025 (Full changelog)

Breaking

  • Unbundled JavaScript builds #2890

Misc

  • Add build support for Memory64 #2888

v3.2.1

23 December 2024 (Full changelog)

Features

  • Better datetime/date string parsing performance #2885
  • Add min and max aggregates for date and datetime columns #2884

Fixes

  • Fix ViewConfig serialization for internal arrow types #2883
  • Fix memory corruption on filter text overflow #2882

Misc

  • Fix examples and cleanup CSS #2886

v3.2.0

9 December 2024 (Full changelog)

Features

Fixes

  • Fix duplicate columns #2872

v3.1.8

2 December 2024 (Full changelog)

Fixes

  • fix treemap rendering issue in firefox #2813
  • Allow for passthrough of event loop in psp webserver handlers #2829
  • Fix workspace dark theme, theme render bug #2864

v3.1.7

30 November 2024 (Full changelog)

Fixes

  • Remove workspace-layout-update event debounce #2862

Misc

  • Add some information on JSON input formats #2856

v3.1.6

18 November 2024 (Full changelog)

Features

  • Support input/output to/from polars via python (not native rust) #2849

Fixes

  • Fix empty Arrow Table constructor #2854

Misc

  • Check pyarrow import and make clear(er) error message #2848

v3.1.5

15 November 2024 (Full changelog)

Features

  • Relax Table schema constructor #2850

Fixes

  • Fix perspective-workspace restore call on errored table #2851
  • Fix integer cast expression function #2842
  • Import importlib metadata submodule #2841

Misc

  • Update ExprTk #2825
  • sdist licensing follow ups #2843

v3.1.4

7 November 2024 (Full changelog)

Features

  • Add back Table and View exports, make constructors throw like pyarrow.Table #2831

Fixes

  • Fixed workspace persistence structure symmetry #2833
  • Fix concurrent update segfault #2835
  • Fix plugin switch #2828

Misc

  • Fix failed color range update #2823
  • CI sdist fixes, port conda patch, fix ODR violation #2826

v3.1.3

31 October 2024 (Full changelog)

Fixes

  • Fix perspective-python sdist and add sdist tests to CI #2817
  • Fix workspace resize and related bugs #2808
  • fix aiohttp disconnect error on websockets #2806
  • Missing tooltip data #2753
  • Escape esbuild plugin's symbol replacement. #2807
  • Add aarch64 Mac runners to test_python, restore PSP_ARCH dev behavior #2802

v3.1.2

22 October 2024 (Full changelog)

Fixes

  • Fix docs, inline builds, export, and workspace CSS #2800
  • arrow: Fix cross-compiling errors on macos #2798

v3.1.1

18 October 2024 (Full changelog)

Fixes

  • <TAB> key press inserts '\t' character in code editor as indentation. #2779
  • Column type icon matches the datatype type of the field in column selectors (where, group by, sortby, filter) #2780
  • Fix filter values for non-interned strings #2784

Misc

  • Port Conda patches, use vendored boost #2793
  • Update documentation for 3.x #2778

v3.1.0

23 September 2024 (Full changelog)

Breaking

  • Python API changes from community #2754

Features

  • Allow bytes and string for JSON/CSV input data with format option #2763

Fixes

  • Fix cancellable methods in perspective-viewer #2755

Misc

  • Update README.md, examples and build dependencies #2762
  • Add Windows build for perspective-rs to CI #2759
  • Add Python benchmark suite for 3.x #2761
  • Upgrade Apache Arrow C++ to 17.0.0 #2749
  • Emscripten wheel fixes #2739

v3.0.3

3 September 2024 (Full changelog)

Fixes

  • Fix perspective crate, link perspective-server as static lib #2734

Misc

  • Support packaging in CI #2735

v3.0.2

30 August 2024 (Full changelog)

Fixes

  • Fix link error in emscripten wheel #2726
  • Fix PerspectiveTornadoHandler misnamed close() #2720
  • fix: Doctype in html export #2690

v3.0.1

25 August 2024 (Full changelog)

Features

  • Stringify Arrow lists #2700
  • Zstd decompression for arrows #2717
  • Better Timestamp Parsing #2713

Misc

  • Fix docs site serialized loading, docs.rs gen #2718

v3.0.0

23 August 2024 (Full changelog)

Breaking

  • Perspective Virtual API (Python) #2625
  • Perspective Virtual API (JavaScript) #2615

Features

  • Add Pyodide support and split Rust/C++ builds for Python wheel #2707
  • Draw 0 axis prominently #2698
  • Calculate group_by in parallel #2701
  • PerspectiveWidget support for new Python API #2658
  • Use ABI3 for perspective-python shared library #2661
  • Add region, column and row selection modes to Perspective Datagrid #2618

Fixes

  • Fix missing icons #2712
  • Fix Windows JupyterLab packaging #2705
  • Fix Python sdist, update docs, add lint to CI #2702

Misc

  • Update docusaurus website and examples #2708
  • Update docs #2706
  • New status indicator #2692
  • Docs and examples update for new API #2659

v2.10.1

23 May 2024 (Full changelog)

Fixes

  • Fix delete() Python async call not resolving #2610
  • Fix intermittent to_arrow() error in Python #2608
  • Fix compatibility with other MSVC versions by explicitly converting to string #2570

Misc

v2.10.0

25 March 2024 (Full changelog)

Features

  • Debug component #2574
  • Expression editor & filter UX updates #2572

v2.9.0

12 March 2024 (Full changelog)

Breaking

  • Formatting for float and integer columns via Intl.NumberFormat #2563

Features

  • Localization Support #2565

Fixes

  • Fix get_hosted_table_names in Python client #2551
  • Fix Candlestick & OHLC charts #2562

Misc

  • Update Pyodide to version 0.25.0 #2547

v2.8.1

26 February 2024 (Full changelog)

Fixes

  • Fix split_by with date/datetime columns #2545

Misc

  • Update to LLVM 17 & fix Python/Windows build #2546
  • Add clang-format, clang-tidy and clangd support for C++ development #2541
  • Add Docs Tests #2502
  • Add workspaceFolder to cargo_target_dir #2537

v2.8.0

16 February 2024 (Full changelog)

Features

  • New color selector component #2536
  • Render table in the shadow DOM for @finos/perspective-viewer-datagrid #2482
  • Add column edit highlight to perspective-viewer-datagrid #2486

Fixes

  • Bugfix - De-aggregating doesn't change column style type #2535
  • A few CSS fixes for regular-table in shadow DOM #2526
  • Settings panel width is inconsistent for columns moved to Config #2527
  • Fix datagrid scroll performance regression via regular-table upgrade #2498
  • Fix output scrolling in Jupyter when perspective-python is installed #2495
  • Fix datagrid cell pulse styling #2489
  • Update ipynb examples with new expression syntax #2463
  • Fix Jupyterlab Widget Save/Restore Symmetry #2465

Misc

  • Add yew-fmt #2533
  • Expression Names in Column Settings Header + Refactors #2459
  • Update http-server examples dependency #2505
  • Use a boost mirror #2484
  • Refactor How Column Style Components Are Selected #2443
  • Remove docs build from CI #2483
  • Add starting support for Typescript in perspective-viewer-d3fc package #2432
  • Fix cargo features #2481
  • Fix docs site #2462

v2.7.1

29 November 2023 (Full changelog)

Features

  • Drag/drop UX for invalid positions #2456

Fixes

  • Fix perspective-click event for "Treemap" plugin #2452
  • Fix 2.7.0 Migration #2444
  • Better CSS build #2451

Misc

  • Fix Blocks build script execution #2454

v2.7.0

20 November 2023 (Full changelog)

Breaking

  • X/Y Scatter Symbol Serialization as Dictionary #2429
  • Expressions API Updates #2399

Features

  • API Versioning + Migration #2430
  • PerspectiveWidget HTML export support in Jupyter #2418
  • Self-extracting WebAssembly binaries #2428

Fixes

  • Update expressions format default #2438
  • Serialize Expressions to Objects #2436
  • Column Settings Panel UI Tweaks #2421
  • Add support for StringDtype (fixes #1237) #2319

Misc

  • Update examples #2433
  • Fix expression alias UX/API #2431
  • Add CI requirements update script #2422
  • Upgrade pyodide compatibility to v0.24.1 #2402

v2.6.1

1 November 2023 (Full changelog)

Features

  • Add setAutoPause() method #2411

Fixes

  • Fix scroll panel height calculation bug #2404
  • Fix in and not in filter UI bug #2403

v2.6.0

20 October 2023 (Full changelog)

Features

  • X/Y scatter multi-chart #2395
  • Symbols column in X/Y Scatter plot #2394
  • New themes Gruvbox and Dracula + UI performance improvements #2393
  • Add index(), col(), and vlookup() to ExprTk #2374
  • Datagrid rows restyle #2383

Fixes

  • Column selector style updates #2385
  • fix gradient values #2384

v2.5.2

8 October 2023 (Full changelog)

Features

  • Move styles to sidebar #2366

Fixes

  • fix some viewer bugs #2371

Misc

  • Fix tests #2380
  • Localize NYPD, Magic and Olympics examples #2375

v2.5.1

31 August 2023 (Full changelog)

Features

  • Datagrid column header configuration UX update #2351

Fixes

  • Fix filter number validation with trailing zeroes #2353
  • Fix Jupyter plugin resize behavior #2352

Misc

  • Update webpack dev server configuration options, fixes for perspective 2.0+ #2350
  • Fix binder installation to not manage dependencies seperately #2342

v2.5.0

14 August 2023 (Full changelog)

Breaking

  • LZ4 compression for Apache Arrow #2339

Misc

  • prune win 2019 from ci, switch over to windows-2022 only #2333

v2.4.0

9 August 2023 (Full changelog)

Breaking

  • Add to_columns_string() C++ JSON API #2315

Fixes

  • Fix TypeScript 5 moduleResolution: "bundler" support #2289
  • Fix update() with expressions overcalc #2328
  • Fix over-calculation in when loading data in perspective-viewer #2323

Misc

  • Pin Python dependency versions #2327
  • Fix build.rs escaping OUT_DIR #2313

v2.3.2

20 July 2023 (Full changelog)

Fixes

  • Fix expression column aggregate calculation with group_by after remove() #2311
  • Fix empty column name validation in ExprTk editor #2302
  • Fix XY-Scatter Plots Colors - Rebased #2303

Misc

  • Publish benchmarks #2310
  • Add GitHub Releases #2294

v2.3.1

4 July 2023 (Full changelog)

Features

  • Add custom format mode to datetime columns in Datagrid #2286
  • Add get_hosted_table_names to js and python server apis. #2281

Fixes

  • Fix racing tests. #2290
  • Fix python segfault in multi-threaded execution #2283
  • Fix OSX arm64 wheels #2272
  • Write custom parser for us locale time string format #2262

Misc

  • Fix build regression in python dependency #2285
  • Fix bug preventing blocks example server from starting. #2282
  • Fix bad CSS headers and update formatted CSS test snapshots #2280
  • Remove accidental test.only, ensure it never happens again #2276
  • Add API to give number of views into table #2267

v2.3.0

20 June 2023 (Full changelog)

Breaking

  • Thread-safe python readers #2261

Fixes

  • Fix workspace save() w/settings #2257

Misc

  • Validate installed emsdk version #2256
  • Allow pandas~=2.0.0 to be installed #2244

v2.2.1

4 June 2023 (Full changelog)

Features

Fixes

  • Fix CSS positioning of expression panel in workspace #2243

v2.2.0

31 May 2023 (Full changelog)

Features

  • Moving Expression Editor modal to a sidebar. #2239

Fixes

  • Disallow non-1 multiplicity for bucketing weeks and days #2238

Misc

  • Developer QoL fixes #2240
  • Add Python 3.11 support #2234
  • Add skip test: updatewith_missing_or_null_values #2230

v2.1.4

26 May 2023 (Full changelog)

Fixes

  • Fix median miscalculation for even-sized item list #2224
  • Fix a bug when calling load() with a rejected promise #2236

v2.1.3

17 May 2023 (Full changelog)

Misc

v2.1.2

16 May 2023 (Full changelog)

Misc

  • Public perspective-viewer components #2222

v2.1.1

7 May 2023 (Full changelog)

Fixes

  • Workspace bug fixes #2218
  • Fix windows python builds #2217
  • Fix sum aggregate for integer type expression columns #2216

v2.1.0

6 May 2023 (Full changelog)

Breaking

  • Remove umd builds from all packages #2211

Features

  • Update perspective-workspace design #2214
  • Add scalar factors to Exprtk bucket() #2210

Fixes

  • Coerce to float64 when user tries to pass in float32 as float64 - fixes #1717 #2189
  • Handle zero values in line plots #2191
  • pass through websocket connection arguments in python websocket clients, normalize max message size and ensure set for aiohttp #2187

Misc

  • rename context menu names for perspective renderers in jupyterlab #2209
  • New playwright test suite #2201

v2.0.1

10 April 2023 (Full changelog)

Fixes

  • Fix drag/drop behavior for duplicate group/split columns #2177
  • Fix expression editor bug with escaped characters in strings #2178

Misc

  • Better logging and build for rust/wasm #2179
  • Reorder examples on README.md #2176
  • link for dark mode logo in readme #2166

v2.0.0

4 April 2023 (Full changelog)

Breaking

  • Distribute prebuilt JupyterLab extension / Notebook Classic extension (2023 edition) #2136
  • UI Redesign #2110

Features

  • Auto-complete text field column selectors #2156

Fixes

  • Gracefully handle websocket errors on python side #2157
  • Fix ping loop state, make node server close method async #2151
  • Fix autocomplete behavior for in and not in filter ops #2142
  • fixed filter keyword #2124

Misc

  • Run yarn cache path commands in bash shell #2163
  • Fixes for docs site #2162
  • A11y front page labels #2161
  • Fixed deprecated features in GitHub actions #2141
  • Specify that Yarn v1 must be used in development docs. #2143
  • Miscellaneous cleanup from big Jupyter prebuilt overhaul, python 3.7 deprecation, and various other accumulated but unfixed issues #2144
  • Implement title field in PerspectiveWidget #2123
  • New demo market #2128
  • Fix readme logo link #2129
  • Update docs/branding #2122
  • vendor all C++ dependencies at build time, fixes #2075, closes #2076, #2116
  • fix icon filenames for windows #2118
  • New icons #2111

v1.9.4

22 February 2023 (Full changelog)

Features

  • Update ExprTk package to 0.0.2 tag #2103

Fixes

  • Invert heatmap y-axis #2113
  • Fix legend on X/Y line chart #2107
  • Update dependencies to be compatible with jupyterlab 3.6.1 #2101

Misc

  • Update contributing guidelines #2077
  • Updated README.md #2098
  • Update charting tests to cover more HTML #2092

v1.9.3

19 January 2023 (Full changelog)

Features

  • Add @finos/perspective-viewer-openlayers plugin to CLI package #2087

Misc

  • Fix script errors in publish and build commands #2088

v1.9.2

18 January 2023 (Full changelog)

Fixes

  • Fix regression in perspective-cli #2086

Misc

v1.9.1

10 January 2023 (Full changelog)

Features

  • Add macOS arm wheels to build matrix #2072

Fixes

  • Fix perspective-cli and add test #2079

Misc

  • Add default .vscode project #2074
  • Actually copy readme this time, fixes incomplete #1991 #2071
  • Fix test regression in chrome #2070

v1.9.0

29 December 2022 (Full changelog)

Breaking

  • Add Python 3.10 support, deprecate 3.7 #2065

Fixes

  • Improved point label position #2067

Misc

  • Fix CSS compilation for @finos/perspective-jupyterlab #2069
  • Fix CSS compilation to not inline http resources #2068
  • Cleanup examples #2057
  • Move examples to gh-pages site #2054
  • Fix copypasta in code of conduct, fix capitalization in readme #2053
  • Update README gallery #2044

v1.8.1

10 December 2022 (Full changelog)

Features

  • Vec3 functions for ExprTK and new example "Ray Casting" #2042

Fixes

  • Fix parsing of bug related to d3fc splitting selection data (redux of #2039) #2043
  • Fix CSS and Scatter Chart positioning bugs #2035

v1.8.0

5 December 2022 (Full changelog)

Features

  • Add labels to Scatter plot points. #2033

Fixes

  • Resize labels to avoid overlap #2034
  • Fix Default Plugin Order #2028

Misc

  • Update docusaurus footer with correct link #2015
  • remove reference to gitter from contributing docs #2025
  • Fix cargo src rules, publish to crates.io #2019

v1.7.2

25 November 2022 (Full changelog)

Misc

  • Upgrade to Yew 0.20.0 #2018
  • Cleanup items #2012
  • Re-add secondary dependency as primary dependency to fix python tests #2013
  • accidentally copying license as readme when disting python #1991

v1.7.1

7 October 2022 (Full changelog)

Misc

  • Move default plugin to WASM #1986
  • Bump dependencies when installing and building python, drop support for manylinux2010 #1984

v1.7.0

1 October 2022 (Full changelog)

Features

  • Replace monaco-editor #1971

Fixes

  • Expression Editor autocomplete bug fixes #1982
  • Attempt to instance worker before giving up #1980

Misc

  • increment black to latest version #1977
  • Better rust api #1960

v1.6.5

26 August 2022 (Full changelog)

Fixes

  • Fix column style menus for string & date(time) #1950

v1.6.4

22 August 2022 (Full changelog)

Fixes

  • Add not in filter to valid string type filters in &lt;perspective-viewer&gt; #1945
  • Upper bound for ipywidgets #1944
  • Fix Sunburst chart infinite loop bug #1939

Misc

  • Per-component CSS model #1943

v1.6.3

10 August 2022 (Full changelog)

Features

  • Add date and datetime column config #1932

Fixes

  • Don't calculate unused expressions #1933

Misc

  • Refactor @finos/perspective-viewer-datagrid #1927
  • Fix python _requires_python publish script on windows #1929

v1.6.2

2 August 2022 (Full changelog)

Fixes

  • Fix Python bug in async mode #1926
  • Fix app export #1921

Misc

  • Cleanup up python requirements installation in CI, remove some dangling azure references, refresh python README #1917

v1.6.1

27 July 2022 (Full changelog)

Features

  • Add zoom persistence to OpenLayers plugin #1920
  • Publish @finos/perspective-esbuild-plugin #1918

Fixes

  • Fix "inline mode" build #1919

Misc

  • Make perspective-viewer crate importable for external wasm projects #1916
  • Fix publish issues #1915

v1.6.0

19 July 2022 (Full changelog)

Features

  • Add @finos/perspective-viewer-openlayers plugin #1882
  • Add categories to plugin selector #1908

Fixes

  • Add migrate support for datagrid plugin_config API #1914
  • Fix webpack plugin compat with emsdk single-link build #1904

Misc

  • New GitHub Pages site #1912
  • Fix Python sdist CI build #1907
  • Fix python CI builds for all linux variants #1905
  • Expression Docs #1903

v1.5.1

8 July 2022 (Full changelog)

Features

  • Add pulse numeric column background mode #1895
  • Split foreground and background numeric column color modes #1889

Fixes

  • Fix expand/collapse on first row of ctx2 #1887
  • Fix gradient bounds calc #1890
  • Expand/collapse on entire group cell, rather than just button #1888

Misc

  • Remove custom docker images #1893
  • Fix jlab tests to use local packages #1891
  • GHA default (remove azure) #1854

v1.5.0

4 July 2022 (Full changelog)

Breaking

  • Remove Python 3.6 support #1867

Fixes

  • Fix small memory leak and validate package.json with CI cache #1881

Misc

  • Pin tornado to 6.1 in CI #1886
  • Changed default color label style for charts with multiple secondary axii #1883
  • Update emsdk to 3.1.14 #1866

v1.4.1

22 June 2022 (Full changelog)

Features

  • Add python webserver handlers and clients for starlette (fastapi) and aiohttp #1828

Fixes

  • Fix set_threadpool_size(n) for n == 1 #1852
  • Reimplement editable for PerspectiveWidget in JupyterLab to take into account the latest changes #1850
  • Fix @finos/perspective-viewer-d3fc chart-specific exports #1847

Misc

  • Remove unused watch commands from viewer-d3fc and viewer-datagrid, remove dependabot, dont trigger full build on merge to master #1859
  • Simplify and uplift binder to latest supported python, perspective wheel, and dependency set #1855
  • Move CI/CD from Azure Pipelines to GitHub Actions #1808
  • Make PerspectiveViewerElement rust type usable from non-wasm-abi #1846
  • Include column name in error log for arrow filling #1841
  • ExprTK/Perspective Documentation #1845

v1.4.0

6 June 2022 (Full changelog)

Breaking

  • Fix exports field for Node.js 16 compatibility #1838

Fixes

  • Fix scrolling in Chrome 102 #1837

Misc

  • fix bug in setup.js where extra set of quotes prevents initial build #1829
  • fix cmake build error when install under virtualenv #1779
  • Fix jupyterlab test timeouts #1823
  • prune 2 more python2 references #1811
  • remove duplicate steps #1815
  • bump arrow version to 8.0.0 #1816

v1.3.13

13 May 2022 (Full changelog)

Fixes

  • Fix export-to-html #1806
  • Make toggle-menu more responsive under load #1804

Misc

  • Fix jest timeouts for jupyterlab #1805

v1.3.12

9 May 2022 (Full changelog)

Features

  • Support autocomplete for IN filter type #1798

Fixes

  • Fix restore() error #1803

v1.3.11

1 May 2022 (Full changelog)

Features

  • Add support for LargeUtf8 arrow column type #1796

Fixes

  • Fix datagrid error when resetThemes() is called while hidden #1795
  • Allow attempt to create workers from file protocol for e.g. electron #1794
  • Fix sum aggregate to force re-agg for expression columns #1793

v1.3.10

26 April 2022 (Full changelog)

Fixes

  • Remove 'treemaps' persistent token for d3fc plugin #1789

v1.3.9

25 April 2022 (Full changelog)

Fixes

  • Fix perspective-workspace detach error #1788
  • Fix spurious logging #1785

v1.3.8

18 April 2022 (Full changelog)

Fixes

  • Fix perspective-workspace webpack compat #1784

v1.3.7

18 April 2022 (Full changelog)

Features

  • perspective-workspace Context Menu Update #1783

Misc

  • Upgrade yew #1776
  • Add Github dark mode logo to README.md #1782
  • Make toolbar icons configurable #1767

v1.3.6

17 March 2022 (Full changelog)

Features

  • Add extra empty column indicator when columns can be appended #1770

Fixes

  • Fix tree column override width persistence in perspective-viewer-datagrid #1772

Misc

  • Fix --debug flag for real this time #1769
  • Fix debug build script #1766

v1.3.5

14 March 2022 (Full changelog)

Fixes

  • Fix JLab settings flicker #1762
  • Export perspective-viewer-datagrid types #1759

Misc

  • Allow more icons to be overridden #1763
  • Rust lint+nightly #1760
  • Fix flatbuffers #1757

v1.3.4

10 March 2022 (Full changelog)

Features

  • Copy menu #1744
  • New aggregates last minus first and high minus low #1742
  • Export .png, .html, .arrow #1740

Fixes

  • D3FC Chart style and bug fixes #1752
  • export perspective-viewer-datagrid plugin customElement and it's typings #1746
  • Fire perspective-config-update event on D3FC legend and axis events #1748
  • Add main field to package json #1745

Misc

  • Disable OSX Python CI #1754
  • Disable Windows builds #1741

v1.3.3

4 March 2022 (Full changelog)

Features

  • Allow @finos/perspective to run in single-threaded mode #1737

Fixes

  • Fix bugs reported from docs site #1733

Misc

v1.3.2

2 March 2022 (Full changelog)

Features

  • Vertical resize for expression editor #1725

Fixes

  • UI small fixes #1731
  • fix: fire config-update evnt on perspective-viewer #1728
  • Fix filtering on string columns containing null #1726

Misc

v1.3.1

25 February 2022 (Full changelog)

Fixes

  • Fix python memory leak in table() #1724

v1.3.0

22 February 2022 (Full changelog)

Breaking

  • Add scroll_lock optional free scroll mode for @finos/perspective-viewer-datagrid #1721

Fixes

  • Virtual column selector #1722

Misc

  • remove defunct IEX Cloud example - replace with Polygon.io stock example #1714
  • Add column-style-checkbox css variables #1715
  • Drag/drop tests #1716

v1.2.0

1 February 2022 (Full changelog)

Breaking

  • Replace row_pivots with group_by, column_pivots with split_by, add convert() migration utility #1709
  • Add settings and theme to perspective-config-update DOM event and PerspectiveWidget python class #1712

Features

  • User-selectable Theme API #1711

Misc

  • Update docs for new theme API #1713

v1.1.1

18 January 2022 (Full changelog)

Fixes

  • Fix bad filter when .update() contains missing string column value #1708
  • Fix async mode segfault on .load() with indexed Arrow #1707
  • Fix perspective-viewer filter dropdown for values with double quotes #1696

Misc

  • Pin flatc to 1.12.1 #1705

v1.1.0

5 January 2022 (Full changelog)

Breaking

  • CSV output rewrite (Arrow/C++) #1692

Features

  • Column style menu for string type columns #1691

Fixes

  • Fix auto-reset when HTMLPerspectiveViewerElement.load() called twice #1695

Misc

  • purge six dependency #1689
  • Reduce CI: Turn off branch builds, only build on PRs to master #1688

v1.0.8

23 December 2021 (Full changelog)

Features

  • 80% reduction in .wasm asset size #1683
  • Use puppeteer for app from CLI #1674

Fixes

  • date and datetime filter bug fixes and support for non-Chrome browsers #1685
  • Fix Treemap zoom when a group level is null #1676

Misc

  • fix wheel build, make extension first to ensure binaries are inlined, then assemble wheel #1679
  • Upgrade Arrow to 6.0.2 #1680
  • Benchmarks update #1681

v1.0.7

13 December 2021 (Full changelog)

Features

  • Preserve expressions on reset (shift+ to force) #1673

Fixes

  • Fix perspective-workspace errors #1675

Misc

  • Build windows wheel every time so its tested #1672

v1.0.6

11 December 2021 (Full changelog)

Features

  • Fix perspective-workspace and add monaco-editor-webpack-plugin compatibility to perspective-webpack-plugin #1662
  • D3FC fast Treemap, fix for non-POSIX time axis, better resize #1660
  • Resizable expression editor #1643

Fixes

  • Fix position: sticky Chrome render bug in perspective-viewer-datagrid #1661
  • Implement getView() #1657

Misc

  • add missing definition for re2 on os x to reenable conda builds #1654

v1.0.5

6 December 2021 (Full changelog)

Fixes

  • D3FC Treemap bug fixes #1652
  • Fix datetime/date/integer/float filter occasionally resetting while typing #1653

v1.0.4

5 December 2021 (Full changelog)

Features

  • Parallelized .wasm download and deferred font loading #1647
  • Add auto-resizing to &lt;perspective-viewer&gt; #1633

Fixes

  • Remove wasm-pack artifacts which interfere with perspective packaging #1651
  • Fix column-selector collapse (inverted) #1650
  • Emit .d.ts declaration files for @finos/perspective-viewer #1649

Misc

  • Overload re2 cmakelists to fix cmake/threads detection issue on conda-forge mac builds, and pin C++ dependency versions #1634
  • [Formatting] Fix mixed tabs/spaces in C++ CMakeLists.txt #1630
  • [Formatting] force line-feed line endings for all text files for easier windows development #1635
  • Update CMakeLists.txt for more thread help on mac for conda #1631
  • Fix Azure windows wheel step #1629

v1.0.3

23 November 2021 (Full changelog)

Fixes

  • Fix partial-updates on tables with limit set for javascript #1624
  • Fix partial-updates on tables with limit set for python #1623
  • PerspectiveWidget() dialog theme fix #1621
  • Add wait_for_table flag to getTable() #1619
  • Fix worker.js cross-origin workaround for CDN #1618

Misc

  • bump windows build for vc 14.2 / vs 16 2019, add macos 11 build for py3.9 #1626
  • add threads explicit on mac #1625
  • Fix publish through practice #1620

v1.0.2

20 November 2021 (Full changelog)

Features

  • More regex functions - find, substring, replace #1598
  • Add Regex functions using Exprtk and RE2 #1596
  • Persist edited expressions and add 'Reset' button #1594

Fixes

  • Fix D3 alt-axis regression #1617

Misc

  • New example #1615
  • Publish script for Python #1613
  • Port to esbuild #1611
  • Upgrade d3fc to 15.2.4 and switch "Heatmap" to use canvas renderer #1599
  • Add ExprTK example fractal #1595

v1.0.1

30 October 2021 (Full changelog)

Features

  • Universal binaries for OSX #1590
  • Drag/drop highlight and in-place column updates #1586

Fixes

  • Fix JupyterLab widget filter traitlet #1593
  • Fix corrupt string results in expressions #1589

Misc

  • Remove TBB #1591
  • swap out JS style versioning in python script #1563
  • Align @lumino versions #1576
  • Bar Rendering bug null sends fix #1569
  • remove deprecated webpack-specific tilde prefix convention #1582
  • Remove python 2 from build and CI scripts #1583
  • fixes #1506 #1581
  • Upgrade Apache Arrow to 5.0.0 #1545
  • Update python classifiers #1579

v1.0.0

12 October 2021 (Full changelog)

Fixes

  • Fix #1566, remove deprecated flags from WASM debug build #1567
  • Fix #1562, fix regressions in PerspectiveWidget #1565

Misc

  • docs for updated perspective-viewer #1574

v1.0.0-rc.2

29 September 2021 (Full changelog)

v1.0.0-rc.1

29 September 2021 (Full changelog)

Fixes

  • Fix python wheel CI #1552

Misc

  • Make /node_modules external to TS #1557

v1.0.0-rc.0

28 September 2021 (Full changelog)

Breaking

  • New &lt;perspective-viewer&gt; #1488

Features

  • Boolean datagrid columns #1553
  • Return booleans from expression comparisons, allow for vectors to be defined in expressions #1548
  • Persistent column widths #1549
  • Boolean column filter controls for &lt;perspective-viewer&gt; #1547
  • Fix M1 (Apple Silicon) build for perspective-python and improve developer docs #1525

Fixes

  • Fix examples #1556
  • Fix expression column button toolbar styling #1555
  • Fix hidden sort aggregate as unique only when sorted on the same axis #1554
  • Fixes bucket() computed function validation #1551
  • Fix 'weighted mean' aggregate support in <perspective-viewer> #1543
  • Fix column section collapse with expressions #1542
  • Fix is (not) null, date, datetime filters #1541
  • Fix workspace filter events #1540
  • Fix docs site and NPM artifact for &lt;perspective-viewer&gt; update #1533
  • Fix drag/drop exclusive cases #1532
  • Re-add getEditPort() and restyleElement() methods #1531
  • Use TypeScript for @finos/perspective-viewer #1530
  • Fix settings key to trigger redraw + container redraw #1529
  • Fix #1505, #998, #1225 - results after remove are correct #1528
  • Fix D3FC chart resize via preserveAspectRatio #1526

Misc

  • add some light sdist tests and upload sdist in CI #1433
  • Upgrade emscripten to 2.0.29 #1539
  • Add docs for &lt;perspective-viewer-plugin&gt; #1538
  • Lint upgrade and remove TypeScript for @finos/perspective-jupyterlab #1537

v0.10.3

31 August 2021 (Full changelog)

Fixes

  • Refactor to_arrow, fix row deltas for pivoted views #1519
  • Fix count aggregate when last aggregate and partial updates are applied #1518

v0.10.2

30 August 2021 (Full changelog)

Fixes

  • Fix support for array-like filter terms #1524
  • Add new aggregates to ViewConfig enum #1516

v0.10.1

12 August 2021 (Full changelog)

Features

  • Upgrade regular-table #1475
  • Add standard deviation and variance aggregates #1476

Fixes

  • Remove filter limit #1514
  • Add required dependencies for webpack plugin #1480
  • Fix throttle attribute #1479

Misc

v0.10.0

8 July 2021 (Full changelog)

Features

  • Inlined build for perspective-jupyterlab, improve PerspectiveWidget #1466
  • Spark bar #1459
  • New plugin api #1457
  • Read CSV strings in perspective-python #1447

Fixes

  • Fix Binder by updating Jupyterlab to 3.0.14 from 3.0.9 #1469
  • Misc. plugin bug fixes #1465
  • Fix memory errors when streaming updates with expression columns #1464
  • Fixes #1340 - removes dependency on removed ipywidgets API #1455

Misc

  • New website #1470
  • Add Jupyterlab tests to CI #1460
  • Build Windows wheel, limit wheel builds to scheduled and tagged builds #1453

v0.9.0

16 June 2021 (Full changelog)

Breaking

  • Add Expressions Engine using ExprTk #1354

Features

  • Error reporting for monaco #1444
  • Column name completion for monaco #1443
  • Output more metadata on expression errors, fix #1440 #1441
  • Add integer, float, string, date, and datetime conversion functions #1437
  • Add theme support to monaco #1439
  • Isolate expressions per-context and ensure memory stability #1431
  • Expression Editor UI via monaco-editor #1426

Fixes

  • Expression editor bug fixes #1450
  • Parse aggregates in column order #1432

Misc

  • Update Jupyter Notebook Examples #1446
  • Optional lazy-load monaco-editor #1435
  • Fix benchmarks and remove versions pre 0.5.0 from benchmarking #1436
  • Expose join aggregate #1434
  • organize azure pipelines file #1381

v0.8.3

12 May 2021 (Full changelog)

Misc

  • Double-render fix #1420

v0.8.2

11 May 2021 (Full changelog)

Fixes

  • Fix CLI async regression #1419
  • Fix color gradient charts containing 0 #1418
  • Fix styling bugs from CSS minification #1417

v0.8.1

10 May 2021 (Full changelog)

Features

  • More Material style updates #1416
  • Color-by-string for Treemap/Sunburst #1415

Fixes

  • Responsive column style menu #1414
  • Fix memory leak(s), leak tests, memory_usage() wasm heap API #1412

Misc

  • Fix react and remote-workspace examples #1411
  • Getting pybind version number always fails #1413
  • Install Boost from JFrog, fix outdated docs from #1409 #1410
  • Upgrade puppeteer to 9.0.0 #1408

v0.8.0

27 April 2021 (Full changelog)

Breaking

  • Add get_min_max() to Perspective API #1395

Features

  • Enable editing to mime renderer in JupyterLab #1353
  • Datagrid Styleable Column #1386

Fixes

  • Fix last aggregate to preserve status #1390

Misc

  • Updated gh-pages site and README.md #1399
  • Disable column style menu for non-numeric columns #1391

v0.7.0

20 April 2021 (Full changelog)

Breaking

  • Remove webcomponentsjs #1388
  • Async Table and View Constructor #1289

Features

  • Material Theme 2.0 #1380
  • Add call_loop and get_table_names #1375
  • Deprecate py27 (linux), add py39 (osx) #1336
  • Status Bar Component #1314

Misc

  • Fix cross-origin webpack defaults #1387
  • Backwards compatibility for table() and view() #1384
  • Adds yarn repl to launch a shell inside our docker images #1382
  • Update regular-table to 0.3.1 #1379
  • Fix @finos/perspective-jupyterlab to work with WebAssembly/Webpack5 #1377
  • install boost via choco #1351
  • Fix timezone tests to take DST into account #1349
  • Fix D3FC label font bug #1343
  • Add nightly complete builds #1338
  • fix binder #1341
  • Replace emsdk-npm with simple script #1342
  • Fix #1324: use ~major.minor.patch in PerspectiveWidget versioning #1331
  • Add SplitPanel and port to Yew #1326

v0.6.2

11 February 2021 (Full changelog)

Fixes

  • Fix @finos/perspective-jupyterlab compat with webpack5 #1323

v0.6.1

11 February 2021 (Full changelog)

Features

  • Date/datetime filter autocompletion, new timezone test suite for JS #1282

Fixes

  • Fix missing return in ctx0::notify #1320
  • Fix for layout jitter in the Column Selector #1318
  • Remove webpack as a peerDependency for the webpack plugin #1311
  • Fix partial updates in Python using dicts #1298
  • Fix for sorting via avg aggregated column. #1286
  • Fixes style issue with <select> dark theme on Windows #1287

Misc

  • Export inline @finos/perspective by default, and simplify some package dist with rollup #1322
  • Update regular-table to 0.2.1 #1321
  • Docs site updates #1319
  • Removed dead code from C++ src #1293
  • Add @finos/perspective-cpp module #1292
  • Add jlab_link script to link local changes into development Jupyterlab #1309
  • JupyterLab update to ^3.0.0, and fix "Open With.." regression #1294
  • Statically link perspective-python and libarrow #1290
  • Upgrade Emscripten to 2.0.6 and remove emsdk docker image #1232
  • Fix #1244: make test_wheels script use python -m pip #1288

v0.6.0

8 January 2021 (Full changelog)

Breaking

  • Restrict viewer.load() to only accept Table() #1231
  • Remove host_view and open_view from public API #1240

Features

  • Validate view config in engine, fix computed column state bugs #1272
  • Reimplement pandas deconstruction #1238
  • Fix #1213 - improve render warning behavior #1249
  • Add unit context for 0-sided views #1235
  • Add Python client-based stresstest #1223

Fixes

  • Fix Date/Time formatting in perspective-viewer CSV output #1281
  • Fix build for pyarrow 2.0.0 #1260
  • Fix #1241 - date and datetime values in client mode are parsed properly #1248
  • Fix distributed editing in PerspectiveWidget #1236

Misc

  • New Documentation & Project Site #1275
  • free() pointer to arrow binary in Python #1273
  • Cleanup docs and examples to viewer.load(table) #1271
  • Fix: version conflict that makes npm install failed #1266
  • Fix flapping tests for render warnings #1264
  • Documentation: Point to current jupyter examples, and remove out-of-date/broken example #1257
  • Add perspective-click event to grid #1250
  • Adding abs sum functionality #1247
  • Update Azure Windows boost to 1.72 #1253
  • Fix example notebooks #1239
  • tweak py wheel build on linux #1234
  • Add get_index() and get_limit() to the public API, internal code cleanup #1230
  • Refactor C++, misc. C++ fixes #1233
  • Explicitly import tornado.locks #1227

v0.5.6

15 October 2020 (Full changelog)

Features

  • adding binder link #1217
  • Send large arrow binaries as chunks, add client-level Websocket heartbeat #1209
  • Add perspective-plugin-update event for d3fc #1212
  • Upgrade WebAssembly build to Arrow 1.0.1 #1207

Fixes

  • Fix infinite loop bug in 2-sided context #1219
  • Fix computed-column and table() constructor Javascript bugs #1214

Misc

  • Separate 'release' and 'debug' builds #1221
  • C++ Datetime Parsing #1220
  • fix broken link to apache arrow #1211
  • Improve Python Examples #1197
  • Fix typo, update arrow version info. #1204

v0.5.5

21 September 2020 (Full changelog)

Features

  • Release GIL for Table methods #1202
  • GIL release for perspective-python Async mode #1198
  • Add Python client implementation #1199
  • Server mode for Jupyterlab PerspectiveWidget #1195

Fixes

  • Upgrade to regular-table 0.1.5 and fix custom-style example #1203
  • perspective-python Client fixes #1200
  • Remove linking against python #1194

Misc

  • add some build troubleshooting docs #1193
  • Bl.ocks #1191
  • Use black Python format #1188
  • Move Python examples to /examples/ #1178

v0.5.3

7 September 2020 (Full changelog)

Features

  • Add websocket stresstests for Tornado server #1177
  • perspective-viewer-datagrid support for editable #1176
  • Remove deprecated plugins @finos/perspective-viewer-hypergrid and @finos/perspective-viewer-highcharts #1174
  • Updated @finos/perspective-viewer-datagrid plugin to regular-table 0.0.9 #1169
  • Add d3fc X/Y Line Chart #1172
  • fix for virtualenvs/envs with multiple py3 installed, allow for up to arrow 0.17 #1163
  • Fixes #1159 - deltas are now generated on first update for 0-sided contexts #1164
  • Submit tornado write_message to IOLoop, add websocket tests in Python #1156
  • Adds PR templates for bugfix, documentation, and feature #1155
  • Adds set_threadpool_size() #1147
  • Generate/test Manylinux wheels, clean up wheel/build process #1105

Fixes

  • Datagrid overdraw fix #1187
  • D3FC render fixes #1186
  • Fix sticky dragdrop on perspective-viewer #1185
  • promo example project update and computed function fix #1184
  • Fix perspective-viewer-datagrid sorting #1181
  • perspective-workspace CSS fixes #1183
  • Fix segfault and errors on 2-sided sorted views when data window is invalid #1153
  • fix(perspective-viewer-d3fc): show formatted dates on treemap and sunburst (1144) #1165
  • Fix #1129 and #1130, remove Highcharts and Hypergrid from PerspectiveWidget #1142
  • Fix issue where contexts were being notified before gnode state was updated #1136
  • Enable updates from arrows that have more/less columns than the Table schema #1140
  • Fix path resolution for cross-origin assets #1141

Misc

  • Updated development.md to show correct Emscripten version. #1138

v0.5.2

28 July 2020 (Full changelog)

Features

  • slight UX change, dont end with stack trace as it looks like it raise… #1110

Fixes

  • Properly display computed axis on charts, use local time for all datetime functions #1116

Misc

  • perspective-viewer-highcharts-lite #1135
  • Explicitly floor start row/col and ceil end row/col #1112
  • Fix transferable list in worker.postMessage #1119
  • Fixed Typos in Perspective API Docs #1096
  • Add client/server editing example, fix hypergrid to allow editing in workspace #1109

v0.5.1

25 June 2020 (Full changelog)

Features

  • Computed expressions respect left-to-right associativity and operator precedence #1090
  • Enable Manylinux wheel builds #1057
  • Fix for CRLF issue #1078
  • Use regular-table #1060
  • add perspective-update-complete event example to js guide #1027

Fixes

  • Fix Windows build on Azure #1095
  • Use local time for column/row headers and computed functions #1074
  • Fix regression in regex for Firefox #1065

Misc

  • Unpin arrow version #1104
  • Cleans up CMakeLists & Python build scripts, fixes datetime string rendering #1091
  • Refactor manager internal API, speed up string filters in UI, add manager API tests #1077
  • Spelling and grammar corrections #1094
  • Spell-Fix #1093
  • Spelling fixes #1083
  • Fix #1068 #1103
  • Bump websocket-extensions from 0.1.3 to 0.1.4 #1080
  • Run ESLint on documentation + minor documentation improvements #1069
  • Remap lab extension command in makefile #1046
  • Fixed typo on documentation page #1062

v0.5.0

24 May 2020 (Full changelog)

Features

  • Autocomplete #1052
  • Implement Client/Server Editing #1043
  • Reference python objects directly in perspective tables #975
  • Expression-based Computed Columns #983

Fixes

  • Fix flapping perspective-workspace tests #1022

Misc

  • Styleable scroll-area for @finos/perspective-viewer-datagrid #1058
  • Restore firefox support by removing captrue group from regex pattern #1048
  • Remove duplicate psp_okey column from arrow updates #1044
  • Adds jsdelivr package.json metadata #1040
  • Add abs sum as an aggregator #1031
  • Add plugin save and restore api to perspective-viewer-datagrid #1029
  • Fix minor bugs in Perspective datetime + NaN handling #1028
  • Upgrade papaparse #1033
  • Update to emsdk 1.39.12 and remove 2gb MAXIMUM_MEMORY #1015

v0.4.8

21 April 2020 (Full changelog)

Misc

  • Datagrid virtual scroll fixes and -webkit-scrollbar CSS #1018
  • When updating tables typed as int with float64 numpy arrays, copy instead of filling iteratively #1012
  • Update Python benchmarks to include results for update calls #1011
  • Bump minimist from 1.2.0 to 1.2.3 #1001
  • Adds -Wall and fixes C++ build warnings #1017
  • Add Manylinux Python 3.7 wheel build + tests, disable Azure Windows Python build #1010

v0.4.7

6 April 2020 (Full changelog)

Features

  • @finos/perspective-viewer-datagrid Tree Formatting #993

Fixes

  • Fix column resizing when column pivots are present, and update docs and examples. #1002
  • Fix incorrect sort order when hidden, pivoted columns are sorted #1000
  • @finos/perspective-viewer-datagrid Bug Fixes #997
  • tweak accessor to accept numpy dict #985
  • perspective-workspace fixes #990
  • remove cpp test check from setup.py (no more cpp tests) #982

Misc

  • Add lock to PerspectiveManager #999
  • Look for PyArrow relative to Perspective in @rpath #995
  • Purge @finos/perspective-viewer-hypergrid #991
  • Documentation: update PerspectiveTornadoServer to PerspectiveTornadoHandler #987

v0.4.6

17 March 2020 (Full changelog)

Features

  • Datagrid row selection and column resize #979
  • Remove duplicate brew instructions #973
  • Add linked filter mode to perspective-workspace #969
  • Datagrid header click-to-sort and assorted improvements #967
  • New plugin @finos/perspective-viewer-datagrid #954
  • Add ==, !=, >, <, and string equality computed columns #957

Fixes

  • Update azure-pipelines.yml for Azure Pipelines #977
  • PerspectiveManager no longer treats str as bytes in Python 2 #965
  • Fully clear queued updates before adding a new computed column #961

Misc

  • Update typings to include nodejs only components #980
  • update dependencies to jupyterlab 2.0, phosphor -> lumino #970
  • Refactor out WebsSocketManager from WebSockerServer #963

v0.4.5

28 February 2020 (Full changelog)

Fixes

  • Emit source maps for WebWorker. #956
  • Bugfix sdist #953

Misc

  • Refactor gnode and gnode_state, remove C++ test suite #939

v0.4.4

26 February 2020 (Full changelog)

Features

  • Remove some stale code #927
  • Fix for #921: unifies versioning between JS and Python libraries #923

Fixes

  • Fixes off-by-one error in end_col #948
  • Fix tables delete bug in perspective-workspace #946
  • Fix #945: Improve Python install docs #947
  • Deal with np.int_ on Windows, handle missing INDEX #943
  • Fix widget title in perspective-workspace #934
  • Fix perspective-workspace initialize bug #924
  • Fix perspective-workspace non-unique generated slotid bug #925

Misc

  • Activate Perspective in FINOS Foundation #949
  • Package/dist license in python package #930
  • Adds test coverage reporting for@finos/perspective #920

v0.4.3

12 February 2020 (Full changelog)

Features

  • adding sdist check so we don't deploy broken sdists accidentally #918

Fixes

  • Event regression fix #922
  • Remove @finos/perspective-phosphor and fix #825 regression. #919

Misc

  • Added Azure compatible reporting for tests #916
  • Fix bug where perspective-viewer doesn't resize #911
  • Set up CI with Azure Pipelines #915

v0.4.2

10 February 2020 (Full changelog)

Features

  • Custom Element API for &lt;perspective-workspace&gt; #901
  • perspective-viewer-hypergrid Tree column toggle buttons. #914
  • Remove perspective.node Python module. #912
  • Add 'workspace-layout-update' event and css class selector names cleanup #902
  • updates and fixes for windows build #884
  • Make perspective-viewer-hypergrid selection state save/restore compatible #903
  • implement save/restore on viewer configuration #896
  • Make @finos/perspective-workspace widget title editable by doubleclick #891
  • Add 'perspective-select' event to @finos/perspective-viewer-hypergrid #894
  • Allow missing columns #881
  • Style fixes for perspective-workspace #890
  • Fix selection styling on @finos/perspective-viewer-hypergrid #889
  • Fixed React types. #886
  • Add new package @finos/perspective-workspace #874

Fixes

  • Fix column ordering in Python, null handling for computed columns #907
  • Fix #898 - week bucket overflows #899

Misc

  • Remove yarn dependency duplication. #908
  • Bump core-js to v3.6.4 and Babel to 7.8.4 #906
  • &lt;perspective-viewer&gt; UI cleanup #905
  • Implement computed column functions in C++ #892
  • Better test screenshot archiving. #895
  • Update Python README #893
  • Improve Perspective Documentation #873

v0.4.1

27 January 2020 (Full changelog)

Features

  • New computed functions pow, invert, sqrt, abs #871
  • Optional @finos/perspective-webpack-plugin #870

Fixes

  • Fix on_update callbacks in Python #880
  • Time zone awareness in perspective-python #867
  • Improve @finos/perspective-viewer typings #872
  • Allow plugins to be importable before 'perspective-viewer #868
  • Fix scrolling for pivoted hypergrid #866

Misc

  • Extend perspective-viewer typings and added a react-typescript example #877
  • Hiring! #876
  • Added simple webpack example and renamed existing webpack example #869
  • Python versioning fix #863

v0.4.0

7 January 2020 (Full changelog)

Features

  • Implement to_arrow in C++ for JS/Python #850
  • Exp bin functions #851

Fixes

  • Fix perspective-viewer to allow loading a table before it's attache… #854
  • Fix perspective-jupyterlab theme #853

Misc

  • Improved error messages from C++ #862
  • Add benchmark suite for Python, Refactor module loading for environments where C++ cannot be built #859
  • add pypi badge #855
  • Workspace fixes #858
  • Update versioning script for Python #852

v0.4.0-rc.6

18 December 2019 (Full changelog)

v0.4.0-rc.5

18 December 2019 (Full changelog)

Features

  • Add selectable attribute to perspective-viewer #842
  • weighted mean aggregate type #846
  • Theme material-dense #845
  • CSV/JSON renderer in JupyterLab #832
  • Read date32, date64, decimal128 from Arrow datasets #829
  • Add delete() to widget, cache client updates before render, refactor module structure #823

Fixes

  • Fixed resize behavior #848
  • Node.js table unpin #844
  • Asynchronously process updates when running in Tornado #838
  • Throttle fix #835
  • Preserve user columns and pivots in widget #833
  • Fix PerspectiveWorkspace when tabbed views are moved to master #831
  • Widget fixes for resizing, TS typings, boolean columns #826
  • Properly remove on_delete and on_update callbacks that fail. #822
  • Default to int64 in Python3, add long and unicode to schema and type inference #821
  • Fix misordered columns in update #818

Misc

  • Refactor perspective-viewer themes to include css classes #849
  • Python build overhaul #839
  • add editable example to readme #847
  • Async resize #840
  • Improvements to Arrow updates and indexed columns #837
  • Remove ci_python and refactor scripts. #836
  • Set Enums as values for Widget/Viewer, refactor test folder structure #834
  • Stricter linting for comments #828
  • Add PerspectiveWorkspace olympics example to README #820
  • Update Perspective website with Python API and user guide #819

v0.4.0-rc.4

14 November 2019 (Full changelog)

Features

  • Client mode supports dataframes, np.ndarray, structured and recarray #813
  • Allow client mode widget to be constructed with schema #807

Fixes

  • Fixed 2-sided sorting on column-only pivots #815
  • Python build fixes #809
  • Fixed Python Arrow loading bug #806
  • Two sided sort fixes #805

Misc

  • Add puppeteer tests for perspective-phosphor #812
  • Hypergrid no longer depends on Object.keys order of dataset #811
  • allow for right master #799
  • Tweak date/datetime inference, remove dependency on non-core Numpy/Pandas API #802
  • add websocket export in type definition #800
  • Add umd build and updated tests for perspective-phosphor #798

v0.4.0-rc.3

6 November 2019 (Full changelog)

Features

  • Dataframe/Numpy Array Loader #791

Misc

  • Fixed travis build error & hypergrid console error #795
  • Added promo example project #794
  • Add update for widget in client mode, fix on_update in Python 2 #793
  • Fixed aggregates to apply to hidden sorted columns #792
  • Fixed client flag to default to True on Windows #788
  • New logo & demo gif #790

v0.4.0-rc.2

31 October 2019 (Full changelog)

Fixes

  • Python 2/GCC <5 compatibility #784

Misc

  • Hypergrid paintloop removal #785

v0.4.0-rc.1

24 October 2019 (Full changelog)

Features

  • PerspectiveDockPanel and PerspectiveWorkspace components #782
  • Computed UX #765
  • Added Table() support for numpy recarray #771
  • Add to_csv to Python API #759
  • Apache Arrow native reads for JS+Python #755
  • VΛPORWΛVΞ #739
  • Readable dates #695

Fixes

  • Mobile fixes #781
  • Arrow fixes #772
  • Fixed ios compatibility #770
  • Hypergrid renderer fixes #764
  • Fixed yarn clean script #753
  • Fixed grid performance when pivoted #752
  • Fix update bugs #749
  • Fix empty list in phosphor plugin #745
  • Read numpy nans/datetimes #741

Misc

  • Python sdist #763
  • Fixes jupyterlab plugin regressions #779
  • Link lerna version to bumpversion #780
  • Adjust setup.py for MacOS wheel dist #778
  • Add exception handling, clean up PSP_COMPLAIN_AND_ABORT #777
  • Multiple views on JLab plugin #776
  • Update declaration #773
  • Upgrade Arrow to 0.15.0, link python arrow from prebuilt library #768
  • Add tornado handler for perspective-python #766
  • Add core-js@2 dependency that is required by transpiled outputs of Babel #758
  • Rewrite Perspective Jupyterlab and Phosphor API #756
  • ES6 Client API #751
  • add compute() to dynamically show/hide sidebar computation panel #748
  • Allow users register multiple on_delete callbacks to view and table #747
  • Some cleanup items #744
  • Add PerspectiveManager remote API for Python, Tornado server example #743
  • Computed column partial update #740
  • Test suite failure feedback #735
  • Added .gitattributes #734
  • Enable update with INDEX on explicit index column #733
  • fixes view->plugin rename that didnt make it from original repo #731
  • Python improvements + refactor #730
  • Remove incorrect does not equal filter #732
  • convert to monolithic python install #728
  • Allow partial updates on computed column source columns #729
  • Python #723

v0.3.9

16 September 2019 (Full changelog)

Features

  • Editing for @finos/perspective-viewer-hypergrid #708
  • Added index API to to_format methods #693

Fixes

  • Copy-paste error in last PR #710

Misc

  • Fixed schema miscalculation with computed columns and implicit index #727
  • Type-on-edit #715
  • Misc cleanup and fixes #726
  • yarn setup #725
  • Remove regeneratorRuntime entirely #718
  • Bump lodash.merge from 4.6.1 to 4.6.2 #717
  • perspective-test Module #711
  • Refactor C++ #707
  • documentation/style fix #705
  • Test implicit index & remove extraneous example file #706
  • perspective-viewer cleanup #703
  • Allow for perspective in ipywidgets layouts #702
  • Limit charts #700
  • leaves_only flag for perspective #699
  • index column support #698
  • Bump mixin-deep from 1.3.1 to 1.3.2 #697
  • Fixed README.md #696
  • Calculate row offset in C++, refactor Table, remove implicit primary key mode #692
  • Fixed chunked arrow test to actually be chunked #691

v0.3.8

26 August 2019 (Full changelog)

Misc

  • Emsdk upstream #690
  • 0-sided Performance Fix #689

v0.3.7

20 August 2019 (Full changelog)

Misc

  • Added column-width to style API #688
  • Added 'dataset' configurable data example #687
  • perspective-click fix #686
  • Fix performance regression #685
  • Fix scatter row_pivots_values exception on click #684
  • Pinned D3FC to 14.0.40 #683
  • Style API #682
  • Remove nan filtering, add null filtering #676
  • Add view config class in C++ #672
  • Fix #616: perspective-jupyterlab versioning #675
  • Fix jlab again #673
  • Update phosphor component to use plugin instead of view #667
  • Cleaner API through the Table abstraction, prepare for Python API #642
  • Fixes user defined aggregates for computed columns #666
  • Fix exception for filter labels #669
  • Allow arrow tables to be created from a schema #663
  • Updated example gists to use latest API #661

v0.3.6

15 July 2019 (Full changelog)

Misc

  • Fixed webpack plugin resolution of require() #660

v0.3.5

15 July 2019 (Full changelog)

Misc

v0.3.4

12 July 2019 (Full changelog)

v0.3.3

12 July 2019 (Full changelog)

v0.3.2

12 July 2019 (Full changelog)

Misc

  • Fixed github reported vulnerability in lodash.template #654
  • Panel resize fixes #652
  • Made side-panel resizable #650
  • Fixed null pivotting issue #651
  • Remove column pivot ROW_PATH filter #649
  • Add hover styles to copy, download, reset #643
  • Perspective config #644
  • Moved loader dependencies out of webpack plugin #641
  • Fix debug builds #637
  • Refactor #639
  • Fixed webpack config error in webpack example #640
  • Don't use transferable for WASM payload #635
  • Fixed async loading of node.js module #634

v0.3.1

25 June 2019 (Full changelog)

Fixes

  • Phosphor and JupyterLab bug and regression fixes #625

Misc

  • Fixed safari hypergrid rendering #632
  • Update Babel preset-env #631
  • Use MODULARIZE emscripten option instead of a custom one #630
  • Remove support for ASM.JS, Internet Explorer and other non-WASM browsers #629
  • Memory usage fixes #628

v0.3.0

10 June 2019 (Full changelog)

Features

  • Allow transfer as columns #607

Misc

  • Webpack perf #615
  • Updated website #614
  • Make "view" attribute of &lt;perspective-viewer&gt; backwards compatible #611
  • Made drag/drop zones more generous #610
  • Fixed split-axis y_line charts in D3FC #609
  • Restore highchairs on phosphor/jlab until d3 is complete #608
  • Sync refactor #606

v0.3.0-rc.4

30 May 2019 (Full changelog)

Misc

  • Replace "distinct count" default aggregate with "count" #604
  • Replace atomic #603

v0.3.0-rc.3

28 May 2019 (Full changelog)

Features

  • A few quality-of-life improvements for perspective-phosphor #591

Misc

  • Clean up API names #600
  • D3FC Default Plugin #599
  • simplify python setup.py, add psp_test to python tests #596
  • Fixed D3FC heatmap color for Material dark theme. #595
  • Row delta fixes #594
  • Row deltas return arrow-serialized data #589
  • Fix for webpack 4 themes generation error on Windows #590

v0.3.0-rc.2

22 May 2019 (Full changelog)

Features

  • Fixed tooltip value when split_values and multiple main values #583
  • add restyle to type definitions, fix dark mode in jlab, fix CSS issue #578
  • Feature/dual y axis POC #564
  • JupyterLab enhancements #570
  • D3 Treemaps #563

Misc

  • New benchmark suite #588
  • Port to Webpack 4 #587
  • Update CONTRIBUTING.md #584
  • Row delta supports addition, delete, non-contiguous updates #582
  • Undo condensed column layout when width < 600px #580
  • Fixed grid styling #576
  • UX fixes #575
  • Performance overhaul for table.update() #574
  • Feature/treemap enhancements #572
  • Fix the format of long numbers #573
  • Refactor Javascript API +add documentation #571
  • Update results.json to reflect Scatter name change #190
  • Overwrite test results #189
  • Update results.json to reflect Scatter name change #188
  • Correctly read and generate boolean values for Arrow format #561
  • Rename charts #187
  • correct testData file reference #186
  • provide framework for centering tooltips, and apply to treemap #182
  • use the native d3 treemap functionality to calculate the new coordina… #183
  • finos migration #184
  • titling mechanism for gridLayout charts made generic and shared. #180
  • Fixed docs links #559
  • Feature/treemap resizing #179
  • Test/more unit tests #181
  • Feature/treemap chart #168
  • Store legend position and size in settings #176
  • Fix tooltip for sunburst with no color #177
  • Treat negative sunburst size values as zero #178
  • Made date zoom button names consistent #175
  • Minor refactor to settings configuration #174
  • Allow settings to be restored before draw #173
  • Initial implemenetation of save and restore #170
  • Zoom y-axis to data on OHLC/Candlestick charts #171
  • Added fixed zoom ranges for date x axis #169
  • Support dates on the y-axis for heatmaps #165
  • Simplify plugin interface code #167

v0.3.0-rc.1

30 April 2019 (Full changelog)

Features

  • Remove 'aggregate' syntax in engine #552
  • Add 'styleElement' method to tell perspective-viewer to restyle picking up css changes #553

Misc

  • Transfer perspective to finos #558
  • D3fc default #551
  • Filter control auto-focuses when dropped or modified #557
  • Fixed issue when # of charts changes in highcharts multichart mode #556

v0.2.23

22 April 2019 (Full changelog)

Misc

  • Misc cleanup #550
  • Added table ownership flag to &lt;perspective-viewer&gt; delete() method #549
  • Remote arrow #547
  • Hypergrid hover theme fix #546
  • Called save and restore with the correct context #544
  • Link click event example in README #545
  • Fixed hypergrid formatting issue when only row-pivots are changed #542
  • Refactored data_slice to return t_tscalar #541
  • Remove header rows for column-only views #540

v0.2.22

10 April 2019 (Full changelog)

Features

  • D3fc plugin - Sunburst, color styles and bug fixes #511

Misc

  • Updated Puppeteer docker image #539
  • Hypergrid missing columns fix #538
  • Upgraded Emscripten to 1.38.29 #537
  • Updated benchmarked versions #536
  • D3fc plugin - Resizable legend and other tweaks #534
  • Updated benchmarks, removed IS_DELTA flag #533
  • Added save() and restore() methods to plugin API #532
  • update plugin #166
  • Merge latest jpmorganchase/perspective master changes into develop #164
  • Sort by hidden #531
  • Column sort fix #529
  • Removed old files #530
  • Fixed header click behavior to not resize or scroll grid #528
  • API Refactor #527
  • "Disable" chart when there is no data #162
  • Fully implement data slice API #526
  • Fixed docs task #520
  • Fixed Hypergrid scroll stuttering #521
  • Add row delta to View #517
  • Use the same color range for all charts when split #160
  • Fix issue #522: row count is correct on column-only views #523
  • Support for live theme changes #161
  • Test UI interaction in tooltip component #159
  • Feature/legend resizable #131
  • Implemented an example UI/D3 based unit test #158
  • Merge latest changes #157
  • Feature/parameter names #156
  • Fix occasional integration test failure and some IE issues #155
  • Allow for 2-column display when only 2 charts (#151) #152
  • Allow for 2-column display when only 2 charts #151
  • d3fc_plugin - sunburst chart, color changes and bug fixes #150
  • update screenshots #149
  • sunburst - add labels, don't display if no crossValue is supplied #148
  • Sunburst centre now shows current level instead of parent #147
  • Match arc opacity #146
  • Fixed sunburst legend overlap #145
  • Tweaked sizing code for sunburst charts` #144
  • Improved colour-legend display and labels #143
  • Test/sunburst integration #141
  • merge view.config fix #142
  • Refactor axis to use common implementation for x and y #140
  • Sunburst Chart #129
  • Fix/use get config #139
  • Update develop from remote master #138
  • Hide labels that would be clipped by the window bounds #135
  • update screenshot results with new colours #134
  • Implemented themable color ranges for heatmap and X/Y #133
  • Put color styles in settings so that they can be scoped to a chart #125

v0.2.21

3 April 2019 (Full changelog)

Features

  • Preparation for merging of perspective-python #515
  • Make row titles configurable via plugin API #512
  • D3fc plugin #498
  • D3fc plugin - Basic OHLC and Candlestick charts #488
  • d3fc plugin - Label rotation, interpolated legend, zooming, scatter chart things #479
  • Get version from package json: fixes #423 #481

Misc

  • on_update fix #519
  • New package perspective-cli #516
  • Hypergrid virtual columns & sort by click #506
  • Fixed merge error in new plugin API access to view.config #507
  • Added get_config() API to view #503
  • Fixed expand/collapse on 2-sided pivots #502
  • Fix pivot null update bug #501
  • Fix build error and add unit test support #132
  • Merge unit test functionality from perspective master #130
  • Switched to new d3fc canvas gridline component #127
  • D3FC unit test #494
  • update plugin #124
  • Add git commit #123
  • Refresh screenshots #121
  • refresh screenshots and update shares-template #119
  • Local puppeteer #497
  • Update plugin #120
  • Added integration screenshot tests for more d3fc charts #117
  • Fixed legend when only one series #118
  • Merge/jpmorganchase master #116
  • on_update delta calculations are now lazy #495
  • Do not show number on header indicator if only one column is sorted #492
  • Fix sum abs agg #493
  • Theme chart series from CSS and theme file #114
  • Implemented selection events from d3fc plugin #113
  • Added bollinger bands and moving average to candle/ohlc #111
  • Implemented fix for missing final date value #112
  • Fix webpack config load path #491
  • Ensure that filter column stays active when filtering #490
  • Switched ohlc and candlestick charts to canvas #110
  • Refactored shared svg/canvas gridlines #109
  • legend draggable and keys cropped #98
  • Add candlestick/ohlc legend #107
  • Add upColors and downColors to series #102
  • update perspective-viewer-d3fc/test/results #106
  • update perspective-viewer-d3fc/test/results #105
  • Header sort indicator #489
  • Basic OHLC and Candlestick charts #104
  • Fixed some MS-Edge issues #90
  • Removed old SVG X/Y chart and replace with the Canvas one #88
  • Inverted y-axis domain for x-bar and heatmap to match highcharts #79
  • Make sure colour-scale points still have semi-transparent fill #75
  • Set back to reference "cjs" dependency, with yarn focus #74
  • Apply XY point colour based on mainValue #73
  • remove unnecessary slice #101
  • D3fc plugin - "Nearby" tooltips for some charts #484
  • Added window support to to_arrow() #485
  • basic OHLC / candlestick charts #95
  • Updated d3fc and used its new ordinalAxis #99
  • Fixed lint_cpp script #487
  • Fixed 0-sided schema #486
  • Implement t_data_slice API for data extraction from 0 & 1-sided views #483
  • Fixed some MS-Edge issues #90
  • Removed old SVG X/Y chart and replace with the Canvas one #88
  • Added candlestick chart #97
  • Tooltip fixes #96
  • Improved and simplified nearby-tooltip code and used on y-scatter #92
  • Fix typo #482
  • replace colour references with color #91
  • Add tooltips for Area charts #89
  • Fixed some MS-Edge issues #90
  • Removed old SVG X/Y chart and replace with the Canvas one #88
  • Updated d3fc and replaced local cartesianSvgChart #87
  • Refactored tooltips into cartesian-chart component #86
  • remove duplicate withOutOpacity method from seriesColours #85
  • Inverted y-axis domain for x-bar and heatmap to match highcharts #79
  • Make sure colour-scale points still have semi-transparent fill #75
  • Set back to reference "cjs" dependency, with yarn focus #74
  • Apply XY point colour based on mainValue #73
  • Date filter issue #478

v0.2.20

7 March 2019 (Full changelog)

Features

  • D3fc plugin - area and heatmap charts #463

Misc

  • Add t_data_slice for data output #473
  • Fixed “not in” filter to array conversion in viewer #477
  • Fixed calls to update() with empty list from throwing exception #476
  • D3FC fixes #474
  • Added ‘not in’ filter to perspective-viewer defaults #475
  • CSV integer parse bug #471
  • Fix for Juypterlab build->dist #470
  • Update remote API to accept a perspective.table() #469
  • Ported Javascript build, test and clean tasks to Windows #468
  • Updated README #465
  • Add perspective click to usage #464
  • area chart, heatmap chart, and more #66
  • Feature/heatmap #61
  • removed deprecated and unused styling directory recursively. #64
  • Feature/scatter chart extent zeroing responsive to range #63
  • Hide overlapping labels in crossAxis #62
  • added optional includeAggregates parameter for splitIntoMultiSeries f… #59
  • Area chart needs to use new version of axis components #60
  • Implemented Area Chart #56
  • Feature/scatter chart extent zeroing responsive to range #57
  • Update d3fc with fixed seriesSvgGrouped #55
  • Use a custom (fixed) version of the seriesSvgGrouped component #52

v0.2.19

1 March 2019 (Full changelog)

Misc

  • Integration tests for D3FC #458
  • Click event fix #461

v0.2.18

27 February 2019 (Full changelog)

Misc

  • Added missing @babel/runtime dependency #459

v0.2.17

27 February 2019 (Full changelog)

Features

  • D3fc plugin #420
  • Add high chart click interactions #444

Misc

  • Updated AUTHORS #456
  • Removed NPM caching from travis config #457
  • Fixes for clean and bench development scripts #455
  • Port view to C++ #452
  • Fixed babel compilation in perspective-d3fc-plugin package #454
  • Fixed Github reported dependency vulnerabilities #451
  • Added shared_worker() to ts definition #453
  • Moved perspective-jupyterlab build from build/ to dist/ to work… #450
  • Build cleanup #448
  • Add tests for filtering datetime columns by string #449
  • Purges phosphor and jlab tests #437
  • Fix regression on view expand #445
  • Interactions click dispatch #439
  • Some styling and tooltip hover changes #51
  • Implemented X-Y chart #41
  • Add gridlines #36
  • rename '[d3fc] Y Line Chart 2' to '[d3fc] Y Line Chart' #40
  • Removed old code (and references to it) from before restructure #39
  • Moved the getChartElement helper into a new module #38
  • Added line chart #35
  • Minimum 1-pixel bandwidth #32
  • Fix data filter for multiple GroupBy #31
  • Add date/time and linear cross-axis scales #30
  • Fixed css labelling and spacing and some Edge issues #28

v0.2.16

19 February 2019 (Full changelog)

Features

  • Phosphor bindings #436
  • Write arrows #435
  • Make sort syntax consistent in tests #434
  • C++ subproject #426
  • Tidy up dependencies #427
  • Allow mac failures on travis, have travis fail fast #428
  • [WIP] Better python build for location of shared objects. #415

Misc

  • Add replace() and clear() to table #431
  • adding autodocumentation for python and C++ #414
  • fixes #411 #424
  • 0.2.15 changelog #422
  • Port View to C++ #413

v0.2.15

7 February 2019 (Full changelog)

Misc

  • String column promotion #421
  • limit to a single build (15 minutes) until we have more resources #418
  • Fixed cross origin detection bug #419
  • null category axis fix #416
  • Fix isCrossOrigin function issue for non-webpack builds #412

v0.2.14

4 February 2019 (Full changelog)

Misc

  • Webpack fix #409
  • Added flush() method to &lt;perspective-viewer&gt; #408

v0.2.13

4 February 2019 (Full changelog)

Misc

  • Date parsing bug #407
  • Add publicPath support to webpack-plugin #403
  • Fixed CSS regression in Chrome canary, fixed example docs #405
  • add another IEX demo #404
  • expand os for c++ testing #402
  • adding iex streaming example to readme #401
  • Empty filters #387
  • perspective-webpack-plugin #399
  • Point README links to blocks #400
  • Adding FINOS badge #397
  • Output CJS files perspective package #392
  • C++ Date Validation #396
  • Benchmark limit + minor changes to DataAccessor #395
  • Update Webpack example to webpack 4 #393
  • Output CJS module bundles for perspective-viewer packages #391
  • Websocket heartbeat detection #394
  • [WIP] Merging JS and Python binding code - Part 2 #389
  • Remove cross /src imports in packages #390

v0.2.12

18 January 2019 (Full changelog)

Features

  • C++ tests #383
  • Interoperability between CMAKE_BUILD_TYPE and PSP_DEBUG #381
  • Invalid filters #375
  • remove boost::format #374
  • reorganize cpp test directory for better organization #371

Fixes

  • Fixes local cpp build -> need to cd into build dir (not needed on docker, working dir is set) #373

Misc

  • Re-enable cpp warnings #386
  • Debug fix #385
  • Correctly type parse numbers wrapped in strings #370
  • fix mac ending #369
  • Promote column #367
  • adding readme for python #366
  • Test and lint python #365
  • Add missing dependencies #364
  • Python build fix #363
  • Removed regenerator-plugin in favor of fast-async #357
  • Fix merge error with renamed types #358 #361
  • Python Bindings #356
  • Removed type abstractions #355
  • Test quality-of-life updates #354
  • Build & performance fixes #353
  • Unified data access interface #352
  • Adding test harness for jupyterlab extension #351

v0.2.11

20 December 2018 (Full changelog)

Misc

  • New benchmarks #350
  • making cpp a first class citizen again #346
  • Change transpose button to two-way arrow #348
  • adding support for apache arrow in jlab #345
  • Fix #291 Null values in filters #344
  • Empty string column type inference fix #343

v0.2.10

9 December 2018 (Full changelog)

Misc

  • Cleanup for port_data_parser branch #339
  • Port data_types and get_data_type #336
  • Visual polish #338
  • Test stability #337
  • Port infer_type and column_names to C++ #334
  • Build into dist, plays nicer with ipywidgets #335
  • Parallel tests #332
  • Material fixes #330
  • Refactor parse_data #329
  • Viewer memory leak on delete() #328

v0.2.9

25 November 2018 (Full changelog)

Misc

  • UX Cleanup #327
  • Added a new example #324
  • Use Yarn workspaces as a drop-in for Lerna #320
  • Fun Animations! #326
  • Full column sort #325

v0.2.8

21 November 2018 (Full changelog)

Misc

  • Column pivot sort #319
  • Context sort #317
  • Refactor make_table #311
  • Further refactored PerspectiveViewer #313
  • Fix weighted mean null/missing value handling #315
  • docs: update installation guide #312
  • Jupyterlab plugin: Cleanup and computed columns #310
  • Typo #309
  • Added Jupyterlab plugin install docs #308
  • Jupyterlab plugin feature improvements #307
  • Fixed webpack build for Jupyterlab #306

v0.2.7

12 November 2018 (Full changelog)

Misc

  • Fixed package error which excluded perspective from it's own plugin #304

v0.2.6

12 November 2018 (Full changelog)

Misc

  • Integration fixes #303
  • Reorganize ViewPrivate #302

v0.2.5

9 November 2018 (Full changelog)

Misc

  • Ported to babel 7 #301

v0.2.4

8 November 2018 (Full changelog)

Misc

  • Toolbar #299
  • Release bugs #298
  • Move ViewPrivate into a separate file #297
  • Moved babel-polyfill to avoid webpack/babel bug #296
  • Worker loader #295
  • Add warnings when data to be rendered will slow down browser #290
  • Move drag/drop into separate file, clean up row, move detectIE/detectChrome from perspective into perspective-viewer #293
  • Replace columnview with semantically named methods #294
  • Refactor WORKER into proper singleton #292

v0.2.3

25 October 2018 (Full changelog)

Features

  • Change restore() to be a promise which resolves on apply #287
  • Shadow DOM #286
  • Date types #271

Fixes

  • Need to specify variable name in type declaration #279
  • Computed columns broken with delta updates on non-dependent columns #274

Misc

  • Fixed x axis rendering bug #164 #289
  • Fixed empty hypergrid loading error #264 #288
  • Fix computed column UX issues #283
  • Expose view columns as TypedArrays #273
  • Added developer docs and updated contributing.md #282
  • update to jupyterlab 0.35.x #284
  • Expansion depth should be stable across updates #277
  • Move C++ to top level directory #266
  • Cleanup cpp api #275

v0.2.2

8 October 2018 (Full changelog)

Features

  • Added support for chunked arrows #268

Fixes

  • Canary css fix #269

Misc

  • New examples #267
  • Can't remove from an array while iterating it's indices #263
  • Misc fixes accumulated from external PRs #261
  • Fix bug with pkey column update with missing agg value #258
  • Bind functions #260
  • Fixed bug which caused computed-columns creation to break updates in … #259
  • Added options dict to viewer load method #256
  • Add 'not in' filter operation #255
  • Added positive/negative color & font to Hypergrid CSS style #254

v0.2.1

1 October 2018 (Full changelog)

Misc

v0.2.0

1 October 2018 (Full changelog)

Misc

  • Fixed hover tooltips on y_scatter charts #252
  • Updated documentation #250
  • Moved LESS formatting to prettier; added clean-css to LESS build #251
  • Refactor examples #249
  • 1D charts generated from columnar data #231

0.2.0-beta.3

24 September 2018 (Full changelog)

v0.2.0-beta.3

24 September 2018 (Full changelog)

Misc

  • Fixed cross origin asset resolution failure #248
  • Column resize fix refactor #246
  • Better documentation for worker() method usage in node.js & the bro… #245
  • Clang format #244
  • Add eslint-prettier #242

v0.2.0-beta.2

17 September 2018 (Full changelog)

Misc

  • Added y_scatter chart type #241

v0.2.0-beta.1

17 September 2018 (Full changelog)

Misc

  • Computed persistence #240
  • Limit tables #239
  • Fixed column-oriented output with column-only pivot #238
  • WebsocketHost HTTP support + GIT example #237
  • Null fix #233
  • Add ESLint #236
  • Remove nested build dirs #234
  • Added perspective gitter banner to README.md #235
  • Added Jupyter API for incremental updates #230
  • Cpp tests #225
  • Add Travis node_modules caching #229
  • Refactored load() method to a Promise; updated expand/collapse API … #228
  • Computed columns with multiple parameters #223
  • Jupyterlab plugin ipywidget #222
  • Upgraded to emscripten 1.38.11 #219
  • Added PSP_CPU_COUNT env var #221
  • Simpler implementation of aggregate fix #220
  • Null aggregate fix #217
  • Asm.js tests #215
  • Computed columns retain persistent aggregates and show/hide #214
  • First & Last by Index Aggregates #211
  • Column oriented partial update #208
  • Mean fix #206
  • bump dependencies #203
  • More cleanup + OS X #202
  • Fixed typescript/webpack file resolution error #204
  • Drop python #198
  • Computed columns #197
  • Assorted bug fixes #195
  • Memory leak fix #194
  • Allow table.update() to accept partial rows #192
  • Fixed Hypergrid regression in column-only pivot #191
  • Remote performance #190
  • Fixing filters when setting multiple filters per column #189
  • Refactored remote library into regular perspective.js #188
  • Remote perspective #187
  • Add tests and fix for regressed column update. #186
  • Schema fix #185
  • Elaborated Jupyterlab plugin documentation, added example notebook #184
  • Merge from fork #182
  • Added new persistent, node.js benchmark suite #181
  • Updated webcomponentsjs #180
  • Refactor Material Theme #178

v0.1.18

1 August 2018 (Full changelog)

Misc

  • Responsive sidebar #175
  • Don't exclude @apache-arrow from babel #177
  • upping jlab dependencies #174
  • Fixed Jest regression #176
  • Better comparisons for benchmarks #173
  • Fixed hover colors #172
  • Jupyter embedded mode #170
  • fix for #160 #168
  • Run tests in parallel #166
  • Material tooltip #167
  • small style fixes #163
  • Highcharts Tooltips #162
  • Forgo publishing cpp source code #161
  • Add typing for perspective #157
  • Release fixes #158
  • Split Build Steps into individual tasks #156

v0.1.17

10 July 2018 (Full changelog)

Misc

  • Fixed csv.html example #155
  • Update fin-hypergrid-grouped-header-plugin to 1.2.4 #154
  • Added simple clipboard API #152
  • To csv #150
  • Hypergrid expand/collapse on tree columns. #148
  • Dropdown styling fix #147
  • Bug fixes 2 #145

v0.1.16

2 July 2018 (Full changelog)

Misc

  • Fixed hypergrid deletion bug. #144
  • Fixed Hypergrid lazy data model scroll performance bug #143
  • Added an example of loading a CSV client side #142
  • Fix event ordering bug when switching visualization types #141
  • Smart column selection when switching visualization plugin #140
  • Hypergrid 3 #139
  • New labels #137
  • Fixed IE regressions #134

v0.1.15

11 June 2018 (Full changelog)

Misc

  • Fixed datetime category axes #133
  • Cleaned up code, fixed chart offset regression in material theme. #132
  • Multi chart mode for Treemap and Sunburst charts #131
  • Made y_area charts stacked by default #130
  • Added category axis support to xy_ charts #129

v0.1.14

4 June 2018 (Full changelog)

Misc

  • New docs #127
  • Namespaced -viewer events, documented, added view update event. #126
  • Ignore boost in perspective cpp #124
  • Add emscripten docker container #114
  • Boost mode for line charts #125
  • Fixed scatter bug #123
  • Highcharts refactor #122
  • Adding dark mode via theme #121
  • Grid styles #120

v0.1.13

22 May 2018 (Full changelog)

Misc

  • UI theme support #119
  • Adding template polyfill for browsers that do not support the template tag #118

v0.1.12

18 May 2018 (Full changelog)

Misc

  • Fixed hidden column regression #117

v0.1.11

18 May 2018 (Full changelog)

Misc

  • Re-added remove() feature from bad merge #116
  • Added tests to verify deletions cause no errors #115
  • Fixed heatmap legend direction #113

v0.1.10

17 May 2018 (Full changelog)

Misc

  • Sunburst charts #112
  • Added 'remove' command to perspective.table #111
  • Support for initializing with schema #110
  • Sort order #107
  • Custom element decorators #105
  • Allow empty strings in arrow columns (as disctinct from null values) #103
  • Bug fixes 0.1.9 #102

v0.1.9

24 April 2018 (Full changelog)

Misc

  • Fixed -examples modules #98
  • Rebuild #97
  • Removed perspective-common module #96
  • Custom elements v1 #95
  • comm is a promise now, upping jlab version, upping package version #94
  • Date filters #93

v0.1.8

16 April 2018 (Full changelog)

Misc

  • Add support for javascript defined custom columns #88
  • New viewer filters #92
  • Highcharts refactor #91
  • Fixed perspective-viewer load order regression, when a schema is used… #87

v0.1.7

5 April 2018 (Full changelog)

Misc

  • More highcharts modes #86

v0.1.6

3 April 2018 (Full changelog)

Misc

  • Style fixes. #85
  • Weighted mean API #84
  • Fix setting the aggregate attribute on perspective-viewer #83
  • Windows 10 installation instructions #78
  • Better date formatting for plugins #67 #82

v0.1.5

30 March 2018 (Full changelog)

Misc

  • Viewer fixes #80
  • Properly handle case when there is no data #77
  • Fixed ellipsis to show when column names extend past visible panel. #74
  • Boost mode for Highcharts scatter+heatmaps #73

v0.1.4

12 March 2018 (Full changelog)

Misc

  • Various fixes for layout, drag-and-drop #69
  • Reset & more conservative default column selection #68

v0.1.3

8 March 2018 (Full changelog)

Misc

  • Added table and view deletion callbacks #64
  • Remove specification of index column type from API #63
  • Scatter labels to show pivot values #60

v0.1.2

26 February 2018 (Full changelog)

Misc

  • Bug Fixes #58
  • Various bug fixes. #57
  • Support Dict arrays with Binary vectors #54
  • change mime renderer type to not interfere with saving notebook #52
  • Bug fixes for perspective-viewer. #50
  • Copy arrow dictionary directly #49
  • Script fixes #48
  • Add test file for internal apis #47
  • Heatmap implementation for perspective-viewer-highcharts plugin #46
  • Test for various arrow timestamp resolutions, and proper psp column types #45
  • Update API to use transferable when available #44
  • Refactored Highcharts imports to use heatmap module from base package. #43
  • Add transferable support for binary arrow files #42
  • Support ns and us time resolutions #41
  • Actually the port number is 8080 NOT 8081 #39
  • removing lantern dependency #34
  • Add link for "emsdk" installation. #31
  • Fixes #14: Fixing issue with encoding, data only #29
  • README missing hyphen #25
  • spelling fix, no content changes #26
  • Fixes ScriptPath for script paths with query strings #28
  • Remove seemingly unnecessary install step in README.md #30
  • Support binary type (for non-unicode string data) #24
  • bugfix for jupyter compat #23

v0.1.1

5 February 2018 (Full changelog)

Misc

  • JupyterLab extension for perspective rendering #17
  • Arrow improvements #22
  • Firefox doesn't support 'new Date("date string")' for arbitrary date … #20
  • Internal cleanup of gnode/pool api #19
  • Refactor pkey/op creation for tables to work across text and arrow data #18

v0.1.0

31 January 2018 (Full changelog)

Misc

  • Column-only pivoting. #15
  • Initial support for loading Apache Arrow data #11
  • Don't rely on internal embind implementation for the type of context … #10
  • A new column chooser UX which also allows column reordering. #9

v0.0.2

8 January 2018 (Full changelog)

Misc

  • Hypergrid plugin modified to load data from perspective lazily. Significantly improves performance on large datasets. #5
  • Incremental Hypergrid loading; viewer transform updates no longer stack. #4

v0.0.1

31 December 2017 (Full changelog)

Misc

  • General test suite improvements for speed, coverage, reproducibility, and developer quality-of-life. #3
  • UI integration tests via Jest + Puppeteer. #2
  • README corrections #1