Handsontable 13.1.0: Reduced bundle size and bug fixes

Beata Mówka Release Notes / August 31, 2023

Handsontable 13.1.0: Reduced bundle size and bug fixes

In this release, we’ve prioritized optimizing the Handsontable build process, leading to a considerable reduction in package size and a positive impact on the code’s performance. Additionally, we’ve resolved numerous bugs, including problems with moving rows, column resizing, and some more.

Optimizing Handsontable builds

Handsontable 13.1.0 brings an optimization to its build process. This involves refining Babel’s browser targets and upgrading Webpack to v5. By removing the polyfill for unsupported browsers, the output file sizes have been reduced even by 22% compared to version 13.0.0, saving you valuable bandwidth. Check it yourself on Bundlephobia.

FileChange
handsontable.jssave 19.95% (from 3 612 KB to 2 891 KB)
handsontable.full.jssave 12.95% (from 5 894 KB to 5 130 KB)
handsontable.min.jssave 22.45% (from  1 098 KB to 852 KB)
handsontable.full.min.jssave 14.22% (from 2 071 KB to 1 777 KB)
Chart showing reduced bundle size - Handsontable 13.1.0: Reduced bundle size and bug fixes

Further improvements

We’ve also addressed some bugs that might have been impacting your interaction with our data grid. You can find the full list of fixes in the changelog below.

What we changed

  • Optimized the transpilation process of the distribution files. #10440
  • Updated the internal monorepo scripts to utilize Node 20. #10468

What we fixed

  • Fixed a problem with errors being thrown when pressing delete or backspace keys after deselecting cells. #10272
  • Fixed problems with moving rows when there are trimmed rows in the table. #10399
  • Fixed a problem with the column resize handle being stuck after the user clicked the right mouse button. #10416
  • Extended the type definition of CellChange to match the actual implementation. #10432
  • Fixed a typo in the CopyPaste plugin’s copy method argument. #10446
  • Fixed the mobile selection handlers that disappeared below the table headers when multiple cells were selected. #10447
  • Fixed the MergeCells plugin’s problem with updating the cell meta after unmerging the previously-merged cells, which resulted in the Autofill plugin not working properly. #10456
  • Added the missing type definition for BaseEditor‘s getEditedCellRect method. #10459
  • Corrected the type definitions for the ContextMenu#9566
  • React: Mark an internal prop of the React wrapper’s base editor component as optional. #10429