Releases: sveinungf/spreadcheetah
Releases · sveinungf/spreadcheetah
v1.27.0
v1.26.0
Features
- Added support for row grouping (#128). Example in the wiki.
- Added option for setting the style on total row cells in tables (#137). Example in the wiki.
- Added option for setting the color on worksheet tabs (#164). Thanks to @petrushenko for the contribution!
Performance improvements
- Increased performance for handling cells with values of type
long.
v1.25.0
Bug fixes
- Fixed an issue where very long string values containing an XML special character (
&,<,>,', or") could cause the Excel file to become invalid (#154).
Performance improvements
- Increased performance for handling long strings by using
Utf8.FromUtf16to fill a larger part of the internal buffer.
Other changes
- On .NET 10 the library will now use the new async ZIP APIs. More details in #118.
- The .NET 6 target of the library has been removed, due to it being out of support since November 2024. The library can still be used on .NET 6, but would now fall back to the .NET Standard 2.0 target of the library.
v1.24.0
Features
- Added option for showing/hiding gridlines with
WorksheetOptions.ShowGridlines. Thanks to @eroke for the contribution! - Source generator: Added attribute
InferColumnHeaders, which can be used to infer the column headers for all properties, and replace the need for havingColumnHeaderon each property. More details in the wiki.
Performance improvements
- Greatly reduced allocations related to handling styles.
v1.23.0
Features
- Added option for column default width with
WorksheetOptions.DefaultColumnWidth. - Added option for column style with
ColumnOptions.DefaultStyle. Example in the wiki. - Added option for row style with
RowOptions.DefaultStyle(#53). Example in the wiki. - Added option for spreadsheet default font with
SpreadCheetahOptions.DefaultFont(#53). Example in the wiki. - Added
Style.Hyperlinkwhich returns a style with the font color and underline formatting that Excel uses forHYPERLINKformulas. - The source generator now supports creating cells from
Uriproperties. These cells will have aHYPERLINKformula and style.
Bug fixes
- Warning CS1591 will no longer be emitted from code generated by the source generator (#138).
v1.22.0
v1.21.1
v1.21.0
Features
- Added support for tables (#63). Examples can be seen in the wiki.
- Added support for font underlines (#101).
- The resulting XLSX files can now include some additional metadata (aka "docProps") (#11). These properties can be set on
SpreadCheetahOptions.DocumentProperties. A minimal set of properties are now always included by default to increase compatibility with some other applications that expects them.
Performance improvements
- Significant performance improvements for writing
DateTimecells. Around 2.5x faster execution measured on the benchmark system.
v1.20.0
Features
- Added overloads of
Spreadsheet.AddHeaderRowAsyncthat takes a collection of header name strings. They can be used for creating header rows without the need to create cell instances first. - Added support for Data Validation of
DateTimeinstances. Thanks to @PhilipeRLeal for the contribution! - The
OverloadResolutionPriorityattribute from .NET 9 has been added toSpreadsheet.AddRowAsync. This resolves some possible overload ambiguity problems, and allows for some more uses of collection expressions when calling this method. - Arguments for the source generator attributes are now easier to retrieve with reflection. More details in #83. Thanks to @jonsagara for the contribution!
- Number formats in styles can now be of any length. Previously the length was constrained by the length of the internal buffer.
- Added an icon for the NuGet package.
Bug fixes
- Source generator: Warning
SPCH1002(unsupported type for cell value) will no longer be emitted for properties with theColumnIgnoreattribute.
Performance improvements
- Minor performance improvements related to writing numeric cell values when targeting .NET 8 or later.
Other changes
- The .NET 7 target of the library has been removed, due to it being out of support since May 2024. The library can still be used on .NET 7, but would now use the .NET 6 target instead of the .NET 7 target.
- The .NET Standard 2.0 target of the library no longer depends on
Microsoft.Bcl.HashCode.
v1.19.0
Features
- Source generator: Support for ignoring properties with the
ColumnIgnoreattribute (#76). An example can be seen in the wiki. - Source generator: Support for specifying cell format on a property with the
CellFormatattribute (#43). More details with an example in the wiki. - The package now includes a Roslyn analyzer. Previously the source generator itself would emit warnings and errors about incorrect usage (such as combinations of attributes that are not supported), but this is now handled by the Roslyn analyzer instead. This gives the following improvements:
- Diagnostics (e.g. warnings and errors) will now show up with squiggly lines in e.g. Visual Studio. They will also appear without requiring a solution build.
- The severity of the diagnostics can now be configured in an
.editorconfigfile. This should be the preferred way going forward, and for that reason theSuppressWarningsoption on theWorksheetRowGenerationOptionsattribute is now marked as obsolete.
Bug fixes
- Fix for invalid code being generated by the source generator if the
WorksheetRowattribute type had an indexer.