Skip to content

perf: build Z-suffixed ISO datetimes without timelib's abbreviation l… - #2652

Merged
norberttech merged 1 commit into
1.xfrom
datetime-cast
Sep 24, 2026
Merged

norberttech merged 1 commit into
1.xfrom
datetime-cast

Conversation

@norberttech

Copy link
Copy Markdown
Member

Resolves: #xxx

Change Log


Added

Fixed

Changed

  • flow-php/types - DateTimeType casts Z-suffixed ISO datetimes ~9x faster
  • flow-php/flow-php-ext - native hydrator casts Z-suffixed ISO datetimes ~14x faster

Removed

Deprecated

Security

…ookup

- cast Z values with a cached DateTimeZone('Z') in DateTimeType and the extension
- write Z datetimes in the Orders CSV benchmark fixture
@norberttech norberttech added this to the 0.45.0 milestone Sep 24, 2026
@codecov

codecov Bot commented Sep 24, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 84.93%. Comparing base (594905c) to head (2dd127e).
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@             Coverage Diff              @@
##                1.x    #2652      +/-   ##
============================================
- Coverage     84.94%   84.93%   -0.01%     
- Complexity    22983    31265    +8282     
============================================
  Files          2125     2125              
  Lines         89490    89493       +3     
============================================
- Hits          76015    76012       -3     
- Misses        13475    13481       +6     
Components Coverage Δ
etl 92.32% <ø> (+<0.01%) ⬆️
cli 76.03% <ø> (ø)
lib-array-dot 96.52% <ø> (ø)
lib-azure-sdk 64.44% <ø> (ø)
lib-doctrine-dbal-bulk 70.36% <ø> (ø)
lib-filesystem 77.18% <ø> (ø)
lib-types 90.50% <100.00%> (+0.01%) ⬆️
lib-parquet 70.23% <ø> (-0.10%) ⬇️
lib-parquet-viewer 82.26% <ø> (ø)
lib-snappy 89.86% <ø> (ø)
lib-dremel 0.00% <ø> (ø)
lib-postgresql 85.92% <ø> (+<0.01%) ⬆️
lib-telemetry 86.59% <ø> (ø)
bridge-filesystem-async-aws 86.31% <ø> (ø)
bridge-filesystem-azure 80.96% <ø> (ø)
bridge-filesystem-sftp 91.02% <ø> (ø)
bridge-monolog-http 91.54% <ø> (ø)
bridge-monolog-telemetry 94.79% <ø> (ø)
bridge-openapi-specification 60.86% <ø> (ø)
symfony-http-foundation 56.86% <ø> (ø)
bridge-psr18-telemetry 100.00% <ø> (ø)
bridge-psr3-telemetry 98.95% <ø> (ø)
bridge-psr7-telemetry 100.00% <ø> (ø)
bridge-telemetry-otlp 90.11% <ø> (ø)
bridge-symfony-http-foundation-telemetry 92.85% <ø> (ø)
bridge-symfony-filesystem-bundle 91.85% <ø> (ø)
bridge-symfony-filesystem-cache 98.18% <ø> (ø)
bridge-symfony-postgresql-bundle 93.04% <ø> (ø)
bridge-symfony-postgresql-cache 94.41% <ø> (ø)
bridge-symfony-postgresql-messenger 98.80% <ø> (ø)
bridge-symfony-postgresql-session 93.65% <ø> (ø)
bridge-symfony-telemetry-bundle 90.72% <ø> (ø)
adapter-chartjs 80.50% <ø> (ø)
adapter-csv 88.55% <ø> (ø)
adapter-doctrine 90.06% <ø> (ø)
adapter-google-sheet 81.17% <ø> (ø)
adapter-http 75.75% <ø> (ø)
adapter-json 67.77% <ø> (ø)
adapter-logger 28.57% <ø> (ø)
adapter-parquet 76.58% <ø> (ø)
adapter-text 72.06% <ø> (ø)
adapter-xml 60.32% <ø> (ø)
adapter-avro 7.14% <ø> (ø)
adapter-excel 80.00% <ø> (ø)
adapter-postgresql 78.56% <ø> (ø)
adapter-seal 65.69% <ø> (ø)
bridge-phpunit-postgresql 75.30% <ø> (ø)
bridge-phpunit-telemetry 87.36% <ø> (ø)
bridge-phpstan-types 0.00% <ø> (ø)
bridge-postgresql-valinor 100.00% <ø> (ø)
🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@norberttech
norberttech merged commit a959b12 into 1.x Sep 24, 2026
49 of 50 checks passed
@norberttech
norberttech deleted the datetime-cast branch September 24, 2026 09:54
@github-project-automation github-project-automation Bot moved this from Todo to Done in Roadmap Sep 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant