Commit Graph

6351 Commits

Author SHA1 Message Date
oleibman b5a41165f7 Merge pull request #4880 from oleibman/reusedisconnect
Reusing Disconnected Spreadsheet
2026-05-31 14:37:53 +00:00
oleibman 803293efb9 Merge pull request #4878 from oleibman/first86
First Php8.6 Deprecation
2026-05-31 14:37:35 +00:00
oleibman 2bea8c2d16 Merge pull request #4888 from oleibman/sortsamp
Update Samples
2026-05-31 08:19:50 +00:00
oleibman 3d86f3d13c Update Samples
... demonstrating how Excel sorts.
2026-05-31 01:15:04 -07:00
oleibman da4ea0540c Merge pull request #4876 from oleibman/urlparse
Reject phar Protocol in Unexpected Format
2026-05-31 04:36:28 +00:00
oleibman ee67357682 Unneeded Check 2026-05-28 19:45:32 -07:00
oleibman 974b349dc5 Close One Other Possible Vector 2026-05-28 13:50:08 -07:00
oleibman 76bb021c6b More Tests 2026-05-25 11:06:33 -07:00
oleibman edec58eb59 Composer/Pcre/Preg 2026-05-24 10:10:40 -07:00
oleibman 2b89a7bb7a Block Phar Only 2026-05-23 19:47:24 -07:00
oleibman 37b41a16b7 Reusing Disconnected Worksheet
Throws exception if you subsequently attempt `createSheet(0)`. Fix that.
2026-05-21 10:03:15 -07:00
oleibman b9ec538e72 Change Some Comment Verbiage 2026-05-19 19:15:40 -07:00
oleibman 8d0754e60a Merge pull request #4879 from PHPOffice/dependabot/composer/setasign/fpdi-2.6.7
Bump setasign/fpdi from 2.6.6 to 2.6.7
2026-05-19 23:05:26 +00:00
dependabot[bot] 24f8d4983e Bump setasign/fpdi from 2.6.6 to 2.6.7
Bumps [setasign/fpdi](https://github.com/Setasign/FPDI) from 2.6.6 to 2.6.7.
- [Release notes](https://github.com/Setasign/FPDI/releases)
- [Commits](https://github.com/Setasign/FPDI/compare/v2.6.6...v2.6.7)

---
updated-dependencies:
- dependency-name: setasign/fpdi
  dependency-version: 2.6.7
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-19 21:11:18 +00:00
oleibman 45bfd9121e First Php8.6 Deprecation
Mpdf uses soon-to-be-deprecated `mb_regex_encoding`.
2026-05-17 07:30:57 -07:00
oleibman 0d9203b6b2 Reject phar Protocol in Unexpected Format
Reject `phar:///whatever` as input filename.
2026-05-14 21:26:12 -07:00
oleibman 7cc6e4e580 Merge pull request #4872 from oleibman/upgrades
Combine Dependabot Changes
2026-05-02 02:40:06 +00:00
oleibman 5c8c20686f Combine Dependabot Changes
Someting seemed to be wrong with push setup. We'll see if it's fixed.
2026-05-01 19:17:45 -07:00
oleibman d5cdc29a3e Merge pull request #4864 from williamdes/fix/no-spurious-t-attribute-when-pre-calc-off
Don't infer cell t attribute from formula source when pre-calc is off
2026-04-30 00:06:17 +00:00
William Desportes 5eb433e08b fix: don't infer cell t attribute from formula source when pre-calc is off
writeCellFormula() falls back to using $cellValue (the formula source) as
$calculatedValue when getPreCalculateFormulas() is false. The source is
always a string, so the is_string($result) branch always fires, every
formula cell ends up with t="str" — even those whose formula evaluates
to a number or boolean.

Some readers (notably older LibreOffice and Gnumeric) treat t="str" as
a hint that the cell is a string, and either skip recomputation or
present a #NAME error for numeric formulas they would otherwise compute
correctly.

Fix: leave $calculatedValue null and $calculatedValueString empty when
pre-calc is off. The type-inference branches no longer fire, so no t
attribute is written. The surrounding writeElementIf already guards <v>
emission on getPreCalculateFormulas(), so no cached value is written
either — readers see "formula with no cached value, no type hint",
respect the workbook's fullCalcOnLoad="1", and recompute on open.

Updates the existing PreCalcTest assertion to match: <c r="B2"><f>3+A3</f></c>
instead of <c r="B2" t="str"><f>3+A3</f></c>.
2026-04-29 19:27:57 +02:00
oleibman c0e328482a Merge pull request #4861 from Dayoebe/master
Update APCu cache documentation example
2026-04-26 21:13:23 +00:00
Adedayo Oyetoke 7db2898145 Update APCu cache documentation example 2026-04-25 22:41:32 +01:00
oleibman 5483cf930d Merge pull request #4858 from oleibman/preserveformat
Html Writer/Reader New `data` Attributes
2026-04-22 02:00:28 +00:00
oleibman 381bdacb8e Update CHANGELOG.md 2026-04-21 18:56:40 -07:00
oleibman 7d2ce75f70 Merge branch 'master' into preserveformat 2026-04-20 21:18:51 -07:00
oleibman d6a4e39799 Merge pull request #4829 from kemo/perf/formula-ast-parsing
Add formula token cache to reduce repeated parsing overhead
2026-04-21 04:11:47 +00:00
oleibman e02c7918de Update CHANGELOG.md 2026-04-20 21:08:02 -07:00
oleibman 3158be0a0f Merge pull request #4855 from oleibman/htmltextcolor
Html Writer Handle Text Colors a Bit Better
2026-04-21 03:53:52 +00:00
oleibman 4ef51eece5 Update CHANGELOG.md 2026-04-20 20:49:54 -07:00
oleibman ea01a00d5c Merge pull request #4856 from oleibman/coverage10
Improve Coverage
2026-04-21 03:41:04 +00:00
oleibman f4fc8c974a Merge branch 'master' into coverage10 2026-04-20 08:44:14 -07:00
oleibman 7319eb8008 Merge branch 'master' into htmltextcolor 2026-04-20 08:41:19 -07:00
oleibman 818c3ac259 Merge branch 'master' into perf/formula-ast-parsing 2026-04-20 08:36:25 -07:00
oleibman 9f55d3b9b7 Merge pull request #4859 from oleibman/updchangelog20260419
Update Changelog for New Release
5.7.0
2026-04-20 02:42:17 +00:00
oleibman 2e35213f2a Update Changelog for New Release 2026-04-19 19:37:16 -07:00
oleibman 9019a9c9da Merge commit from fork 2026-04-18 23:43:10 -07:00
oleibman f1eb4e6980 Merge commit from fork 2026-04-18 23:10:20 -07:00
oleibman 3311a223fe Merge branch 'master' into perf/formula-ast-parsing 2026-04-14 13:09:13 -07:00
oleibman ed82b8b30b Html Writer/Reader New data Attributes
Html Reader recognizes a `data-format` attribute for storing the number format associated with a cell. However, Html Writer does not set this attribute. This PR offers a new Writer property `preserveFormatAndValue` and setter; when `true`, for any cell which uses a number format other than the default `General` the writer will generate a `data-format` attribute and, for strings or numbers, it will also generate a `data-value` attribute. This will increase the accuracy of the spreadsheet when reading/writing Html.

To make this change less abstract, assume a cell which has a value of `1234` and a number format of `$#,###.00`. The cell displayed in the generated Html will appear, regardless of the setting of the new property, as `$1,234.00`. However, the Reader currently treats it as a string with that value. If the html has been generated with the new property set to `true`, the Reader will treat it as a numeric cell with a value of `1234` and a style of `#,###.00`. This permits a more accurate reproduction of the original spreadsheet.

I suspect that setting the new property, aside from causing a slight increase in file size, will not cause any significant breaks. However, I'm not totally convinced, so the property will default to `false` (no change in behavior). The default may change in a future breaking release.
2026-04-12 09:34:43 -07:00
oleibman 7095712837 Avoid Future Merge Conflict 2026-04-10 14:33:01 -07:00
oleibman 9b90dee03d Merge pull request #4857 from oleibman/changelog20260406
Prepare Changelog For New Release
5.6.0
2026-04-10 03:00:03 +00:00
oleibman f302b3265a Prepare Changelog For New Release 2026-04-09 19:54:28 -07:00
oleibman 5b174d37f2 Improve Coverage
Take on some low-hanging fruit, mostly in Conditional Formatting Wizard.
2026-04-06 09:28:17 -07:00
oleibman cd566a3f7d Minor Change 2026-04-06 07:05:28 -07:00
oleibman fc6e7e6a66 Html Writer Handle Text Colors a Bit Better
Researching a security advisory, the code for handling text colors in Html Writer when the cell is non-numeric and the color is hard-coded in the Number Format looked a bit suspicious. As it turns out, the code was *not* subject to a security exploit. However, the color for the Number Format was ignored. This PR corrects that omission.
2026-04-05 22:50:02 -07:00
oleibman 4a476071b3 Merge pull request #4850 from oleibman/updatestan
Update PhpStan
2026-04-05 07:15:00 +00:00
oleibman 8a9e9b5610 Merge pull request #4845 from oleibman/csvnonutf8
More Extendability for CSV Reader
2026-04-05 07:06:58 +00:00
oleibman 5d6d7d537f Merge branch 'master' into csvnonutf8 2026-04-05 00:03:05 -07:00
oleibman 6f23fe3d8c Merge pull request #4844 from oleibman/xlookup
XLOOKUP
2026-04-05 06:44:28 +00:00
oleibman 78a151d340 Merge branch 'master' into xlookup 2026-04-04 23:39:55 -07:00