flow-php / flow

Flow PHP - data processing framework
https://flow-php.com
MIT License
491 stars 28 forks source link

Add testing against PHP 8.4 #1257

Closed stloyd closed 1 week ago

stloyd commented 1 week ago

Change Log

Added

  • Add testing against PHP 8.4

Fixed

  • Fixed deprecation from PHP 8.4

Changed

Removed

Deprecated

Security


Description

Currently blocked by: https://github.com/halaxa/json-machine/issues/116

github-actions[bot] commented 1 week ago

Flow PHP - Benchmarks

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

Extractors ```shell +-----------------------+-------------------+------+-----+-----------------+------------------+-----------------+ | benchmark | subject | revs | its | mem_peak | mode | rstdev | +-----------------------+-------------------+------+-----+-----------------+------------------+-----------------+ | CSVExtractorBench | bench_extract_10k | 1 | 3 | 4.620mb +0.01% | 512.619ms -1.51% | ±0.54% -34.73% | | JsonExtractorBench | bench_extract_10k | 1 | 3 | 4.708mb +0.15% | 1.077s -0.39% | ±1.67% +932.80% | | ParquetExtractorBench | bench_extract_10k | 1 | 3 | 29.315mb +0.00% | 438.785ms -0.66% | ±0.36% +5.92% | | TextExtractorBench | bench_extract_10k | 1 | 3 | 4.348mb +0.01% | 33.512ms -0.23% | ±0.89% +137.16% | | XmlExtractorBench | bench_extract_10k | 1 | 3 | 4.330mb -0.00% | 663.222ms +1.38% | ±0.27% -84.90% | +-----------------------+-------------------+------+-----+-----------------+------------------+-----------------+ ```
Transformers ```shell +-----------------------------+--------------------------+------+-----+------------------+-----------------+-----------------+ | benchmark | subject | revs | its | mem_peak | mode | rstdev | +-----------------------------+--------------------------+------+-----+------------------+-----------------+-----------------+ | RenameEntryTransformerBench | bench_transform_10k_rows | 1 | 3 | 116.623mb +0.00% | 60.613ms +1.35% | ±1.95% +949.88% | +-----------------------------+--------------------------+------+-----+------------------+-----------------+-----------------+ ```
Loaders ```shell +--------------------+----------------+------+-----+------------------+------------------+-----------------+ | benchmark | subject | revs | its | mem_peak | mode | rstdev | +--------------------+----------------+------+-----+------------------+------------------+-----------------+ | CSVLoaderBench | bench_load_10k | 1 | 3 | 54.817mb +0.00% | 140.354ms +0.26% | ±0.99% -13.92% | | JsonLoaderBench | bench_load_10k | 1 | 3 | 90.401mb +0.01% | 116.530ms -0.19% | ±0.48% +66.28% | | ParquetLoaderBench | bench_load_10k | 1 | 3 | 124.671mb +0.00% | 1.238s -0.27% | ±0.49% +445.96% | | TextLoaderBench | bench_load_10k | 1 | 3 | 17.539mb +0.00% | 44.429ms -0.77% | ±0.68% -0.94% | +--------------------+----------------+------+-----+------------------+------------------+-----------------+ ```
Building Blocks ```shell +-------------------------+----------------------------+------+-----+------------------+------------------+-----------------+ | benchmark | subject | revs | its | mem_peak | mode | rstdev | +-------------------------+----------------------------+------+-----+------------------+------------------+-----------------+ | RowsBench | bench_chunk_10_on_10k | 2 | 3 | 87.371mb +0.00% | 3.568ms -2.83% | ±3.05% -14.78% | | RowsBench | bench_diff_left_1k_on_10k | 2 | 3 | 102.975mb +0.00% | 185.240ms -3.12% | ±0.49% -5.50% | | RowsBench | bench_diff_right_1k_on_10k | 2 | 3 | 85.695mb +0.00% | 18.660ms -3.79% | ±0.62% -74.70% | | RowsBench | bench_drop_1k_on_10k | 2 | 3 | 88.611mb +0.00% | 1.753ms +4.90% | ±0.84% -72.07% | | RowsBench | bench_drop_right_1k_on_10k | 2 | 3 | 88.611mb +0.00% | 1.941ms +10.20% | ±2.55% +3.78% | | RowsBench | bench_entries_on_10k | 2 | 3 | 85.724mb +0.00% | 2.914ms +3.33% | ±2.98% +181.52% | | RowsBench | bench_filter_on_10k | 2 | 3 | 86.253mb +0.00% | 17.333ms +5.28% | ±1.14% -42.46% | | RowsBench | bench_find_on_10k | 2 | 3 | 86.253mb +0.00% | 18.256ms +12.27% | ±2.28% +131.54% | | RowsBench | bench_find_one_on_10k | 10 | 3 | 84.156mb +0.00% | 1.706μs -10.49% | ±2.72% +11.54% | | RowsBench | bench_first_on_10k | 10 | 3 | 84.156mb +0.00% | 0.400μs 0.00% | ±0.00% 0.00% | | RowsBench | bench_flat_map_on_1k | 2 | 3 | 93.507mb +0.00% | 12.628ms +0.57% | ±2.66% +116.90% | | RowsBench | bench_map_on_10k | 2 | 3 | 122.877mb +0.00% | 62.448ms -0.07% | ±3.11% +598.10% | | RowsBench | bench_merge_1k_on_10k | 2 | 3 | 86.772mb +0.00% | 1.434ms -6.14% | ±3.46% +131.20% | | RowsBench | bench_partition_by_on_10k | 2 | 3 | 90.124mb +0.00% | 63.694ms -0.10% | ±1.46% +67.30% | | RowsBench | bench_remove_on_10k | 2 | 3 | 88.874mb +0.00% | 4.275ms -3.85% | ±1.67% +20.30% | | RowsBench | bench_sort_asc_on_1k | 2 | 3 | 84.306mb +0.00% | 39.813ms -0.85% | ±2.72% +686.45% | | RowsBench | bench_sort_by_on_1k | 2 | 3 | 84.306mb +0.00% | 39.686ms -2.90% | ±0.58% -39.62% | | RowsBench | bench_sort_desc_on_1k | 2 | 3 | 84.306mb +0.00% | 40.807ms -0.41% | ±0.38% -67.93% | | RowsBench | bench_sort_entries_on_1k | 2 | 3 | 86.598mb +0.00% | 7.254ms -1.79% | ±0.65% -26.50% | | RowsBench | bench_sort_on_1k | 2 | 3 | 84.156mb +0.00% | 29.597ms +1.40% | ±1.11% -10.97% | | RowsBench | bench_take_1k_on_10k | 10 | 3 | 84.156mb +0.00% | 13.324μs -4.14% | ±1.40% +19.48% | | RowsBench | bench_take_right_1k_on_10k | 10 | 3 | 84.156mb +0.00% | 15.894μs -0.42% | ±0.30% -89.77% | | RowsBench | bench_unique_on_1k | 2 | 3 | 102.976mb +0.00% | 192.497ms +0.37% | ±0.94% +266.83% | | TypeDetectorBench | bench_type_detector | 1 | 3 | 53.198mb +0.00% | 405.247ms +1.13% | ±1.39% +170.29% | | TypeDetectorBench | bench_type_detector | 1 | 3 | 13.464mb +0.00% | 79.685ms -1.16% | ±1.99% +488.60% | | NativeEntryFactoryBench | bench_entry_factory | 1 | 3 | 107.460mb +0.00% | 477.585ms -0.92% | ±0.65% -19.74% | | NativeEntryFactoryBench | bench_entry_factory | 1 | 3 | 55.818mb +0.00% | 244.241ms -0.61% | ±1.38% -32.58% | | NativeEntryFactoryBench | bench_entry_factory | 1 | 3 | 14.656mb +0.00% | 52.618ms +1.02% | ±0.40% -77.16% | +-------------------------+----------------------------+------+-----+------------------+------------------+-----------------+ ```