Skip to content

Use native feature of infection to include SA tool#111

Merged
DanielBadura merged 2 commits into1.12.xfrom
use-native-sa-tooling-infection
Nov 19, 2025
Merged

Use native feature of infection to include SA tool#111
DanielBadura merged 2 commits into1.12.xfrom
use-native-sa-tooling-infection

Conversation

@DanielBadura
Copy link
Member

@DanielBadura DanielBadura commented Sep 6, 2025

Use native feature of infection to include SA tooling.

Dropping roave/infection-static-analysis-plugin in favor of the native option infection is offering now.
This also means switching from psalm to phpstan as the SA tool used with infection.

Needs an update to the msi configured as it is a tad lower now.

@github-actions
Copy link

github-actions bot commented Sep 6, 2025

Hello 👋

here is the most recent benchmark result:

HydratorWithCryptographyBench
=============================

+-------------------------------+-------------------+-------------------+-----------------+------------+
|                               | time (kde mode)                       | memory                       |
+-------------------------------+-------------------+-------------------+-----------------+------------+
| subject                       | Tag: <current>    | Tag: base         | Tag: <current>  | Tag: base  |
+-------------------------------+-------------------+-------------------+-----------------+------------+
| benchHydrate1Object ()        | 7.600μs (±0.00%)  | 8.000μs (±0.00%)  | 3.324mb         | 3.268mb    |
| benchExtract1Object ()        | 88.200μs (±0.00%) | 10.600μs (±0.00%) | 3.324mb         | 3.268mb    |
| benchHydrate1000Objects ()    | 4.951ms (±0.00%)  | 4.890ms (±0.00%)  | 3.353mb         | 3.002mb    |
| benchExtract1000Objects ()    | 6.962ms (±0.00%)  | 6.744ms (±0.00%)  | 3.324mb         | 2.829mb    |
| benchHydrate1000000Objects () | 2.954s (±0.00%)   | 2.916s (±0.00%)   | 3.353mb         | 3.002mb    |
| benchExtract1000000Objects () | 4.530s (±0.00%)   | 4.538s (±0.00%)   | 2.829mb         | 2.829mb    |
+-------------------------------+-------------------+-------------------+-----------------+------------+

HydratorBench
=============

+-------------------------------+-------------------+-------------------+-----------------+------------+
|                               | time (kde mode)                       | memory                       |
+-------------------------------+-------------------+-------------------+-----------------+------------+
| subject                       | Tag: <current>    | Tag: base         | Tag: <current>  | Tag: base  |
+-------------------------------+-------------------+-------------------+-----------------+------------+
| benchHydrate1Object ()        | 85.400μs (±0.00%) | 4.400μs (±0.00%)  | 2.829mb         | 2.829mb    |
| benchExtract1Object ()        | 4.000μs (±0.00%)  | 77.600μs (±0.00%) | 2.829mb         | 2.829mb    |
| benchHydrate1000Objects ()    | 2.900ms (±0.00%)  | 2.673ms (±0.00%)  | 2.853mb         | 2.853mb    |
| benchExtract1000Objects ()    | 2.519ms (±0.00%)  | 2.474ms (±0.00%)  | 2.829mb         | 2.829mb    |
| benchHydrate1000000Objects () | 1.502s (±0.00%)   | 1.498s (±0.00%)   | 2.854mb         | 2.854mb    |
| benchExtract1000000Objects () | 1.469s (±0.00%)   | 1.489s (±0.00%)   | 2.829mb         | 2.829mb    |
+-------------------------------+-------------------+-------------------+-----------------+------------+

HydratorWithLazyBench
=====================

+------------------------------------------+--------------------+--------------------+-----------------+------------+
|                                          | time (kde mode)                         | memory                       |
+------------------------------------------+--------------------+--------------------+-----------------+------------+
| subject                                  | Tag: <current>     | Tag: base          | Tag: <current>  | Tag: base  |
+------------------------------------------+--------------------+--------------------+-----------------+------------+
| benchHydrate1Object ()                   | 0.800μs (±0.00%)   | 0.800μs (±0.00%)   | 2.829mb         | 2.829mb    |
| benchHydrate1ObjectTriggerInit ()        | 116.400μs (±0.00%) | 4.600μs (±0.00%)   | 2.840mb         | 2.829mb    |
| benchHydrate1000Objects ()               | 462.000μs (±0.00%) | 518.333μs (±0.00%) | 2.829mb         | 2.829mb    |
| benchHydrate1000ObjectsTriggerInit ()    | 3.371ms (±0.00%)   | 3.408ms (±0.00%)   | 2.840mb         | 2.839mb    |
| benchHydrate1000000Objects ()            | 316.686ms (±0.00%) | 313.539ms (±0.00%) | 2.829mb         | 2.829mb    |
| benchHydrate1000000ObjectsTriggerInit () | 2.252s (±0.00%)    | 2.334s (±0.00%)    | 2.840mb         | 2.839mb    |
+------------------------------------------+--------------------+--------------------+-----------------+------------+

This comment gets update everytime a new commit comes in!

Dropping roave/infection-static-analysis-plugin in favor of the native option infection is offering now.
This also means switching from psalm to phpstan as the SA tool used with infection.
Switch from `--only-covered` to `--with-uncovered` as the first option does not exist anymore
@DanielBadura DanielBadura force-pushed the use-native-sa-tooling-infection branch from a559105 to 30c6b31 Compare November 19, 2025 16:07
@DanielBadura DanielBadura changed the base branch from 2.0.x to 1.12.x November 19, 2025 16:08
@DanielBadura DanielBadura marked this pull request as ready for review November 19, 2025 16:33
@DanielBadura
Copy link
Member Author

@DavidBadura i changed the target to 1.12.x and updated msi & some tests

@DavidBadura DavidBadura added this to the 1.12.0 milestone Nov 19, 2025
@DanielBadura DanielBadura merged commit dd9f310 into 1.12.x Nov 19, 2025
17 checks passed
@DanielBadura DanielBadura deleted the use-native-sa-tooling-infection branch November 19, 2025 16:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants