The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
Revision history for Perl module Excel::Writer::XLSX.

     + New feature/improvement.
     - Removed/deprecated feature.
     ! Bug fix.


0.64 December 22 2012

    + Added the option to format individual points in a chart series.
      This allows Pie chart segments to be formatted.


0.63 December 19 2012

    + Added Chart data tools such as:
          Error Bars
          Up-Down Bars
          High-Low Lines
          Drop Lines.
      See the chart_data_tool.pl example.


0.62 December 12 2012

    + Added option for adding a data table to a Chart X-axis.
      See output from chart_data_table.pl example.


0.61 December 11 2012

    + Allow a cell url string to be over written with a number or formula
      using a second write() call to the same cell. The url remains intact.
      Issue #48.

    + Added set_default_row() method to set worksheet default values for
      rows.

    + Added Chart set_size() method to set the chart dimensions.


0.60 December 5 2012

    + Added Excel form buttons via the worksheet insert_button() method.
      This allows the user to tie the button to an embedded macro imported
      using add_vba_project(). 
      The portal to the dungeon dimensions is now fully open.

    ! Fix escaping of special character in URLs to write_url(). 
      Issue #45.

    ! Fix for 0 access/modification date on vbaProject.bin files extracted
      using extract_vba. The date isn't generally set correctly in the
      source xlsm file but this caused issues on Windows.


0.59 November 26 2012

    + Added macro support via VBA projects extracted from existing Excel
      xlsm files. User defined functions can be called from worksheets
      and macros can be called by the user but they cannot, currently,
      be linked to form elements such as buttons.


0.58 November 23 2012

    + Added chart area and plot area formatting.


0.57 November 21 2012

    + Add major and minor axis chart gridline formatting.


0.56 November 18 2012

    ! Fix for issue where chart creation order had to be the same
      as the insertion order or charts would be out of sync.
      Frederic Claude Sievert and Hurricup. Issue #42.

    ! Fixed issue where gridlines didn't work in Scatter and Stock
      charts. Issue #41.

    ! Fixed default XML encoding to avoid/solve various issues with XML
      encoding created by the XML changes in version 0.51. Issue #43.


0.55 November 10 2012

    + Added Sparklines.

    ! Fix for issue with "begins with" and "ends with" Conditional
      Formatting. Issue #40.


0.54 November 5 2012

    + Added font manipulation to Charts.

    + Added number formats to Chart axes.

    + Added Radar Charts.

    ! Fix for XML encoding in write_url() internal/external 
      links. Issue #37.


0.53 October 10 2012

    ! Fix for broken MANIFEST file.


0.52 October 9 2012

    ! Added dependency on Date::Calc to xl_parse_date.t test.
      Closes #30 and RT#79790.

    ! Fix for XML encoding of URLs. Closes #31.

    + Refactored XMLWriter into a single class. This breaks the last
      remaining ties to XML::Writer to allow for future additions
      and optimisations. Renamed methods for consistency.


0.51 September 16 2012

    + Speed optimisations.

      This release contains a series of optimisations aimed
      at increasing the speed of Excel::Writer::XLSX. The
      overall improvement is around 66%.
      See the SPEED AND MEMORY USAGE section of the documentation.

    + Memory usage optimisations.

      This fixes an issue where the memory used for the worksheet
      data tables was freed but then brought back into usage due
      to the use of an array as the base data structure. This
      meant that the memory usage still continued to grow with
      large row counts.


    ! Added warning about Excel limit to 65,530 urls per worksheet.

    ! Limit URLs to Excel's limit of 255 chars. Fixes Issue #26.

    ! Fix for whitespace in urls. Fixes Issue #25.

    ! Fix for solid fill of type 'none' is chart series.
      Closes issue #27 reported on Stack Overflow.

    ! Modified write_array_formula() to apply format over full range.
      Fixes issue #18.

    ! Fix for issue with chart formula referring to non-existent sheet name.
      It is now a fatal error to specify a chart series formula that
      refers to an non-existent worksheet name. Fixes issue #17.


0.50 September 9 2012

     + Added option to add secondary axes to charts.
       Thanks to Eric Johnson and to Foxtons for sponsoring the work.

     + Added add_table() method to add Excel tables to worksheets.

     ! Fix for right/left auto shape connection when destination
       is left of source shape. Thanks to Dave Clarke for fix.

     ! Fix for issue #16. Format::copy() method not protecting values.
       The Format copy() method over-writes certain new properties that
       weren't in Spreadsheet::WriteExcel. This fixes the issue by
       storing and restoring the properties during copy.

     ! Fix for issue #15: write_url with local sub directory.
       Local sub-directories were incorrectly treated as
       file:// external.

     ! Fix for for issue #14: Non-numeric data in chart value axes
       are now converted to zero in chart data cache, as required
       by Excel.


0.49 July 12 2012

    + Added show_blanks_as() chart method to control the display of
      blank data.

    + Added show_hidden_data() chart method to control the display of
      data in hidden rows and columns.

    ! Added fix for fg/bg colours in conditional formats which are
      shared with cell formats.
      Reported by Patryk Kwiatkowski.

    ! Fix for xl_parse_time() with hours > 24. Github issue #11.

    ! Fixed lc() warning in Utility.pm in recent perls. Github issue #10.

    ! Fixed issue with non-integer shape dimensions. Thanks Dave Clarke.

    ! Fixed error handling for shape connectors. Thanks Dave Clarke.


0.48 June 25 2012

    + Added worksheet shapes. A major new feature.
      Patch, docs, tests and example programs by Dave Clarke.

    + Added stacked and percent_stacked chart subtypes to Area charts.

    ! Added fix for chart names in embedded charts.
      Reported by Matt Freel.

    ! Fixed bug with Unicode characters in rich strings.
      Reported by Michiel van Rhee.


0.47 April 10 2012

    + Additional conditional formatting options such as color, type and value
      for 2_color_scale, 3_color_scale and data_bar. Added option for non-
      contiguous data ranges as well.

    + Additional chart data label parameters such as position, leader lines
      and percentage. Initial patch by George E. Tarrant III.

    ! Fixed for Autofilter filter_column() offset bug reported by
      Krishna Rajendran.

    ! Fix for write_url() where url contains invalid whitespace, RT #75808,
      reported by Oleg G. The write_url() method now throws a warning and
      rejects the invalid url to avoid file corruption.

0.46 February 10 2012

    ! Fix for x-axis major/minor units in scatter charts.
      Reported by Carey Drake.


0.45 January 9 2012

    ! Changed from File::Temp tempdir() to newdir() to cleanup the temp dir at
      object destruction  rather than the program exit. Also improved error
      reporting when mkdir() fails.
      Reported by Kevin Ruscoe.

    ! Fix to escape control characters in strings.
      Reported by Kevin Ruscoe.

0.44 January 5 2012

    ! Fix for missing return value from Workbook::close() with filehandles.
      RT 73724. Reported and patched by Charles Bailey.

    ! Fixed support special filename/filehandle '-'.
      RT 73424. Reported by YuvalL and Charles Bailey.

    ! Fix for non-working reverse x_axis with Scatter charts.
      Reported by Viqar Abbasi.


0.43 December 18 2011

    + Added chart axis label position option.

    + Added invert_if_negative option for chart series fills.


0.42 December 17 2011

    ! Fix for set_optimization() where first row isn't 0.
      Reported by Giulio Orsero.

    ! Fix to preserve whitespace in inline strings.
      Reported by Giulio Orsero.

0.41 December 10 2011

    ! Increased IO::File requirement to 1.14 to prevent taint issues on some
      5.8.8/5.8.6 platforms.


0.40 December 7 2011

    ! Fix for unreadable xlsx files when generator program has -l on the
      commandline or had redefined $/. Github issue #7.
      Reported by John Riksten.


0.39 December 3 2011

    ! Fix for spurious Mac ._Makefile.PL in the distro which prevented
      automated testing and installation. Github issue #5.
      Reported by Tobias Oetiker.

    ! Fix for failing test sub_convert_date_time.t due to extra precision
      on longdouble perls. RT #71762
      Reported by Douglas Wilson.


0.38 December 3 2011

    + Backported from perl 5.10.0 to perl 5.8.2.
      You are killing me guys. Killing me.


0.37 December 2 2011

     + Added additional axis options: minor and major units, log base
       and axis crossing.


0.36 November 29 2011

    + Added "min" and "max" options to axis ranges via set_x_axis() and
      set_y_axis.


0.35 November 27 2011

    + Added Scatter chart subtypes: markers_only (the default),
     straight_with_markers, straight, smooth_with_markers and smooth.


0.34 November 4 2011

    + Added set_optimization() method to reduce memory usage for very large
     data sets.


0.33 October 28 2011

    + Added addition conditional formatting types: cell, date, time_period,
      text, average, duplicate, unique, top, bottom, blanks, no_blanks,
      errors, no_errors, 2_color_scale, 3_color_scale, data_bar  and formula.


0.32 October 20 2011

    ! Fix for format alignment bug.
      Reported by Roderich Schupp.


0.31 October 18 2011

    + Added basic conditional formatting via the conditional_format()
      Worksheet method. More conditional formatting types will follow.

    + Added conditional_format.pl example program.


0.30 October 6 2011

    + Added stacked and percent_stacked chart subtypes to Bar and Column
      chart types.


0.29 October 5 2011

    + Added the merge_range_type() method for finer control over the types
      written using merge_range().


0.28 October 4 2011

    + Added default write_formula() value for compatibility with Google docs.

    + Updated Example.pm docs with Excel 2007 images.


0.27 October 2 2011

    + Excel::Writer::XLSX is now 100% functionally and API compatible
      with Spreadsheet::WriteExcel.

    + Added outlines and grouping functionality.

    + Added outline.pl and outline_collapsed.pl example programs.


0.26 October 1 2011

     + Added cell comment methods and options.
       Thanks to Barry Downes for providing the interim functionality

     + Added comments1.pl and comments2.pl example programs.


0.25 June 16 2011

     + Added option to add defined names to workbooks and worksheets.
       Added defined_name.pl example program.

     ! Fix for fit_to_pages() with zero values.
       Reported by Aki Huttunen.


0.24 June 11 2011

    + Added data validation and data_validate.pl example.

    + Added the option to turn off data series in chart legends.


0.23 May 26 2011

    ! Fix for charts ranges containing empty values.


0.22 May 22 2011

    + Added 'reverse' option to set_x_axis() and set_y_axis() in
      charts.


0.21 May 11 2011

    ! Fixed support for filehandles.

    + Added write_to_scalar.pl and filehandle.pl example programs.


0.20 May 10 2011

    ! Fix for programs running under taint mode.

    + Added set_tempdir().

    ! Fix for color formatting in chartsheets.


0.19 May 5 2011

    + Added new chart formatting options for line properties,
      markers, trendlines and data labels. See Chart.pm.

    + Added partial support for insert_image().

    + Improved backward compatibility for deprecated methods
      store_formula() and repeat_formula().

    ! Fixed missing formatting for array formulas.
      Reported by Cyrille Gourves.

    ! Fixed issue with chart scaling that caused "unreadable content"
      Excel error.


0.18 April 7 2011

    + Added set_properties() method to add document properties.
      Added properties.pl and tests.


0.17 April 4 2011

    + Added charting feature. See Chart.pm.

    ! Fix for file corruption issue when there are more than 10 custom colours.
      Reported by Brian R. Landy.


0.16 March 4 2011

    ! Clarified support for deprecated methods in documentation and added
      backward compatible methods in some cases.

    ! Fix for center_horizontally() issue.
      Reported by Giulio Orsero.

    ! Fix for number like strings getting written as strings instead of numbers.
      Reported by Giulio Orsero.


0.15 March 1 2011

    ! Fix for issues with set_row() not passing on format to cells
      in the row. Reported by Giulio Orsero.

    ! Fixes for related issue in set_column().


0.14 February 26 2011

    + Added write_rich_string() method to write a string with multiple
      formats.

    + Added rich_strings.pl example program.

    + Added set_1904() method for dates with a 1904 epoch.

    + Added date_time.pl example program.

    ! Fixed issue where leading and trailing whitespace in cell strings
      wasn't preserved.


0.13 February 22 2011

    + Added additional page setup methods:
      set_zoom()
      right_to_left()
      hide_zero()
      set_custom_color()
      set_tab_color()
      protect()

    + Added Cell property methods:
      set_locked()
      set_hidden()

    + Added example programs:
      hide_sheet.pl
      protection.pl
      right_to_left.pl
      tab_colors.pl


0.12 February 19 2011

    + Added set_selection() method for selecting cells.


0.11 February 17 2011

    ! Fix for temp dirs not been removed after xlsx file creation.
      http://rt.cpan.org/Ticket/Display.html?id=65816
      Reported by Andreas Koenig.


0.10 February 17 2011

    + Added freeze_panes() and split_panes().

    + Added panes.pl example program.


0.09 February 13 2011

    + Added write_url() for internal and external hyperlinks.

    + Added hyperlink1+2.pl example programs.


0.08 February 3 2011

    + Added autofilter(), column_filter() and column_filter_list() methods.

    + Added autofilter.pl example program.


0.07 January 28 2011

    + Added additional Page Setup methods.
      set_page_view()
      repeat_rows()
      repeat_columns()
      hide_gridlines()
      print_row_col_headers()
      print_area()
      print_across()
      fit_to_pages()
      set_start_page()
      set_print_scale()
      set_h_pagebreaks()
      set_v_pagebreaks()

    + Added headers.pl example program.


0.06 January 19 2011

    ! Added fix for XML characters in attributes.
      Reported by John Roll.

    + Added initial Page Setup methods.
      set_landscape()
      set_portrait()
      set_paper()
      center_horizontally()
      center_vertically()
      set_margins()
      set_header()
      set_footer()


0.05 January 4 2011

    + Added support for array_formulas. See the docs for write_array_formula()
      and the example program.


0.04 January 3 2011

    + Added merge_range() for merging cells. With tests and examples.


0.03 January 3 2011

    + Optimisations. The module is now 100% faster.


0.02 October 12 2010

    ! Fixed dependencies in Makefile.


0.01 October 11 2010

    First CPAN release.