A change's diff lines through the API d2263e299da7
GET /api/v1/repos/{owner}/{name}/changes/{hash} now gives each file's
diff lines (kind, old and new numbers, text), three lines of context,
up to 2000 a file with truncated saying when it stops short, so clients
can show a diff themselves.
closes #320
- **A change's diff through the API (#320):** `GET /api/v1/repos/{owner}/{name}/changes/{hash}` gives each file's diff lines too (`lines`: `kind` context, add, del or gap, `old` and `new` line numbers, `text`), with three lines of context, up to 2000 lines a file (`truncated` says when it stops short), so the Android app can show a diff itself.
7
8
- **JaCoCo coverage is read (#308):** Gradle's `jacocoTestReport` and Kover write JaCoCo XML, which a `coverage` artifact (or `POST /coverage`) may now be, beside LCOV and Cobertura: lines hit when an instruction ran, branches, methods. Its paths are relative to a source root (`io/oxygenhub/…/X.kt`), so a report's path not in the state is matched by its ending to the one file it can be.
8
9
## 0.9.4 (2026-10-25)
9
10
…
327 unchanged lines
modifiedcrates/hub-api/src/lib.rs+21−0
…
433 unchanged lines
434
434
pub from: Option<String>,
435
435
pub added: usize,
436
436
pub removed: usize,
437
+
/// The diff with three lines of context, up to `DIFF_LINES` lines.
438
+
#[serde(default)]
439
+
pub lines: Vec<DiffLine>,
440
+
/// Whether `lines` stops short of the whole diff.
441
+
#[serde(default)]
442
+
pub truncated: bool,
443
+
}
444
+
445
+
/// Lines of one file's diff the API sends at most.