Releases: PHPOffice/PhpSpreadsheet
Releases · PHPOffice/PhpSpreadsheet
4.4.0
Added
- VSTACK and HSTACK. Issue #4485 PR #4492
- TOCOL and TOROW. PR #4493
- Support Current Office Theme. PR #4500
Deprecated
- Theme constants COLOR_SCHEME_2013_PLUS_NAME (use COLOR_SCHEME_2013_2022_NAME) and COLOR_SCHEME_2013_PLUS (use COLOR_SCHEME_2013_2022).
Fixed
- Various Writers RichText TextElement Should Inherit Cell Style. Issue #1154 PR #4487
- Minor Changes to FILTER function. PR #4491
- Allow Xlsx Reader/Writer to support Font Charset. Issue #2760 PR #4501
- AutoColor for LibreOffice Dark Mode Discussion 4502 PR #4503
- Xlsx Style Writer Minor Refactoring. PR #4508
- Allow Xlsx Reader to Specify ParseHuge. Issue #4260 PR #4515
3.9.2
Changed
- Allow php-cs-fixer to Handle Implicit Backslashes.
Added
- Allow spreadsheet to be serialized. PR #4408
Fixed
- TEXT and TIMEVALUE functions. Issue #4249 PR #4355
- Removing Columns/Rows Containing Merged Cells. Backport of PR #4465
- Allow Xlsx Reader to Specify ParseHuge. Issue #4260 PR #4518
2.3.9
Changed
- Allow php-cs-fixer to Handle Implicit Backslashes.
Added
- Allow spreadsheet to be serialized. PR #4407
Fixed
- TEXT and TIMEVALUE functions. Issue #4249 PR #4354
- Removing Columns/Rows Containing Merged Cells. Backport of PR #4465
- Allow Xlsx Reader to Specify ParseHuge. Issue #4260 PR #4517
2.1.10
Changed
- Allow php-cs-fixer to Handle Implicit Backslashes.
Added
- Allow spreadsheet to be serialized. PR #4406
Fixed
- TEXT and TIMEVALUE functions. Issue #4249 PR #4353
- Removing Columns/Rows Containing Merged Cells. Backport of PR #4465
- Allow Xlsx Reader to Specify ParseHuge. Issue #4260 PR #4516
1.29.11
Changed
- Allow php-cs-fixer to Handle Implicit Backslashes.
Added
- Allow spreadsheet to be serialized. PR #4405
Fixed
- TEXT and TIMEVALUE functions. Issue #4249 PR #4352
- Removing Columns/Rows Containing Merged Cells. Backport of PR #4465
- Allow Xlsx Reader to Specify ParseHuge. Issue #4260 PR #4515
4.3.1
Fixed
- Regression in Date::stringToExcel. Issue #4488 PR #4489
4.3.0
Added
- Xml Reader recognize indents. Issue #4448 PR #4449
Changed
- Phpstan Level 10.
Fixed
- Micro-optimization for excelToDateTimeObject. Issue #4438 PR #4442
- Removing Columns/Rows Containing Merged Cells. Issue #282 PR #4465
- Print Area and Row Break. Issue #1275 PR #4450
- Copy Styles after insertNewColumnBefore. Issue #1425 PR #4468
- Xls Writer Treat Hyperlink Starting with # as Internal. Issue #56 PR #4453
- More Precision for Float to String Casts. Issue #3899 PR #4479
- Hyperlink Styles. Issue #1632 PR #4478
- ODS Handling of Ceiling and Floor. Issue #477 PR #4466
- Xlsx Reader Do Not Process Printer Settings for Dataonly. Issue #4477 PR #4480
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