Commit Graph

4401 Commits

Author SHA1 Message Date
oleibman 77f794cb34 Merge branch 'master' into issue3687 2024-01-04 07:40:39 -08:00
Adrien Crivelli 43481c9deb Merge pull request #3857 from PHPOffice/powerkiki
Restore PSR-16 Simple Cache v1 compatibility
2024-01-04 05:48:27 +00:00
Adrien Crivelli 63b9b974a3 Restore PSR-16 Simple Cache v1 compatibility 2024-01-04 13:45:05 +08:00
Adrien Crivelli a75022a7da Merge pull request #3793 from PHPOffice/powerkiki
Add all missing native types
2024-01-04 05:17:54 +00:00
Adrien Crivelli 76c5b98b8f Drop commented code 2024-01-04 13:08:26 +08:00
Adrien Crivelli b22fde2281 Upgrade QA tools 2024-01-04 13:06:59 +08:00
Adrien Crivelli 332f6418e4 Allow usage of getters before setters 2024-01-04 12:50:52 +08:00
Adrien Crivelli 83f71298ad Also forbid PHPDoc without a variable name 2024-01-04 12:34:47 +08:00
Adrien Crivelli a3c2ca978e Drop redundant PHPDoc 2024-01-04 12:33:06 +08:00
Adrien Crivelli 5cc1ece805 PhpStan 2024-01-04 11:56:46 +08:00
Adrien Crivelli c01abbce09 Merge branch 'master' into powerkiki 2024-01-04 11:51:54 +08:00
oleibman 9c279679aa Use Less Space When Inserting Rows and Columns
Fix #3687. Worksheet methods insertNewRowBefore and insertNewColumnBefore call ReferenceHelper insertNewBefore. That function fills in "missing" cells with null values. However, for boundaries, it uses getHighestRow and getHighestColumn. It should be sufficient to use getHighestDataRow and getHighestDataColumn. When there is a big gap between getHighest... and getHighestData..., this can result in a big increase in memory usage, and in file space when saving the spreadsheet. New test InsertTest demonstrates the problem by populating a worksheet with cells A1:D5 (so highestDataRow is 5), but also setting row 1000 to invisible (so highestRow is 1000).

The major part of the change is in ReferenceHelper::insertNewBefore, which will now use getHighestData... for its boundaries when filling in the missing cells. Changes of less impact are made to duplicateStylesByColumn and duplicateStylesByRow so that cells which don't yet exist are not created unless the style that will be applied is not the workbook default style.

As for reducing the file size, Writer/Xlsx/Worksheet is changed so that cells whose value is null or null-string and which use the workbook default style are not written to the output spreadsheet. This requires some changes to existing test ReadBlankCellsTest; I don't think the difference should matter to the end-user.
2024-01-03 18:03:28 -08:00
Adrien Crivelli 50f6afc6ce Drop redundant property initialyzer 2024-01-03 21:52:50 +08:00
Adrien Crivelli 5c6c8e2e1d Sync most PHPDoc with actual code 2024-01-03 21:38:26 +08:00
Adrien Crivelli aefde297df More cleanup PHPDoc according to PhpStorm 2024-01-03 21:12:55 +08:00
Adrien Crivelli c1eafc5336 Cleanup PHPDoc according to PhpStorm 2024-01-03 20:51:53 +08:00
Adrien Crivelli a68a54e4b9 Last native param types 2024-01-03 13:05:09 +08:00
oleibman 2e4b8f80ca Merge pull request #3853 from oleibman/fixertest
Php-cs-fixer Command Change
2024-01-02 08:17:13 +00:00
oleibman fc56282827 Restore CellReferenceHelper.php 2024-01-02 00:09:46 -08:00
oleibman c4b934a91d Update main.yml 2024-01-02 00:03:05 -08:00
oleibman b33d14e858 Update main.yml 2024-01-01 23:33:34 -08:00
oleibman 9de13cd975 Update main.yml 2024-01-01 23:10:20 -08:00
oleibman 4b655ea5a8 Php-cs-fixer Command Change
PR #3852 was a bit strange. Php-cs-fixer complained about a problem that I could not reproduce on my local system, and it didn't really produce sufficient output to correct whatever the problem was. I was able to guess it eventually, but I need to see if there's a way to get it to be more forthcoming.
2024-01-01 23:02:44 -08:00
oleibman c770f692b8 Merge pull request #3852 from oleibman/updatefixer
Php-cs-fixer Upgrade
2024-01-02 05:53:02 +00:00
oleibman b01031d62b Merge branch 'master' into updatefixer 2024-01-01 21:50:09 -08:00
oleibman 8e1c265d39 Another Theory
Still unable to duplicate php-cs-fixer problem.
2024-01-01 21:29:51 -08:00
oleibman c5f78a4194 Guesswork
Unable to duplicate php-cs-fixer problem. Maybe this will work.
2024-01-01 21:13:18 -08:00
oleibman d164ad2211 Php-cs-fixer Upgrade
It generates a number of new easily-remedied messages.
2024-01-01 20:21:03 -08:00
oleibman 04d125c115 Merge pull request #3851 from PHPOffice/dependabot/composer/phpunit/phpunit-9.6.15
Bump phpunit/phpunit from 9.6.14 to 9.6.15
2024-01-01 20:03:19 +00:00
oleibman 461ed440e4 Merge pull request #3849 from PHPOffice/dependabot/composer/squizlabs/php_codesniffer-3.8.0
Bump squizlabs/php_codesniffer from 3.7.2 to 3.8.0
2024-01-01 20:02:11 +00:00
oleibman f35bdc1d36 Merge pull request #3848 from PHPOffice/dependabot/composer/phpstan/phpstan-1.10.50
Bump phpstan/phpstan from 1.10.46 to 1.10.50
2024-01-01 19:49:39 +00:00
dependabot[bot] f84f36706d Bump phpunit/phpunit from 9.6.14 to 9.6.15
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.14 to 9.6.15.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.15/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.14...9.6.15)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-01 11:09:35 +00:00
dependabot[bot] ced2bd8ed4 Bump squizlabs/php_codesniffer from 3.7.2 to 3.8.0
Bumps [squizlabs/php_codesniffer](https://github.com/squizlabs/PHP_CodeSniffer) from 3.7.2 to 3.8.0.
- [Release notes](https://github.com/squizlabs/PHP_CodeSniffer/releases)
- [Commits](https://github.com/squizlabs/PHP_CodeSniffer/commits)

---
updated-dependencies:
- dependency-name: squizlabs/php_codesniffer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-01 11:09:20 +00:00
dependabot[bot] 5b88b8c03a Bump phpstan/phpstan from 1.10.46 to 1.10.50
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 1.10.46 to 1.10.50.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Changelog](https://github.com/phpstan/phpstan/blob/1.11.x/CHANGELOG.md)
- [Commits](https://github.com/phpstan/phpstan/compare/1.10.46...1.10.50)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-01 11:09:13 +00:00
oleibman 0beac682e4 Merge pull request #3846 from oleibman/issue3843
Do Not Include Unparsed Loaded Drawings When Drawing is Added
2023-12-31 16:26:51 +00:00
oleibman dca478b5d5 Update CHANGELOG.md 2023-12-31 08:03:47 -08:00
oleibman 26b9b68a54 Merge branch 'master' into issue3843 2023-12-31 07:53:41 -08:00
oleibman dbb560a923 Do Not Include Unparsed Loaded Drawings When Drawing is Added
Fix #3843. Spreadsheet XML had a lingering Xml drawing tag despite having no drawings. When a new drawing was added, PhpSpreadsheet became confused about which drawings to keep. This PR ensures that it keeps the new and drops the old.
2023-12-28 22:32:09 -08:00
oleibman 970884f948 Merge pull request #3845 from oleibman/htmllongtitle
Html Reader Tolerate Invalid Sheet Title
2023-12-28 02:44:26 +00:00
oleibman f76016f02b Win For Scrutinizer!
Test was miscoded.
2023-12-27 18:32:00 -08:00
oleibman 68dec61e4a Html Reader Tolerate Invalid Sheet Title
There are different rules for Title between Excel and Html, in particular maximum length and which characters are valid. Html Reader can throw an exception because of this difference. This PR allows it to tolerate an invalid title, retaining the default title if the Html suggests an invalid one.
2023-12-27 18:13:55 -08:00
oleibman a17a56b6e0 Merge pull request #3841 from oleibman/freezeselected
Problems With Panes
2023-12-26 15:40:38 +00:00
oleibman 5cfb7b3a4c Merge branch 'master' into freezeselected 2023-12-26 06:37:09 -08:00
oleibman fb796003ff Merge pull request #3839 from oleibman/sorttoarray
Improved Performance for `toArray`
2023-12-23 16:21:28 +00:00
oleibman d78146fede Update CHANGELOG.md 2023-12-23 08:11:47 -08:00
oleibman 168f9adfc0 Merge branch 'master' into sorttoarray 2023-12-23 07:23:03 -08:00
oleibman 421a15a085 Problems With Panes
These glitches were probably due to PR #3622.
- Excel may not properly identify the selected cell on a sheet if freeze panes is in effect, even though the Xml points to the correct pane and the correct selected cell is specified for that pane.
- Worksheet::calculateColumnWidths may alter activePane.
2023-12-22 20:14:09 -08:00
oleibman 351625a832 Merge pull request #3836 from oleibman/issue3883
Chart Axis Display Units and Logarithmic Scale
2023-12-22 16:04:30 +00:00
oleibman 2159636e81 Merge branch 'master' into issue3883 2023-12-22 07:53:15 -08:00
oleibman bebb278e72 Minor Performance Improvement
Change `getCellCollection()` calls to access `cellCollection` directly.
2023-12-21 07:49:32 -08:00