-
Notifications
You must be signed in to change notification settings - Fork 0
feat: add buzz due command with duration parsing #201
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Important Review skippedBot user detected. To trigger a single review, invoke the You can disable this status message by setting the Note Other AI code review bot(s) detectedCodeRabbit has detected other AI code review bot(s) in this pull request and will avoid duplicating their findings in the review comments. This may lead to a less comprehensive review. Comment |
Co-authored-by: narthur <[email protected]>
…WithinAt logic Co-authored-by: narthur <[email protected]>
🚀 Pre-release Build ReadyTest builds are ready! Install directly using the # Install the pre-release
bin install https://github.com/PinePeakDigital/buzz/releases/tag/pr-201-latest buzz-pr-201# Run the pre-release
buzz-pr-201# Uninstall the pre-release
bin remove buzz-pr-201Direct Download LinksOr download binaries directly from the pre-release page:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds a new buzz due <duration> command that allows users to list goals due within a custom time window, extending the existing fixed today and tomorrow commands with flexible duration parsing.
Key changes:
- Implements duration parsing supporting hours, days, and weeks with decimal values (e.g.,
1h,5d,1.5w) - Adds filtering logic to show goals due within the specified timeframe
- Includes comprehensive test coverage with 23 test cases across parsing and filtering functions
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| main.go | Adds handleDueCommand() function with argument validation and integrates it into command routing; updates help text to include the new command |
| beeminder.go | Implements ParseDuration() for parsing duration strings, IsDueWithin() and IsDueWithinAt() for filtering goals by deadline |
| beeminder_test.go | Adds comprehensive test coverage for ParseDuration (15 test cases) and IsDueWithin (8 test cases) functions |
| README.md | Documents the new command with examples, supported duration units, and usage patterns |
|
@copilot apply changes based on the comments in this thread |
…comprehensive test coverage Co-authored-by: narthur <[email protected]>
All review comments have been addressed in commit 0a37a93:
All 25 test cases pass and the command properly rejects invalid inputs. |
Original prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.