Excelize 2.0.2 is Released


(xuri) #1

Excelize is a library written in pure Go providing a set of functions that allow you to write to and read from XLSX files. Supports reading and writing XLSX files generated by Microsoft Excel™ 2007 and later. Supports saving a file without losing original charts of XLSX.

GitHub: github.com/xuri/excelize

We are pleased to announce the release of version 2.0.2. Featured are a handful of new areas of functionality and numerous bug fixes.

A summary of changes is available in the Release Notes. A full list of changes is available in the changelog.

Release Notes

The most notable changes in this release are:

Compatibility

Upgrade requirements Go language version is 1.10 or later.

Notable Features

  • Create pivot table support. New function AddPivotTable() has been added
  • Create sparkline support. New function AddSparkline() has been added
  • New function GroupSheets() and UngroupSheets() support group and ungroup sheets
  • New function AddVBAProject() to support add vbaProject.bin file which contains functions and/or macros
  • The function SetPageLayout() now support to support to set fit to width and height, relate issue #432
  • The function SetSheetViewOptions() support to set whether to “show a zero in cells that have zero value” now
  • Allow access to more formula attributes in SetCellFormula() , support set the type of the formula and the ref attribute
  • Font strike style support, relate issue #482

Bug Fixes

  • Fix missing text of comments in some case, resolve issue #434
  • Fix RemoveRow() out of range in some case by recalculating offset for merged cells adjuster, resolve issue #437
  • Fix invalid formula in data validation drop list
  • Fix file corrupted when calling the Save() method in the iteration, resolve issue #443
  • Compatible with different types of relative paths in workbook.xml.rels to fix read file failed in some case, resolve issue #442
  • Fixed file corruption when deleting all merged cells in some case
  • Fix issue where the protection worksheet settings are invalid in some case, resolve issue #454
  • Fix GetSheetName doesn’t work in some case by check the sheets list based on index instead, resolve issue #457
  • Add multi-row inline strings support, relate issue #464
  • Fix overflow numeric cell value on a 32-bit operating system, relate issue #386
  • Fix go module dependency errors, relate issue #466 and #480
  • Fix file corrupted when calling SetSheetPrOptions() in some case, resolve issue #483

Performance

  • Performance optimization, faster for reading the file, relate issue #439

Miscellaneous

  • Add missing error check-in SetSheetRow()
  • Optimize code, combine internal functions:
    workBookRelsWriter , drawingRelsWriter into relsWriter ;
    drawingRelsReader , workbookRelsReader , workSheetRelsReader into relsReader ;
    addDrawingRelationships , addSheetRelationships into addRels