Skip to content

Support Psalm 7 - #3

Merged
koriym merged 2 commits into
1.xfrom
codex/psalm-7-support
Jun 10, 2026
Merged

koriym merged 2 commits into
1.xfrom
codex/psalm-7-support

Conversation

@koriym

@koriym koriym commented Jun 8, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Switch vimeo/psalm to 7.x-dev@dev.
  • Add the Psalm 7-required external mutation-free annotations for internal helper methods.

Why

be-framework/skeleton wants to consume Psalm 7 dev, but this plugin currently requires Psalm 6. This updates the plugin constraint and fixes the new Psalm 7 checks so downstream dependency resolution can move forward.

Verification

  • composer validate --no-check-publish
  • composer tests

Summary by CodeRabbit

  • Chores
    • Updated static analysis tooling dependency to the latest version for improved code quality checks and enhanced error detection capabilities.
    • Updated development dependencies to maintain compatibility with the latest tools and ensure long-term maintainability of the codebase.
    • Improved internal code annotations to provide better insights during static analysis and validation processes.

@coderabbitai

coderabbitai Bot commented Jun 8, 2026 •

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 43349700-3a9f-4127-b256-7122db2ccbd0

📥 Commits

Reviewing files that changed from the base of the PR and between 6a6b1eb and 5fa38fb.

📒 Files selected for processing (3)
  • composer.json
  • src/Handler/ValidateThrowHandler.php
  • src/Internal/ThrowCollectorVisitor.php

📝 Walkthrough

Walkthrough

This PR upgrades the Psalm static analysis tool from v6 to v7 and adds purity annotations to two declarations. The composer.json dependency constraint is updated, and @psalm-external-mutation-free docblock annotations are added to the throws property and extendsDomainException method to enable Psalm v7's enhanced mutation analysis.

Changes

Psalm Upgrade and Static Analysis Annotations

Layer / File(s) Summary
Psalm v7 dependency upgrade
composer.json
Psalm dev dependency constraint is updated from ^6.0@dev to ^7.0@dev.
External mutation-free annotations
src/Internal/ThrowCollectorVisitor.php, src/Handler/ValidateThrowHandler.php
@psalm-external-mutation-free annotations are added to the public throws property and the extendsDomainException method to declare purity for Psalm's static analysis.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Poem

🐰 A rabbit hops through Psalm's verdant fields,
Where v7 now blooms and true purity yields!
Annotations mark methods forever pure,
No mutations here—our analysis secure! ✨

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/psalm-7-support

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 and usage tips.

@koriym
koriym marked this pull request as ready for review June 10, 2026 09:18
@koriym
koriym merged commit 863bafc into 1.x Jun 10, 2026
2 checks passed
@koriym
koriym deleted the codex/psalm-7-support branch June 10, 2026 09:44
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