Changelogs » Xlsxwriter

Xlsxwriter

1.2.6

--------------------------------

* Added option to remove style from worksheet tables.
Feature request `670 <https://github.com/jmcnamara/XlsxWriter/issues/670>`_.

1.2.5

--------------------------------

* Added option to add hyperlinks to textboxes. See :ref:`textbox_hyperlink`.
Feature request `419 <https://github.com/jmcnamara/XlsxWriter/issues/419>`_.

1.2.4

-------------------------------

* Added option to link textbox text from a cell. See :ref:`textbox_textlink`.
Feature request `516 <https://github.com/jmcnamara/XlsxWriter/issues/516>`_.

* Added option to rotate text in a textbox. See
:ref:`textbox_formatting_rotation`.
Feature request `638 <https://github.com/jmcnamara/XlsxWriter/issues/638>`_.

1.2.3

-------------------------------

* Increased allowable worksheet url length from 255 to 2079 characters, as
supported in more recent versions of Excel. A lower or user defined limit
can be set via the ``max_url_length`` property in the :func:`Workbook`
constructor.

* Fixed several issues with hyperlinks in worksheet images.

1.2.2

-------------------------------

* Fixed Python 3.8.0 warnings.
Issue `660 <https://github.com/jmcnamara/XlsxWriter/issues/660>`_.

1.2.1

---------------------------------

* Added the :func:`add_write_handler` method to allow user defined types to be
handled by the :func:`write` method. See :ref:`writing_user_types` for more
information.
Feature request `631 <https://github.com/jmcnamara/XlsxWriter/issues/631>`_.

* Add support for East Asian vertical fonts in charts.
Feature request `648 <https://github.com/jmcnamara/XlsxWriter/issues/648>`_.

1.2.0

------------------------------

* Refactored exception handling around the workbook file :func:`close()`
method to allow exceptions to be caught and handled. See
:ref:`ex_check_close`. Also refactored the code to clean up temp files in
the event of an exception.
Issues `471 <https://github.com/jmcnamara/XlsxWriter/issues/471>`_
and `647 <https://github.com/jmcnamara/XlsxWriter/issues/647>`_.

* Added the option to allow chart fonts to be rotated to 270 degrees
to give a stacked orientation. See :ref:`chart_fonts`.
Issue `648 <https://github.com/jmcnamara/XlsxWriter/issues/648>`_.

1.1.9

------------------------------

* Another fix for issues where zipfile.py raises "ZIP does not support
timestamps before 1980" exception.
Issue `651 <https://github.com/jmcnamara/XlsxWriter/issues/651>`_.

1.1.8

--------------------------

* Added ability to combine Doughnut and Pie charts.

* Added gauge chart example which is a combination of a Doughnut and a Pie
chart. See :ref:`ex_chart_gauge`.

1.1.7

-----------------------------

* Added docs on :ref:`object_position`.

* Added fix for sizing of cell comment boxes when they cross columns/rows that
have size changes that occur after the comment is written.
Issue `403 <https://github.com/jmcnamara/XlsxWriter/issues/403>`_ and
issue `312 <https://github.com/jmcnamara/XlsxWriter/issues/312>`_.

* Added fix for the sizing of worksheet objects (images, charts, textboxes)
when the underlying cell sizes have changed and the "object_position"
parameter has been set to 1 "Move and size with cells". An additional mode 4
has been added to simulate inserting the object in hidden rows.
Issue `618 <https://github.com/jmcnamara/XlsxWriter/issues/618>`_.

* Added object positioning for charts and textboxes, it was already supported
for images. Note, the parameter is now called ``object_position``. The
previous parameter name ``positioning`` is deprecated but still supported
for images.
Issue `568 <https://github.com/jmcnamara/XlsxWriter/issues/568>`_.

1.1.6

----------------------------

* Fixed issue where images that started in hidden rows/columns weren't placed
correctly in the worksheet.
Issue `613 <https://github.com/jmcnamara/XlsxWriter/issues/613>`_.

* Fixed the mime-type reported by system ``file(1)``. The mime-type reported
by "file --mime-type"/magic was incorrect for XlsxWriter files since it
expected the ``[Content_types]`` to be the first file in the zip container.
Issue `614 <https://github.com/jmcnamara/XlsxWriter/issues/614>`_.

1.1.5

--------------------------------

* This version removes support for end of life Pythons 2.5, 2.6, 3.1, 3.2 and
3.3. For older, unsupported versions of Python use version 1.1.4 of
XlsxWriter.

1.1.4

--------------------------------

* Fix for issues where zipfile.py raises "ZIP does not support timestamps
before 1980" exception.
Issue `535 <https://github.com/jmcnamara/XlsxWriter/issues/535>`_.

1.1.3

-------------------------------

* Fix handling of ``'num_format': '0'`` in duplicate formats.
Issue `584 <https://github.com/jmcnamara/XlsxWriter/issues/584>`_.

1.1.2

-------------------------------

* Fix for issue where ``in_memory`` files weren't compressed.
Issue `573 <https://github.com/jmcnamara/XlsxWriter/issues/573>`_.

* Fix ``write()`` so that it handles array formulas as documented.
Issue `418 <https://github.com/jmcnamara/XlsxWriter/issues/418>`_.

* Fix for issue with special characters in worksheet table functions.
Issue `442 <https://github.com/jmcnamara/XlsxWriter/issues/442>`_.

* Added warnings for input issues in :func:`write_rich_string()` such as blank
strings, double formats or insufficient parameters.
Issue `425 <https://github.com/jmcnamara/XlsxWriter/issues/425>`_.

1.1.1

---------------------------------

* Added comment font name and size options.
Issue `201 <https://github.com/jmcnamara/XlsxWriter/issues/201>`_.

* Fix for issue when using text boxes in the same workbook as a chartsheet.
Issue `420 <https://github.com/jmcnamara/XlsxWriter/issues/420>`_.

1.1.0

--------------------------------

* Added functionality to align chart category axis labels. See the
``label_align`` property of the :func:`set_x_axis()` method.

* Added worksheet :func:`hide_row_col_headers()` method to turn off worksheet
row and column headings.
Issue `480 <https://github.com/jmcnamara/XlsxWriter/issues/480>`_.

* Added the :func:`set_tab_ratio()` method to set the ratio between the
worksheet tabs and the horizontal slider.
Issue `481 <https://github.com/jmcnamara/XlsxWriter/issues/481>`_.

* Fixed issue with icon conditional formats when the values were zero.
Issue `565 <https://github.com/jmcnamara/XlsxWriter/issues/565>`_.

1.0.9

------------------------------

* Fix for issue with formulas quoted as strings in conditional formats,
introduced in version 1.0.7.
Issue `564 <https://github.com/jmcnamara/XlsxWriter/issues/564>`_.

1.0.8

------------------------------

* Added named exceptions to XlsxWriter. See :ref:`exceptions`.

* Removed the implicit :func:`close()` in the destructor since it wasn't
guaranteed to work correctly and raised a confusing exception when any other
exception was triggered. **Note that this is a backward incompatible
change.** The ``with`` context manager is a better way to close
automatically, see :func:`close()`.

* Added border, fill, pattern and gradient formatting options to
:func:`set_legend()`.
Issue `545 <https://github.com/jmcnamara/XlsxWriter/issues/545>`_.

* Added ``top_right`` position to :func:`set_legend()`.
Issue `537 <https://github.com/jmcnamara/XlsxWriter/issues/537>`_.

1.0.7

------------------------------

* Fix for unicode type error in Python 3.
Issue `554 <https://github.com/jmcnamara/XlsxWriter/issues/554>`_.

1.0.6

------------------------------

* Added some performance improvements.
PR `551 <https://github.com/jmcnamara/XlsxWriter/pull/551>`_.

1.0.5

---------------------------

* Added example of how to subclass the Workbook and Worksheet objects. See
:ref:`ex_inheritance1` and :ref:`ex_inheritance2`.

* Added support for WMF and EMF image formats to the Worksheet
:func:`add_image` method.

1.0.4

-----------------------------

* Set the xlsx internal file member datetimes to 1980-01-01 00:00:00 like
Excel so that apps can produce a consistent binary file once the workbook
:func:`set_properties` ``created`` date is set.
Pull request `495 <https://github.com/jmcnamara/XlsxWriter/pull/495>`_.

* Fix for jpeg images that reported unknown height/width due to unusual SOF markers.
Issue `506 <https://github.com/jmcnamara/XlsxWriter/issues/506>`_.

* Added support for blanks in list autofilter.
Issue `505 <https://github.com/jmcnamara/XlsxWriter/issues/505>`_.

1.0.3

-----------------------------

* Added Excel 2010 data bar features such as solid fills and control over the
display of negative values. See :ref:`working_with_conditional_formats` and
:ref:`ex_cond_format`.
Feature request `502 <https://github.com/jmcnamara/XlsxWriter/issues/502>`_.

* Fixed :func:`set_column` parameter names to match docs and other methods.
Note, this is a backward incompatible change.
Issue `504 <https://github.com/jmcnamara/XlsxWriter/issues/504>`_.

* Fixed missing plotarea formatting in pie/doughnut charts.

1.0.2

-------------------------------

* Fix for cases where the hyperlink style added in the previous release didn't
work.
Feature request `455 <https://github.com/jmcnamara/XlsxWriter/issues/455>`_.

1.0.1

-------------------------------

* Changed default :func:`write_url` format to the Excel hyperlink style so that
it changes when the theme is changed and also so that it indicates that the
link has been clicked.
Feature request `455 <https://github.com/jmcnamara/XlsxWriter/issues/455>`_.

1.0.0

---------------------------------

* Added icon sets to conditional formatting. See
:ref:`working_with_conditional_formats` and :ref:`ex_cond_format`.
Feature request `387 <https://github.com/jmcnamara/XlsxWriter/issues/387>`_.

0.9.9

--------------------------------

* Added ``stop_if_true`` parameter to conditional formatting.
Feature request `386 <https://github.com/jmcnamara/XlsxWriter/issues/386>`_.

0.9.8

---------------------------

* Fixed issue where spurious deprecation warning was raised in ``-Werror`` mode.
Issue `451 <https://github.com/jmcnamara/XlsxWriter/issues/451>`_.

0.9.7

----------------------------

* Minor bug and doc fixes.

0.9.6

---------------------------

* Fix for table with data but without a header.
Issue `405 <https://github.com/jmcnamara/XlsxWriter/issues/405>`_.

* Add a warning when the number of series in a chart exceeds Excel's limit
of 255.
Issue `399 <https://github.com/jmcnamara/XlsxWriter/issues/399>`_.

0.9.5

---------------------------

* Fix for missing `remove_timezone` option in Chart class.
PR from Thomas Arnhold
`404 <https://github.com/jmcnamara/XlsxWriter/pull/404>`_.

0.9.4

--------------------------

* Added user definable removal of timezones in datetimes. See the
:func:`Workbook` constructor option ``remove_timezone`` and :ref:`Timezone
Handling in XlsxWriter <timezone_handling>`.
Issue `257 <https://github.com/jmcnamara/XlsxWriter/issues/257>`_.

* Fix duplicate header warning in :func:`add_table` when there is only one
user defined header.
Issue `380 <https://github.com/jmcnamara/XlsxWriter/issues/380>`_.

* Fix for `center_across` property in :func:`add_format`.
Issue `381 <https://github.com/jmcnamara/XlsxWriter/issues/381>`_.

0.9.3

---------------------------

* Added check to :func:`add_table` to prevent duplicate header names which
leads to a corrupt Excel file.
Issue `362 <https://github.com/jmcnamara/XlsxWriter/issues/362>`_.

0.9.2

----------------------------

* Added workbook :func:`set_size` method to set the workbook window size.

0.9.1

---------------------------

* Added font support to chart :func:`set_table`.

* Documented used of font rotation in chart :ref:`data labels
<chart_series_option_data_labels>`.
Issue `337 <https://github.com/jmcnamara/XlsxWriter/issues/337>`_.

0.9.0

---------------------------

* Added :ref:`trendline properties <chart_series_option_trendline>`:
``intercept``, ``display_equation`` and ``display_r_squared``.
Feature request `357 <https://github.com/jmcnamara/XlsxWriter/issues/357>`_.

0.8.9

---------------------------

* Fix for :func:`insert_image` issue when handling images with zero dpi.
Issue `356 <https://github.com/jmcnamara/XlsxWriter/issues/356>`_.

0.8.8

---------------------------

* Added workbook :func:`set_custom_property` method to set custom document
properties.
Feature request `355 <https://github.com/jmcnamara/XlsxWriter/issues/355>`_.

0.8.7

---------------------------

* Fix for issue when inserting read-only images on Windows.
Issue `352 <https://github.com/jmcnamara/XlsxWriter/issues/352>`_.

* Added :func:`get_worksheet_by_name()` method to allow the retrieval of a
worksheet from a workbook via its name.

* Fixed issue where internal file creation and modification dates were in the
local timezone instead of UTC.

0.8.6

-----------------------------

* Fix for ``external:`` urls where the target/anchor contains spaces.
Issue `350 <https://github.com/jmcnamara/XlsxWriter/issues/350>`_.

0.8.5

-----------------------------

* Added additional documentation on :ref:`ewx_pandas` and
:ref:`pandas_examples`.

* Added fix for :func:`set_center_across` format method.

0.8.4

-------------------------------

* Fix for :func:`write_url` exception when the URL contains two `
location/anchors. Note, URLs like this aren't strictly valid and cannot be
entered manually in Excel.
Issue `330 <https://github.com/jmcnamara/XlsxWriter/issues/330>`_.

0.8.3

-------------------------------

* Added options to configure chart axis tick placement. See :func:`set_x_axis()`.

0.8.2

-------------------------------

* Added transparency option to solid fill colors in chart areas
(:ref:`chart_formatting_fill`).
Feature request `298 <https://github.com/jmcnamara/XlsxWriter/issues/298>`_.

0.8.1

-------------------------------

* Added option to set chart tick interval.
Feature request `251 <https://github.com/jmcnamara/XlsxWriter/issues/251>`_.

0.8.0

-------------------------------

* Added additional documentation on :ref:`working_with_formulas`.

0.7.9

------------------------------

* Added chart pattern fills, see :ref:`chart_formatting_pattern` and
:ref:`ex_chart_pattern`.
Feature request `268 <https://github.com/jmcnamara/XlsxWriter/issues/268>`_.

0.7.8

------------------------------

* Add checks for valid and non-duplicate worksheet table names.
Issue `319 <https://github.com/jmcnamara/XlsxWriter/issues/319>`_.

0.7.7

-------------------------------

* Added support for table header formatting and a fix for wrapped lines in the
header.
Feature request `287 <https://github.com/jmcnamara/XlsxWriter/issues/287>`_.

0.7.6

------------------------------

* Fix for images with negative offsets.
Issue `273 <https://github.com/jmcnamara/XlsxWriter/issues/273>`_.

0.7.5

------------------------------

* Allow hyperlinks longer than 255 characters when the link and anchor are
each less than or equal to 255 characters.

* Added ``hyperlink_base`` document property.
Feature request `306 <https://github.com/jmcnamara/XlsxWriter/issues/306>`_.

0.7.4

---------------------------------

* Added option to allow data validation input messages with the 'any' validate
parameter.

* Fixed url encoding of links to external files and directories.
Issue `278 <https://github.com/jmcnamara/XlsxWriter/issues/278>`_.

0.7.3

--------------------------

* Added documentation on :ref:`ewx_pandas` and :ref:`pandas_examples`.

* Added support for ``with`` context manager.
Pull request `239 <https://github.com/jmcnamara/XlsxWriter/pull/239>`_.

0.7.2

-----------------------------

* Added support for textboxes in worksheets. See :func:`insert_textbox()` and
:ref:`working_with_textboxes` for more details.
Feature request `107 <https://github.com/jmcnamara/XlsxWriter/issues/107>`_.

0.7.1

-----------------------------

* Added gradient fills to chart objects such as the plot area of columns. See
:ref:`chart_formatting_gradient` and :ref:`ex_chart_gradient`.
Feature request `228 <https://github.com/jmcnamara/XlsxWriter/issues/228>`_.

0.7.0

-----------------------------

* Added support for display units in chart axes. See :func:`set_x_axis()`.
Feature request `185 <https://github.com/jmcnamara/XlsxWriter/issues/185>`_.

* Added ``nan_inf_to_errors`` :func:`Workbook` constructor option to allow
mapping of Python `nan/inf` value to Excel error formulas in ``write()`` and
``write_number()``.
Feature request `150 <https://github.com/jmcnamara/XlsxWriter/issues/150>`_.

0.6.9

-----------------------------

* Added support for clustered category charts. See :ref:`ex_chart_clustered`
for details.
Feature request `180 <https://github.com/jmcnamara/XlsxWriter/issues/180>`_.

* Refactored the :ref:`format` and formatting documentation.

0.6.8

-----------------------------

* Added option to combine two different chart types. See the
:ref:`chart_combined_charts` section and :ref:`ex_chart_combined` and
:ref:`ex_chart_pareto` for more details.
Feature request `72 <https://github.com/jmcnamara/XlsxWriter/issues/72>`_.

0.6.7

----------------------------

* Added option to add function value in worksheet :func:`add_table`.
Feature request `216 <https://github.com/jmcnamara/XlsxWriter/issues/216>`_.

* Fix for A1 row/col numbers below lower bound.
Issue `212 <https://github.com/jmcnamara/XlsxWriter/issues/212>`_.

0.6.6

-------------------------------

* Fix for incorrect shebang line in `vba_extract.py` packaged in wheel.
Issue `211 <https://github.com/jmcnamara/XlsxWriter/issues/211>`_.

* Added docs and example for diagonal cell border.
See :ref:`ex_diagonal_border`.

0.6.5

--------------------------------

* Added worksheet quoting for chart names in lists.
Issue `205 <https://github.com/jmcnamara/XlsxWriter/issues/205>`_.

* Added docs on how to find and set VBA codenames.
Issue `202 <https://github.com/jmcnamara/XlsxWriter/issues/202>`_.

* Fix Python3 issue with unused charts.
Issue `200 <https://github.com/jmcnamara/XlsxWriter/issues/200>`_.

* Enabled warning for missing category is scatter chart.
Issue `197 <https://github.com/jmcnamara/XlsxWriter/issues/197>`_.

* Fix for upper chart style limit. Increased the chart style limit from
42 to the correct 48.
Issue `192 <https://github.com/jmcnamara/XlsxWriter/issues/192>`_.

* Raise warning if a chart is inserted more than once.
Issue `184 <https://github.com/jmcnamara/XlsxWriter/issues/184>`_.

0.6.4

--------------------------------

* Fix for issue where fonts applied to data labels raised exception.
Issue `179 <https://github.com/jmcnamara/XlsxWriter/issues/179>`_.

* Added option to allow explicit text axis types for charts, similar to date
axes.
Feature request `178 <https://github.com/jmcnamara/XlsxWriter/issues/178>`_.

* Fix for issue where the bar/column chart gap and overlap weren't
applied to the secondary axis.
Issue `177 <https://github.com/jmcnamara/XlsxWriter/issues/177>`_.

0.6.3

-------------------------------

* Added support for adding VBA macros to workbooks. See :ref:`macros`.
Feature request `126 <https://github.com/jmcnamara/XlsxWriter/issues/126>`_.

0.6.2

-------------------------------

* Added chart axis line and fill properties.
Feature request `88 <https://github.com/jmcnamara/XlsxWriter/issues/88>`_.

0.6.1

-------------------------------

* Added chart specific handling of data label positions since not all positions
are available for all chart types.
Issue `170 <https://github.com/jmcnamara/XlsxWriter/issues/170>`_.

* Added number formatting
(issue `130 <https://github.com/jmcnamara/XlsxWriter/issues/130>`_),
font handling, separator and legend key for data labels.
See :ref:`chart_series_option_data_labels`

* Fix for non-quoted worksheet names containing spaces and non-alphanumeric
characters.
Issue `167 <https://github.com/jmcnamara/XlsxWriter/issues/167>`_.

0.6.0

-------------------------------

* Added option to add images to headers and footers. See
:ref:`ex_headers_footers`.
Feature request `133 <https://github.com/jmcnamara/XlsxWriter/issues/133>`_.

* Fixed issue where non 96dpi images weren't scaled properly in Excel.
Issue `164 <https://github.com/jmcnamara/XlsxWriter/issues/164>`_.

* Added option to not scale header/footer with page. See :func:`set_header`.
Feature request `134 <https://github.com/jmcnamara/XlsxWriter/issues/134>`_.

0.5.9

-------------------------------

* Removed ``egg_base`` requirement from ``setup.cfg`` which was preventing
installation on Windows.
Issue `162 <https://github.com/jmcnamara/XlsxWriter/issues/162>`_.

* Fix for issue where X axis title formula was overwritten by the Y axis
title.
Issue `161 <https://github.com/jmcnamara/XlsxWriter/issues/161>`_.

0.5.8

---------------------------------

* Added support for Doughnut charts.
Feature request `157 <https://github.com/jmcnamara/XlsxWriter/issues/157>`_.

* Added support for wheel packages.
Feature request `156 <https://github.com/jmcnamara/XlsxWriter/issues/156>`_.

* Made the exception handling in ``write()`` clearer for unsupported types so
that it raises a more accurate TypeError instead of a ValueError.
Issue `153 <https://github.com/jmcnamara/XlsxWriter/issues/153>`_.

0.5.7

------------------------------

* Added support for :func:`insert_image` images from byte streams to allow
images from URLs and other sources.
Feature request `118 <https://github.com/jmcnamara/XlsxWriter/issues/118>`_.

* Added :func:`write_datetime` support for datetime.timedelta.
Feature request `128 <https://github.com/jmcnamara/XlsxWriter/issues/128>`_.

0.5.6

----------------------------

* Fix for spurious exception message when :func:`close()` isn't used.
Issue `131 <https://github.com/jmcnamara/XlsxWriter/issues/131>`_.

* Fix for formula string values that look like numbers.
Issue `122 <https://github.com/jmcnamara/XlsxWriter/issues/122>`_.

* Clarify :func:`print_area()` documentation for complete row/column ranges.
Issue `139 <https://github.com/jmcnamara/XlsxWriter/issues/139>`_.

* Fix for unicode strings in data validation lists.
Issue `135 <https://github.com/jmcnamara/XlsxWriter/issues/135>`_.

0.5.5

--------------------------

* Fix for incorrect chart offsets in :func:`insert_chart()` and
:func:`set_size()`.

0.5.4

--------------------------

* Added image positioning option to :func:`insert_image` to control how
images are moved in relation to surrounding cells.
Feature request `117 <https://github.com/jmcnamara/XlsxWriter/issues/117>`_.

* Fix for chart ``error_bar`` exceptions.
Issue `115 <https://github.com/jmcnamara/XlsxWriter/issues/115>`_.

* Added clearer reporting of nested exceptions in ``write()`` methods.
Issue `108 <https://github.com/jmcnamara/XlsxWriter/pull/108>`_.

* Added support for ``inside_base`` data label position in charts.

0.5.3

--------------------------------

* Added checks and warnings for data validation limits.
Issue `89 <https://github.com/jmcnamara/XlsxWriter/issues/89>`_.

* Added option to add hyperlinks to images. Thanks to Paul Tax.

* Added Python 3 Http server example. Thanks to Krystian Rosinski.

* Added :func:`set_calc_mode` method to control automatic calculation of
formulas when worksheet is opened. Thanks to Chris Tompkinson.

* Added :func:`use_zip64` method to allow ZIP64 extensions when writing
very large files.

* Fix to handle '0' and other number like strings as number formats.
Issue `103 <https://github.com/jmcnamara/XlsxWriter/issues/103>`_.

* Fix for missing images in ``in_memory`` mode.
Issue `102 <https://github.com/jmcnamara/XlsxWriter/issues/102>`_.

0.5.2

--------------------------------

* Added date axis handling to charts. See :ref:`ex_chart_date_axis`.
Feature request `73 <https://github.com/jmcnamara/XlsxWriter/issues/73>`_.

* Added support for non-contiguous chart ranges.
Feature request `44 <https://github.com/jmcnamara/XlsxWriter/issues/44>`_.

* Fix for low byte and control characters in strings.
Issue `86 <https://github.com/jmcnamara/XlsxWriter/issues/86>`_.

* Fix for chart titles with exclamation mark.
Issue `83 <https://github.com/jmcnamara/XlsxWriter/issues/83>`_.

* Fix to remove duplicate :func:`set_column` entries.
Issue `82 <https://github.com/jmcnamara/XlsxWriter/issues/82>`_.

0.5.1

-------------------------------

* Added interval unit option for category axes.
Feature request `69 <https://github.com/jmcnamara/XlsxWriter/issues/69>`_.

* Fix for axis name font rotation.

* Fix for several minor issues with Pie chart legends.

0.5.0

--------------------------------

* Added :ref:`Chartsheets <Chartsheet>` to allow single worksheet charts.
Feature request `10 <https://github.com/jmcnamara/XlsxWriter/issues/10>`_.

0.4.9

--------------------------------

* Added :ref:`chart object positioning and sizing <chart_layout>` to allow
positioning of plotarea, legend, title and axis names.
Feature request `66 <https://github.com/jmcnamara/XlsxWriter/issues/66>`_.

* Added :func:`set_title()` ``none`` option to turn off automatic titles.

* Improved :func:`define_name()` name validation.

* Fix to prevent modification of user parameters in
:func:`conditional_format()`.

0.4.8

--------------------------------

* Added ``in_memory`` :func:`Workbook` constructor option to allow XlsxWriter
to work on Google App Engine.
Feature request `28 <https://github.com/jmcnamara/XlsxWriter/issues/28>`_.

0.4.7

-------------------------------

* Added fix for markers on non-marker scatter charts.
Issue `62 <https://github.com/jmcnamara/XlsxWriter/issues/62>`_.

* Added custom error bar option. Thanks to input from Alex Birmingham.

* Changed Html docs to Bootstrap theme.

* Added :ref:`ex_merge_rich`.

0.4.6

-------------------------------

* Added font formatting to chart legends.

0.4.5

-------------------------------

* Added ``position_axis`` chart axis option.

* Added optional list handling for chart names.

0.4.4

-------------------------------

* Documented use of :ref:`cell utility <cell_utility>` functions.

* Fix for tables added in non-sequential order. Closes
`51 <https://github.com/jmcnamara/XlsxWriter/issues/51>`_ reported by
calfzhou.

0.4.3

---------------------------------

* Fix for comments overlying columns with non-default width.
Issue `45 <https://github.com/jmcnamara/XlsxWriter/issues/45>`_.

0.4.2

------------------------------

* Added a default blue underline hyperlink format for :func:`write_url()`.

* Added :func:`Workbook` constructor options ``strings_to_formulas`` and
``strings_to_urls`` to override default conversion of strings in write().

0.4.1

------------------------------

* Fix for charts and images that cross rows and columns that are hidden or
formatted but which don't have size changes. Issue
`42 <https://github.com/jmcnamara/XlsxWriter/issues/42>`_ reported by
Kristian Stobbe.

0.4.0

------------------------------

* Added more generic support for JPEG files. Issue
`40 <https://github.com/jmcnamara/XlsxWriter/issues/40>`_ reported by Simon
Breuss.

* Fix for harmless Python 3 installation warning. Issue
`41 <https://github.com/jmcnamara/XlsxWriter/issues/41>`_ reported by James
Reeves.

0.3.9

------------------------------

* Added fix for minor issue with :func:`insert_image` for images that extend
over several cells.

* Added fix to ensure formula calculation on load regardless of Excel version.

0.3.8

------------------------------

* Added handling for Decimal(), Fraction() and other float types to the
:func:`write()` function.

* Added Python 2.5 and Jython support. Thanks to Jonas Diemer for the patch.

0.3.7

------------------------------

* Added :func:`write_boolean()` function to write Excel boolean values. Feature request
`37 <https://github.com/jmcnamara/XlsxWriter/issues/37>`_. Also added
explicit handling of Python bool values to the :func:`write()` function.

* Changed :func:`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 behavior can be
obtained by setting the constructor option to True.
**Note** This is a backward incompatibility.

0.3.6

-----------------------------

* Simplified import based on a suggestion from John Yeung. Feature request
`26 <https://github.com/jmcnamara/XlsxWriter/issues/26>`_.

* Fix for NAN/INF converted to invalid numbers in write(). Issue
`30 <https://github.com/jmcnamara/XlsxWriter/issues/30>`_.

* Added :func:`Workbook` constructor option ``strings_to_numbers`` to
override default conversion of number strings to numbers in write().

* Added :func:`Workbook` constructor option ``default_date_format`` to
allow a default date format string to be set. Feature request
`5 <https://github.com/jmcnamara/XlsxWriter/issues/5>`_.

0.3.5

-----------------------------

* Reverted back to using codecs for file encoding (versions <= 0.3.1) to avoid
numerous UTF-8 issues in Python2/3.

0.3.4

-----------------------------

* Added Chart line smoothing option. Thanks to Dieter Vandenbussche.

* Added Http Server example (:ref:`ex_http_server`). Thanks to
Alexander Afanasiev.

* Fixed inaccurate column width calculation. Closes
`27 <https://github.com/jmcnamara/XlsxWriter/issues/27>`_. Thanks to
John Yeung.

* Added chart axis font rotation.

0.3.3

-----------------------------

* Minor packaging fixes
`14 <https://github.com/jmcnamara/XlsxWriter/issues/14>`_ and
`19 <https://github.com/jmcnamara/XlsxWriter/issues/19>`_.

* Fixed explicit UTF-8 file encoding for Python 3.
PR from Alexandr Shadchin,
`15 <https://github.com/jmcnamara/XlsxWriter/pull/15>`_.

* Fixed invalid string formatting resulted in misleading stack trace.
PR from Andrei Korostelev,
`21 <https://github.com/jmcnamara/XlsxWriter/pull/21>`_.

0.3.2

-----------------------------

* Speed optimizations. The module is now 10-15% faster on average.

0.3.1

-----------------------------

* Added chart support. See the :ref:`chart_class`, :ref:`working_with_charts`
and :ref:`chart_examples`.

0.3.0

-----------------------------

* Added worksheet sparklines. See :ref:`sparklines`, :ref:`ex_sparklines1` and
:ref:`ex_sparklines2`

0.2.9

-----------------------------

* Added worksheet tables. See :ref:`tables` and :ref:`ex_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.

0.2.8

-----------------------------

* Added worksheet outlines and grouping. See :ref:`outlines`.

0.2.7

-----------------------------

* Added :func:`set_default_row` method. See :ref:`ex_hide_row_col`.

* Added hide_row_col.py, hide_sheet.py and text_indent.py examples.

0.2.6

-----------------------------

* Added :func:`freeze_panes` and :func:`split_panes` methods.
See :ref:`ex_panes` .

* Added :func:`set_selection` method to select worksheet cell or range of
cells.

0.2.5

-----------------------------

* Added additional :func:`Workbook` parameters ``'tmpdir'`` and
``'date_1904'``.

0.2.4

-----------------------------

* Added :func:`Workbook` ``'constant_memory'`` constructor property to
minimize memory usage when writing large files. See :ref:`memory_perf`
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.

0.2.3

-----------------------------

* Fixed bug that was killing performance for medium sized files. The module
is now 10x faster than previous versions. Reported by John Yeung.

0.2.2

-----------------------------

* Added worksheet data validation options. See the :func:`data_validation`
method, :ref:`working_with_data_validation` and :ref:`ex_data_valid`.

* There are now over 600 unit tests including more than 130 tests that
compare against the output of Excel.

0.2.1

-----------------------------

* Added support for datetime.datetime, datetime.date and datetime.time
to the :func:`write_datetime` method. GitHub issue
`3 <https://github.com/jmcnamara/XlsxWriter/issues/3>`_.
Thanks to Eduardo (eazb) and Josh English for the prompt.

0.2.0

-----------------------------

* Added conditional formatting. See the :func:`conditional_format` method,
:ref:`working_with_conditional_formats` and :ref:`ex_cond_format`.

0.1.9

-----------------------------

* Added Python 2.6 support. All tests now pass in the following versions:

* Python 2.6
* Python 2.7.2
* Python 2.7.3
* Python 3.1
* Python 3.2
* Python 3.3.0

0.1.8

-----------------------------

* Fixed Python 3 support.

0.1.7

-----------------------------

* Added the option to write cell comments to a worksheet. See
:func:`write_comment` and :ref:`cell_comments`.

0.1.6

-----------------------------

* Added :func:`insert_image` worksheet method to support inserting PNG and
JPEG images into a worksheet. See also the example program
:ref:`ex_insert_image`.

* There are now over 500 unit tests including more than 100 tests that
compare against the output of Excel.

0.1.5

-----------------------------

* Added the :func:`write_rich_string` worksheet method to allow writing of
text with multiple formats to a cell. Also added example program:
:ref:`ex_rich_strings`.

* Added the :func:`hide` worksheet method to hide worksheets.

* Added the :func:`set_first_sheet()` worksheet method.

0.1.4

----------------------------

* Added the :func:`protect` worksheet method to allow protection of cells
from editing. Also added example program: :ref:`ex_protection`.

0.1.3

----------------------------

* Added worksheet methods:

* :func:`set_zoom` for setting worksheet zoom levels.
* :func:`right_to_left` for middle eastern versions of Excel.
* :func:`hide_zero` for hiding zero values in cells.
* :func:`set_tab_color` for setting the worksheet tab color.

0.1.2

----------------------------

* Added autofilters. See :ref:`working_with_autofilters` for more details.

* Added the :func:`write_row` and :func:`write_column` worksheet methods.

0.1.1

----------------------------

* Added the :func:`write_url` worksheet method for writing hyperlinks to
a worksheet.

0.1.0

--------------------------------

* Added the :func:`set_properties` workbook method for setting document
properties.

* Added several new examples programs with documentation. The examples now
include:

* array_formula.py
* cell_indentation.py
* datetimes.py
* defined_name.py
* demo.py
* doc_properties.py
* headers_footers.py
* hello_world.py
* merge1.py
* tutorial1.py
* tutorial2.py
* tutorial3.py
* unicode_polish_utf8.py
* unicode_shift_jis.py

0.0.9

--------------------------------

* Added the :func:`define_name` method to create defined names and ranges
in a workbook or worksheet.

* Added the :func:`worksheets` method as an accessor for the worksheets in a
workbook.

0.0.8

--------------------------------

* Added the :func:`merge_range` method to merge worksheet cells.

0.0.7

--------------------------------

* Added final page setup methods to complete the page setup section.

* :func:`print_area`
* :func:`fit_to_pages`
* :func:`set_start_page`
* :func:`set_print_scale`
* :func:`set_h_pagebreaks`
* :func:`set_v_pagebreaks`

0.0.6

--------------------------------

* Added page setup method.

* :func:`print_row_col_headers`

0.0.5

--------------------------------

* Added page setup methods.

* :func:`repeat_rows`
* :func:`repeat_columns`

0.0.4

--------------------------------

* Added Python 3 support with help from John Evans. Tested with:

* Python-2.7.2
* Python-2.7.3
* Python-3.2
* Python-3.3.0

* Added page setup methods.

* :func:`center_horizontally`
* :func:`center_vertically`
* :func:`set_header`
* :func:`set_footer`
* :func:`hide_gridlines`

0.0.3

--------------------------------

* Added page setup method.

* :func:`set_margins`

0.0.2

--------------------------------

* Added page setup methods.

* :func:`set_landscape`
* :func:`set_portrait`
* :func:`set_page_view`
* :func:`set_paper`
* :func:`print_across`

0.0.1

--------------------------------

* First public release.