flow-php / flow

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

Support Doctrine DBAL 4 #974

Closed stloyd closed 4 months ago

stloyd commented 4 months ago

Change Log

Added

  • Support Doctrine DBAL 4

Fixed

Changed

Removed

Deprecated

Security


Description

norberttech commented 4 months ago

is 3.x no longer supported by doctrine?

github-actions[bot] commented 4 months 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 | +-----------------------+-------------------+------+-----+------------------+------------------+-----------------+ | AvroExtractorBench | bench_extract_10k | 1 | 3 | 35.269mb +0.01% | 804.917ms -3.07% | ±1.06% -56.72% | | CSVExtractorBench | bench_extract_10k | 1 | 3 | 4.989mb +0.05% | 338.361ms -1.00% | ±0.26% +41.87% | | JsonExtractorBench | bench_extract_10k | 1 | 3 | 5.139mb +0.05% | 1.044s -1.35% | ±1.59% +744.61% | | ParquetExtractorBench | bench_extract_10k | 1 | 3 | 239.843mb +0.00% | 1.269s +1.68% | ±0.32% -56.16% | | TextExtractorBench | bench_extract_10k | 1 | 3 | 4.903mb +0.05% | 35.132ms +0.31% | ±0.56% -63.33% | | XmlExtractorBench | bench_extract_10k | 1 | 3 | 4.904mb +0.05% | 425.166ms -2.03% | ±0.83% -47.60% | +-----------------------+-------------------+------+-----+------------------+------------------+-----------------+ ```
Transformers ```shell +-----------------------------+--------------------------+------+-----+------------------+-----------------+----------------+ | benchmark | subject | revs | its | mem_peak | mode | rstdev | +-----------------------------+--------------------------+------+-----+------------------+-----------------+----------------+ | RenameEntryTransformerBench | bench_transform_10k_rows | 1 | 3 | 110.608mb +0.00% | 65.846ms +0.54% | ±0.51% -30.70% | +-----------------------------+--------------------------+------+-----+------------------+-----------------+----------------+ ```
Loaders ```shell +--------------------+----------------+------+-----+------------------+------------------+----------------+ | benchmark | subject | revs | its | mem_peak | mode | rstdev | +--------------------+----------------+------+-----+------------------+------------------+----------------+ | AvroLoaderBench | bench_load_10k | 1 | 3 | 95.649mb +0.00% | 465.549ms -0.37% | ±0.46% -81.62% | | CSVLoaderBench | bench_load_10k | 1 | 3 | 54.125mb +0.00% | 73.201ms +0.11% | ±0.39% -72.50% | | JsonLoaderBench | bench_load_10k | 1 | 3 | 106.554mb +0.00% | 53.507ms +1.84% | ±0.33% -67.14% | | ParquetLoaderBench | bench_load_10k | 1 | 3 | 321.765mb +0.00% | 1.496s +0.42% | ±0.37% -79.33% | | TextLoaderBench | bench_load_10k | 1 | 3 | 17.948mb +0.01% | 41.385ms +1.37% | ±0.45% -73.22% | +--------------------+----------------+------+-----+------------------+------------------+----------------+ ```
Building Blocks ```shell +-------------------------+----------------------------+------+-----+------------------+------------------+-----------------+ | benchmark | subject | revs | its | mem_peak | mode | rstdev | +-------------------------+----------------------------+------+-----+------------------+------------------+-----------------+ | RowsBench | bench_chunk_10_on_10k | 2 | 3 | 76.683mb +0.00% | 3.710ms +11.25% | ±0.68% -81.08% | | RowsBench | bench_diff_left_1k_on_10k | 2 | 3 | 96.410mb +0.00% | 182.381ms +0.21% | ±0.81% +90.35% | | RowsBench | bench_diff_right_1k_on_10k | 2 | 3 | 74.936mb +0.00% | 18.305ms -0.14% | ±0.79% +181.19% | | RowsBench | bench_drop_1k_on_10k | 2 | 3 | 77.923mb +0.00% | 1.873ms +10.03% | ±3.04% -19.08% | | RowsBench | bench_drop_right_1k_on_10k | 2 | 3 | 77.923mb +0.00% | 1.988ms +22.36% | ±3.34% +84.06% | | RowsBench | bench_entries_on_10k | 2 | 3 | 75.035mb +0.00% | 2.819ms +11.62% | ±3.12% +181.77% | | RowsBench | bench_filter_on_10k | 2 | 3 | 75.564mb +0.00% | 14.868ms -0.61% | ±1.50% -36.38% | | RowsBench | bench_find_on_10k | 2 | 3 | 75.564mb +0.00% | 14.795ms +1.11% | ±0.47% -62.30% | | RowsBench | bench_find_one_on_10k | 10 | 3 | 73.468mb +0.00% | 2.000μs +11.49% | ±0.00% -100.00% | | RowsBench | bench_first_on_10k | 10 | 3 | 73.468mb +0.00% | 0.400μs 0.00% | ±0.00% 0.00% | | RowsBench | bench_flat_map_on_1k | 2 | 3 | 87.023mb +0.00% | 12.978ms +0.89% | ±1.68% -36.38% | | RowsBench | bench_map_on_10k | 2 | 3 | 116.384mb +0.00% | 64.323ms -0.13% | ±0.94% -20.62% | | RowsBench | bench_merge_1k_on_10k | 2 | 3 | 76.084mb +0.00% | 1.649ms +23.34% | ±1.46% -55.19% | | RowsBench | bench_partition_by_on_10k | 2 | 3 | 79.431mb +0.00% | 57.870ms -3.16% | ±0.18% -72.38% | | RowsBench | bench_remove_on_10k | 2 | 3 | 78.185mb +0.00% | 4.400ms +14.88% | ±2.66% +651.18% | | RowsBench | bench_sort_asc_on_1k | 2 | 3 | 73.546mb +0.00% | 40.591ms -1.03% | ±0.98% -0.30% | | RowsBench | bench_sort_by_on_1k | 2 | 3 | 73.547mb +0.00% | 40.690ms +0.12% | ±1.56% +37.16% | | RowsBench | bench_sort_desc_on_1k | 2 | 3 | 73.546mb +0.00% | 40.998ms +1.00% | ±0.91% +54.14% | | RowsBench | bench_sort_entries_on_1k | 2 | 3 | 75.910mb +0.00% | 7.452ms +1.95% | ±0.80% +140.17% | | RowsBench | bench_sort_on_1k | 2 | 3 | 73.468mb +0.00% | 29.647ms +1.43% | ±1.65% -43.69% | | RowsBench | bench_take_1k_on_10k | 10 | 3 | 73.468mb +0.00% | 13.806μs +0.76% | ±0.34% -87.07% | | RowsBench | bench_take_right_1k_on_10k | 10 | 3 | 73.468mb +0.00% | 16.366μs +3.54% | ±2.60% +774.19% | | RowsBench | bench_unique_on_1k | 2 | 3 | 96.477mb +0.00% | 195.766ms +5.27% | ±2.33% +200.79% | | NativeEntryFactoryBench | bench_entry_factory | 1 | 3 | 116.715mb +0.00% | 494.365ms +0.80% | ±0.80% +42.84% | | NativeEntryFactoryBench | bench_entry_factory | 1 | 3 | 60.193mb +0.00% | 252.796ms +2.99% | ±0.38% -53.81% | | NativeEntryFactoryBench | bench_entry_factory | 1 | 3 | 15.127mb +0.02% | 53.421ms +3.56% | ±0.05% -81.57% | | TypeDetectorBench | bench_type_detector | 1 | 3 | 59.961mb +0.00% | 435.851ms +0.87% | ±0.88% +123.94% | | TypeDetectorBench | bench_type_detector | 1 | 3 | 14.500mb +0.02% | 85.922ms +0.72% | ±1.68% +154.78% | +-------------------------+----------------------------+------+-----+------------------+------------------+-----------------+ ```
stloyd commented 4 months ago

@norberttech Version 3.8+ is right now supported, but in v4 there are plenty of hard BC breaks, that probably would need to end up in duplicating code to support both versions.

norberttech commented 4 months ago

@norberttech Version 3.8+ is right now supported, but in v4 there are plenty of hard BC breaks, that probably would need to end up in duplicating code to support both versions.

Yeah, then we need to figure out way to keep 3.x supported

norberttech commented 4 months ago

nice 🚀