Go library for reading and writing XLSX files.
There are serious known bugs in this release. We're working to resolve them and a 3.2.2 will follow as soon as possible.
Issues resolved in this release - see v3.2.1 milestone :
This release was requested as people are waiting on some of the bug fixes. All outstanding bugs for the milestone have been pushed onto the v3.3.0 milestone instead.
This release comprises the following changes:
Cell.GetCoordinates()
and Row.GetCoordinate()
functions that fix issue #586 .Row.WriteSlice
method to accept slices as a target instead of just pointers to slices (the old behaviour is still supported).Version 3.1.1 fixes a bug that causes cell values to be blanked (or actually be zero-value structs) when reading a sheet that contains hyperlinks. See issue #574 .
Version 3.1.0 fixes a number of significant issues and adds support for font strike-through, but should otherwise be 100% compatible with v3.0.0.
A full list of changes can be found here
Version 3.0.0 of the xlsx library fixes a significant number of issues, but breaks backwards compatibility in order to do so. For a full list of changes see the milestone.
You can now optionally pass the UseDiskVCellStore
operation to all methods that open, or create an xlsx.File
. Selecting this option will result in much lower memory usage when handling large sheets, but will run slightly slower than the default in-memory cell store backend.
If you were previously using the StreamFileBuilder
you should use V2 of this library of earlier.
Sheet.ForEachRow
and Row.ForEachCell
accept options.You can indicate that you'd like to SkipEmptyRows
or SkipEmptyCells
.
Whoops, forgot to do a proper v2 module definition.
This release breaks an important, but bad, assumption that there should be a 1-to-1 mapping between the cells in a sheet and the column definitions. This model simplified the development of the original library a little, but it defeats the purpose of the col
definitions (to apply stylistic information over ranges of columns).
Numerous other fixes have been included. For a full list of changes look here: https://github.com/tealeg/xlsx/milestone/5?closed=1
This branch encapsulates the current state of the master branch prior to branching to the v1
branch to allow parallel maintenance fo the v1.x.x versions and the proposed v2.x.x versions.
I’ve been using the master branch at incredible scale, for quite some time. We have tons of unit tests on top of the library, and we have lots of users that would complain to me Immediately if this wasn’t working correctly. This branch works. Furthermore, I hope you can find someone to help you get release.
As pointed out in #306 we haven't done formal release tags since 2013. As Go's vendoring and dependency management story has now started to crystalise, it does feel like a good time to change this.
Plenty of people are using xlsx in production, so let's formally call the current state v1.0.0.