ClosedXML v0.94.0 Release Notes

Release Date: 2018-12-12 // over 5 years ago
  • ๐Ÿ’ฅ Breaking changes

    • ๐Ÿ“ฆ This unsigned ClosedXML package now depends on FastMember instead of FastMember.Signed. The signed ClosedXML.Signed still depends on FastMember.Signed.
    • ๐Ÿ‘€ IDisposable interface removed from IXLWorksheet. See #1049
    • ๐Ÿ‘€ IXLPictures interface has changed to accept parameters of type IXLCell instead of IXLAddress. See #930
    • ๐Ÿ‘€ IXLBaseAutoFilter removed and replaced with the existing IXLAutoFilter. See #909
    • ๐Ÿ‘€ IXLRange.ToString() and IXLRangeAddress.ToString() now return context aware range strings. See #1021

    โœจ Enhancements

    • #856 Clear pivot table rendered range upon loading to avoid conflict on rendered cells when opening the file.
    • #877 Add helper property VisibleRows for autofilters
    • #884 Allow pivot tables to have no theme
    • #904 Implement the full range of Item subclasses for pivot tables
    • #905 Don't choke on pivot table saving when formulas fail
    • #908 New methods to append and replace table data
    • #909 New method to reapply autofilter
    • #926 Disallow table with null .DataRange when saving
    • #930 Store picture markers against a range to allow shifting when inserting and deleting
    • #932 Optionally propagate extra table columns when changing data
    • #945 Allow Guid values to be inserted when dumping data
    • #962 Add ability to set cell value to an enum value
    • #978 Add table helper methods: IXLTables.TryGetTable()
    • #996 Allow table field names consisting of only whitespace
    • #999 Allow names to start with backslash
    • ๐Ÿ–จ #1005 Ignore print areas that point to external workbooks
    • โœ… #1019 Improve XLCell.TryGetValue and implement additional tests
    • #1021 Return simpler range address values
    • #1025 Lazy initialize graphics
    • ๐ŸŽ #1033 Optimize the performance of searching range intersections on small collections
    • #1035 Improve implicit string casting
    • #1036 Don't validate named ranges when loading file
    • #1044 Add check that data validation value length does not exceed 255 chars
    • #1064 Make TryGetValue_decimal_Good2test environment-independent

    ๐Ÿ› Bug fixes

    • #876 Correctly unprotect worksheet without password
    • ๐Ÿ”€ #887 Correctly determine used range when there are merged ranges on a worksheet
    • #903 Clear all cell contents (formats too) in pivot table range upon loading.
    • #906 Maintain pivot table page field order
    • #931 Delete table rows correctly
    • #947 Fix pivot table integrity when saving multiple times
    • #956 Do not quote worksheet name with whitespace when saving pivot table worksheet source
    • #969 Fix ranges consolidation
    • 0๏ธโƒฃ #985 Set XLPivotField.ShowBlankItems by default to false and fix treatment of defaults from loading file
    • #988 FIX for XLConditionalFormat equality comparer fails for ColorScale
    • 0๏ธโƒฃ #998 Copies of tables should have RelId default to null
    • #1023 Sort ranges to shift before enumerating through them to avoid new target address conflicting with existing range
    • #1028 Copy row/column visibility setting
    • ๐Ÿ”จ #1029 CellsUsed refactoring and fix
    • ๐Ÿ”€ #1031 Fix for merging cells
    • #1032 Change the way invalid ranges are saved
    • #1041 Autofilter with multiple columns with filters
    • #1047 String comparisons should be case-insensitive
    • #1048 Shift data validation ranges when inserting / delete ranges