Changelog History
Page 1
-
v2.3.1 Changes
September 22, 2020π We are pleased to announce the release of version 2.3.1. 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:
Notable Features
- π Support open spreadsheet with password protection by ECMA-376 document standard encryption, relate issue #199
- β Add checking and limits for the worksheet
- π Extend pivot table functionality: support set the header, style, and table options for the pivot table
- π Security vulnerabilities and patches
π Improve the Compatibility
- π Compatible with Go 1.15, fix unit test failed on Windows and potential race condition, relate issue #689
- 0οΈβ£ Default row height compatibility with Apache OpenOffice and Kingsoft WPSβ’
- π Improve compatibility for phonetic hint and sheet tab color
π Bug Fixes
- π Fix
RemoveRow
slice bounds out of range cause panic in some case, resolve #686 - π Fix stream writer generated corrupted files issue
- π Fix the scale for add picture not work, resolve #691
Miscellaneous
- β‘οΈ Unit tests update and typo fixed
- π Documentation website with multilingual: English, French, Russian, Chinese, Japanese, and Korean, which has been updated
- Welcome join the Slack channel to meet other members of our community
-
v2.3.0 Changes
August 09, 2020π We are pleased to announce the release of version 2.3.0. 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:
Notable Features
- π Support to set cell values concurrent, relate issue #670
- π New API:
SetSheetFormatPr
andGetSheetFormatPr
, support to set and get worksheet formatting properties, relate issue #635 - π New API:
GetCols
andCols
, support columns iterator - π
AddChart
support specified logarithmic scale on Y-axis, relate issue #661 - π
AddPicture
support insert image autofit cell - β Add limits for total columns, row and filename length
- π Formula calculation engine support defined name, relate issue #665
- β‘οΈ API
CalcCellValue
update, formula calculation engine working in progress: 12 new functions has been added,COUNTA
,ISBLANK
,ISERR
,ISERROR
,ISEVEN
,ISNA
,ISNONTEXT
,ISODD
,ISNUMBER
,MEDIAN
,NA
,SUMIF
π Improve the Compatibility
- Compatible to case-sensitive doc parts path
- Storage string to SST (shared string table), relate issue #622
- π Support the
row
element withoutr
attribute in the worksheet - π Support XML multi namespace, make compatible with Kingsoft WPSβ’ Office, relate issue #651
- π Improve the compatibility of the auto filter with Office 2007 - 2010, resolve #637
π Bug Fixes
- Avoid duplicate filter database in workbook defined name
- π Avoid creating duplicate style, resolve #643
- Escape characters for set rich-text
- π Fix the issue, comment shapes are changed after reopening spreadsheet created by Excelize, resolve #672
- π Fix panic when enabling compiler inline flags, resolve #677 and #679
- π Fix the accuracy issue of getting cell value of percentage cell
Miscellaneous
- π Improved error handling and fix crash when open invalid spreadsheet file
- β Add missing checking error in unit tests
- π Documentation website with multilingual: English, French, Russian, Chinese, Japanese, and Korean, which has been updated
-
v2.2.0 Changes
May 10, 2020π We are pleased to announce the release of version 2.2.0. 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:
Notable Features
- Using the worksheet index instead of ID in the following functions:
GetSheetName
,GetSheetIndex
,GetActiveSheetIndex
andSetActiveSheet
, relate issue #485 - π New function
GetSheetList
to get the worksheet, chart sheet and dialog sheet name list of workbook - π New function
AddChartSheet
support create chart sheet, relate issue #451 - π New function
UnsetConditionalFormat
, support for remove conditional format, relate issue #571 - π New function
DeleteDataValidation
, support delete data validation, relate issue #348 - π New function
SetCellRichText
, support set rich text, relate issue #172 - π New functions
InsertPageBreak
andRemovePageBreak
, support for insert and remove page break, relate issue #492 - π The
AddPivotTable
API changed, support for setting date field subtotal and names of the pivot table, relate issue #582 - π The
AddPivotTable
support to set filter for the pivot table, relate issue #598 - The
AddPivotTable
allow empty filter, data, and rows in the pivot table - Export
ExcelDateToTime
function to convert excel date to time - π
Export
Style
structs to allow create the style for cells by given JSON or structure pointer, relate issue #470
π Bug Fixes
- π Fix
greaterThanOrEqual
andlessThanOrEqual
operators did not work when setting the conditional format for cell bySetConditionalFormat
, resolve issue #608 - π Fix corrupt worksheet created by
StreamWriter
, resolve issue #576 - Escape character in the formula, resolve issue #578
- π Fix the
DuplicateRowTo
function doesn't duplicate merged cells, resolve issue #586 - π Fix conditional formatting hides the adjacent borders by ignore empty conditional format style, resolve issue #200
- π Fix missing comments by
GetComments
, resolve issue #345 - π Fix reading wrong string by
GetCellValue
in some case, resolve issue #602 - Check and fill the cell without
r
attribute in a row element, fix returned empty value whenGetCellValue
in some case - π Allow empty or default cell style formats, resolve #628
π Performance
- β¬οΈ Reduce redundant memory copy in
getRowHeight
Miscellaneous
- β Remove calculated properties to make recalculate formulas in some spreadsheet applications, such as Kingsoft WPSβ’ Office
- β Add missing checking error in unit tests
- π Documentation website with multilingual: English, French, Russian, Chinese, Japanese, and Korean, which has been updated
- Using the worksheet index instead of ID in the following functions:
-
v2.1.0 Changes
February 09, 2020π We are pleased to announce the release of version 2.1.0. 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:
Notable Features
- π New function
DeleteDefinedName
, support to delete the defined names of the workbook or worksheet - π New functions
SetPageMargins
andGetPageMargins
, support to for getting setting page margins - π New functions
DeleteChart
andDeletePicture
, support to delete chart and images from the worksheet - β Add support for Excel file that uses no UTF-8 encoding
- π The function
AddChart
now support to create the pie of pie chart, the bar of pie chart and combo chart
π The functionAddChart
now support to set minor grid lines for the chart, relate issue #501
π The functionAddChart
now support to set line width of the line chart, relate issue #505
π The functionAddChart
now support to set a major unit and tick label skip for the chart, relate issue #538 - π The function
SetColVisible
now support to set column visible by column range - The function
AddPivotTable
allow empty columns in the pivot table, relate issue #511
π Bug Fixes
- π Fix missing ending space text of the cell
- π The
MergeCell
function support overlapped merge cells, resolve issue #533 - β Added handling of empty inline rich text in some case, resolve issue #529
- β Added handling of empty workbook view in some case, resolve issue #426
- β Added handling of escape character in the formula, resolve issue #546
π Performance
- π New functions
NewStreamWriter
andFlush
to generate the new worksheet with huge amounts of data. Compared to non-streaming writing, reduced memory usage by 90.2%, time cost by 53% - π Make
GetRows
function read data as streaming. Reduced memory usage by 78.9%, relate issues #146 and #382 - π Compatibility improvements, adding 49 internal XML namespaces support
Miscellaneous
- β Added logging of possible errors when decoding XML, relate issues #539
- π Improve code coverage unit tests (line Coverage: 97.04%)
- β Add missing checking error in unit tests
- π Documentation website with multilingual: English, French, Russian, Chinese, Japanese, and Korean, which has been updated
- π New function
-
v2.0.2 Changes
October 09, 2019π 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 change log.
π 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()
andUngroupSheets()
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 recalculate 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 the 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
intorelsWriter
;
drawingRelsReader
,workbookRelsReader
,workSheetRelsReader
intorelsReader
;
addDrawingRelationships
,addSheetRelationships
intoaddRels
- π Create pivot table support. New function
-
v2.0.1 Changes
June 30, 2019π We are pleased to announce the release of version 2.0.1. 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 change log.
π Release Notes
π The most notable changes in this release are:
Notable Features
- π New function
SetHeaderFooter()
init set header and footer support, relate issue #394 - π New function
SetColStyle()
support to set style by columns, relate issue #397 - π New functions
SetDefaultFont()
andGetDefaultFont()
support to change the default font, relate issue #390 - π New functions
SetDocProps()
andGetDocProps()
, support to set and get doc properties, relate issue #415 - π The function
AddChart()
now support to create new 26 types of chart: cone, pyramid and cylinder series chart for column and bar, surface 3D, wireframe Surface 3D, contour and wireframe contourοΌbubble and 3D bubble chart, unsupported chart type add error prompt - π New functions
SetDefinedName()
andGetDefinedName()
support to set and get defined names - More detailed error information when open the encrypted file
- π The function
AddPicture()
now support to add TIF and TIFF format images
π Bug Fixes
- π Fix structs fields definition errors and keep double quotes in data validation formula
- π Fix comments duplicate caused by inner counting errors, resolve issue #373
- π Fix read file error caused by get sheet map errors, resolve issue #404
- β¨ Enhance compatibility with PivotTable, resolve issue #413
- β¨ Enhance compatibility with font size and bold style, resolve issue #411, #420 and #425
- β¨ Enhance recalculation adjuster to resolve file broken issue, after insert or remove rows in some case, relate issue #421 and #424
- π Fix hide sheet does not work in some case, relate issue #418
- π Fix multi chart series caused file corrupted by avoid accent theme color index overflow, relate issue #422
Miscellaneous
- π Improve unit testing coverage (Line Coverage: 96.05%)
- β‘οΈ Optimize code, fix golint issues
- π New function
-
v2.0.0 Changes
May 02, 2019π We are pleased to announce the release of version 2.0.0. 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 change log.
π Release Notes
π The most notable changes in this release are:
API Changed
The following table lists the changes to the API for v2.0.0 compared to the v1.4.1:
Function Add error
returnRow Number Change* Delete New Addition ToALphaString Γ Γ β Γ TitleToNumber Γ Γ β Γ SplitCellName Γ Γ Γ β JoinCellName Γ Γ Γ β ColumnNameToNumber Γ Γ Γ β ColumnNumberToName Γ Γ Γ β CellNameToCoordinates Γ Γ Γ β β CoordinatesToCellName Γ Γ Γ SetCellFloat Γ Γ Γ β π SetCellStyle β Γ Γ InsertCol β Γ Γ Γ π RemoveCol β Γ Γ π RemoveRow β β Γ InsertRow β β Γ Γ DuplicateRow β Γ Γ Γ DuplicateRowTo β Γ Γ Γ SetRowHeight β Γ Γ Γ GetRowHeight β Γ Γ Γ GetCellValue β Γ Γ Γ GetCellFormula β Γ Γ Γ GetCellHyperLink β Γ Γ Γ SetCellHyperLink β Γ Γ Γ π SetCellInt β Γ Γ SetCellBool β Γ Γ Γ SetCellStr β Γ Γ Γ 0οΈβ£ SetCellDefault β Γ Γ π GetCellStyle β Γ Γ SetCellValue β Γ Γ Γ π MergeCell β Γ Γ SetSheetRow β Γ Γ Γ SetRowVisible β β Γ Γ GetRowVisible β β Γ Γ SetRowOutlineLevel β β Γ Γ GetRowOutlineLevel β β Γ Γ GetRows β Γ Γ Γ Columns β Γ Γ Γ SearchSheet β Γ Γ Γ GetPicture β Γ Γ Γ GetColVisible β Γ Γ Γ SetColVisible β Γ Γ Γ GetColOutlineLevel β Γ Γ Γ SetColOutlineLevel β Γ Γ Γ SetColWidth β Γ Γ Γ GetColWidth β Γ Γ Γ GetMergeCells β Γ Γ Γ ProtectSheet β Γ Γ Γ UnprotectSheet β Γ Γ Γ β‘οΈ UpdateLinkedValue β Γ Γ SetSheetVisible β Γ Γ Γ adjustHelper β Γ Γ Γ adjustMergeCells β Γ Γ Γ adjustAutoFilter β Γ Γ Γ prepareCell β Γ Γ Γ π setDefaultTimeStyle β Γ Γ timeToExcelTime β Γ Γ Γ addDrawingChart β Γ Γ Γ addDrawingVML β Γ Γ Γ addDrawingPicture β Γ Γ Γ getTotalRowsCols β Γ Γ Γ checkRow β Γ Γ Γ addDrawingShape β Γ Γ Γ addTable β Γ Γ Γ workSheetReader β Γ Γ Γ copySheet β Γ Γ Γ * From version 2.0.0 all row manipulation methods uses Excel row numbering starting with
1
instead of zero-based numbering which take place in some methods in earlier versions, related issue #349.π Feature
- π New function
DuplicateRowTo()
has been added for duplicate row to specified row position - π The function
SetPageLayout()
now support to set page orientation, related issue #318 - π The function
SetPageLayout()
now support to set page size
π Bug Fixes
- π Fix the issue that create a blank fill if no fill is specified in the style format
- π Fix the issue that data validation list in the excel sheet disappears formula characters greater than
255
, related issue #339 - π Fix the issue corrupted xlsx after deleting formula of cell, related issue #346
- π Fix the issue that
GetComment()
returns incorrect mapping between worksheets and comments in some case, related issue #345 - π Fix the issue #346, resolve the issue corrupted xlsx after deleting formula of cell
- π Fix the issue #377, avoid empty column in GetRows result
π Performance
- π Performance optimization, faster for add comments, related issue #347, faster add images, charts and shapes, related issue #274
- β Adding the same image should create a drawing referencing the
already stored copy of the image, related issue #359
Miscellaneous
- β‘οΈ Typo fixed and godoc updated
- β Tests made stronger again, go1.12 added to tests matrix
- π New function
-
v1.4.1 Changes
January 03, 2019π We are pleased to announce the release of version 1.4.1. 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 change log.
π Release Notes
π The most notable changes in this release are:
π Feature
- π New function
WriteTo()
has been added, it implements io.WriterTo to write the file - π New function
SearchSheet()
has been added for get coordinates by given worksheet name, cell value, and regular expression. Relate issue #277 - π New functions
ProtectSheet()
andUnprotectSheet()
has been added to prevent other users from accidentally or deliberately changing, moving, or deleting data in a worksheet, relate issue #273 - π New functions
GetMergeCells()
has been added, support to to get all merged cells from a worksheet currently - β Add support to flip outline summaries, relate issue #304
- π Support
go module
- π Support set and get TopLeftCell properties of sheet view options, relate issue #310
- π The function
AddChart()
now support to create 2D / 3D area, stacked area, 100% stacked area charts, relate issue #311
π Bug Fixes
- π Fix the issue caused by missing tradition to strict conversion for
sharedStringsReader()
, resolve issue #276 - π Fix unknown option in chart format JSON struct tag
- π Fix nil pointer dereference when getting cell formula in some case, resolve issue #290
- π Make the function
GetRows()
return value avoid empty rows in the tail of the worksheet, resolve issue #195 - π Fix
GetSheetMap()
failed in some case, resolve issue #297 - π Fix delete worksheet index error in some case, resolve issue #308
Miscellaneous
- π¨ Tests refactoring, resolve issue #322
- β Add new logo for excelize, numerous documentation updates
- π New function
-
v1.4.0 Changes
September 27, 2018π We are pleased to announce the release of 1.4.0.
π Release Notes
π The most notable changes in this release are:
π Performance
- π Performance optimization 20% faster, 14% memory savings on set cell values. See Performance Figures
- π Use github.com/mohae/deepcopy to deep copy worksheets instead of the internal
deepcopy
function that was using encoding/gob serialization and deserialization
π Feature
- π New function
GetComments()
has been added for support retrieves all comments and returns a map of worksheet name to the worksheet comments - π New functions
RGBToHSL()
andHSLToRGB()
has been added for support convert RGBA, HSL color - π New function
NewDataValidation()
and series functionsDataValidation.SetDropList()
,DataValidation.SetError()
,DataValidation.SetInput()
,DataValidation.SetRange()
,DataValidation.SetSqref()
andDataValidation.SetSqrefDropList()
has been added for suppport data validation - π New function
AddPictureFromBytes()
has been added, relate issue #259 - π Function
GetCellFormula()
now supports shared formula types, relate issue #227 - π Support to parse dates further in future
- π Use min/mid/max value for 2 and 3 color scale conditional formatting
π Bugfix
- π Improved commenting formatting, fix expands all comment boxes stacked all in one place
- π Fix create worksheet by
NewSheet()
cause file issue, related issue #249
API Changed
- β Add error return value for functions:
AddChart()
,AddComment()
,AddPicture()
,AddShape()
,AddTable()
andSetConditionalFormat()
-
v1.3.0 Changes
May 13, 2018π We are pleased to announce the release of 1.3.0.
π Release Notes
π The most notable changes in this release are:
π Performance
- π
Make
SetCellStyle()
quicker by skipping conversions incheckCellInArea()
, and skipping area checks when we are sure the cell can't be before or past the current row/col - πΎ Save bytes on memory instead of string, 11% memory savings, see Performance Figures
π Feature
- π New function
SetSheetRow()
has been added for support write whole line at once, relate issue #96 and #194; - π New functions
GetColOutlineLevel()
,GetRowOutlineLevel()
,SetColOutlineLevel()
andSetRowOutlineLevel()
has been added for suppport creat group - β Add iterator method for
Rows
, new functionsColumns()
,Next()
andError()
has been added - π Function
SetCellValue()
now supportsbool
andtime.Duration
type value - π Function
AddTable()
now supports set name of table, relate issue #216 - π Function
AddPicture()
now supports set the positioning of a picture, relate issue #214 - π Function
GetCellValue()
now supports readinlineStr
type cell value, relate issue #208 and pull request #209 - π Function
AddChart()
now supports set custom chart size - β Add 3D, 3D 100%, clustered, stacked and 100% stacked bar and column series charts supported, relate issue #160 and #190
- β Add a hyperlink to an image support for the function
AddPicture()
, relate issue #185 - β Add protection properties associated with the cell support, relate issue #191;
- β Add categories or values on reverse order (orientation of the chart) support, and set auto or fixed maximum, minimum of the axis, relate issue #202;
π Bugfix
- π Fix
DeleteSheet()
make broken file caused byactiveTab
tag calculation wrong, relate issue #165 - π Fix read columns count wrong in specific xlsx data, relate issue #175
- π Handle special shared string table file name
xl/SharedStrings.xml
to make lib compatibility with 1C software, relate issue #188 - π Fix
checkCellInArea()
index out of range when merged cell ref is single coordinate, relate issue #206 - π Fix set font family not works, relate issue #222
API Changed
- π Make row index consistent in function
SetRowHeight()
andGetRowHeight()
, fix issue #205
- π
Make