20 Commits

Author SHA1 Message Date
oleibman 45f6b78792 Merge branch 'master' into perf/xlsx-xmlreader-streaming 2026-06-07 07:10:21 -07:00
oleibman aeb3775f9a A Little Less Hideous, A Little More Flexible 2026-05-16 16:37:51 -07:00
oleibman 2f9ddd04ef Support UTF-16 and UTF-32 Without Endian-ness and BOM
My research indicates they should be treated as Big-Endian.

This leaves UTF-7 as the only encoding known to be unsupported by CsvChunk; it will be handled by parent.
2026-04-29 08:38:44 -07:00
oleibman 8e92f0d343 UTF-16 Surrogates
Chunk routine would fail if chunk ended between two halves of a surrogate. Fix that.

UTF-7, UTF-16 and UCS-2 (no endian-ness specified and no BOM), UTF-32 and UCS-4 (no endian-ness specified regardless of BOM) all revert to parent routine.
2026-04-28 19:57:39 -07:00
oleibman 4449293121 Merge branch 'master' into perf/csv-streaming-encoding 2026-04-20 21:21:20 -07:00
oleibman 8fe8bd55d5 Merge branch 'master' into perf/xlsx-xmlreader-streaming 2026-04-20 21:20:03 -07:00
oleibman e61358e37f Restructure Code 2026-04-17 13:54:55 -07:00
oleibman 3311a223fe Merge branch 'master' into perf/formula-ast-parsing 2026-04-14 13:09:13 -07:00
oleibman 2046b62b89 One More Tweak 2026-04-07 11:31:42 -07:00
oleibman 65bc9b9cf5 Move 1 Test
CsvChunk will not be moved to production, so its test should not be in the regular unit test suite. However, it still has some value in the Benchmark suite, so move it there.
2026-04-07 10:35:36 -07:00
oleibman 6f5c66753d Add Some Flexibility to Benchmark 2026-04-07 09:34:16 -07:00
oleibman b9d0d0b787 Merge branch 'master' into perf/csv-streaming-encoding 2026-04-06 22:38:46 -07:00
oleibman 8a033d05f0 Resolve Merge Conflicts 2026-04-06 22:30:37 -07:00
kemo c319f893d5 Refactor formula token cache to instance properties, opt-in by default 2026-03-26 09:23:26 +01:00
kemo e9e467de10 Revert copy() to serialize, keep benchmark and docblocks
Drop the clone-based copy() since benchmark results vary across PHP
versions and platforms. Keep the benchmark test (renamed to end in Test)
in a separate testsuite so users can assess which approach suits their
environment. Add docblock @see references on copy() and __clone().
2026-03-25 16:52:09 +01:00
oleibman 5a18a925f9 Rename Benchmark Test 2026-03-22 08:32:27 -07:00
kemo 6798178ce4 Move benchmarks to tests/Benchmark to avoid running with unit tests 2026-03-16 15:01:04 +01:00
kemo dc4c094b7c Move benchmarks to tests/Benchmark to avoid running with unit tests 2026-03-16 15:01:04 +01:00
kemo 134b6b0710 Move benchmarks to tests/Benchmark to avoid running with unit tests 2026-03-16 15:01:04 +01:00
kemo 1c1242aa2d Move benchmarks to tests/Benchmark to avoid running with unit tests 2026-03-16 15:01:04 +01:00