Releases: PHPOffice/PhpSpreadsheet
Releases · PHPOffice/PhpSpreadsheet
4.2.0
Added
- Add ability to add custom functions to Calculation. PR #4390
- Add FormulaRange to IgnoredErrors. PR #4393
- TextGrid improvements. PR #4418
- Permit read to class which extends Spreadsheet. Discussion #4402 PR #4404
- Conditional and table formatting support for html writer PR #4412
Changed
- Phpstan Version 2. PR #4384
- Start migration to Phpstan level 9. PR #4396
- Calculation locale logic moved to separate class. PR #4398
- TREND_POLYNOMIAL_* and TREND_BEST_FIT do not work, and are changed to throw Exceptions if attempted. (TREND_BEST_FIT_NO_POLY works.) An attempt to use an unknown trend type will now also throw an exception. Issue #4400 PR #4339
- Month parameter of DATE function will now return VALUE if an ordinal string (e.g. '3rd') is used, but will accept bool or null. PR #4420
Fixed
- Ignore fractional part of Drawing Shadow Alpha. Issue #4415 PR #4417
- BIN2DEC, OCT2DEC, and HEX2DEC return numbers rather than strings. Issue #4383 PR #4389
- Fix TREND_BEST_FIT_NO_POLY. Issue #4400 PR #4339
- Ods Reader No DataType for Null Value. Issue #4435 PR #4436
- Column widths not preserved when using read filter. Issue #4416 PR #4423
- Fix typo in Style exportArray quotePrefix. Issue #4422 PR #4424
- Tweak Spreadsheet clone. PR #4419
- Better handling of Chart DisplayBlanksAs. Issue #4411 PR #4414
4.1.0
Added
- Support Justify Last Line. Issue #4374 PR #4373
- Allow Spreadsheet clone. PR #4370
Changed
- ListWorksheetInfo will now return sheetState (visible, hidden, veryHidden). Issue #4345 PR #4366
- Start migration to Phpstan 2. PR #4359
- IOFactory identify can return, and createReader and CreateWriter can accept, a class name rather than a file type. Issue #4357 PR #4361
Fixed
- Refactor Helper/Html. PR #4359
- Handle #REF! as Argument to AVERAGEIF/COUNTIF/SUMIF. Issue #4381 PR #4382
- Ignore ignoredErrors when not applicable. Issue #4375 PR #4377
- Better handling of defined names on sheets whose titles include apostrophes. Issue #4356 Issue #4362 Issue #4376 PR #4360
- Partial solution for removing rows or columns that include edge ranges. Issue #1449 PR #3528
- Prefer mb_str_split to str_split. PR #3341
4.0.0
BREAKING CHANGES
- Data Validations will be stored by worksheet, not cell. Index can be one or more cells or cell ranges. Issue #797 Issue #4091 Issue #4206 PR #4240
- Conditional Formatting adds Priority property and handles overlapping ranges better. Issue #4312 Issue #4318 PR #4314
- Csv Reader will no longer auto-detect Mac line endings by default. Prior behavior can be explicitly enabled via
setTestAutoDetect(true)
, and it will not be possible at all with Php9+. Issue #4092 PR #4340 - Html Writer will now use "better boolean" logic. Booleans will now be output by default as TRUE/FALSE rather than 1/null-string. Prior behavior can be explicitly enabled via
setBetterBoolean(false)
. PR #4340 - Xlsx Writer will now use false as the default for
forceFullCalc
. This affects writes withpreCalculateFormulas
set to false. Prior behavior can be explicitly enabled viasetForceFullCalc(null)
.PR #4340 - Deletion of items deprecated in Release 3. See "removed" below.
Added
- Pdf Charts and Drawings. Discussion #4129 Discussion #4168 PR #4327
- Allow spreadsheet serialization. Discussion #4324 Issue #1741 Issue #1757 PR #4326
Removed
- Worksheet::getStyles - no replacement. PR #4330
- The following items were deprecated in release 3 and are now removed.
- Drawing::setIsUrl - no replacement.
- Settings::setLibXmlLoaderOptions() and Settings::getLibXmlLoaderOptions() - no replacement.
- Worksheet::getHashCode - no replacement.
- IReader::SKIP_EMPTY_CELLS - use its alias IGNORE_EMPTY_CELLS instead.
- Worksheet::getProtectedCells - use getProtectedCellRanges instead.
- Writer/Html::isMpdf property - use instanceof Mpdf instead.
Fixed
- Xls writer Parser Mishandling True/False Argument. Issue #4331 PR #4333
- Xls writer Parser Parse By Character Not Byte. PR #4344
- Minor changes to dynamic array calculations exposed by using explicit array return types in some tests. PR #4328
3.9.1
2.3.8
2.1.9
1.29.10
3.9.0
Added
- Methods to get style for row or column. PR #4317
- Method for duplicating worksheet in spreadsheet. PR #4315
Fixed
- Security patch for control characters in protocol.
- Ods Reader Sheet Names with Period. Issue #4311 PR #4313
- Mpdf and Tcpdf Hidden Columns and Merged Cells. Issue #4319 PR #4320
- Html Writer Allow mailto. Issue #4316 PR #4322
- Use composer/pcre rather than preg_* in Writer. PR #4323