Skip to content

Raise property-testing-testo to ^0.4 - #26

Merged
rasuvaeff merged 1 commit into
masterfrom
test/property-testing-testo-0.4
Aug 15, 2026
Merged

Raise property-testing-testo to ^0.4#26
rasuvaeff merged 1 commit into
masterfrom
test/property-testing-testo-0.4

Conversation

@rasuvaeff

Copy link
Copy Markdown
Owner

What

rasuvaeff/property-testing-testo: ^0.1 ^0.4
rasuvaeff/rector-named-literals added (rector found nothing to change)
Generator methods privatepublic static
CI narrow mutation filter

Why the pin had to move

The adapter chains to the engine by minor — -testo 0.3 requires core ^0.3
so a ^0.1 pin installs core 0.1 and leaves every 0.2/0.3 engine feature
unreachable: Gen::swarm, Gen::forClass, Gen::regex, edgeCases, the
distribution report, shrink-path replay.

Three generators were one rector run from deletion

QueryBuildingVisitorTest had private function <method>Generators(), invoked
only by reflection. RemoveUnusedPrivateMethodRector sees no call site and
removes them; the properties would then run with no generators at all.

One rector rule skipped

RemoveUselessVarTagRector strips the @var mixed psalm requires on an
assignment from a mixed-returning call; psalm reports MixedAssignment without
it. The documented rector↔psalm conflict, resolved the same way as in
media-converter.

No test change beyond the promotion, deliberately

CompositionLawsPropertyTest already carries Examples() over an operand
catalogue — it is the reference the rest of this migration has been copying.
Going through the checklist: Gen::swarm needs Gen::commands, and a
specification is composed then evaluated, with no lifecycle; Gen::forClass
cannot construct specifications, which validate operators and identifiers in
their constructors; nothing generated is dated, binary or UUID-shaped.

Verification

composer build green locally.

The adapter chains to the engine by minor: -testo 0.3 requires core ^0.3, so a
^0.1 pin installs core 0.1 and leaves every 0.2/0.3 engine feature — Gen::swarm,
Gen::forClass, Gen::regex, edgeCases, the distribution report, shrink-path
replay — unreachable. This package was pinned there.

The three generator methods in QueryBuildingVisitorTest were `private function`,
reached only by reflection. Rector's RemoveUnusedPrivateMethodRector sees no
call site and deletes them; they are `public static` now, the convention this
monorepo already documents.

RemoveUselessVarTagRector is skipped with the reason in rector.php: it strips
the `@var mixed` psalm requires on an assignment from a mixed-returning call.

No test change beyond the promotion. The composition-law suite already carries
Examples() over an operand catalogue, which is the reference the rest of this
migration has been copying.
@coderabbitai

coderabbitai Bot commented Aug 15, 2026

Copy link
Copy Markdown

Important

Review available on request

  • 🔍 Trigger review

Reviews should be triggered manually for repositories with fewer than 10 stars. Select Trigger review above or comment @coderabbitai review to review the latest changes. For a full review, comment @coderabbitai full review.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 4f99275e-4c0d-4d5b-bba7-bb44c9f4701d


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@rasuvaeff
rasuvaeff merged commit 9091bba into master Aug 15, 2026
11 checks passed
@rasuvaeff
rasuvaeff deleted the test/property-testing-testo-0.4 branch August 15, 2026 13:55
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.

1 participant