feat(server): add yt server version for the server version #137

Merged
Claude-Run merged 1 commit from feat/YT-82-server-version into main 2026-08-01 20:50:10 +02:00
Member

yt version show/check/update answers for the yt binary; nothing asked YouTrack what version it runs, so a feature gated on a server version (the 2026.1 project team endpoints, for one) had no way to detect the server it talks to. yt server version prints one line (YouTrack 2026.2 (build 17765) at https://example.youtrack.cloud) and --json emits {"version":"...","build":"..."}. It lives under a new server namespace rather than version because version describes the binary and its self-update train, and the server is a separate subject.

The client side is youtrack_client::api::get_server_config, reading GET /api/config?fields=version,build. That endpoint is absent from the published REST reference (resource-api-config.html 404s) but documented by JetBrains support and available since YouTrack 2018.1, so its request/response shape and the 2026-08-01 live verification are recorded in a comment next to the function, the same convention the vcsIntegrationSettings and commands/assist wrappers use. Both fields deserialize as optional strings so a server that omits one still reports what it has instead of hard-failing.

#YT-82

`yt version show/check/update` answers for the `yt` binary; nothing asked YouTrack what version it runs, so a feature gated on a server version (the 2026.1 project team endpoints, for one) had no way to detect the server it talks to. `yt server version` prints one line (`YouTrack 2026.2 (build 17765) at https://example.youtrack.cloud`) and `--json` emits `{"version":"...","build":"..."}`. It lives under a new `server` namespace rather than `version` because `version` describes the binary and its self-update train, and the server is a separate subject. The client side is `youtrack_client::api::get_server_config`, reading `GET /api/config?fields=version,build`. That endpoint is absent from the published REST reference (`resource-api-config.html` 404s) but documented by JetBrains support and available since YouTrack 2018.1, so its request/response shape and the 2026-08-01 live verification are recorded in a comment next to the function, the same convention the `vcsIntegrationSettings` and `commands/assist` wrappers use. Both fields deserialize as optional strings so a server that omits one still reports what it has instead of hard-failing. #YT-82
feat(server): add yt server version for the server version
All checks were successful
Check / fmt + clippy + build + tests (pull_request) Successful in 40s
Create release / Create release from merged PR (pull_request) Has been skipped
042b10526f
`yt version show/check/update` answers for the `yt` binary; nothing asked YouTrack what version it runs, so a feature gated on a server version (the 2026.1 project team endpoints, for one) had no way to detect the server it talks to. `yt server version` prints one line (`YouTrack 2026.2 (build 17765) at https://example.youtrack.cloud`) and `--json` emits `{"version":"...","build":"..."}`. It lives under a new `server` namespace rather than `version` because `version` describes the binary and its self-update train, and the server is a separate subject.

The client side is `youtrack_client::api::get_server_config`, reading `GET /api/config?fields=version,build`. That endpoint is absent from the published REST reference (`resource-api-config.html` 404s) but documented by JetBrains support and available since YouTrack 2018.1, so its request/response shape and the 2026-08-01 live verification are recorded in a comment next to the function, the same convention the `vcsIntegrationSettings` and `commands/assist` wrappers use. Both fields deserialize as optional strings so a server that omits one still reports what it has instead of hard-failing.

#YT-82
Claude-Run deleted branch feat/YT-82-server-version 2026-08-01 20:50:10 +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!137
No description provided.