Skip to content

Latest commit

 

History

History
3007 lines (2018 loc) · 159 KB

CHANGELOG.md

File metadata and controls

3007 lines (2018 loc) · 159 KB

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

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

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

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

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

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

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

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

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

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

4 June 2023 (Full changelog)

Features

Fixes

  • Fix CSS positioning of expression panel in workspace #2243

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: _update_with_missing_or_null_values #2230

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

17 May 2023 (Full changelog)

Misc

16 May 2023 (Full changelog)

Misc

  • Public perspective-viewer components #2222

7 May 2023 (Full changelog)

Fixes

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

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

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

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

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

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

18 January 2023 (Full changelog)

Fixes

  • Fix regression in perspective-cli #2086

Misc

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

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

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

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

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

7 October 2022 (Full changelog)

Misc

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

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

26 August 2022 (Full changelog)

Fixes

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

22 August 2022 (Full changelog)

Fixes

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

Misc

  • Per-component CSS model #1943

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

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

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

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

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

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

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

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

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

9 May 2022 (Full changelog)

Features

  • Support autocomplete for IN filter type #1798

Fixes

  • Fix restore() error #1803

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

26 April 2022 (Full changelog)

Fixes

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

25 April 2022 (Full changelog)

Fixes

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

18 April 2022 (Full changelog)

Fixes

  • Fix perspective-workspace webpack compat #1784

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

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

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

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

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

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

25 February 2022 (Full changelog)

Fixes

  • Fix python memory leak in table() #1724

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

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

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

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

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

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

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

6 December 2021 (Full changelog)

Fixes

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

5 December 2021 (Full changelog)

Features

  • Parallelized .wasm download and deferred font loading #1647
  • Add auto-resizing to <perspective-viewer> #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

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

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

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

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

29 September 2021 (Full changelog)

29 September 2021 (Full changelog)

Fixes

  • Fix python wheel CI #1552

Misc

  • Make /node_modules external to TS #1557

28 September 2021 (Full changelog)

Breaking

  • New <perspective-viewer> #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 <perspective-viewer> #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

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

30 August 2021 (Full changelog)

Fixes

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

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

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

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

12 May 2021 (Full changelog)

Misc

  • Double-render fix #1420

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

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

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

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

11 February 2021 (Full changelog)

Fixes

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

18 December 2019 (Full changelog)

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

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

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

31 October 2019 (Full changelog)

Fixes

  • Python 2/GCC <5 compatibility #784

Misc

  • Hypergrid paintloop removal #785

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

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

26 August 2019 (Full changelog)

Misc

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

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

15 July 2019 (Full changelog)

Misc

  • Fixed webpack plugin resolution of require() #660

15 July 2019 (Full changelog)

Misc

12 July 2019 (Full changelog)

12 July 2019 (Full changelog)

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

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

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

30 May 2019 (Full changelog)

Misc

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

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

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

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

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

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

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

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

1 March 2019 (Full changelog)

Misc

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

27 February 2019 (Full changelog)

Misc

  • Added missing @babel/runtime dependency #459

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

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

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

4 February 2019 (Full changelog)

Misc

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

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

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

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

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

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

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

12 November 2018 (Full changelog)

Misc

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

12 November 2018 (Full changelog)

Misc

  • Integration fixes #303
  • Reorganize ViewPrivate #302

9 November 2018 (Full changelog)

Misc

  • Ported to babel 7 #301

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 _column_view with semantically named methods #294
  • Refactor WORKER into proper singleton #292

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

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

1 October 2018 (Full changelog)

Misc

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

24 September 2018 (Full changelog)

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

17 September 2018 (Full changelog)

Misc

  • Added y_scatter chart type #241

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

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

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

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

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

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

22 May 2018 (Full changelog)

Misc

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

18 May 2018 (Full changelog)

Misc

  • Fixed hidden column regression #117

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

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

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

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

5 April 2018 (Full changelog)

Misc

  • More highcharts modes #86

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

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

12 March 2018 (Full changelog)

Misc

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

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

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

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

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

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

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