Repository navigation
Conversation
Reviewer's GuideReplaces Flow diagram for queue:consume modesflowchart TD
Start[queue:consume] --> Mode{Options selected}
Mode -->|default| Single[Resolve one consumer]
Single --> Listen[consumer.listen]
Mode -->|--once| Once[Discover or resolve queues]
Mode -->|--all| All[Discover or resolve queues]
Once --> RunOnce[consumer.run per queue]
RunOnce --> Exit[Exit after one pass]
All --> RunAll[consumer.run per queue]
RunAll --> Pause[Pause between idle passes]
Pause --> RunAll
RunAll --> Stop[Stop through LoopInterface]
File-Level Changes
Possibly linked issues
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #353 +/- ##
============================================
+ Coverage 95.26% 95.41% +0.15%
- Complexity 396 400 +4
============================================
Files 59 57 -2
Lines 1034 1048 +14
============================================
+ Hits 985 1000 +15
+ Misses 49 48 -1 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Hey - I've reviewed your changes and they look great!
Linked issues
#350 Rename commands · 3 of 3 met
| # | Requirement | Status | Notes |
|---|---|---|---|
| 1 | Replace queue:run with queue:consume --once. |
✅ Met | The command handles one pass through the selected queues and exits. |
| 2 | Replace queue:listen [queueName] with queue:consume [queueName]. |
✅ Met | Without --once or --all, the command listens to the selected queue, defaulting to the default queue. |
| 3 | Replace queue:listen-all with queue:consume --all. |
✅ Met | The --all mode repeatedly polls the selected queues, or all configured consumer queues when none are specified. |
Sourcery assessment
Approved.
Sourcery withdrew this approval because the latest commits introduced blocking findings.
Replace
queue:run,queue:listen, andqueue:listen-allwithqueue:consumeso the command name consistently describes message consumption.queue:consume [queueName]listens continuously to one queue, defaulting toyii-queue.queue:consume --once [queueNames...]processes existing messages in one pass and exits. Without names, it uses all configured consumer queues.queue:consume --all [queueNames...]polls the selected queues continuously. Without names, it uses all configured consumer queues.--oncetakes precedence when combined with--all.Keep per-queue limits, idle pauses, consumer-only discovery, and graceful signal handling. Reject explicitly supplied options when the selected mode ignores them:
--limitrequires--onceor--all, and--pauserequires--allwithout--once. Help explains queue selection, option scope, and precedence.Update command registration and usage examples, including cron jobs and process managers.
Fix #350.
Summary by Sourcery
Replace the legacy queue commands with a unified
queue:consumecommand for consistent message consumption across single-queue, one-pass, and multi-queue workflows.New Features:
queue:consumecommand supporting single-queue listening, one-pass consumption, and continuous multi-queue polling with clear option precedence and validation.Enhancements:
queue:run,queue:listen, andqueue:listen-allcommands in favor of the unified consumer interface.Documentation:
queue:consume.Tests:
Chores: