Changes in XlsxWriter
This section shows changes and bug fixes in the XlsxWriter module.
Release 0.7.2 - March 29 2015
Release 0.7.1 - March 23 2015
Release 0.7.0 - March 21 2015
- Added support for display units in chart axes. See set_x_axis().
Feature request #185.
- Added nan_inf_to_errors Workbook() constructor option to allow
mapping of Python nan/inf value to Excel error formulas in write() and
Feature request #150.
Release 0.6.9 - March 19 2015
Release 0.6.8 - March 17 2015
Release 0.6.7 - March 1 2015
- Added option to add function value in worksheet add_table().
Feature request #216.
- Fix for A1 row/col numbers below lower bound.
Release 0.6.6 - January 16 2015
Release 0.6.5 - December 31 2014
- Added worksheet quoting for chart names in lists.
- Added docs on how to find and set VBA codenames.
- Fix Python3 issue with unused charts.
- Enabled warning for missing category is scatter chart.
- Fix for upper chart style limit. Increased the chart style limit from
42 to the correct 48.
- Raise warning if a chart is inserted more than once.
Release 0.6.4 - November 15 2014
- Fix for issue where fonts applied to data labels raised exception.
- Added option to allow explicit text axis types for charts, similar to date
Feature request #178.
- Fix for issue where the bar/column chart gap and overlap weren’t
applied to the secondary axis.
Release 0.6.3 - November 6 2014
Release 0.6.2 - November 1 2014
- Added chart axis line and fill properties.
Feature request #88.
Release 0.6.1 - October 29 2014
- Added chart specific handling of data label positions since not all positions
are available for all chart types.
- Added number formatting
font handling, separator and legend key for data labels.
See Chart series option: Data Labels
- Fix for non-quoted worksheet names containing spaces and non-alphanumeric
Release 0.6.0 - October 15 2014
Release 0.5.9 - October 11 2014
- Removed egg_base requirement from setup.cfg which was preventing
installation on Windows.
- Fix for issue where X axis title formula was overwritten by the Y axis
Release 0.5.8 - September 28 2014
- Added support for Doughnut charts.
Feature request #157.
- Added support for wheel packages.
Feature request #156.
- Made the exception handling in write() clearer for unsupported types so
that it raises a more accurate TypeError instead of a ValueError.
Release 0.5.7 - August 13 2014
- Added support for insert_image() images from byte streams to allow
images from URLs and other sources.
Feature request #118.
- Added write_datetime() support for datetime.timedelta.
Feature request #128.
Release 0.5.6 - July 22 2014
- Fix for spurious exception message when close() isn’t used.
- Fix for formula string values that look like numbers.
- Clarify print_area() documentation for complete row/column ranges.
- Fix for unicode strings in data validation lists.
Release 0.5.5 - May 6 2014
Release 0.5.4 - May 4 2014
- Added image positioning option to insert_image() to control how
images are moved in relation to surrounding cells.
Feature request #117.
- Fix for chart error_bar exceptions.
- Added clearer reporting of nested exceptions in write() methods.
- Added support for inside_base data label position in charts.
Release 0.5.3 - February 20 2014
- Added checks and warnings for data validation limits.
- Added option to add hyperlinks to images. Thanks to Paul Tax.
- Added Python 3 Http server example. Thanks to Krystian Rosinski.
- Added set_calc_mode() method to control automatic calculation of
formulas when worksheet is opened. Thanks to Chris Tompkinson.
- Added use_zip64() method to allow ZIP64 extensions when writing
very large files.
- Fix to handle ‘0’ and other number like strings as number formats.
- Fix for missing images in in_memory mode.
Release 0.5.2 - December 31 2013
- Added date axis handling to charts. See Example: Date Axis Chart.
Feature request #73.
- Added support for non-contiguous chart ranges.
Feature request #44.
- Fix for low byte and control characters in strings.
- Fix for chart titles with exclamation mark.
- Fix to remove duplicate set_column() entries.
Release 0.5.1 - December 2 2013
- Added interval unit option for category axes.
Feature request #69.
- Fix for axis name font rotation.
- Fix for several minor issues with Pie chart legends.
Release 0.5.0 - November 17 2013
- Added Chartsheets to allow single worksheet charts.
Feature request #10.
Release 0.4.9 - November 17 2013
Release 0.4.8 - November 13 2013
- Added in_memory Workbook() constructor option to allow XlsxWriter
to work on Google App Engine.
Feature request #28.
Release 0.4.7 - November 9 2013
Release 0.4.6 - October 23 2013
- Added font formatting to chart legends.
Release 0.4.5 - October 21 2013
- Added position_axis chart axis option.
- Added optional list handling for chart names.
Release 0.4.4 - October 16 2013
- Documented use of cell utility functions.
- Fix for tables added in non-sequential order. Closes
#51 reported by
Release 0.4.3 - September 12 2013
- Fix for comments overlying columns with non-default width.
Release 0.4.2 - August 30 2013
- Added a default blue underline hyperlink format for write_url().
- Added Workbook() constructor options strings_to_formulas and
strings_to_urls to override default conversion of strings in write().
Release 0.4.1 - August 28 2013
- Fix for charts and images that cross rows and columns that are hidden or
formatted but which don’t have size changes. Issue
#42 reported by
Release 0.4.0 - August 26 2013
- Added more generic support for JPEG files. Issue
#40 reported by Simon
- Fix for harmless Python 3 installation warning. Issue
#41 reported by James
Release 0.3.9 - August 24 2013
- Added fix for minor issue with insert_image() for images that extend
over several cells.
- Added fix to ensure formula calculation on load regardless of Excel version.
Release 0.3.8 - August 23 2013
- Added handling for Decimal(), Fraction() and other float types to the
- Added Python 2.5 and Jython support. Thanks to Jonas Diemer for the patch.
Release 0.3.7 - August 16 2013
- Added write_boolean() function to write Excel boolean values. Feature request
#37. Also added
explicit handling of Python bool values to the write() function.
- Changed Workbook() constructor option
strings_to_numbers default option to False so that there is no implicit
conversion of numbers in strings to numbers. The previous behaviour can be
obtained by setting the constructor option to True.
Note This is a backward incompatibility.
Release 0.3.6 - July 26 2013
- Simplified import based on a suggestion from John Yeung. Feature request
- Fix for NAN/INF converted to invalid numbers in write(). Issue
- Added Workbook() constructor option strings_to_numbers to
override default conversion of number strings to numbers in write().
- Added Workbook() constructor option default_date_format to
allow a default date format string to be set. Feature request
Release 0.3.5 - June 28 2013
- Reverted back to using codecs for file encoding (versions <= 0.3.1) to avoid
numerous UTF-8 issues in Python2/3.
Release 0.3.4 - June 27 2013
- Added Chart line smoothing option. Thanks to Dieter Vandenbussche.
- Added Http Server example (Example: Simple HTTP Server). Thanks to
- Fixed inaccurate column width calculation. Closes
#27. Thanks to
- Added chart axis font rotation.
Release 0.3.3 - June 10 2013
- Minor packaging fixes
- Fixed explicit UTF-8 file encoding for Python 3.
PR from Alexandr Shadchin,
- Fixed invalid string formatting resulted in misleading stacktrace.
PR from Andrei Korostelev,
Release 0.3.2 - May 1 2013
- Speed optimisations. The module is now 10-15% faster on average.
Release 0.3.1 - April 27 2013
Release 0.3.0 - April 7 2013
Release 0.2.9 - April 7 2013
Added worksheet tables. See Working with Worksheet Tables and Example: Worksheet Tables.
Tested with the new Python stable releases 2.7.4 and 3.3.1. All tests now
pass in the following versions:
- Python 2.6
- Python 2.7.2
- Python 2.7.3
- Python 2.7.4
- Python 3.1
- Python 3.2
- Python 3.3.0
- Python 3.3.1
There are now over 700 unit tests including more than 170 tests that
compare against the output of Excel.
Release 0.2.8 - April 4 2013
Release 0.2.7 - April 3 2013
Release 0.2.6 - April 1 2013
Release 0.2.5 - April 1 2013
- Added additional Workbook() parameters 'tmpdir' and
Release 0.2.4 - March 31 2013
- Added Workbook() 'constant_memory' constructor property to
minimise memory usage when writing large files. See Working with Memory and Performance
for more details.
- Fixed bug with handling of UTF-8 strings in worksheet names (and probably
some other places as well). Reported by Josh English.
- Fixed bug where temporary directory used to create xlsx files wasn’t
cleaned up after program close.
Release 0.2.3 - March 27 2013
- Fixed bug that was killing performance for medium sized files. The module
is now 10x faster than previous versions. Reported by John Yeung.
Release 0.2.2 - March 27 2013
Release 0.2.1 - March 25 2013
- Added support for datetime.datetime, datetime.date and datetime.time
to the write_datetime() method. GitHub issue
Thanks to Eduardo (eazb) and Josh English for the prompt.
Release 0.2.0 - March 24 2013
Release 0.1.9 - March 19 2013
Release 0.1.8 - March 18 2013
Release 0.1.7 - March 18 2013
Release 0.1.6 - March 17 2013
Release 0.1.5 - March 10 2013
Release 0.1.4 - March 8 2013
Release 0.1.3 - March 7 2013
Release 0.1.2 - March 6 2013
Release 0.1.1 - March 3 2013
- Added the write_url() worksheet method for writing hyperlinks to
Release 0.1.0 - February 28 2013
Release 0.0.9 - February 27 2013
- Added the define_name() method to create defined names and ranges
in a workbook or worksheet.
- Added the worksheets() method as an accessor for the worksheets in a
Release 0.0.8 - February 26 2013
Release 0.0.7 - February 25 2013
Release 0.0.6 - February 22 2013
Release 0.0.5 - February 21 2013
Release 0.0.4 - February 20 2013
Release 0.0.3 - February 19 2013
Release 0.0.2 - February 18 2013
Release 0.0.1 - February 17 2013