next major
-
Full support for Excel "array functions" in
Xlsx
Reader/Writer, and the Calculation Engine; and allowing array formulae to be defined in userland codeSee PR #2539 and related documentation for details
-
Modify the Cell Collection so that the index maintains a cell address and an index reference to row/column that can be used for easier filtering and so…
-
Full support for Excel "array functions" in
Xlsx
Reader/Writer, and the Calculation Engine; and allowing array formulae to be defined in userland codeSee PR #2539 and related documentation for details
-
Modify the Cell Collection so that the index maintains a cell address and an index reference to row/column that can be used for easier filtering and sorting internally; this requires no additional memory compared with the current boolean; but does cause some issued with Named Cells (which currently duplicate entries that can get out of synch). So this change requires a new index for named cells, with an alias pointing to their actual cell reference.
-
Make calendar base year a per-spreadsheet setting rather than a global setting, so that it doesn't create errors when two spreadsheet files are loaded and one uses 1904 mac base year, the other 1900 windows base year - default behaviour (e.g. when no spreadsheet is loaded but formulae are being calculated) should be the Windows 1900 calendar
-
Drop getting/setting cells in the Worksheet by row/column (e.g.
setCellValueByColumnAndRow()
), but allow the cell address method to accept an array (e.g.[2, 1]
) or a newaddress
object as an alternative to the stringcellAddress
("A2"
)? -
As many other breaking changes as possible.
- e.g. changing some method names, like the
evaluate()
method in theArabic
class to a more meaningfultoRoman()
(and vice versa) - Renaming some method arguments to use more meaningful names, making their purpose more intuitive, particularly if used as
named arguments
with PHP 8.0+ - Eliminate underscores in property and method names, a throwback to earlier versions of PHP before visibility could be set on properties and methods
- Use of Enum types where appropriate (e.g. many of the Style settings), probably using a library like
myclabs/php-enum
until we're in a position to use true PHP 8.1 Enums
- e.g. changing some method names, like the