feat(project): show details in list and show #38

Merged
David merged 1 commit from feat/project-list-details into main 2026-05-15 12:57:18 +02:00
Owner

Summary

  • yt project list previously showed only SHORT NAME and ID; this PR adds NAME, LEADER, ARCHIVED, and DESCRIPTION columns so the list is actually useful at a glance.
  • yt project show is updated to print the same enriched fields (name, archived, leader, description) for consistency with the list output.
  • The Project model gains name, description, archived, and an optional leader (User); list_projects widens the ?fields= selector accordingly. All other call sites (resolve_project_id, get_project, list_project_states) continue to work since they only depend on the existing fields.
  • --json still emits the full struct, now including the new fields.

Test plan

  • cargo fmt --check
  • cargo clippy --all-targets -- -D warnings
  • cargo test --all-targets (209 passed; list_projects_decodes_short_names updated to assert the new fields)
  • Smoke test against a real YouTrack instance: yt project list and yt project show <SHORT>
## Summary - `yt project list` previously showed only `SHORT NAME` and `ID`; this PR adds `NAME`, `LEADER`, `ARCHIVED`, and `DESCRIPTION` columns so the list is actually useful at a glance. - `yt project show` is updated to print the same enriched fields (name, archived, leader, description) for consistency with the list output. - The `Project` model gains `name`, `description`, `archived`, and an optional `leader` (User); `list_projects` widens the `?fields=` selector accordingly. All other call sites (`resolve_project_id`, `get_project`, `list_project_states`) continue to work since they only depend on the existing fields. - `--json` still emits the full struct, now including the new fields. ## Test plan - [x] `cargo fmt --check` - [x] `cargo clippy --all-targets -- -D warnings` - [x] `cargo test --all-targets` (209 passed; `list_projects_decodes_short_names` updated to assert the new fields) - [ ] Smoke test against a real YouTrack instance: `yt project list` and `yt project show <SHORT>`
feat(project): show details in list and show
All checks were successful
Check / fmt + clippy + build + tests (pull_request) Successful in 16s
Create release / Create release from merged PR (pull_request) Has been skipped
551312ae6a
Extend the Project model with name, description, archived, and leader, broaden the /api/admin/projects field selector, and surface those columns in `yt project list` (and matching fields in `yt project show`). Existing list view only printed SHORT NAME and ID, which left users guessing about archived state and ownership.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
David merged commit e7c4824f7e into main 2026-05-15 12:57:18 +02:00
David deleted branch feat/project-list-details 2026-05-15 12:57:19 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
pandoras-box/youtrack-cli!38
No description provided.