Conversation
viktorprogger
commented
Dec 13, 2025
| Q | A |
|---|---|
| Is bugfix? | ✔️ |
| New feature? | ❌ |
| Breaks BC? | ❌ |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #250 +/- ##
============================================
- Coverage 98.59% 98.48% -0.12%
+ Complexity 372 369 -3
============================================
Files 48 48
Lines 998 987 -11
============================================
- Hits 984 972 -12
- Misses 14 15 +1 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Co-authored-by: Alexander Makarov <sam@rmcreative.ru>
Co-authored-by: Alexander Makarov <sam@rmcreative.ru>
There was a problem hiding this comment.
Pull request overview
This pull request is marked as a bugfix and includes significant documentation improvements, code refactoring, and a critical bug fix. The main changes involve integrating CallableFactory into the Worker class to simplify handler resolution, fixing a bug in the JSON message serializer, adding comprehensive documentation, and adding a command alias.
Key changes:
- Integration of
CallableFactoryintoWorkerfor unified callable resolution - Bug fix in
JsonMessageSerializerwhere$payload['meta']was incorrectly accessed instead of$meta - Extensive documentation added covering queue channels, message handlers, middleware pipelines, error handling, and more
- Command alias
queue:listen-alladded to replace the typoqueue:listen:all
Reviewed changes
Copilot reviewed 29 out of 29 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/Unit/WorkerTest.php | Added new test case for object method callable definitions and updated tests to use CallableFactory parameter |
| tests/Unit/Middleware/CallableFactoryTest.php | Major refactoring with data providers for comprehensive testing of callable factory scenarios |
| tests/TestCase.php | Added CallableFactory parameter to worker creation |
| tests/Integration/MiddlewareTest.php | Added CallableFactory parameter to test setup |
| tests/Integration/MessageConsumingTest.php | Added CallableFactory instantiation and parameter in worker setup |
| tests/Benchmark/QueueBench.php | Added CallableFactory parameter to worker constructor |
| src/Worker/Worker.php | Integrated CallableFactory for unified handler resolution, simplified handler caching logic |
| src/Middleware/CallableFactory.php | Enhanced to support Closure detection, object method definitions, and improved validation |
| src/Message/JsonMessageSerializer.php | Bug fix: corrected variable reference from $payload['meta'] to $meta |
| src/Command/ListenAllCommand.php | Added command alias 'queue:listen:all' for backward compatibility |
| docs/guide/en/worker.md | Rewritten to focus on starting workers and supervisor configuration |
| docs/guide/en/usage.md | Expanded with queue channels, delayed execution, job status examples |
| docs/guide/en/producing-messages-from-external-systems.md | New comprehensive guide for external message producers |
| docs/guide/en/prerequisites-and-installation.md | New installation and requirements guide |
| docs/guide/en/middleware-pipelines.md | New detailed middleware pipeline documentation |
| docs/guide/en/message-handler.md | New guide explaining handler definition formats and configuration |
| docs/guide/en/loops.md | New documentation on loop interface and signal handling |
| docs/guide/en/job-status.md | New guide on job status tracking |
| docs/guide/en/error-handling.md | Significantly expanded with step-by-step failure handling flow |
| docs/guide/en/envelopes.md | New documentation on envelope pattern and metadata handling |
| docs/guide/en/debug-integration.md | New guide for Yii Debug integration |
| docs/guide/en/console-commands.md | New comprehensive console commands reference |
| docs/guide/en/configuration-with-config.md | New configuration guide for yiisoft/config users |
| docs/guide/en/configuration-manual.md | New manual configuration guide with examples |
| docs/guide/en/channels.md | New detailed guide on queue channels concept and configuration |
| docs/guide/en/callable-definitions-extended.md | New guide explaining extended callable definition formats |
| docs/guide/en/README.md | Restructured guide index with better organization |
| config/params.php | Added 'queue:listen-all' command alias |
| README.md | Major rewrite with quick start guide and improved structure |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| ## Configuration | ||
| ## When failure handling is triggered | ||
|
|
||
| Failure handling is triggered only when message processing throws a `Throwable`. |
There was a problem hiding this comment.
How about PHP notices or warnings or errors?
There was a problem hiding this comment.
Most errors implement Throwable. So - yes, we do catch them.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 38 out of 38 changed files in this pull request and generated 4 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Kept docs-branch Quick Start README rewrite; merged master's PHP version range (8.1-8.5) and PCNTL note. Resolved command option conflicts by keeping `limit` parameter name with `queue` terminology from master, and fixed `$channel` → `$queue` variable bug in RunCommand. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>