Skip to content

Conversation

@norberttech
Copy link
Member

Resolves: #xxx

Change Log


Added

  • Reusable action to setup php version in github workflows

Fixed

Changed

  • Split test-suite.yml workflow steps into standalone jobs

Removed

Deprecated

Security

@github-actions
Copy link
Contributor

github-actions bot commented Sep 29, 2025

Flow PHP - Benchmarks

Results of the benchmarks from this PR are compared with the results from 1.x branch.

Extractors
+-----------------------+------------------------+------+-----+-----------------+------------------+-----------------+
| benchmark             | subject                | revs | its | mem_peak        | mode             | rstdev          |
+-----------------------+------------------------+------+-----+-----------------+------------------+-----------------+
| CSVExtractorBench     | bench_extract_10k      | 1    | 3   | 4.962mb -0.02%  | 436.526ms -0.35% | ±0.99% -27.50%  |
| ExcelExtractorBench   | bench_extract_10k_ods  | 1    | 3   | 66.220mb -0.00% | 1.104s +0.37%    | ±0.95% +263.73% |
| ExcelExtractorBench   | bench_extract_10k_xlsx | 1    | 3   | 68.332mb -0.00% | 1.736s -0.38%    | ±0.65% -9.60%   |
| JsonExtractorBench    | bench_extract_10k      | 1    | 3   | 5.414mb +0.05%  | 1.183s +0.30%    | ±0.88% +76.60%  |
| ParquetExtractorBench | bench_extract_10k      | 1    | 3   | 10.736mb -0.18% | 9.611s -18.27%   | ±1.31% +495.51% |
| TextExtractorBench    | bench_extract_10k      | 1    | 3   | 4.687mb -0.02%  | 61.848ms -2.07%  | ±0.10% -90.66%  |
| XmlExtractorBench     | bench_extract_10k      | 1    | 3   | 4.675mb -0.02%  | 624.667ms -0.83% | ±0.80% -42.50%  |
+-----------------------+------------------------+------+-----+-----------------+------------------+-----------------+
Transformers
+---------------------------------+--------------------------+------+-----+------------------+-----------------+-----------------+
| benchmark                       | subject                  | revs | its | mem_peak         | mode            | rstdev          |
+---------------------------------+--------------------------+------+-----+------------------+-----------------+-----------------+
| RenameEntryTransformerBench     | bench_transform_10k_rows | 1    | 3   | 123.496mb -0.00% | 67.622ms +2.63% | ±0.35% -77.17%  |
| RenameEachEntryTransformerBench | bench_transform_10k_rows | 1    | 3   | 18.692mb -0.01%  | 73.537ms +1.85% | ±0.65% +185.88% |
+---------------------------------+--------------------------+------+-----+------------------+-----------------+-----------------+
Loaders
+--------------------+----------------+------+-----+------------------+------------------+----------------+
| benchmark          | subject        | revs | its | mem_peak         | mode             | rstdev         |
+--------------------+----------------+------+-----+------------------+------------------+----------------+
| CSVLoaderBench     | bench_load_10k | 1    | 3   | 62.787mb -0.00%  | 90.691ms -3.73%  | ±0.27% -81.97% |
| JsonLoaderBench    | bench_load_10k | 1    | 3   | 80.707mb -0.00%  | 104.959ms -0.07% | ±1.07% +16.04% |
| ParquetLoaderBench | bench_load_10k | 1    | 3   | 793.552mb +0.01% | 20.150s -25.69%  | ±0.45% -16.86% |
| TextLoaderBench    | bench_load_10k | 1    | 3   | 17.987mb -0.01%  | 34.192ms +1.60%  | ±0.91% -59.45% |
+--------------------+----------------+------+-----+------------------+------------------+----------------+
Building Blocks
+-------------------+----------------------------+------+-----+------------------+------------------+-------------------------------+
| benchmark         | subject                    | revs | its | mem_peak         | mode             | rstdev                        |
+-------------------+----------------------------+------+-----+------------------+------------------+-------------------------------+
| EntryFactoryBench | bench_entry_factory        | 1    | 3   | 106.091mb -0.00% | 651.860ms -0.62% | ±0.26% -90.18%                |
| EntryFactoryBench | bench_entry_factory        | 1    | 3   | 55.368mb -0.00%  | 338.110ms +2.59% | ±1.33% -5.55%                 |
| EntryFactoryBench | bench_entry_factory        | 1    | 3   | 14.954mb -0.01%  | 72.045ms +3.52%  | ±1.24% +77.51%                |
| RowsBench         | bench_chunk_10_on_10k      | 2    | 3   | 93.558mb -0.00%  | 4.247ms +27.62%  | ±1.07% -47.53%                |
| RowsBench         | bench_diff_left_1k_on_10k  | 2    | 3   | 110.948mb -0.00% | 240.082ms +0.37% | ±0.18% -47.60%                |
| RowsBench         | bench_diff_right_1k_on_10k | 2    | 3   | 93.668mb -0.00%  | 25.004ms +5.09%  | ±0.69% -15.88%                |
| RowsBench         | bench_drop_1k_on_10k       | 2    | 3   | 94.433mb -0.00%  | 1.919ms +29.89%  | ±3.39% -2.57%                 |
| RowsBench         | bench_drop_right_1k_on_10k | 2    | 3   | 94.433mb -0.00%  | 1.933ms +42.08%  | ±3.59% +183.51%               |
| RowsBench         | bench_entries_on_10k       | 2    | 3   | 92.594mb -0.00%  | 3.892ms +15.39%  | ±2.68% +176.64%               |
| RowsBench         | bench_filter_on_10k        | 2    | 3   | 93.123mb -0.00%  | 16.403ms +5.78%  | ±1.20% +24.35%                |
| RowsBench         | bench_find_on_10k          | 2    | 3   | 93.123mb -0.00%  | 16.327ms +6.56%  | ±2.29% +129.97%               |
| RowsBench         | bench_find_one_on_10k      | 10   | 3   | 91.812mb -0.00%  | 2.106μs +10.85%  | ±2.21% +18908122152811000.00% |
| RowsBench         | bench_first_on_10k         | 10   | 3   | 91.812mb -0.00%  | 0.400μs 0.00%    | ±0.00% 0.00%                  |
| RowsBench         | bench_flat_map_on_1k       | 2    | 3   | 100.872mb -0.00% | 16.413ms +14.84% | ±1.69% +77.53%                |
| RowsBench         | bench_map_on_10k           | 2    | 3   | 130.299mb -0.00% | 70.412ms +4.34%  | ±0.47% -0.55%                 |
| RowsBench         | bench_merge_1k_on_10k      | 2    | 3   | 93.643mb -0.00%  | 1.554ms +26.90%  | ±3.39% +659.81%               |
| RowsBench         | bench_partition_by_on_10k  | 2    | 3   | 97.031mb -0.00%  | 63.205ms -0.59%  | ±0.30% -88.08%                |
| RowsBench         | bench_remove_on_10k        | 2    | 3   | 94.695mb -0.00%  | 3.883ms +4.71%   | ±1.28% -62.06%                |
| RowsBench         | bench_sort_asc_on_1k       | 2    | 3   | 92.192mb -0.00%  | 40.738ms -0.16%  | ±0.14% -91.27%                |
| RowsBench         | bench_sort_by_on_1k        | 2    | 3   | 92.193mb -0.00%  | 41.093ms +0.84%  | ±1.74% +480.96%               |
| RowsBench         | bench_sort_desc_on_1k      | 2    | 3   | 92.192mb -0.00%  | 41.323ms +2.76%  | ±1.51% +2.00%                 |
| RowsBench         | bench_sort_entries_on_1k   | 2    | 3   | 94.255mb -0.00%  | 8.449ms +3.91%   | ±2.54% +92.20%                |
| RowsBench         | bench_sort_on_1k           | 2    | 3   | 92.004mb -0.00%  | 30.692ms +3.55%  | ±0.37% -57.60%                |
| RowsBench         | bench_take_1k_on_10k       | 10   | 3   | 91.812mb -0.00%  | 14.780μs -22.66% | ±1.14% -50.76%                |
| RowsBench         | bench_take_right_1k_on_10k | 10   | 3   | 91.812mb -0.00%  | 17.360μs -13.00% | ±1.94% -7.69%                 |
| RowsBench         | bench_unique_on_1k         | 2    | 3   | 110.949mb -0.00% | 241.812ms +0.84% | ±0.17% -69.78%                |
| TypeDetectorBench | bench_type_detector        | 1    | 3   | 42.613mb -0.00%  | 407.202ms +0.38% | ±2.47% +995.63%               |
| TypeDetectorBench | bench_type_detector        | 1    | 3   | 11.671mb -0.01%  | 82.951ms +1.70%  | ±0.67% -23.46%                |
+-------------------+----------------------------+------+-----+------------------+------------------+-------------------------------+
Parquet Library
+--------------------+---------------------------------+------+-----+------------------+-------------------+-----------------+
| benchmark          | subject                         | revs | its | mem_peak         | mode              | rstdev          |
+--------------------+---------------------------------+------+-----+------------------+-------------------+-----------------+
| ParquetWriterBench | bench_write_batch               | 1    | 3   | 11.750mb -14.01% | 194.509ms -12.97% | ±0.70% +54.18%  |
| ParquetWriterBench | bench_write_gzip                | 1    | 3   | 10.410mb +0.01%  | 219.560ms -0.98%  | ±0.54% +62.71%  |
| ParquetWriterBench | bench_write_row_by_row          | 1    | 3   | 11.750mb -14.01% | 192.374ms -13.29% | ±0.66% +157.15% |
| ParquetWriterBench | bench_write_snappy              | 1    | 3   | 11.750mb -14.01% | 194.506ms -14.16% | ±0.71% -77.40%  |
| ParquetWriterBench | bench_write_uncompressed        | 1    | 3   | 10.103mb +0.01%  | 192.569ms +0.07%  | ±0.45% -50.97%  |
| ParquetReaderBench | bench_page_headers              | 1    | 3   | 6.716mb -0.02%   | 1.859s +1.37%     | ±0.50% -8.75%   |
| ParquetReaderBench | bench_read_metadata             | 1    | 3   | 5.411mb -0.02%   | 8.001ms -1.13%    | ±1.06% +0.71%   |
| ParquetReaderBench | bench_read_schema               | 1    | 3   | 5.411mb -0.02%   | 8.389ms +4.28%    | ±2.22% -29.79%  |
| ParquetReaderBench | bench_read_values_all_columns   | 1    | 3   | 9.151mb -0.22%   | 5.530s -28.92%    | ±0.89% +215.86% |
| ParquetReaderBench | bench_read_values_single_column | 1    | 3   | 6.448mb -0.31%   | 215.590ms -51.60% | ±0.22% -28.32%  |
| ParquetReaderBench | bench_read_values_with_limit    | 1    | 3   | 6.975mb -0.46%   | 18.453ms -20.67%  | ±0.34% -53.97%  |
+--------------------+---------------------------------+------+-----+------------------+-------------------+-----------------+

@codecov
Copy link

codecov bot commented Sep 29, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 77.67%. Comparing base (067d9ad) to head (f713f0c).
⚠️ Report is 2 commits behind head on 1.x.
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@            Coverage Diff             @@
##              1.x    #1882      +/-   ##
==========================================
+ Coverage   77.63%   77.67%   +0.03%     
==========================================
  Files         824      824              
  Lines       25227    25227              
==========================================
+ Hits        19585    19594       +9     
+ Misses       5642     5633       -9     
Components Coverage Δ
etl 89.30% <ø> (+0.05%) ⬆️
cli 85.91% <ø> (ø)
lib-array-dot 94.56% <ø> (ø)
lib-azure-sdk 61.35% <ø> (ø)
lib-doctrine-dbal-bulk 95.59% <ø> (ø)
lib-filesystem 80.25% <ø> (ø)
lib-types 53.55% <ø> (ø)
lib-parquet 68.75% <ø> (ø)
lib-parquet-viewer 83.11% <ø> (ø)
lib-snappy 90.23% <ø> (+0.46%) ⬆️
bridge-filesystem-async-aws 90.38% <ø> (ø)
bridge-filesystem-azure 89.92% <ø> (ø)
bridge-monolog-http 97.04% <ø> (ø)
bridge-openapi-specification 94.52% <ø> (ø)
symfony-http-foundation 74.41% <ø> (ø)
adapter-chartjs 86.70% <ø> (ø)
adapter-csv 88.85% <ø> (ø)
adapter-doctrine 91.21% <ø> (ø)
adapter-elasticsearch 97.23% <ø> (ø)
adapter-google-sheet 91.66% <ø> (ø)
adapter-http 58.10% <ø> (ø)
adapter-json 87.98% <ø> (ø)
adapter-logger 84.61% <ø> (+30.76%) ⬆️
adapter-meilisearch 97.95% <ø> (ø)
adapter-parquet 78.40% <ø> (ø)
adapter-text 84.44% <ø> (ø)
adapter-xml 82.86% <ø> (ø)
🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@norberttech norberttech force-pushed the chore/refactor-github-workflows branch from df9c04c to 7dfb9e2 Compare September 30, 2025 21:27
@norberttech norberttech enabled auto-merge (squash) October 2, 2025 08:28
@norberttech norberttech disabled auto-merge October 2, 2025 08:28
@norberttech norberttech merged commit 170c9a3 into 1.x Oct 2, 2025
17 checks passed
@norberttech norberttech deleted the chore/refactor-github-workflows branch October 2, 2025 08:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants