Add issue dependency management commands #4

Closed
opened 2026-01-06 12:35:00 +00:00 by HugoNijhuis · 0 comments
Owner

Summary

Add commands to manage issue dependencies via the Gitea API. Currently dependencies can only be set through the Gitea web UI.

API Reference

Gitea exposes /repos/{owner}/{repo}/issues/{index}/dependencies with:

  • GET - List dependencies (issues that block this one)
  • POST - Add a dependency
  • DELETE - Remove a dependency

Request body for POST/DELETE:

{
  "owner": "string",
  "repo": "string",
  "index": 123
}

CLI Interface

tea issues deps list <number>              # List blockers for an issue
tea issues deps add <issue> <blocker>      # Add dependency (issue is blocked by blocker)
tea issues deps add 5 3                    # Issue #5 depends on #3
tea issues deps add 5 owner/repo#3         # Cross-repo dependency
tea issues deps remove <issue> <blocker>   # Remove a dependency

Acceptance Criteria

  • tea issues deps list <number> lists all blocking issues
  • tea issues deps add <issue> <blocker> creates a dependency
  • tea issues deps remove <issue> <blocker> removes a dependency
  • Cross-repo syntax owner/repo#number works for blockers
  • Output formats supported (-o table, json, simple)
  • Appropriate error messages for: issue not found, dependency cycle, already exists
## Summary Add commands to manage issue dependencies via the Gitea API. Currently dependencies can only be set through the Gitea web UI. ## API Reference Gitea exposes `/repos/{owner}/{repo}/issues/{index}/dependencies` with: - **GET** - List dependencies (issues that block this one) - **POST** - Add a dependency - **DELETE** - Remove a dependency Request body for POST/DELETE: ```json { "owner": "string", "repo": "string", "index": 123 } ``` ## CLI Interface ```bash tea issues deps list <number> # List blockers for an issue tea issues deps add <issue> <blocker> # Add dependency (issue is blocked by blocker) tea issues deps add 5 3 # Issue #5 depends on #3 tea issues deps add 5 owner/repo#3 # Cross-repo dependency tea issues deps remove <issue> <blocker> # Remove a dependency ``` ## Acceptance Criteria - [ ] `tea issues deps list <number>` lists all blocking issues - [ ] `tea issues deps add <issue> <blocker>` creates a dependency - [ ] `tea issues deps remove <issue> <blocker>` removes a dependency - [ ] Cross-repo syntax `owner/repo#number` works for blockers - [ ] Output formats supported (-o table, json, simple) - [ ] Appropriate error messages for: issue not found, dependency cycle, already exists
HugoNijhuis added a new dependency 2026-01-06 12:47:38 +00:00
HugoNijhuis removed a dependency 2026-01-06 12:47:55 +00:00
HugoNijhuis added a new dependency 2026-01-06 12:48:12 +00:00
HugoNijhuis removed a dependency 2026-01-06 12:48:21 +00:00
HugoNijhuis added a new dependency 2026-01-06 12:54:24 +00:00
HugoNijhuis removed a dependency 2026-01-06 12:54:45 +00:00
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: flowmade-one/tea#4