Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix global phpstan errors #1350

Merged

Conversation

norberttech
Copy link
Member

Change Log

Added

Fixed

  • PHPStan argument.type error

Changed

Removed

Deprecated

Security


Description

Reference: #1345

- src/adapter/etl-adapter-logger/tests/*
- src/adapter/etl-adapter-json/tests/*
- src/adapter/etl-adapter-http/tests/*
- src/adapter/etl-adapter-csv/tests/*
- identifier: missingType.iterableValue
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixing missingType with phpstan level 8 fixing this issue is pretty much pointless as it can be fixed by adding param array which gives pretty much nothing so we would need to upgrade to level 9 (which I absolutely have no time to deal with, already invested waaaay to much into static analysis for arguable benefits) so if anyone is interested in doing that - feel free

__DIR__ . '/src/adapter/*/src',
__DIR__ . '/src/bridge/*/*/src',
__DIR__ . '/src/tools/*/*/src',
])
->withSkipPath(__DIR__ . '/src/lib/parquet/src/Flow/Parquet/Thrift')
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

those are auto-generate classes, they should not be touched

Copy link
Contributor

github-actions bot commented Jan 10, 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.742mb +0.03%  | 521.236ms +2.49% | ±2.30% +486.12% |
| JsonExtractorBench    | bench_extract_10k | 1    | 3   | 4.809mb +0.03%  | 1.032s -1.14%    | ±0.09% -85.81%  |
| ParquetExtractorBench | bench_extract_10k | 1    | 3   | 86.461mb +0.00% | 907.132ms +0.45% | ±0.41% -0.77%   |
| TextExtractorBench    | bench_extract_10k | 1    | 3   | 4.475mb +0.04%  | 34.180ms +5.74%  | ±3.45% +399.63% |
| XmlExtractorBench     | bench_extract_10k | 1    | 3   | 4.452mb +0.03%  | 599.800ms +1.01% | ±0.94% +39.14%  |
+-----------------------+-------------------+------+-----+-----------------+------------------+-----------------+
Transformers
+-----------------------------+--------------------------+------+-----+------------------+-----------------+----------------+
| benchmark                   | subject                  | revs | its | mem_peak         | mode            | rstdev         |
+-----------------------------+--------------------------+------+-----+------------------+-----------------+----------------+
| RenameEntryTransformerBench | bench_transform_10k_rows | 1    | 3   | 108.471mb +0.00% | 59.217ms -1.83% | ±0.92% -17.10% |
+-----------------------------+--------------------------+------+-----+------------------+-----------------+----------------+
Loaders
+--------------------+----------------+------+-----+------------------+------------------+----------------+
| benchmark          | subject        | revs | its | mem_peak         | mode             | rstdev         |
+--------------------+----------------+------+-----+------------------+------------------+----------------+
| CSVLoaderBench     | bench_load_10k | 1    | 3   | 54.017mb +0.00%  | 121.212ms -0.02% | ±2.74% +95.76% |
| JsonLoaderBench    | bench_load_10k | 1    | 3   | 76.777mb +0.00%  | 108.859ms +1.18% | ±1.01% +16.55% |
| ParquetLoaderBench | bench_load_10k | 1    | 3   | 166.957mb +0.00% | 19.571s -1.19%   | ±0.40% -11.13% |
| TextLoaderBench    | bench_load_10k | 1    | 3   | 17.060mb +0.02%  | 45.841ms +3.87%  | ±0.81% -33.71% |
+--------------------+----------------+------+-----+------------------+------------------+----------------+
Building Blocks
+-------------------------+----------------------------+------+-----+------------------+------------------+------------------+
| benchmark               | subject                    | revs | its | mem_peak         | mode             | rstdev           |
+-------------------------+----------------------------+------+-----+------------------+------------------+------------------+
| RowsBench               | bench_chunk_10_on_10k      | 2    | 3   | 80.246mb +0.00%  | 4.428ms +6.39%   | ±2.34% +186.63%  |
| RowsBench               | bench_diff_left_1k_on_10k  | 2    | 3   | 97.522mb +0.00%  | 183.741ms +2.25% | ±0.93% +141.14%  |
| RowsBench               | bench_diff_right_1k_on_10k | 2    | 3   | 80.242mb +0.00%  | 18.659ms +0.95%  | ±1.18% +202.83%  |
| RowsBench               | bench_drop_1k_on_10k       | 2    | 3   | 81.121mb +0.00%  | 1.844ms -7.48%   | ±3.32% +1.07%    |
| RowsBench               | bench_drop_right_1k_on_10k | 2    | 3   | 81.121mb +0.00%  | 2.023ms +4.69%   | ±1.24% -29.28%   |
| RowsBench               | bench_entries_on_10k       | 2    | 3   | 79.282mb +0.00%  | 3.960ms +2.68%   | ±1.58% +5.58%    |
| RowsBench               | bench_filter_on_10k        | 2    | 3   | 79.811mb +0.00%  | 15.915ms +0.42%  | ±0.50% -60.44%   |
| RowsBench               | bench_find_on_10k          | 2    | 3   | 79.811mb +0.00%  | 16.062ms +0.45%  | ±2.71% -20.93%   |
| RowsBench               | bench_find_one_on_10k      | 10   | 3   | 78.502mb +0.00%  | 2.000μs -4.75%   | ±0.00% -100.00%  |
| RowsBench               | bench_first_on_10k         | 10   | 3   | 78.502mb +0.00%  | 0.400μs 0.00%    | ±0.00% 0.00%     |
| RowsBench               | bench_flat_map_on_1k       | 2    | 3   | 86.839mb +0.00%  | 13.997ms +1.71%  | ±1.41% -35.97%   |
| RowsBench               | bench_map_on_10k           | 2    | 3   | 114.187mb +0.00% | 61.473ms +0.30%  | ±3.37% +1819.32% |
| RowsBench               | bench_merge_1k_on_10k      | 2    | 3   | 80.331mb +0.00%  | 1.769ms -3.96%   | ±1.89% -51.95%   |
| RowsBench               | bench_partition_by_on_10k  | 2    | 3   | 83.621mb +0.00%  | 61.032ms -0.58%  | ±1.27% +133.30%  |
| RowsBench               | bench_remove_on_10k        | 2    | 3   | 81.383mb +0.00%  | 4.220ms -1.04%   | ±3.81% +86.08%   |
| RowsBench               | bench_sort_asc_on_1k       | 2    | 3   | 78.783mb +0.00%  | 41.172ms -4.03%  | ±1.12% +25.75%   |
| RowsBench               | bench_sort_by_on_1k        | 2    | 3   | 78.784mb +0.00%  | 45.862ms +3.60%  | ±0.92% +2.83%    |
| RowsBench               | bench_sort_desc_on_1k      | 2    | 3   | 78.783mb +0.00%  | 43.347ms -4.17%  | ±1.23% -59.76%   |
| RowsBench               | bench_sort_entries_on_1k   | 2    | 3   | 80.942mb +0.00%  | 8.410ms +3.18%   | ±2.06% -11.96%   |
| RowsBench               | bench_sort_on_1k           | 2    | 3   | 78.692mb +0.00%  | 32.268ms -1.17%  | ±1.97% +69.27%   |
| RowsBench               | bench_take_1k_on_10k       | 10   | 3   | 78.502mb +0.00%  | 14.784μs +4.02%  | ±3.43% +418.31%  |
| RowsBench               | bench_take_right_1k_on_10k | 10   | 3   | 78.502mb +0.00%  | 15.899μs -5.92%  | ±3.83% +0.00%    |
| RowsBench               | bench_unique_on_1k         | 2    | 3   | 97.523mb +0.00%  | 186.484ms -0.02% | ±2.75% +277.99%  |
| TypeDetectorBench       | bench_type_detector        | 1    | 3   | 43.772mb +0.00%  | 352.302ms +1.31% | ±1.50% +699.65%  |
| TypeDetectorBench       | bench_type_detector        | 1    | 3   | 11.581mb +0.00%  | 70.326ms -1.03%  | ±0.78% +305.76%  |
| NativeEntryFactoryBench | bench_entry_factory        | 1    | 3   | 98.638mb +0.00%  | 436.572ms -0.69% | ±0.42% -43.77%   |
| NativeEntryFactoryBench | bench_entry_factory        | 1    | 3   | 51.468mb +0.00%  | 218.927ms -2.08% | ±0.34% +86.34%   |
| NativeEntryFactoryBench | bench_entry_factory        | 1    | 3   | 13.640mb +0.00%  | 49.810ms +2.63%  | ±0.76% +37.59%   |
+-------------------------+----------------------------+------+-----+------------------+------------------+------------------+

Copy link

codecov bot commented Jan 10, 2025

Codecov Report

Attention: Patch coverage is 75.55556% with 33 lines in your changes missing coverage. Please review.

Project coverage is 82.59%. Comparing base (2bb79f5) to head (5077061).
Report is 6 commits behind head on 1.x.

Additional details and impacted files
@@            Coverage Diff             @@
##              1.x    #1350      +/-   ##
==========================================
+ Coverage   82.57%   82.59%   +0.01%     
==========================================
  Files         641      641              
  Lines       17290    17298       +8     
==========================================
+ Hits        14278    14288      +10     
+ Misses       3012     3010       -2     
Components Coverage Δ
etl 85.97% <77.77%> (-0.03%) ⬇️
cli 85.17% <ø> (ø)
lib-array-dot 94.53% <ø> (ø)
lib-azure-sdk 62.56% <87.50%> (-0.04%) ⬇️
lib-doctrine-dbal-bulk 97.36% <100.00%> (ø)
lib-filesystem 76.23% <93.10%> (-0.02%) ⬇️
lib-parquet 84.57% <86.84%> (+0.40%) ⬆️
lib-parquet-viewer 82.02% <0.00%> (ø)
lib-rdsl 87.09% <83.33%> (ø)
lib-snappy 90.69% <100.00%> (-0.09%) ⬇️
bridge-filesystem-async-aws 90.38% <66.66%> (-0.23%) ⬇️
bridge-filesystem-azure 89.92% <ø> (ø)
bridge-monolog-http 96.38% <ø> (ø)
symfony-http-foundation 77.10% <ø> (ø)
adapter-chartjs 86.45% <ø> (ø)
adapter-csv 89.49% <ø> (ø)
adapter-doctrine 90.14% <ø> (ø)
adapter-elasticsearch 97.19% <ø> (ø)
adapter-google-sheet 78.04% <ø> (ø)
adapter-http 59.15% <ø> (ø)
adapter-json 92.85% <ø> (ø)
adapter-logger 53.84% <ø> (ø)
adapter-meilisearch 97.75% <ø> (ø)
adapter-parquet 59.88% <ø> (ø)
adapter-text 84.44% <ø> (ø)
adapter-xml 83.15% <100.00%> (ø)

- src/adapter/etl-adapter-logger/tests/*
- src/adapter/etl-adapter-json/tests/*
- src/adapter/etl-adapter-http/tests/*
- src/adapter/etl-adapter-csv/tests/*
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tests are excluded because in manny cases we need to pass incorrect arguments to test what will happen

@norberttech norberttech merged commit ca840c8 into flow-php:1.x Jan 10, 2025
22 of 23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant