v2.1.0 - GitHub Issues Support
β¨ New Features
π GitHub Issues Support
Complete GitHub Issues management functionality added to the client.
New IssueResource Methods:
- π List issues -
->issues()->all('owner/repo', ['state' => 'open']) - π Create issues -
->issues()->create('owner/repo', 'Title', 'Body', ['labels' => ['bug']]) - ποΈ Get specific issue -
->issues()->get('owner/repo', 123) - βοΈ Update issues -
->issues()->update('owner/repo', 123, ['state' => 'closed'])
Request Classes Added:
ListIssuesRequest- List issues with filteringGetIssueRequest- Get specific issue detailsCreateIssueRequest- Create new issuesUpdateIssueRequest- Update existing issues
Filtering & Options:
- Filter by state (open, closed, all)
- Filter by labels, assignees, milestones
- Sort by created, updated, or comments
- Full pagination support
π§ Integration:
- Added
issues()method toGithubclass - Added
issues()method toGithubConnector - Updated
GithubConnectorInterfacewith Issues support - Proper DTO support using
Issue::from()pattern
π AI & Automation Ready
Perfect foundation for:
- AI-driven issue management
- Automated bug reporting
- Issue workflow automation
- GitHub Zero CLI Issues commands
π¦ Installation
composer require jordanpartridge/github-client:^2.1.0π‘ Usage Example
$github = new Github($connector);
// List open issues
$issues = $github->issues()->all('owner/repo', ['state' => 'open']);
// Create a new issue
$issue = $github->issues()->create('owner/repo', 'Bug Report', 'Description here', [
'labels' => ['bug', 'priority-high']
]);