2016-08-28 07:29:42 +00:00
# Changelog
2017-09-08 17:56:23 +00:00
2016-08-28 07:29:42 +00:00
All notable changes to this project will be documented in this file.
2018-10-23 11:26:25 +00:00
The format is based on [Keep a Changelog ](https://keepachangelog.com )
and this project adheres to [Semantic Versioning ](https://semver.org ).
2016-08-28 07:29:42 +00:00
2019-05-26 08:05:45 +00:00
## [Unreleased]
2019-05-30 08:05:37 +00:00
### Added
- Added support for the SWITCH function - [Issue #963 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/963 ) and [PR #983 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/983 )
2019-05-30 08:06:05 +00:00
- Add accounting number format style [#974 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/974 )
2019-05-30 08:05:37 +00:00
2019-05-26 08:05:45 +00:00
### Fixed
- Whitelist `tsv` extension when opening CSV files [#429 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/429 )
2019-02-01 14:01:19 +00:00
- Fix a SUMIF warning with some versions of PHP when having different length of arrays provided as input [#873 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/873 )
2019-05-30 09:59:01 +00:00
- Fix incorrectly handled backslash-escaped space characters in number format
2019-05-26 08:05:45 +00:00
2019-05-26 02:49:41 +00:00
## [1.7.0] - 2019-05-26
2019-02-16 22:11:16 +00:00
- Added support for inline styles in Html reader (borders, alignment, width, height)
2019-02-18 21:56:32 +00:00
- QuotedText cells no longer treated as formulae if the content begins with a `=`
- Clean handling for DDE in formulae
2019-03-06 21:37:06 +00:00
### Fixed
2019-02-25 22:20:50 +00:00
- Fix handling for escaped enclosures and new lines in CSV Separator Inference
2019-03-06 21:37:06 +00:00
- Fix MATCH an error was appearing when comparing strings against 0 (always true)
2019-04-15 19:39:11 +00:00
- Fix wrong calculation of highest column with specified row [#700 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/700 )
2019-04-15 19:37:23 +00:00
- Fix VLOOKUP
2019-04-15 19:33:07 +00:00
- Fix return type hint
2019-02-16 22:11:16 +00:00
2019-01-02 04:42:54 +00:00
## [1.6.0] - 2019-01-02
2018-11-20 19:57:38 +00:00
2018-11-29 21:25:31 +00:00
### Added
- Refactored Matrix Functions to use external Matrix library
2018-11-19 13:48:30 +00:00
- Possibility to specify custom colors of values for pie and donut charts - [#768 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/768 )
2018-11-29 21:25:31 +00:00
2018-11-29 21:52:48 +00:00
### Fixed
- Improve XLSX parsing speed if no readFilter is applied - [#772 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/772 )
2018-11-19 13:48:30 +00:00
- Fix column names if read filter calls in XLSX reader skip columns - [#777 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/777 )
2019-04-15 19:40:20 +00:00
- XLSX reader can now ignore blank cells, using the setReadEmptyCells(false) method. - [#810 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/810 )
2018-12-13 14:32:23 +00:00
- Fix LOOKUP function which was breaking on edge cases - [#796 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/796 )
2018-12-21 14:27:07 +00:00
- Fix VLOOKUP with exact matches - [#809 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/809 )
- Support COUNTIFS multiple arguments - [#830 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/830 )
2018-12-17 03:52:04 +00:00
- Change `libxml_disable_entity_loader()` as shortly as possible - [#819 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/819 )
2018-12-18 15:35:07 +00:00
- Improved memory usage and performance when loading large spreadsheets - [#822 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/822 )
2018-12-18 18:17:41 +00:00
- Improved performance when loading large spreadsheets - [#825 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/825 )
2018-12-18 17:59:19 +00:00
- Improved performance when loading large spreadsheets - [#824 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/824 )
2018-12-22 19:32:02 +00:00
- Fix color from CSS when reading from HTML - [#831 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/831 )
2018-12-26 08:57:01 +00:00
- Fix infinite loop when reading invalid ODS files - [#832 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/832 )
2018-09-07 17:32:17 +00:00
- Fix time format for duration is incorrect - [#666 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/666 )
2019-01-02 03:23:34 +00:00
- Fix iconv unsupported `//IGNORE//TRANSLIT` on IBM i - [#791 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/791 )
2018-11-29 21:25:31 +00:00
2019-01-02 04:23:59 +00:00
### Changed
- `master` is the new default branch, `develop` does not exist anymore
2018-11-25 17:39:05 +00:00
## [1.5.2] - 2018-11-25
### Security
- Improvements to the design of the XML Security Scanner - [#771 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/771 )
2018-11-20 19:51:42 +00:00
## [1.5.1] - 2018-11-20
### Security
- Fix and improve XXE security scanning for XML-based and HTML Readers - [#771 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/771 )
2018-10-02 12:51:51 +00:00
2018-11-11 10:39:19 +00:00
### Added
- Support page margin in mPDF - [#750 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/750 )
2018-10-02 12:51:51 +00:00
### Fixed
2018-10-08 19:38:50 +00:00
- Support numeric condition in SUMIF, SUMIFS, AVERAGEIF, COUNTIF, MAXIF and MINIF - [#683 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/683 )
- SUMIFS containing multiple conditions - [#704 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/704 )
2018-10-26 17:14:45 +00:00
- Csv reader avoid notice when the file is empty - [#743 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/743 )
2018-10-23 09:29:09 +00:00
- Fix print area parser for XLSX reader - [#734 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/734 )
2018-10-23 03:40:41 +00:00
- Support overriding `DefaultValueBinder::dataTypeForValue()` without overriding `DefaultValueBinder::bindValue()` - [#735 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/735 )
2018-10-07 22:21:53 +00:00
- Mpdf export can exceed pcre.backtrack_limit - [#637 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/637 )
2018-11-19 13:48:30 +00:00
- Fix index overflow on data values array - [#748 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/748 )
2018-10-02 12:51:51 +00:00
2018-10-21 10:04:54 +00:00
## [1.5.0] - 2018-10-21
2018-10-03 03:52:51 +00:00
2018-07-11 12:50:09 +00:00
### Added
2018-10-21 10:04:54 +00:00
- PHP 7.3 support
2018-07-11 12:50:09 +00:00
- Add the DAYS() function - [#594 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/594 )
2018-10-03 03:52:51 +00:00
### Fixed
- Sheet title can contain exclamation mark - [#325 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/325 )
2018-10-07 07:38:13 +00:00
- Xls file cause the exception during open by Xls reader - [#402 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/402 )
2018-10-07 07:50:31 +00:00
- Skip non numeric value in SUMIF - [#618 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/618 )
2018-10-21 06:40:21 +00:00
- OFFSET should allow omitted height and width - [#561 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/561 )
2018-10-10 14:27:14 +00:00
- Correctly determine delimiter when CSV contains line breaks inside enclosures - [#716 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/716 )
2018-10-03 03:52:51 +00:00
2018-09-30 03:57:24 +00:00
## [1.4.1] - 2018-09-30
2018-09-28 12:28:40 +00:00
2018-08-07 07:38:18 +00:00
### Fixed
2018-09-30 03:57:24 +00:00
- Remove locale from formatting string - [#644 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/644 )
2018-08-07 07:38:18 +00:00
- Allow iterators to go out of bounds with prev - [#587 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/587 )
2018-08-19 06:43:54 +00:00
- Fix warning when reading xlsx without styles - [#631 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/631 )
2018-09-30 03:57:24 +00:00
- Fix broken sample links on windows due to $baseDir having backslash - [#653 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/653 )
2018-08-07 07:38:18 +00:00
2018-08-06 02:58:06 +00:00
## [1.4.0] - 2018-08-06
2018-06-17 17:46:51 +00:00
2018-06-24 11:09:32 +00:00
### Added
2018-08-06 02:58:06 +00:00
- Add excel function EXACT(value1, value2) support - [#595 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/595 )
2018-06-24 11:09:32 +00:00
- Support workbook view attributes for Xlsx format - [#523 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/523 )
2018-05-07 04:41:24 +00:00
- Read and write hyperlink for drawing image - [#490 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/490 )
2018-07-22 21:16:34 +00:00
- Added calculation engine support for the new bitwise functions that were added in MS Excel 2013
2018-07-25 13:38:44 +00:00
- BITAND() Returns a Bitwise 'And' of two numbers
- BITOR() Returns a Bitwise 'Or' of two number
- BITXOR() Returns a Bitwise 'Exclusive Or' of two numbers
- BITLSHIFT() Returns a number shifted left by a specified number of bits
- BITRSHIFT() Returns a number shifted right by a specified number of bits
2018-07-22 21:16:34 +00:00
- Added calculation engine support for other new functions that were added in MS Excel 2013 and MS Excel 2016
2018-07-22 18:17:04 +00:00
- Text Functions
- CONCAT() Synonym for CONCATENATE()
- NUMBERVALUE() Converts text to a number, in a locale-independent way
- UNICHAR() Synonym for CHAR() in PHPSpreadsheet, which has always used UTF-8 internally
- UNIORD() Synonym for ORD() in PHPSpreadsheet, which has always used UTF-8 internally
- TEXTJOIN() Joins together two or more text strings, separated by a delimiter
- Logical Functions
- XOR() Returns a logical Exclusive Or of all arguments
- Date/Time Functions
- ISOWEEKNUM() Returns the ISO 8601 week number of the year for a given date
- Lookup and Reference Functions
- FORMULATEXT() Returns a formula as a string
- Financial Functions
- PDURATION() Calculates the number of periods required for an investment to reach a specified value
- RRI() Calculates the interest rate required for an investment to grow to a specified future value
- Engineering Functions
- ERF.PRECISE() Returns the error function integrated between 0 and a supplied limit
- ERFC.PRECISE() Synonym for ERFC
- Math and Trig Functions
- SEC() Returns the secant of an angle
- SECH() Returns the hyperbolic secant of an angle
- CSC() Returns the cosecant of an angle
- CSCH() Returns the hyperbolic cosecant of an angle
- COT() Returns the cotangent of an angle
- COTH() Returns the hyperbolic cotangent of an angle
- ACOT() Returns the cotangent of an angle
- ACOTH() Returns the hyperbolic cotangent of an angle
2018-07-25 13:38:44 +00:00
- Refactored Complex Engineering Functions to use external complex number library
- Added calculation engine support for the new complex number functions that were added in MS Excel 2013
- IMCOSH() Returns the hyperbolic cosine of a complex number
- IMCOT() Returns the cotangent of a complex number
- IMCSC() Returns the cosecant of a complex number
- IMCSCH() Returns the hyperbolic cosecant of a complex number
- IMSEC() Returns the secant of a complex number
- IMSECH() Returns the hyperbolic secant of a complex number
- IMSINH() Returns the hyperbolic sine of a complex number
- IMTAN() Returns the tangent of a complex number
2018-06-24 10:35:45 +00:00
2018-06-17 17:46:51 +00:00
### Fixed
2018-07-22 21:16:34 +00:00
- Fix ISFORMULA() function to work with a cell reference to another worksheet
2018-06-17 17:46:51 +00:00
- Xlsx reader crashed when reading a file with workbook protection - [#553 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/553 )
2018-06-24 11:09:32 +00:00
- Cell formats with escaped spaces were causing incorrect date formatting - [#557 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/557 )
2018-07-06 19:06:08 +00:00
- Could not open CSV file containing HTML fragment - [#564 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/564 )
- Exclude the vendor folder in migration - [#481 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/481 )
2018-07-15 03:19:54 +00:00
- Chained operations on cell ranges involving borders operated on last cell only [#428 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/428 )
2018-07-24 14:32:16 +00:00
- Avoid memory exhaustion when cloning worksheet with a drawing [#437 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/437 )
2018-07-20 16:13:01 +00:00
- Migration tool keep variables containing $PHPExcel untouched [#598 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/598 )
2018-08-01 09:45:12 +00:00
- Rowspans/colspans were incorrect when adding worksheet using loadIntoExisting [#619 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/619 )
2018-06-17 17:46:51 +00:00
2018-06-12 13:40:21 +00:00
## [1.3.1] - 2018-06-12
2018-06-11 13:54:11 +00:00
### Fixed
- Ranges across Z and AA columns incorrectly threw an exception - [#545 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/545 )
2018-06-10 06:44:19 +00:00
## [1.3.0] - 2018-06-10
2018-05-12 02:47:46 +00:00
### Added
- Support to read Xlsm templates with form elements, macros, printer settings, protected elements and back compatibility drawing, and save result without losing important elements of document - [#435 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/435 )
2018-05-01 08:15:44 +00:00
- Expose sheet title maximum length as `Worksheet::SHEET_TITLE_MAXIMUM_LENGTH` - [#482 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/482 )
2018-05-23 01:31:41 +00:00
- Allow escape character to be set in CSV reader – [#492 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/492 )
2018-05-12 02:47:46 +00:00
2018-05-06 22:51:39 +00:00
### Fixed
2018-05-12 02:47:46 +00:00
- Subtotal 9 in a group that has other subtotals 9 exclude the totals of the other subtotals in the range - [#332 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/332 )
2018-05-20 10:52:53 +00:00
- `Helper\Html` support UTF-8 HTML input - [#444 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/444 )
2018-03-15 10:09:49 +00:00
- Xlsx loaded an extra empty comment for each real comment - [#375 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/375 )
2018-03-15 10:29:18 +00:00
- Xlsx reader do not read rows and columns filtered out in readFilter at all - [#370 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/370 )
2018-06-10 04:06:57 +00:00
- Make newer Excel versions properly recalculate formulas on document open - [#456 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/456 )
2018-05-30 21:54:38 +00:00
- `Coordinate::extractAllCellReferencesInRange()` throws an exception for an invalid range – [#519 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/519 )
2018-06-02 02:34:44 +00:00
- Fixed parsing of conditionals in COUNTIF functions - [#526 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/526 )
2018-06-06 02:36:32 +00:00
- Corruption errors for saved Xlsx docs with frozen panes - [#532 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/532 )
2018-05-06 22:51:39 +00:00
2018-04-10 03:53:16 +00:00
## [1.2.1] - 2018-04-10
### Fixed
- Plain text and richtext mixed in same cell can be read - [#442 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/442 )
2018-03-04 20:41:15 +00:00
## [1.2.0] - 2018-03-04
2018-02-01 12:23:36 +00:00
2018-02-07 11:59:25 +00:00
### Added
2018-02-26 20:33:47 +00:00
- HTML writer creates a generator meta tag - [#312 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/312 )
2018-01-29 07:24:13 +00:00
- Support invalid zoom value in XLSX format - [#350 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/350 )
2018-02-24 12:14:48 +00:00
- Support for `_xlfn.` prefixed functions and `ISFORMULA` , `MODE.SNGL` , `STDEV.S` , `STDEV.P` - [#390 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/390 )
2018-02-07 11:59:25 +00:00
2018-02-01 12:23:36 +00:00
### Fixed
2018-02-26 20:33:47 +00:00
- Avoid potentially unsupported PSR-16 cache keys - [#354 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/354 )
- Check for MIME type to know if CSV reader can read a file - [#167 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/167 )
- Use proper € symbol for currency format - [#379 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/379 )
- Read printing area correctly when skipping some sheets - [#371 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/371 )
- Avoid incorrectly overwriting calculated value type - [#394 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/394 )
2018-02-26 20:30:44 +00:00
- Select correct cell when calling freezePane - [#389 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/389 )
2018-03-04 20:39:32 +00:00
- `setStrikethrough()` did not set the font - [#403 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/403 )
2018-02-01 12:23:36 +00:00
2018-01-28 12:35:38 +00:00
## [1.1.0] - 2018-01-28
2017-12-28 03:22:01 +00:00
### Added
2018-01-28 07:23:38 +00:00
- Support for PHP 7.2
2018-01-08 15:42:30 +00:00
- Support cell comments in HTML writer and reader - [#308 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/308 )
2017-12-15 13:28:54 +00:00
- Option to stop at a conditional styling, if it matches (only XLSX format) - [#292 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/292 )
2018-01-09 23:12:38 +00:00
- Support for line width for data series when rendering Xlsx - [#329 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/329 )
2018-01-01 11:39:59 +00:00
2017-12-28 03:22:01 +00:00
### Fixed
- Better auto-detection of CSV separators - [#305 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/305 )
2017-12-28 03:36:57 +00:00
- Support for shape style ending with `;` - [#304 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/304 )
2018-01-08 15:42:30 +00:00
- Freeze Panes takes wrong coordinates for XLSX - [#322 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/322 )
2018-01-13 08:58:23 +00:00
- `COLUMNS` and `ROWS` functions crashed in some cases - [#336 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/336 )
2018-01-14 07:59:34 +00:00
- Support XML file without styles - [#331 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/331 )
2018-01-09 21:31:06 +00:00
- Cell coordinates which are already a range cause an exception [#319 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/319 )
2017-12-28 03:22:01 +00:00
1.0.0
```
* ,
_/^\_
< >
* /.-.\ *
* `/&\` *
,@.*;@,
/_o.I %_\ *
* (`'--:o(_@;
/`;--.,__ `') *
;@`o % O,*`'`&\
* (`'--)_@ ;o %'()\ *
/`;--._`''--._O'@;
/&*,()~o`;-.,_ `""`)
* /`,@ ;+& () o*`;-';\
(`""--.,_0 +% @' &()\
/-.,_ ``''--....-'`) *
* /@%;o`:;'--,.__ __.'\
;*,&(); @ % &^;~`"`o;@(); *
/(); o^~; & ().o@*&`;&%O\
`"="==""==,,,.,="=="==="`
__.----.(\-''#####---...___...-----._
'` \)_`"""""`
.--' ')
o( )_-\
`"""` `
```
2017-12-25 01:53:53 +00:00
## [1.0.0] - 2017-12-25
2016-08-28 07:29:42 +00:00
### Added
2017-12-28 03:22:01 +00:00
- Support to write merged cells in ODS format - [#287 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/287 )
2017-12-31 11:53:05 +00:00
- Able to set the `topLeftCell` in freeze panes - [#261 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/261 )
1.0.0
```
* ,
_/^\_
< >
* /.-.\ *
* `/&\` *
,@.*;@,
/_o.I %_\ *
* (`'--:o(_@;
/`;--.,__ `') *
;@`o % O,*`'`&\
* (`'--)_@ ;o %'()\ *
/`;--._`''--._O'@;
/&*,()~o`;-.,_ `""`)
* /`,@ ;+& () o*`;-';\
(`""--.,_0 +% @' &()\
/-.,_ ``''--....-'`) *
* /@%;o`:;'--,.__ __.'\
;*,&(); @ % &^;~`"`o;@(); *
/(); o^~; & ().o@*&`;&%O\
`"="==""==,,,.,="=="==="`
__.----.(\-''#####---...___...-----._
'` \)_`"""""`
.--' ')
o( )_-\
`"""` `
```
2017-12-25 01:53:53 +00:00
- Support `DateTimeImmutable` as cell value
- Support migration of prefixed classes
2017-11-26 06:47:24 +00:00
### Fixed
2017-12-11 02:08:41 +00:00
- Can read very small HTML files - [#194 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/194 )
2017-12-16 08:15:13 +00:00
- Written DataValidation was corrupted - [#290 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/290 )
1.0.0
```
* ,
_/^\_
< >
* /.-.\ *
* `/&\` *
,@.*;@,
/_o.I %_\ *
* (`'--:o(_@;
/`;--.,__ `') *
;@`o % O,*`'`&\
* (`'--)_@ ;o %'()\ *
/`;--._`''--._O'@;
/&*,()~o`;-.,_ `""`)
* /`,@ ;+& () o*`;-';\
(`""--.,_0 +% @' &()\
/-.,_ ``''--....-'`) *
* /@%;o`:;'--,.__ __.'\
;*,&(); @ % &^;~`"`o;@(); *
/(); o^~; & ().o@*&`;&%O\
`"="==""==,,,.,="=="==="`
__.----.(\-''#####---...___...-----._
'` \)_`"""""`
.--' ')
o( )_-\
`"""` `
```
2017-12-25 01:53:53 +00:00
- Date format compatible with both LibreOffice and Excel - [#298 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/298 )
2017-12-11 02:08:41 +00:00
2017-12-13 10:54:25 +00:00
### BREAKING CHANGE
- Constant `TYPE_DOUGHTNUTCHART` is now `TYPE_DOUGHNUTCHART` .
2017-11-26 06:47:24 +00:00
## [1.0.0-beta2] - 2017-11-26
### Added
2017-05-03 12:53:07 +00:00
- Support for chart fill color - @CrazyBite [#158 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/158 )
2017-10-20 07:38:37 +00:00
- Support for read Hyperlink for xml - @GreatHumorist [#223 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/223 )
- Support for cell value validation according to data validation rules - @SailorMax [#257 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/257 )
2017-10-30 15:14:34 +00:00
- Support for custom implementation, or configuration, of PDF libraries - @SailorMax [#266 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/266 )
2017-05-03 12:53:07 +00:00
2017-08-17 13:17:23 +00:00
### Changed
2017-07-31 18:36:54 +00:00
- Merge data-validations to reduce written worksheet size - @billblume [#131 ](https://github.com/PHPOffice/PhpSpreadSheet/issues/131 )
2017-09-20 05:20:12 +00:00
- Throws exception if a XML file is invalid - @GreatHumorist [#222 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/222 )
2017-09-29 02:17:08 +00:00
- Upgrade to mPDF 7.0+ - [#144 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/144 )
2017-07-31 18:36:54 +00:00
2017-08-17 13:17:23 +00:00
### Fixed
2017-09-11 05:42:14 +00:00
- Control characters in cell values are automatically escaped - [#212 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/212 )
- Prevent color changing when copy/pasting xls files written by PhpSpreadsheet to another file - @al -lala [#218 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/218 )
2017-09-22 05:49:38 +00:00
- Add cell reference automatic when there is no cell reference('r' attribute) in Xlsx file. - @GreatHumorist [#225 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/225 ) Refer to [issue#201 ](https://github.com/PHPOffice/PhpSpreadsheet/issues/201 )
2017-11-01 23:16:32 +00:00
- `Reader\Xlsx::getFromZipArchive()` function return false if the zip entry could not be located. - @anton -harvey [#268 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/268 )
2017-09-09 10:29:08 +00:00
2017-09-08 17:56:23 +00:00
### BREAKING CHANGE
2017-11-25 10:26:41 +00:00
- Extracted coordinate method to dedicate class [migration guide ](./docs/topics/migration-from-PHPExcel.md ).
- Column indexes are based on 1, see the [migration guide ](./docs/topics/migration-from-PHPExcel.md ).
2017-09-08 17:56:23 +00:00
- Standardization of array keys used for style, see the [migration guide ](./docs/topics/migration-from-PHPExcel.md ).
2017-10-21 16:54:14 +00:00
- Easier usage of PDF writers, and other custom readers and writers, see the [migration guide ](./docs/topics/migration-from-PHPExcel.md ).
2017-10-29 08:39:42 +00:00
- Easier usage of chart renderers, see the [migration guide ](./docs/topics/migration-from-PHPExcel.md ).
- Rename a few more classes to keep them in their related namespaces:
- `CalcEngine` => `Calculation\Engine`
2017-12-31 11:53:05 +00:00
- `PhpSpreadsheet\Calculation` => `PhpSpreadsheet\Calculation\Calculation`
- `PhpSpreadsheet\Cell` => `PhpSpreadsheet\Cell\Cell`
- `PhpSpreadsheet\Chart` => `PhpSpreadsheet\Chart\Chart`
- `PhpSpreadsheet\RichText` => `PhpSpreadsheet\RichText\RichText`
- `PhpSpreadsheet\Style` => `PhpSpreadsheet\Style\Style`
- `PhpSpreadsheet\Worksheet` => `PhpSpreadsheet\Worksheet\Worksheet`
2017-08-17 13:17:23 +00:00
## [1.0.0-beta] - 2017-08-17
### Added
2016-08-28 07:29:42 +00:00
- Initial implementation of SUMIFS() function
- Additional codepages
- MemoryDrawing not working in HTML writer [#808 ](https://github.com/PHPOffice/PHPExcel/issues/808 )
2017-04-17 16:51:53 +00:00
- CSV Reader can auto-detect the separator used in file [#141 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/141 )
2017-06-16 07:36:27 +00:00
- HTML Reader supports some basic inline styles [#180 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/180 )
2016-08-28 07:29:42 +00:00
### Changed
2018-10-23 11:26:25 +00:00
- Start following [SemVer ](https://semver.org ) properly.
2016-08-28 07:29:42 +00:00
2017-08-17 13:17:23 +00:00
### Fixed
2016-08-28 07:29:42 +00:00
- Fix to getCell() method when cell reference includes a worksheet reference - @MarkBaker
- Ignore inlineStr type if formula element exists - @ncrypthic [#570 ](https://github.com/PHPOffice/PHPExcel/issues/570 )
- Excel 2007 Reader freezes because of conditional formatting - @rentalhost [#575 ](https://github.com/PHPOffice/PHPExcel/issues/575 )
2017-07-14 08:53:13 +00:00
- Readers will now parse files containing worksheet titles over 31 characters [#176 ](https://github.com/PHPOffice/PhpSpreadsheet/pull/176 )
2016-08-28 07:29:42 +00:00
### General
- Whitespace after toRichTextObject() - @MarkBaker [#554 ](https://github.com/PHPOffice/PHPExcel/issues/554 )
- Optimize vlookup() sort - @umpirsky [#548 ](https://github.com/PHPOffice/PHPExcel/issues/548 )
- c:max and c:min elements shall NOT be inside c:orientation elements - @vitalyrepin [#869 ](https://github.com/PHPOffice/PHPExcel/pull/869 )
- Implement actual timezone adjustment into PHPExcel_Shared_Date::PHPToExcel - @sim642 [#489 ](https://github.com/PHPOffice/PHPExcel/pull/489 )
2016-10-06 11:39:10 +00:00
### BREAKING CHANGE
2016-12-03 05:51:04 +00:00
- Introduction of namespaces for all classes, eg: `PHPExcel_Calculation_Functions` becomes `PhpOffice\PhpSpreadsheet\Calculation\Functions`
2016-10-06 11:39:10 +00:00
- Some classes were renamed for clarity and/or consistency:
2017-09-08 17:56:23 +00:00
For a comprehensive list of all class changes, and a semi-automated migration path, read the [migration guide ](./docs/topics/migration-from-PHPExcel.md ).
2016-08-28 07:29:42 +00:00
2017-01-21 15:44:33 +00:00
- Dropped `PHPExcel_Calculation_Functions::VERSION()` . Composer or git should be used to know the version.
- Dropped `PHPExcel_Settings::setPdfRenderer()` and `PHPExcel_Settings::setPdfRenderer()` . Composer should be used to autoload PDF libs.
2017-07-14 08:06:04 +00:00
- Dropped support for HHVM
2017-01-21 15:44:33 +00:00
2017-04-14 08:38:40 +00:00
## Previous versions of PHPExcel
2016-12-03 02:19:22 +00:00
2017-04-14 08:38:40 +00:00
The changelog for the project when it was called PHPExcel is [still available ](./CHANGELOG.PHPExcel.md ).